Android性能专项测试之Systrace工具

Systrace Walkthrough 
Systrace 
Analyzing UI Performance with Systrace 
Speed up your app

Systrace能做什么?

  • 计算容器的性能
  • 发现性能的瓶颈

Systrace的使用准备

  • 4.1以上
  • root
  • Android SDK Tools 20
  • python环境

Systrace启动

你可以通过命令行或者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 设置追踪的标签
-a <APP_NAME>,--app=<APP_NAME> 包名
--from-file=<FROM_FILE> 创建报告的来源trace文件
-e <DEVICE_SERIAL>,--serial=<DEVICE_SERIAL> 设备号

其中标签可选项如下:

标签名 意义
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文件: 
这里写图片描述 
打开该文件后,我们会看到如下页面: 
这里写图片描述

systrace快捷键

快捷键 作用
w 放大
s 缩小
a 左移
d 右移
f 返回选中区域,切放大选中区域

这里写图片描述

Alerts

Alerts一栏标记了以下性能有问题的点,你可以点击该点查看详细信息,右边侧边栏还有一个Alerts框,点击可以查看每个类型的Alerts的数量:

这里写图片描述

Frame

在每个包下都有Frame一栏,该栏中都有一个一个的F代表每一个Frame,用颜色来代表性能的好坏,依次为绿-黄-红(性能越来越差),点击某一个F,会显示该Frame绘制过程中的一些Alerts信息: 
这里写图片描述

如果你想查看Frame的耗时,可以点击某个F标志,然后按m键: 
这里写图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值