ANR与Crash

ANR是应用无响应,crash是崩溃闪退等
ANR原因:线程阻塞,输入性事件在特定时间内无法完成
crash原因:内存不足,数据转换异常

 

ANR问题:
1.log文件夹下全局搜am_anr,此时会把log文件下下所有的包含am_anr的行显示出来(也可以搜activitymanager: ANR)
2.一般同一个时间点的anr log会在不同的文件中出现两次,一次是logxxx.txt中,一次是在crash_xxxxxx文件夹中的aplog_ANR_时间文件中
3,进入到crash_xxxxxx文件夹下,找到一个data_app_anr@xxx.txt文件
4,在data_app_anr@xxx.txt文件中找到"main" prio=5 tid=1 Nativ这一行,往下看会有一些异常log,这些log描述的就是问题原因

ANR如果是由于主线程阻塞,在data_app_anr@xxx.txt中的"main" prio=5 tid=1 中会显示 block

在处理ANR问题时,找到在log文件中找到ANR log出现的节点,然后要往上看一部分,因为有些log是自动化测试在模拟点击事件,反复点击或者进入一个应用,往上看一部分log有助于分析在ANR之前手机有哪些操作。

解决方案:异步

Crash问题:
1.log文件夹下全局搜am_anr,此时会把log文件下下所有的包含am_crash的行显示出来
2.crash问题很好看,基本上就代码写的有问题,针对出现的问题修改一下就好

友情提醒
分析log时往往要全局或者是整个文件下搜索,找一个自己用的顺手的文本编辑器很重要,本人使用的是sublime,它可以导入整个文件夹,搜索起来很方便

posted @   陈晓猛  阅读(646)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示