Android 性能优化

(五) 上篇 Android 性能优化 Systrace文件生成

2020-07-03  本文已影响0人  科技猿人

小酌鸡汤

早知逢乱世,少小谩读书。

本文来源《Android 性能优化 全家桶》

Systrace是什么?可以分析哪些问题?

Systrace和Cpu profiler的关系

 Systrace和Cpu profiler一般是配合使用来分析问题。因为Systrace 工具不会收集有关应用进程中代码执行情况的信息。要详细了解您的应用正在执行哪些方法及其耗用了多少 CPU 资源,请使用 AS 中的 CPU Profiler。您还可以使用 CPU Profiler 生成跟踪日志,然后导入并检查这些日志。

Systrace的 文件生成 实操开始吧~

(1)systrace实操环境(可选项,用自己的环境和代码也一样)
(2)在命令行上捕获系统跟踪信息
$ python systrace.py --list-categories
 $ python systrace.py [options] [categories]
 $ python systrace.py --help
 $ python systrace.py -t 5 -a com.kejiyuanren.systrace -o ~/testSystrace01.html
(3)设备上直接捕获系统跟踪记录

 看了上面的命令行录制,有些小伙伴就不开心了,命令行不喜欢。没关系,方式有很多种,动动手就行,看下面的:
 搭载 Android 9(API 级别 28)或更高版本的设备包含一个名为“系统跟踪”的系统级应用。此应用类似于上面的 systrace命令行实用工具,但允许您直接从测试设备本身录制跟踪记录,而无需插入设备并通过 ADB 连接到该设备。然后,您可以使用此应用与开发团队共享通过这些跟踪记录得出的结果。

系统跟踪 - 显示“快捷设置”图块 开始录制跟踪 录制结束 - 跟踪记录生成 - 点击共享 系统跟踪 - 参数配置 - 录制功能

 2. 使用 ADB 下载报告(pull命令):


使用 ADB 下载报告

 推荐使用Perfetto工具(可以直接导入,那就不用创建HTML报告了)

 3. 创建 HTML 报告

 $ python systrace.py --from-file=<pull出来的.perfetto-trace文件> -o <html报告路径>
(3)为 Systrace 定义自定义事件
Systrace 定义自定义事件
 $ python systrace.py -t 5 -a com.kejiyuanren.systrace -o ~/testSystrace02.html

小编的扩展链接

参考链接

满目金黄香百里,一方春色醉千山

举手之劳,赞有余香! ❤ 比心 ❤

上一篇 下一篇

猜你喜欢

热点阅读