adb常用命令

一、adb指令相关参数

参数含义
-d指定当前唯一通过USB连接的android设备为命令目标
-e指定当前唯一运行的模拟器问指令目标
-s指定响应的设备为命令目标
>将结果导成文件

二、adb相关指令

Android 基于 Linux。以“adb shell”开头的命令,都可以先执行adb shell命令,然后再执行“adb shell”之后的命令
adb shell dumpsys activity,可以先执行adb shell,然后再执行dumpsys activity

2.1 adb无线连接(需要借助 USB 线)

操作步骤:
1.将 Android 设备与要运行 adb 的电脑连接到同一个局域网,比如连到同一个 WiFi。
2.将设备与电脑通过 USB 线连接。
3.让设备在 5555 端口监听 TCP/IP 连接:adb tcpip 5555
4.断开 USB 连接。
5.找到设备的 IP 地址。 在【设置-关于手机-状态信息-IP地址】可以找到,也可以用adb命令查看
6.通过IP地址连接设备:adb connect <device-ip-address>
<device-ip-address>为手机上查到的IP地址,如查到是172.11.111.111
则运行命令:adb connect
7.确认连接状态:adb devices

断开无线连接
命令:adb disconnect <device-ip-address>

2.2 基础指令

命令含义
adb start-server启动adb server
adb kill-server停止adb server
adb version查看adb版本
adb devices查看设备
adb tcpip 5555让设备在5555端口监听tcp/ip连接
adb root获取系统root权限
adb shell进入手机终端
exit退出手机终端(CTRL+D也可以退出)
adb shell ls查看手机目录(等价于进入手机终端后运行ls)
adb shell data查看手机系统当前时间

2.3 软件相关指令

命令含义
adb install <apk路径>安装软件(-l安装到保护目录mnt/asec,-r允许覆盖,-s安装到指定设备,-d允许降级覆盖安装,-g授权所有运行时权限)
adb uninstall 包名卸载应用(-k保留配置文件数据缓存,adb uninstall -k 包名)
adb shell pm list packages显示手机所有应用
adb shell pm list packages -s显示手机系统自带应用(-s系统应用,-f应用关联的apk文件,-d查看disabled应用,-e查看enabled应用,-3第三方,-i应用的installer)
adb shell pm list packages aaa显示包名包含aaa的应用列表
adb shell pm path <包名>显示应用路径
adb shell dumpsys package <包名>显示应用详细信息
adb shell “dumpsys window | grep mCurrentFoces”获取当前的页面名(先打开页面,再执行命令)(如果某个软件的某个页面,进入肯会出错,中间跳过了某些页面
adb shell am start -n <包名>/<页面名>打开页面
adb logcat ActivityManager:I | grep “cmp”mac:获取启动页面(先执行命令在启动软件,结果为第一个cmp里面的内容)
adb logcat ActivityManager:I | findstr “cmp”win:获取启动页面(先执行命令在启动软件,结果为第一个cmp里面的内容)
adb shell pm clear <包名>清除应用数据及缓存
adb shell dumpsys meminfo <应用名>查看某个应用的内存
adb shell top | grep “包名”查看某个包的一些性能指标
adb shell top -d 1 | grep “包名”每个一秒查看某个包的一些性能指标

2.4 文件相关指令

命令含义
adb push 电脑路径 设备路径文件传输(电脑到设备传文件)
adb pull 设备路径 [电脑路径]文件传输(设备到电脑传文件,电脑路径可省,就传在终端所在的路径下)
adb shell rm -rf 路径/文件删除某文件
adb shell mkdir 路径/文件名创建文件

2.5 log相关指令

命令含义
adb logcat查看日志(V:明细(最低优先级),D:调试,I:信息,W:警告,E:错误,F:严重错误,S:无记载(最高优先级,绝不会输出任何内容))(Ctrl+c来停止抓取)
adb logcat -v time包含时间(默认就有)
adb logcat -v color使用不同颜色来显示每个优先级
adb logcat -f <filename>将日志输出到文件
adb logcat > log.log保存日志到PC端的log.log文件
adb logcat -c清理已存在的日志
adb logcat -v time “:w”打印w级别及以上的日志
adb logcat ActivityManager:D ‘*:S’过滤tag为ActivityManager,等级为D及以上的日志
adb shell cat /proc/kmsg > d:\log.txt实时kernel log并保存为文件log.txt(Ctrl+c来停止抓取)

2.6 模拟事件相关指令

命令含义
adb shell input tap x坐标 y坐标模拟点击事件
adb shell input <输入内容>模拟输入事件(光标要在输入框内)
adb shell swipe <起点x> <起点y> <终点x> <终点y> [滑动时长]模拟滑动事件(时长可不填)
adb shell input keyevent 4模拟点击返回键(3home键,4返回键,5拨号键,6挂断电话,24增加音量,25减小音量,26电源,27拍照,64打开浏览器,82菜单键,164静音,176打开系统设置,187切换应用,207打开联系人,220减低屏幕亮度,221增加屏幕亮度,223系统休眠,224点亮屏幕)

2.7 设备属性指令

命令含义
adb shell cat /proc/cpuinfo查看手机系统CPU使用情况
adb shell cat /proc/meminfo查看手机系统内存使用情况
adb shell dumpsys cpuinfo查看当前设备CPU使用情况
adb shell dumpsys meminfo查看当前系统的内存
adb shell dumpsys meminfo <应用名>查看某个应用的内存
adb shell ps查看进程
adb shell top查看cpu使用情况(实时)
adb shell top | grep “包名”查看某个包的一些性能指标
adb shell top -d 1 | grep “包名”每个一秒查看某个包的一些性能指标
adb shell dumpsys battery电池电量
adb shell settings put global adb_enabled 0关闭USB调试
adb shell wm density reset恢复屏幕密度
adb shell wm density 160修改屏幕密度
adb shell wm size 480x1024修改分辨率
adb shell wm size屏幕分辨率
adb shell wm density屏幕密度
adb shell dumpsys window displays显示屏参数
adb shell cat /system/build.prop更多硬件与系统属性
adb shell cat /sys/class/net/wlan0/addressmac地址
adb shell ifcongfigIP地址
adb shell getprop ro.product.model查看设备信息
adb shell dumpsys sensorservice查看sensor的信息

2.8 压测相关指令

压测相关:Monkry是用于稳定性与压力的命令行工具(长时间对手机进行某些操作)
压力测试:随机性,完整性,持续性

命令含义
adb shell monkey 100100个随机事件(比如点击,移动等)
adb shell monkey -v 100打印详细的日志(-vv更详细,-vvv最详细)
adb shell monkey -p 包名 事件数测试一个包
adb shell monkey -p 包名 -p 包名 事件数测试多个包
adb shell monkey -p 包名 --throttle 时长 事件数指定事件时间间隔
adb shell monkey -p 包名 --throttle 时长 -s <seednumber> 事件数指定伪随机数生成器的seed值(种子数相同的两次运行顺序一样)
adb shell monkey -p 包名 -p 包名 --pct-touch 80 事件数触摸事件比例为80%
adb shell monkey 事件数 > 文件路径保存日志

2.8.1 设置事件比例参数

monkey事件相关参数概率
–pct-touch触摸事件 (设定点击事件百分比)
–pct-motion滑动事件(设定动作事件百分比)
–pct-trackball轨迹事件(设定轨迹事件百分比)
–pct-nav导航事件(设定基本导航事件百分比,比如输入设备上下左右键)
–pct-majornav主要导航事件(设定主要导航事件百分比,比如中间键,返回键,菜单键)
–pct-syskeys系统按键事件(设定系统导航事件百分比,比如home键,back键,拨号键音量键)
–pct-appswitchactivity之间的切换(设定启动activity事件百分比)
–pct-pinchzoom缩放事件
–pct-rotation屏幕旋转事件
–pct-flip键盘事件
–pct- anyevent任意事件(设定不常用事件百分比)

2.8.2 事件忽略某些异常

adb shell monkey -p 包名 --pct-touch 80 --ignore-crashes 事件数触摸事件比例为80%(忽略崩溃)
–ignore-crashes忽略崩溃
–ignore-timeouts忽略超时
–ignore-security-exceptions忽略安全异常
–kill-process-after-error发生错误后直接杀死进程
–dag-no-events初始化启动的activity,但是不产生任何事件
–hprof指定该项后在实践序列发送前后会立即分析报告
–monitor-native-crashes跟踪本地方法的奔溃问题
–wait-dbg直接连接调试器才执行monkey测试
-bugreport党ANR,系统无响应,Crash的时候获得bugreport

杀死进程停止测试:
adb shell
ps |grep monkey
kill -9 <端口号>

2.8.3 日志分析

日志分析
crash闪退
exception异常
force closed强制退出
anr程序无响应

2.9 实用功能

命令含义
adb exec-out screencap -p > E:/a.png截图
adb shell screenrecord /sdcard/filename.mp4录制屏幕
adb reboot重启手机
adb shell svc wifi enable开启 WiFi
adb shell svc wifi disable关闭 WiFi
adb reboot recovery重启到 Recovery 模式
adb reboot bootloader重启到 Fastboot 模式
adb shell setenforce 1启用 SELinux
adb shell setenforce 0禁用 SELinux
adb enable-verity启用 dm_verity
adb disable-verity禁用 dm_verity
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值