【软件测试】使用ADB命令抓取安卓app日志信息(含指定应用)
目录
一、连接手机,启动 adb 服务
二、抓取日志
三、抓取特定APP日志
一、连接手机,启动 adb 服务
启动命令:
adb start-server
手机打开 "开发者选项", 打开 "USB调试" 选项
部分手机需要打开 "允许通过USB安装应用" 的设置,用数据线连接PC和手机
在 PC 命令行输入 adb 命令,可查看已连接的手机列表
adb devices
二、抓取日志
优先级,在Android中,日志的优先级从低到高分为以下几种:
V——Verbose(最低级别,开发测试中的一些详细信息,仅在开发中使用,不可在发布产品中输出);
D——debug(调试用于调试的信息,可以在发布的产品中关闭,比较常见);
I——info(信息,一般是提示性信息);
W——warning(警告);
E——error(错误,已经出现可影响运行的错误,比如应用crash或anr时输出的日志);
adb logcat -c 清除之前的日志信息,看日志前执行adb logcat -v time 打印日志adb logcat -v time > D:\log.txt 输出日志到指定路径文件adb logcat -v time *:E > D:\log.txt 输出错误日志到指定路径文件Ctrl+C结束抓取
三、抓取特定APP日志
获取前台应用包名命令:
adb shell dumpsys window | findstr mFocusedApp
或者下面这个
adb shell dumpsys window | findstr mCurrentFocus
- 查看所有应用列表:adb shell pm list packages
- 查看系统应用列表:adb shell pm list packages -s
- 查看第三方应用列表: adb shell pm list packages -3
2、获取App的进程ID,加上上面查到的包名
adb shell ps | findstr 包名
3、使用命令过滤并抓取日志,需要上面查到的App的进程ID
adb logcat | findstr 进程ID
4、抓取指定APP的error日志
adb logcat *:E | findstr 进程ID > D:\log.txt
或者
adb logcat -v time *:E | findstr 进程ID > D:\log.txt
编写本博客时有参考以下资料,推荐阅读:
adb进阶知识,如何过滤只查看某一个app的日志 - YouxiYouxi - 博客园