本文用于总结了个人在实际工作中常用的 adb 抓取 log 的常用指令,目测会不断更新和修改
1. Android 中 Log 的种类
Android 中正常运行过程中打印的 log 有以下种类:
main、radio、system、events、crash
2. adb logcat 的使用
详细的参数解释可以通过 adb logcat -help 指令打印出来
本人常用的参数有-v、-b、-s
-v 我本人常用的参数为 threadtime,该参数会在 log 中打印每条log的时间和线程号信息
-s 后面的参数用于设置标签信息,设置后,logcat 只会打印该标签对应的 log 信息,比如“MtpService”标签的 log
-b 用于设置输出特定种类的 log,候选参数为 main、raido、system、events、crash、default、all
其中 default 参数包含了 main、system、crash,即,在logcat不设置-b参数的情况下,log中包含了main、system和crash log,亲测正确
>filename 将 log 保存到 pc 当前目录下的 filename 文件中
实例:
adb logcat -v threadtime -b system -s StorageManagerService >MountService.log
3. 不通过 USB 链接 PC 的状况下,抓取 log 并保存到手机的特定目录
3.1 在手机端安装模拟终端 app ,具体可到应用商店下载
3.2 在模拟终端 app 中执行以下指令实现log抓取的开始和终止
shell@android$ adb shell
shell@android$ logcat -f /path/where/to/save/mylog.txt
shell@android$ exit
以上指令,通过-f 将 log 保存到手机端 /path/where/to/save/ 目录下的 mylog.txt 文件中
3.3 使用 adb pull 指令将以上保存的文件拷贝出来
4. 系统 ANR log的获取
adb pull /data/anr/