TraceView
TraceView
TraceView
什么是 TraceView?
TraceView
是 Android SDK 自带的工具,用来分析函数调用过程,可以对 Android 的应用程序及 Framework 层的代码进行性能分析。
TraceView
提供了一个图形化界面,用于查看应用程序的执行日志。它可以帮助开发者调试应用程序并分析其性能,通过执行日志中的时间戳揭示程序执行期间的方法调用和执行时间。TraceView
工具能呈现程序运行时的方法调用栈以及每个方法的执行时间,这对于找到性能瓶颈和优化代码非常有用。
使用方式
获取 trace 文件
DDMS
- DDMS,点击
Start Method Profiling
开始,Stop Method Profiling
结束 - 结束自动跳转到 TraceView 视图
使用方便,监控范围不够精确
代码加入调试语句
- 开始监控地方调用:
Debug.startMethodTracing()
- 结束的地方调用:
Debug.stopMethodTracing()
- 在 sd 卡创建:
<trace-name>.trace
文件 - 使用 traceview 打开文件
。trace
文件包含了方法名跟踪数据,线程和方法名的映射表
TraceView 的局限性
- 性能开销:使用 TraceView 进行跟踪时,会对应用的性能产生一定影响。这是因为跟踪操作会增加额外的处理负担。
- 方法跟踪限制:TraceView 主要是通过跟踪 Dalvik 字节码的方法调用来工作的。这意味着它对于本地代码(C/C++)或者通过 JNI 层调用的代码分析能力比较有限。
- 用户界面 (UI):TraceView 的界面相对复杂,可能需要一段时间来熟悉其所有的功能和选项。
- 新的分析工具:自从引入了 Android Profiler 之后,Google 逐渐减少了对 TraceView 的支持,并推荐使用 Android Profiler 这一新的性能分析工具。
- 不再维护:在旧版本的 Android Studio 中,TraceView 很多时候无法正常工作,且随着 Android Studio 的更新,Google 也越来越少提到 TraceView。
本文由作者按照 CC BY 4.0 进行授权