Android 应用程序无响应定位ANR原因

废话不多说,直接上方案:

第一步:

执行adb命令

adb bugreport /Users/mac/Desktop/anr

解压后FS/data/anr下就会有相关anr文件

/Users/mac/Desktop/anr 是电脑存储文件的路径,可以随便定义,这个没有影响。我的电脑是mac,如果是windows,可以将路径修改为E:\xxx\xxxx,同样可以随便定义。

第二步:

解压后,目录结构大致是这样。框起来的部分就是最近出发ANR的日志,当然如果应用进程一样,其他时间段的也可以看看。

第三步:

以anr_2023-12-01-09-59-25-223这个日志为例,查看具体原因。

头部第一步部分标明了应用进程、pid、uid、应用包名、版本号、ANR类型(触摸事件在5s内无响应)Waited 5001ms for KeyEvent(action=DOWN))。包名也正好是自己的应用包名,直接全局查找报名相关的代码。

定位具体原因,代码执行解压出现耗时操作,修改代码逻辑。

---------------------------------------------------完结撒花---------------------------------------------------

相关推荐
2501_9160074718 分钟前
iOS文件管理工具深度剖析,从系统沙盒到跨平台文件操作的多工具协同实践
android·macos·ios·小程序·uni-app·cocoa·iphone
Android疑难杂症1 小时前
鸿蒙Notification Kit通知服务开发快速指南
android·前端·harmonyos
lcanfly1 小时前
Mysql作业5
android·数据库·mysql
进阶的小叮当2 小时前
Vue代码打包成apk?Cordova帮你解决!
android·前端·javascript
-指短琴长-3 小时前
MySQL快速入门——基本查询(上)
android·数据库·mysql
下位子4 小时前
『OpenGL学习滤镜相机』- Day6: EGL 与 GLSurfaceView 深入理解
android·opengl
java干货4 小时前
MySQL “灵异事件”:我 INSERT id=11,为什么被 UPDATE id=10 锁住了?
android·数据库·mysql
正经教主5 小时前
【App开发】ADB 详细使用教程- Android 开发新人指南
android·adb
gx23485 小时前
MySQL-5-触发器和储存过程
android·mysql·adb
六件套是我13 小时前
redission实现延时队列
android·java·servlet