流程
首先启用开发者选项。
打开 设置。
滚动到 关于手机。
找到 版本号(或 构建号)并连续点击7次,直到看到“您已进入开发者模式”的提示。
找到系统跟踪,打开【显示跟踪"快捷设置"功能块】和【跟踪可调试的应用】。
打开后会出现虫子图标(开始记录)。
打开虫子,然后点开几个应用,然后关闭虫子(停止记录)。
使用adb命令(获取记录信息)。
adb root
adb shell
cd data/local/traces
ls
exit
adb pull /data/local/traces
如果找不到系统跟踪
使用perfetto命令
perfetto配置以及抓取方法
在perfetto中可以根据用户需求自行配置需求,并生成配置文件。配置和trace分析都在perfetto的UI中进行。
trace需求设置
查看配置文件
完成个性化trace需求设置后,可以查看配置文件。
配置文件生效
在shell中可以直接复制配置文件通过adb 设置到到设备中,可以手动修改duration_ms参数来修改抓取trace时间。
或者不使用配置文件。通过命令行方式执行,但需要手动键入需要抓取的模块。
adb shell perfetto -o /data/misc/perfetto-traces/trace_file.perfetto-trace -t 20s \
sched freq idle am wm gfx view binder_driver hal dalvik camera input res memorys
获取trace文件
在抓取时间完成后,会显示trace路径 /data/misc/perfetto-traces/trace3。
再pull出trace文件,命名为trace_01.perfetto-trace,或者adb pull /data/misc/perfetto-traces/trace3,直接不修改trace3的命名。
adb pull /data/misc/perfetto-traces/ honortraces/
-
在open trace file中打开pull出来的trace。
-
打开trace文件后的效果,红框部分就是配置文件中自行配置的需求:
解决非root机器adb pull报错Permission denied
使用adb pull data/local/traces
提示Permission denied。
C:\Users\Mi>adb pull data/local/traces
adb: error: failed to copy 'data/local/traces/trace-holi-RKQ1.211119.001-2024-02-19-07-32-47.html' to '.\traces\trace-holi-RKQ1.211119.001-2024-02-19-07-32-47.html': remote open failed: Permission denied
原因
机器没有root权限,被限制。
C:\Users\Mi>adb root
adbd cannot run as root in production builds
解决方法
将文件拉到sdcard再执行adb pull
adb shell
cp -r data/local/traces sdcard/traces
exit
adb pull sdcard/traces