导出ANR traces 文件(解决无权限、Permission denied)

导出ANR traces 文件(解决无权限、Permission denied),第1张

当ANR 发生时,查看系统生成的traces 文件有助于我们定位ANR 产生的原因,那么我们该如何从手机中导出traces 文件呢?可以使用下面的方式

1 老版本Android 系统导出traces

针对Android 10 以下系统使用上面的命令可以导出traces 文件到运行该命令的当前目录下,如果导出到指定目录,只需在命令后面加上路径和文件名即可,例

但是,这个命令在Android 10 及以上是不能导出traces 的,是因为以前ANR 一直放在traces文件中,多次出现有覆盖的问题,高版本系统做了优化,会根据时间戳分别生成一个文件,打包导出。

这个时候,如果运行上面命令,会发现并不能找到tracestxt,如果我们使用 adb shell 进入到设备的 /data/anr 目录,会发现有一些以时间戳命名的文件,它们其实就是traces 文件,

该命令会导出一个zip 压缩包到当前目录(修改路径见上面示例),这个压缩包中包括了一些bug 信息,而traces 文件则包含在压缩包的 FS/data/anr 路径下

3 找到目标traces

我们首先打开压缩包最外层目录下的 bugreport-txt

搜索 anr in 关键字,然后在搜索到的结果匹配我们应用的application id,然后向上滑动,找到 Dumping to /data/anr/filename 这一行,其中filename 就是traces 文件名。

@echo off&setlocal enabledelayedexpansion

for /f "delims=" %%a in (d:\atxt) do (

   set /a num+=1

   echo %%a |findstr "traceroute" >nul 2>nul&&set var=!num!&&call :loop "!var!"

   

 )

pause&exit

:loop

for /f "delims=" %%b in (d:\atxt) do (

   set /a m+=1

   if !m! geq %~1 (

     set "str=%%b"&set "str=!str:traceroute=!"&echo !str!

    )

)>>btx

尝试使用USBoot这款软件来恢复闪存

此软件为绿色软件,解压后即可使用。它的作用是让闪存成为引导盘,但是在一些情况下,可以让被病毒破坏的闪存恢复正常。

首先插入闪存,启动USBoot软件;在列表中选择闪存,在下方“点击此处选择工作模式”处,选择需要模式。选择ZIP模式,启动即可

以上就是关于导出ANR traces 文件(解决无权限、Permission denied)全部的内容,包括:导出ANR traces 文件(解决无权限、Permission denied)、·bat读取txt文档提取指定内容,然后输出、我的U盘里面老有edpTrace.txt这样的文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9579602.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存