官方地址 http://developer.android.com/tools/debugging/debugging-tracing.html
推荐:http://blog.csdn.net/innost/article/details/9008691
1.TraceView简介
TraceView是AndroidSDK里面自带的工具,用于对Android的应用程序以及Framework层的代码进行性能分析。
TraceView是图形化的工具,最终它会产生一个图表,用于对性能分析进行说明。
TraceView可以跟踪到具体的Method。
2.TraceView的原理
TraceView通过修改code,在需要调试的起始和结束位置加入调试函数,一般在activity的onCreate()中添加Debug.startMethodTracing(“Test”), 在onStop()中来调用Debug.stopMethodTracing()。这样当我们切换到其它activity或者点击home键的时候onStop()就会被调用,我们也就可以得到完整的trace file。
程序运行之后会在SD的根目录下产生Test.trace文件来保存运行时的数据,然后把Test.trace文件考到pc机上,通过traceview命令对Test.trace文件进行分析。
权限设置:程序会将Trace文件写入手机SDcard中,因此需要添加内存卡访问权限
在manifest文件中加入: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
3. TraceView图形
时间片面板(Timeline panel)
分析面板(Profile panel)
以下是翻译
Exclusive: 同级函数本身运行的时间
Inclusive 就是说除统计函数本身运行的时间外再加上调用子函数所运行的时间
Name:列出的是所有的调用项,前面的数字是编号,展开可以看到有的有Parent 和Children子项,就是指被调用和调用。
Incl: inclusive时间占总时间的白分比
Excl: 执行占总时间的白分比。
Calls+Recur Calls/Total: 调用和重复调用的次数
Time/Call: 总的时间。(ms)