做软件测试的时候,有时候会遇到 anr(程序无响应 Application Not Responding),需要导出一下log,anr 日志一般是在 /data/anr/traces.txt 里。
在网上找了很多都是输入这行命令就行了:
adb pull /data/anr/traces.txt D:/
但是我每次都会出错,也是很无奈,然后再去网上找了其他的四步骤,,中间也是遇到一些坑,跟大家分享一下。
在这之前其实还可以先确认一下,/data/anr/ 目录下是否有anr 日志
1.adb shell
2.ls /data/anr
//输入命令 2 以后,如果显示文件traces.txt,代表有 anr 日志,那就执行下面的步骤。如果该目录下什么都没有,那可能是没有生成 anr 日志,那就可以放弃了
3.cat /data/anr/traces.txt >/mnt/sdcard/aa.txt
//注意路径不要错误,网上很多都是给的 cat /data/anr/xxx >/mnt/sdcard/yy/zz.txt,要根据自己的实际路径改这个命令,我给自己的log 命名的是aa.txt
4.exit
5.adb pull /mnt/sdcard/aa.txt
//这里千万要注意,网上给的是 adb pull /mnt/sdcard/yy/zz.txt d:,但是我每次都会报错,后来发现是当前所在的目录不对,所以一直导出失败,命令行显示的是