9

我正在尝试在运行 Lollipop 5.1.1 的非根 Nexus 4 设备的命令行上使用systrace 工具。看来,当我尝试运行以下命令时:

systrace.py --time=4 -o testtrace.html sched app freq idle load

我收到以下错误:

CRITICAL:root:(TimeoutThread-1-for-Thread-1) Exception on ReadFile(01a599f5919448ea,
/sys/kernel/debug/tracing/tracing_on, retries=3, timeout=30),
attempt 1 of 4: AdbCommandFailedError("(device: 01a599f5919448ea) adb pull 
/sys/kernel/debug/tracing/tracing_on /var/folders/dj/xq_jq3wx6hg9gzw5r9svkmr00000gn/T/tmpGxH9ji/tmp_ReadFileWithPull: 
failed with exit status 1 and output:\n- adb: error: remote object '/sys/kernel/debug/tracing/tracing_on' does not exist\n",)
...
...
- adb: error: remote object '/sys/kernel/debug/tracing/tracing_on' does not exist

但是,当我使用 adb 命令时:

adb shell /sys/kernel/debug/tracing/

我可以确认文件 'tracing_on' 存在。

虽然,systrace 工具在 Android 设备监视器上运行良好。我想使用命令行的原因是因为我想以编程方式调用该工具来分析我的应用程序。

当我尝试在其他设备(如 Oneplus 3 或三星 Galaxy s6)上运行完全相同的命令时,该工具运行良好,并且能够生成 html 文件。只是在此设备和三星 Galaxy s4 上会产生相同的错误。

任何帮助表示赞赏。

4

1 回答 1

0

我遇到了同样的问题,并以 root 身份重新启动了我的 adb 会话:

adb root

那是为我做的。

于 2018-01-17T20:53:03.407 回答