Android应用性能检测工具-TraceView

原文地址:http://blog.csdn.net/hp910315/article/details/50461677

TraceView主要的功能就是检测你的应用在运行过程中各个线程的CPU占用情况,依据此可以找出你的应用出现卡顿的地方。

基本使用

使用TraceView主要有两种方式: 
1、从Android Studio中启动Android Device Monitor: Tools -> Android -> Android Device Monitor. 
(1).选择你要调试的进程。 
(2).点击start mothod profiling,待图标变黑。 
(3).选择sample base profiling 
这里写图片描述

2、使用android.os.Debug.startMethodTracing();和android.os.Debug.stopMethodTracing();方法,当运行了这段代码的时候,就会有一个trace文件在/sdcard目录中生成,也可以调用startMethodTracing(String traceName) 设置trace文件的文件名,最后你可以使用adb pull /sdcard/test.trace /tmp 命令将trace文件复制到你的电脑中,然后用DDMS工具打开

上面部分是你测试进程的中每个线程运行的时间线,可以选择某一个线程的时间线,观察下面部分显示的对应方法的耗时情况 
这里写图片描述

TraceView中的指标

纵轴 
TraceView界面下方表格中纵轴就是每个方法,包括了JDK的,Android SDK的,也有native方法的 
每个方法前面都有一个数字,是全部方法按照Incl CPU Time 时间的排序序

打开每个方法,数据分为两个部分

Parents
Children

Parents表示调用1这个方法的父方法。Children表示方法调用的其他方法。

横轴

Incl Cpu Time

这个方法以及这个方法的子方法一共执行的时间。

例如:

public void a() {
    //代码
    b();
    c();
    d();
    //代码
}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

则上面a()方法的Incl Cpu Time为b(),c(),d()以及a()方法内其他执行代码的执行总时间。

Excl Cpu Time

这个方法除去其中包含的子方法的执行时间,其他代码执行的时间。

以上面为例,Excl Cpu Time为Incl Cpu Time的时间减去b(),c(),d()的执行时间。

Incl Real Time

和Incl Cpu Time 差不多

Excl Real Time

和Excl Cpu Time差不多

Calls + Recur Calls / Total

它表示这个方法执行的次数,这个指标中有两个值,一个Call表示这个方法调用的次数,Recur Call表示递归调用次数

Cpu Time / Call

表示这个方法每调用一次需要的时间,这个地方就可以分析哪些方法存在耗时操作。

Real Time / Call 
这个方法实际调用一次需要的时间。

这里写图片描述

参考文章:

正确使用Android性能分析工具——TraceView

Android应用性能检测工具之CPU篇


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值