adb-基本使用

1,167 阅读2分钟
adb的全称为Android Debug Bridge,就是起到调试桥的作用。

如果作为移动端的测试人员而言,需要掌握基本的adb命令。


基础命令:

adb devices 查看连接的设备 手机授权后 ,状态unauthorized更改为device

adb devices -l 查找所有设备并显示product、model、device、transport_id等信息

adb install apk具体路径 (apk存放在pc)

adb -r install apk具体路径 (apk存放在pc)覆盖安装

adb shell getprop ro.build.version.release 查看Android的版本信息

adb shell pm list packages -s 列出所有应用包名

adb shell pm list packages -3 列出所有第三方应用包名

adb shell pm clear com.vipcashback.android 清除应用的缓存数据 (com.vipcashback.android是包名)

日志:

adb logcat *:W 显示所有优先级大于warning的日志

adb logcat -d -v *:W> logcat.txt 输出logcat日志到logcat.txt

adb logcat | grep 应用PID 实时输出指定应用的日志

adb logcat -c 清除历史日志记录

adb logcat -d -v --pid=XXX *:W> logcat.txt 输出指定应用的waring日志

adb logcat App:D *:S 过滤输出tag为APP的日志记录(需运行应用)某种情况下,同一台设备的GoogleAdId会改变

adb shell am monitor 启动一个Crash和ANR的监听器,如有Crash或ANR会在控制台输出相关信息

截图:
adb shell screencap /sdcard/screen.png (手机保存的路径)
adb pull /sdcard/screen.png C:\Users\a\Desktop\ 将截图复制到电脑桌面(指定路径)
adb shell rm /sdcard/screen.png 删除手机里的截图

查找进程

adb shell ps | grep adbd

adb shell ps | findstr adbd

获取被测应用的 UID

1、查看被测应用的进程 ID(PID)
adb shell ps | grep <应用包名>

2、查看被测应用的用户 ID(UID)
adb shell cat /proc/pid/status

使用Activity

adb shell dumpsys activity | grep mFocusedActivity 获取当前应用顶层activity(包名/活动名称)返回数据例如:mFocusedActivity: ActivityRecord{3021a8c u0 toko.ceban.saku/com.mbs.od.main.MainActivity t6831}

adb shell am start -n toko.ceban.saku/com.mbs.od.main.MainActivity 根据activity启用应用

adb shell am force-stop {包名} 停止应用


注:windows用findstr代替grep,在windows上使用grep,则shell后面的语句加上双引号,例:adb shell “ps | grep adbd”