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层的实现中涉及了耗时操作,所以我们应该在子线程中调用该方法。
相关推荐
fundroid3 分钟前
Android AI 开发,真正拉开差距的是工程闭环
android·ai·大模型·agent
脚踏实地,坚持不懈!6 分钟前
Android 面试题全解(结合 AOSP 源码 · 截至 Android 17 / API 37)
android
换元不配限1 小时前
Android 架构演进实战:MVC → MVP → MVVM → MVI
android·架构·mvc·mvvm·mvp·mvi
mmsx3 小时前
Android Dialog 插槽模式:用一套壳统一全应用的弹窗风格
android·java·dialog·开发语言
码上有光3 小时前
Linux:进程间通信——匿名管道通信、命名管道通信
android·java·linux·linux通信·匿名通信·命名通信
cindershade4 小时前
一条请求的接力赛:用运行时责任重画 RSC 边界
性能优化·next.js
打工仔折腾 AI4 小时前
把模型切换交给平台:用蓝耘智能路由搭建商品评论分析工具
java·服务器·前端·后端·python·性能优化·ai agent 实战
500844 小时前
React Native for OpenHarmony 实战:三方库 react-native-crypto-js 的鸿蒙化适配指南
javascript·react native·性能优化·electron·harmonyos
爱笑鱼5 小时前
Android 系统启动机制(九):system_server 已经运行,为什么还不能说 Android 启动完成?
android
mmsx5 小时前
Android 上的 AI 对话链路:流式响应、SSE 解析与三级降级
android·kotlin