bugreport工具的使用
当我们的应用遇到ANR时,可能会想到的办法是去看data/data/anr目录的trace.txt文件,如下图所示:
然后打开根据log中的trace信息去定位,大概的文本结构结构如下:
ANR in com.example.catchanrlog (com.example.catchanrlog/com.example.anr_monitor.SecondActivity)
PID: 17267
Reason: Input dispatching timed out (AppWindowToken{1d36b86 token=Token{6b1461 ActivityRecord{a84bbc8 u0 com.example.catchanrlog/com.example.anr_monitor.SecondActivity t832}}}, Waiting because no window has focus but there is a focused application that may eventually add a window when it finishes starting up.)
Dump time: 2022-02-28 00:33:11.956 GMT+08:00
Package: com.example.catchanrlog
Current looper: Looper (main, tid 2) {44f9de7}
Current running message:seq=32 plan=00:32:59.002 late=216ms h=android.app.ActivityThread$H w=159
History of long time messages on Looper (main, tid 2) {44f9de7}:Msg #1: seq=28 plan=00:32:58.993 late=11ms wall=211ms running=1ms h=android.view.ViewRootImpl$ViewRootHandler c=android.view.View$PerformClickMsg #2: seq=25 plan=00:32:58.759 late=1ms wall=231ms running=10ms runnable=8ms h=android.view.ViewRootImpl$ViewRootHandler c=android.view.View$PerformClickMsg #3: seq=3 plan=00:32:39.755 late=126ms wall=175ms running=154ms runnable=5ms h=android.app.ActivityThread$H w=159Msg #4: seq=2 plan=00:32:39.689 late=0ms wall=192ms running=177ms runnable=3ms h=android.app.ActivityThread$H w=110(dump anr info success and took 7ms)
但是问题来了,ANR的trace.txt文件在高版本设备上是没有权限获取的,我这边的截图虽然是Anroid9,理应没有权限才对,是因为是装的开发版的系统,获取了ROOT权限,所以可以直接查看,正常的设备是没有权限查看的。因此bugreport工具就能解决这样的问题。
官方文档:https://developer.android.com/studio/debug/bug-report
获取bugreport报告:
adb bugreport
运行上面的adb命令后会生成一个命名为 bugreport-BUILD_ID-DATE.zip的压缩包文件,上面是没在bugreport命令后加上存储路径,会自动保存在设备内部存储的bugports文件夹下:
这个时候的压缩包实际上是记录了很多个子文件,我们可以在里面找到我们需要的比如anr的trace.txt文件:
打开后看看内容,发现其实就是我们平时需要的anr的log文件,内容是一样。
bugreport工具的使用相关推荐
- Android bugreport工具分析和使用
bugreport是什么,怎么用? Android系统想要成为一个功能完备,生态繁荣的操作系统,那就必须提供完整的应用开发环境.而在应用开发中,app程序的调试分析是日常生产中进程会进行的工作.And ...
- Android adb bugreport工具分析和使用
bugreport是什么,怎么用? Android系统想要成为一个功能完备,生态繁荣的操作系统,那就必须提供完整的应用开发环境.而在应用开发中,app程序的调试分析是日常生产中进程会进行的工作.And ...
- Android adb bugreport 工具分析和使用
执行 adb bugreport 会自动下载一个 zip 的压缩包 至于有什么用,我也不晓得.开发让我提供,我就提供. bugreport是什么,怎么用? Android系统想要成为一个功能完备,生态 ...
- 【转载】Android 工具-adb原理
2019独角兽企业重金招聘Python工程师标准>>> Android 开发中, adb 是开发者经常使用的工具,是 Android 开发者必须掌握的. Android Debug ...
- 安卓应用测试MonkeyMonkeyScriptMonkeyRunnerpyhton性能工具脚本
目录 一.安装Android SDK 1.1 mac安装Android SDK 1.1.1 方式一:下载 Android SDK 1.1.2 方式二:使用brew 安装 Android SDK ...
- Log抓取和分析-BugReport
参考文章: http://blog.csdn.net/createchance/article/details/51954142 Google为了方便Android开发人员分析整个系统平台或者某个AP ...
- Battery historian安装及使用
在介绍Battery historian之前首先来介绍一下 Android adb bugreport 工具,bugreport是什么,怎么用? android系统想要成为一个功能完备,生态繁荣的操作 ...
- Android 系统性能优化(53)---功耗优化battery-historian V2.0的数据获取
battery-historian V2.0的数据获取及参数分析 单来说,Battery historian是一款通过上传bugreport文件分析用户手机中App的电池耗电情况的工具. 那bugre ...
- Android软件安全开发实践(下)
Android软件安全开发实践(下) Android开发是当前最火的话题之一,但很少有人讨论这个领域的安全问题.本系列将分两期,探讨Android开发中常见的安全隐患和解决方案.第一期将从数据存储.网 ...
最新文章
- Java程序后台运行,即使关掉Putty终端
- 基于Visual C++2010与windows SDK fo windows7开发Windows 7的多点触摸特性应用程序(1)
- java add offer_图解Java中的5大队列!(干货收藏)
- python3.7安装turtle步骤-Python3.6安装turtle模块
- Reallusion Character Creator 3中文版
- ubuntu+VsCode+Cmake+eigen 开发eigen应用
- mysql文件系统_mysql文件系统先睹为快
- SAP Fiori Launchpad tile点击之后,后台的调整url解析机制
- HALCON示例程序pcb_inspection.hdev检测pcb印刷缺陷
- django url 生效_Django基础知识
- Lombok ——自动化方法生成器
- springboot数据源oracle,springboot+mybatis中使用多数据源oracle数据库
- ribbon 配置 动态更新_SpringCloud实战三-Ribbon
- everything is tools!
- apms阅卷系统服务器,Win 8系统运行APMS阅卷系统的解决办法
- 证件照素材大合集(全网最全版本),满足证件照的一切需求!
- iOS13新增SceneDelegate文件适配
- IDEA 社区版进行 Web 开发
- 滚石特写: 沉默7年后, Magic Leap用魔幻现实主义式科技重新定义了自己
- 2021爱彼迎年度民宿榜单出炉,住进全国100家优质乡野民宿