欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

android出现ANR 如何导出anr文件

程序员文章站 2022-07-14 17:29:33
...

1.老版Android系统 anr的导出

在项目目录下或app下运行命令:

android出现ANR 如何导出anr文件

 adb pull data/anr/traces.txt
  • 1

测试了华为p7(Android 5.1.1)和荣耀v10(Android 9),发现都能正常导出。但是遇到华为mate10、mate10 pro 一直都导出失败。

adb: error: failed to stat remote object 'data/anr/traces.txt': No such file or directory
  • 1

查了些资料,发现厂商有对这块做优化。以前anr一直放在traces文件中,多次出现有覆盖的问题。高版本厂商做了优化,会根据时间戳分别生成一个文件,打包导出。

2.高版本导出方案

1.查看是否存在traces。

adb shell    
cd data/anr
ls -a      //列出所有文件
  • android出现ANR 如何导出anr文件这时尝试用命令导出:
 D:\code\githup\AndroidReView\app>adb pull data/anr/anr_2019-01-30-13-35-18-005
adb: error: failed to copy 'data/anr/anr_2019-01-30-13-35-18-005' to '.\anr_2019-01-30-13-35-18-005': remote open failed: Permission denied
  • 1
  • 2

提示权限拒绝,我们无法想之前一样导出anr目录下某个文件。

解决方案:

adb bugreport
  • 1

android出现ANR 如何导出anr文件
此命令会导出一个zip压缩包,解压后在FS/data/anr目录下就可以看到traces文件了。

  • adb bugreport 命令也可以指定文件导出目录,如导出到桌面:adb bugreport C:\Users\Nxin\Desktop ;不指定时会在当前命令行对应目录下导出压缩包。
相关标签: android android