【实践】TraceView使用

来源:互联网 发布:人工智能 手机应用 编辑:程序博客网 时间:2024/06/10 04:38

零.简介

DDMS是一个集调试、浏览、控制等操作为一体的工具箱,而traceView只是一个性能调优工具,可通过它查看程序中方法的执行效率等指标。

如何打开traceview?

方法1:最简单的方式就是直接打开DDMS,选择一个进程,然后按上面的“Start Method Profiling”按钮,等红色小点变成黑色以后就表示TraceView已经开始工作了。然后进行手机操作,操作最好不要超过5s,因为最好是进行小范围的性能测试。然后再按一下刚才按的按钮,等一会就会出现上面这幅图,然后就可以开始分析了。
Androidstudio如何打开DDMS:

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

上述两种方式都可以进行测试的开始,第一种方式适用于更大范围的调试,第二种更加的精确,可以在局部方法测试。

一.能做什么?

1.分析卡顿情况。
从代码层面分析性能问题,针对每个方法来分析,比如当我们发现我们的应用出现卡顿的时候,我们可以来分析出现卡顿时在方法的调用上有没有很耗时的操作,关注以下两个问题:

调用次数不多,但是每一次执行都很耗时
方法耗时不大,但是调用次数太多
简单一点来说就是我们能找到频繁被调用的方法,也能找到执行非常耗时的方法,前者可能会造成Cpu频繁调用,手机发烫的问题,后者就是卡顿的问题

2.发现出现手机发烫、卡顿、高 CPU 占有率的现象问题的原因。

二.工作台介绍

traceview的面板分上下两个部分:
时间线面板以每个线程为一行,右边是该线程在整个过程中方法执行的情况
分析面板是以表格的形式展示所有线程的方法的各项指标

左边是线程信息,main线程就是Android应用的主线程,这个线程是都会有的,其他的线程可能因操作不同而发生改变.每个线程的右边对应的是该线程中每个方法的执行信息,左边为第一个方法执行开始,最右边为最后一个方法执行结束,其中的每一个小立柱就代表一次方法的调用,你可以把鼠标放到立柱上,就会显示该方法调用的详细信息:

支持放大某个区域

可以看出来,每一个方法都是用一个凹型结构来表示,坐标的凸起部分表示方法的开始,右边的凸起部分表示方法的结束,中间的直线表示方法的持续.

分析面板的含义

三.如何操作

打开Monitor,点击图中的标注的按钮,启动追踪。

打开App操作你的应用后,再次点击的话就停止追踪并且自动打开traceview分析面板。

四.实践

http://www.cnblogs.com/sunzn/p/3192231.html

http://blog.csdn.net/innost/article/details/9008691/

五.参考资料

TraceView工具(Device Monitor)
https://www.kancloud.cn/digest/itfootballprefermanc/100911

原创粉丝点击