Android调试工具之Traceview使用

时间:2021-04-24 10:56:55

1、在代码中添加Traceview跟踪方法,方法为

android.os.Debug.startMethodTracing()和
android.os.Debug.stopMethodTracing();
 

如下代码所示,则程序运行时会记录两个方法中间所有函数执行的时间统计

 android.os.Debug.startMethodTracing();
fun1();
     fun2();
android.os.Debug.stopMethodTracing();

方法执行完后,会在手机sdcard中生成一个dmtrace.trace文件

使用ddms将该文件导出至电脑上,然后cmd命令进入Android sdk的tools目录下,执行命令:

  traceview d:\dmtrace.trace

Android调试工具之Traceview使用

执行命令后会打开如下界面:

Android调试工具之Traceview使用

 

知道哪个函数耗时,就可以逐个优化耗时操作了

 下表是Traceview界面每个字段表示的含义

列名

描述

Name

该线程运行过程中所调用的函数名

Incl Cpu Time

某函数占用的CPU时间,包含内部调用其它函数的CPU时间

Excl Cpu Time

某函数占用的CPU时间,但不含内部调用其它函数所占用的CPU时间

Incl Real Time

某函数运行的真实时间(以毫秒为单位),内含调用其它函数所占用的真实时间

Excl Real Time

某函数运行的真实时间(以毫秒为单位),不含调用其它函数所占用的真实时间

Call+Recur Calls/Total

某函数被调用次数以及递归调用占总调用次数的百分比

Cpu Time/Call

某函数调用CPU时间与调用次数的比。相当于该函数平均执行时间

Real Time/Call

同CPU Time/Call类似,只不过统计单位换成了真实时间