这两个工具是android sdk自带工具,在android-sdk-windows\tools中可以找到;
1.traceview分析程序性能
- Debug.startMethodTracing(“test”);
- Debug.stopMethodTracing();
另外需加权限:<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />,否则报文件读写错误。
获取trace文件:
执行tools下面的traceview.bat;adb pull /sdcard/TraceName.trace [本地路径->绝对路径];traceview [本地路径][TraceName.trace];
1).程序中每个线程调用方法的启动和停止时间
Trace文件分析
A timeline panel -- describes when each thread and method started and stopped
每个线程占一行
一种颜色代表一个方法
颜色块下面的单箭头线表示这个方法的生命周期
A profile panel -- provides a summary of what happened inside a method
- Inclusive time:调用该方法所花费的总时间(方法本身消耗的时间+该方法因为调用其他方法而消耗的时间)
- Exclusive time:该方法本身消耗的时间
- parents: calling methods
- children:called methods
2).函数执行的信息和效率分析
2.dmtracedump生成函数调用图,google提供的这个工具是失败的,并不能绘图,可以通过解决实现绘图。