Android系统 抓trace方法(手机及车机)

avatar
作者
猴君
阅读量:0

1、先说说什么是trace

trace是一种以perfetto.trace结尾的文件。一般用来分析卡顿、启动时间慢等问题,还可以用来分析方法耗时,android系统的性能、功耗等等问题。所需要使用到的网站是:

Perfetto UI

他的前身是Systrace,不过Perfetto更清晰,更强大。

2、如何抓取

考虑到很多小伙伴使用的系统是windows和ubuntu系统,这里提供这两种系统的抓取方式。

1、windows系统

这有个脚本可以直接使用。文件放在最后的网盘链接里了。

下载解压完成后,使用usb线连接手机或者车机,android车机的可能需要root,或者使用Debug版本。连接完成后使用adb devices查看是否成功连接。

点击go.bat会弹出一个命令窗口,此时就已经开始抓取了。你可以在手机或者车机上复现你想查看的场景。操作结束后,点击任意键结束录制。录制文件会保存在go.bat的同级目录下。

2、ubuntu系统

通过网盘链接下载base_config和record_android_trace。

record_android_trace是一个脚本文件

base_config是配置文件。

方法1, 直接配置trace tag

python3 record_android_trace -o trace_file.perfetto-trace -t 10s -b 32mb  sched freq idle am wm gfx view binder_driver hal dalvik camera input res memory

 其中 -t 表示录制时间,-b表示缓存大小,可以自定义。后面的就是需要抓取的数据。

# 抓perfetto 方法2,使用配置文件

python3 record_android_trace -c base_config -o trace_file.perfetto-trace

按CTRL+C结束录制,结束后会自动弹出Perfetto网站并加载文件。(推荐使用)

3、以上都抓取都无效的情况。

我在最近的实验中发现,上述方法可以抓取,但是Perfetto网站怎么也读取不成功,或者直接就是抓取失败。

如果上述两种方法都不行,那就只能使用adb命令进行抓取。

adb shell perfetto -o /data/misc/perfetto-traces/trace_file.perfetto-trace -t 20s sched freq idle am wm gfx view

adb pull /data/misc/perfetto-traces/trace_file.perfetto-trace

要更改抓取时间则将 -t 后面的值替换即可,如果要增加缓存大小,则加 -b 对应的大小值mb

3、文件提取处

链接: https://pan.baidu.com/s/1NZUKRaGnXi2Fj-Ph4Hby7g

提取码: 8p6f

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!