性能分析工具Systrace的使用详解

性能分析工具Systrace的使用详解

安装

systrace命令是一个Python脚本,所以需要进行如下准备:

Android Studio下载并安装最新的Android SDK Tools。
安装Python并将其添加到工作站的执行路径中(注意,这里要求Python2.7版本)。
使用USB调试连接将搭载Android 4.3(API 级别 18)或更高版本的设备连接到开发系统。
systrace 命令在 Android SDK Tools 工具包中提供,位于 android-sdk/platform-tools/systrace/。

命令语法

要为应用生成HTML报告,我们需要使用以下语法从命令行运行systrace:
python systrace.py [options] [categories]

命令和命令选项
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-K2WL6ZJW-1666574395526)(en-resource://database/1526:1)]

实例1:
python ./systrace.py -t 5 -o mynewtrace.html

  • mynewtrace.html 这个是最终的生产物
  • 5代表捕获5s的数据

实例2:
python systrace.py -o mynewtrace.html sched freq idle am wm gfx view \ binder_driver hal dalvik camera input res
这个是mynewtrace.html之后的参数,表示类别列表

如果要在跟踪输出中查看任务名称,就必须要在命令参数中添加sched类别

查看已连接设备支持的类别列表
python systrace.py --list-categories

查看报告元素

Systrace 会生成包含多个部分的输出 HTML 文件。该报告列出了每个进程的线程。如果给定线程会渲染界面帧,该报告还会沿时间轴指明所渲染的帧。当您在报告中从左向右移动时,时间会向前推移。

用户互动

这个一部分就是包含表示应用或游戏中的具体用户互动(例如点按设备屏幕)的条形图,这些互动可用作有用的时间标记。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6qJZZkq9-1666574395527)(en-resource://database/1528:1)]

CPU活动

这个部分显示了每个CPU中的线程活动的条形图。这些条形图会显示所有的应用,这个里面包括我自己写的应用或者游戏中的活动。
CPU活动部分可以展开,展开后就可以查看每个CPU的时钟频率,图1就是展示了一个收起后的CPU活动部分。

你可能感兴趣的:(android,性能优化,1024程序员节)