Android性能优化 — ANR问题定位分析

ANR(Application Not Response)应用程序未响应,当主线程被阻塞时,就会弹出如下弹窗

一、traces.txt文件

Android的traces.txt文件记录了进程的堆栈情况,对于分析应用响应慢,以及ANR的原因很有帮助。traces.txt文件的位置位于/data/anr/。

二、导出traces.txt文件

复制代码
adb pull /data/anr/traces.txt D:/

三、traces.txt文件分析

  • 着手点就是从这个"main"
  • 最后的调用就是这个destroy方法,该方法是jni调用
  • jni层的实现

    可以得知,jni层的实现中涉及了耗时操作,所以我们应该在子线程中调用该方法。
相关推荐
疯华整猫3 小时前
否决 Flutter 提案那天,我发现自己也说不清 Framework 管什么
android
传奇开心果编程15 小时前
【Flutter踩坑排雷】第25课:ScrollController 误用坑|跳转失效、监听泄漏与“控制器未附加”
android·flutter·ios·移动开发·跨平台·dart·声明式ui
慕容雪_18 小时前
Capacitor8-Android打包完整手册
android·打包·capacitor
熊猫钓鱼>_>21 小时前
普通用户视角的端侧智能体验手记【鸿蒙心迹】
开发语言·人工智能·华为·智能手机·性能优化·ai编程·harmonyos
阿杰m1 天前
Android源码第十三章:Bluetooth——沿一次发现走到控制器
android
booboosui1 天前
派活给另一个 AI:前后两次文件夹快照,就是交付清单
android
2601_967987371 天前
Python 教程:默认字典(defaultdict)全维度深度指南
python·性能优化·数据处理·collections·defaultdict
普通人61 天前
MySQL_FIND_IN_SET函数详解
android·数据库·mysql
MyBili1 天前
Chrome性能优化实战:让老旧浏览器重获流畅体验
chrome·性能优化·谷歌浏览器·内存管理·浏览器提速·老旧设备优化·卡顿解决
好的佩奇2 天前
Dart 之集合元素
android·flutter·dart