你可以通过命令行或者Device Monitor两种方式收集Systrace信息,以下以命令行为例介绍收集方式(因为我Device Monitor的方式报错)。
首先进入sdk下的platform-tools/systrace目录下:
然后在命令下执行以下命令来收集数据:
python systrace.py --time=10 -o mynewtrace.html sched gfx view wm
上面的参数–time为间隔时间,-o为文件名,更详细的参数信息如下:
参数名 | 意义 |
---|---|
-h,--help |
帮助信息 |
-o <FILE> |
保存的文件名 |
-t N,--time=N |
多少秒内的数据,默认为5秒,以当前时间点往后倒N个时间 |
-b N,--buf-size=N |
单位为千字节,限制数据大小 |
-k <KFUNCS> --ktrace=<KFUNCS> |
追踪特殊的方法 |
-l,--list-categories |
设置追踪的标签 |
其中标签可选项如下:
标签名 | 意义 |
---|---|
gfx | Graphics |
input | Input |
view | View |
webview | Webview |
vm | Window Manager |
am | Activity Manager |
audio | Audio |
video | Video |
camera | Camera |
hal | Hardware Modules |
res | Resource Loading |
dalvik | Dalvik VM |
rs | RenderScript |
sched | Cpu Scheduling |
freq | Cpu Frequency |
membus | Memory Bus Utilization |
idle | Cpu Idle |
disk | Disk input and output |
load | Cpu Load |
sync | Synchronization Manager |
workq | Kernel Workqueues |
以上标签并不支持所有机型,还有要想在输出中看到任务的名称,需要加上sched.
上面的命令执行完后,会生成一个html文件:
打开该文件后,我们会看到如下页面:
快捷键 | 作用 |
---|---|
w | 放大 |
s | 缩小 |
a | 左移 |
d | 右移 |
f | 返回选中区域,切放大选中区域 |
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文:http://blog.csdn.net/itfootball/article/details/48915935