ADB命令
<p>1、概念</p>
<pre><code>1.1、是一个标准的C/S结构的命令行工具,是要连接开发电脑和调试手机的,是一个Debug工具。ADB全名: android debug(调试)bridge(桥)
1.2、通过adb的命令可以实现与手机端的通信、查看手机端的日志以及对手机端的资源进行监控,比如:CPU、内存、电量、流量、启动时间等。
1.3、其中日志信息的级别有:V:所有信息、D:调试信息、I:普通信息、W:警告信息、E:错误信息这5类。
1.4、包含如下几个部分:
1.Client端,运行在开发机器中,即你的开发PC机。用来发送adb命令。
2.Daemon守护进程, 运行在调试设备中, 即的调试手机或模拟器。
3.Server端, 作为一个后台进程运行在开发机器中, 即你的开发PC机。用来管理PC中的Client端和手机的Daemon之间的通信。
1.5三者之间的通信:
Client<—>Server<—>Daemon</code></pre>
<p>1、命令</p>
<pre><code>#获取系统版本号
adb shell getprop ro.build.version.release
#获取系统指定版本号(指定某台设备)
adb -s 设备号 shell getprop ro.build.version.release
#获取设备,查看电脑上的有多少台手机设备(包括模拟器),获取设备列表及设备状态#127.0.0.1:62001就是一台设备
adb devices
#安装apk到手机
adb install 路径/xx.apk
#卸载APP
adb uninstall xx.apk
#卸载时保留配置和缓存文件
adb uninstall -k <apk格式的包名>
#重启android设备
adb reboot
#进入Linux系统,手机shell命令行
adb shell
#查看当前终端中的进程信息,如PID进程等;top 过滤APP占用资源
adb shell ps/top
#进入data文件
cd data/data
#帮助
adb —help
#启动adb服务
adb start-server
#关闭adb服务
adb kill-server
#查看软件包名
ls
#退出Linux系统
exit
#从手机拉取文件/下载
adb pull <手机的文件路径> <电脑文件路径>
#电脑文件发送到手机/上传
adb push <电脑文件路径> <手机的文件路径>
#跑monkey是android自动化测试的一种手段,所谓monkey测试就是模拟用户的按键输入、触摸屏输入、手势输入等压力测试来测试android APP的稳定性。
adb shell monkey
#清除所有手机中运行的日志
adb logcat
#清除所有手机中运行的日志
adb logcat -c
#打印完所有手机中运行的日志信息之后,退出
adb logcat -d
#筛选所有的信息到指定的目录,并退出
adb logcat -d > D:\lu01.txt
#筛选所有的错误信息到指定的目录,并退出
adb logcat -d *:E > D:\lu02.txt
#关闭该PID进程(每个运行的内容都有一个PID值)
adb shell kill [PID]
#查看该包名应用当前的内存使用状态
adb shell dumpsys meminfo<package_name>
#查看cpu占有情况
adb shell dumpsys cpuinfo | grep com.cmft.oa.cmftoa
#内存系统详细信息
adb shell dumpsys meminfo
adb shell dumpsys meminfo PID
#获取APP启动时间
adb shell am start -W 包名/启动名
示例:
adb shell am start -W com.yly.drawpic/.MainActivity
解释:
TotalTime:APP自身启动时间
WaitTime: 系统启动应用时间</code></pre>
<p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/54906fc346a7b7216088b5b2d985479e?showdoc=.jpg" alt="" /></p>
<pre><code>#冷/热启动命令
adb shell am start -W 包名/activity
#冷启动停止
adb shell am force -stop 包名/activity
#导出启动日志到文件lukeru.log文件
adb Shell am start -W -n 包名/activity>lukeru.log
#获取APP包名和启动名(手机需要先打开对应APP),"/前面是包名,/后面是启动名,以空格为结束点"
mac/linux系统下运行:adb shell dumpsys window windows | grep mFocusedAPP
#获取APP包名和启动名(手机需要先打开对应APP),"/前面是包名,/后面是启动名,以空格为结束点"
Windows系统下终端运行:adb shell dumpsys window windows,然后去看mFocusedAPP这一行的内容</code></pre>