我正在尝试使用Android SDK 中的Systrace工具生成跟踪报告,但我无法在浏览器中查看报告。它是空白的,不包含任何信息。我在一些论坛上读到我需要在 Chrome 浏览器中打开报告,我也用 Chrome 打开它但报告是空白的。
我已经从开发人员选项中启用了 USB 调试,并且设备正在运行 Android 4.2,并且我正在使用Android SDK 中的DDMS工具来生成跟踪。
我正在尝试使用Android SDK 中的Systrace工具生成跟踪报告,但我无法在浏览器中查看报告。它是空白的,不包含任何信息。我在一些论坛上读到我需要在 Chrome 浏览器中打开报告,我也用 Chrome 打开它但报告是空白的。
我已经从开发人员选项中启用了 USB 调试,并且设备正在运行 Android 4.2,并且我正在使用Android SDK 中的DDMS工具来生成跟踪。
首先,如果有人在 OS X 或 Windows 上使用 Chrome v50.0+,请尝试一下。
打开 chrome 浏览器并转到“chrome://tracing”
在跟踪页面中,单击加载并选择 systrace 生成的 html 文件。
其次,我认为这是一个由谷歌确认的错误。
看起来这是因为现代版本的 Chrome 已弃用 Object.observe 函数[1][2]。
有关更多信息,请参阅https://code.google.com/p/android/issues/detail?id=57135
我在linux上运行chrome也有这个问题。
似乎他们在绘制结果的 javascript 实现中存在错误。
检查 JavaScript 控制台。我的说。
未捕获的类型错误:未定义不是函数
在 Ubuntu 12.04 上通过 eclipse 捕获时我遇到了同样的问题。
通过直接从 systrace 文件夹 (sdk/tools/systrace/) 运行该工具来解决它
./systrace.py -t 5 -o trace.html
在尝试在 Firefox 37.0.1 上打开 Systrace 生成的 html 文件(大约 10 MB)时,我也遇到了类似的问题。然而,相同的文件在 Chromium 版本 37.0.2062.120 Ubuntu 12.04 (281580)(64 位)上运行良好。
使用 SDK 管理器更新您的 SDK,选择要更新的工具和平台工具。按照正常程序,就是这样。建议使用 Chrome 来查看结果。
对我来说,它不适用于 Firefox v34,但适用于 Chrome v37,而我使用的是 Ubuntu 12.04。
我通过更新SDK解决了这个问题,使用SDK管理器选择工具和平台工具进行更新,你就完成了。Python 脚本在 Windows 上不起作用。但是即使trace.html
生成了并且可以看到,当数据溢出时,也无法看到页面的底部。这是因为 wasd 导航不足以使用所需的滚动条。
为此,您需要:
overflow:hidden
找到的任何位置。trace.html
并删除overflow:hidden
找到的位置。希望对您有所帮助,如果 Google 中的某个人可以在源代码上解决此问题,那就太好了。
我刚刚发现无法在 IE/Firefox/Chrome 中打开的我的 trace.html,在最新的 Opera(在我的 Windows PC 上)中打开得很好。
该问题可能是针对 Android 操作系统的制造商定制,因此问题可能是由制造商引起的设备配置问题。
这里有几个答案可能会有所帮助。
这些都不适合我......但因为答案https://stackoverflow.com/a/52379567/1815624
我发现它会通过使用链接的跟踪文件来加载数据:
此外,这里是来自 Google https://source.android.com/devices/tech/debug/perf_traces.zip的官方 trace.html 示例的链接
使用adb root
无效。
在不同的设备上,它可以完美地运行,也可以使用模拟器。
您可以尝试我的示例trace.html文件来检查您的 Chrome 版本是否正常。 https://github.com/tngotran/systrace-android/blob/master/trace.html
此外,这里是来自 Google https://source.android.com/devices/tech/debug/perf_traces.zip的官方 trace.html 示例的链接
顺便说一句,根据我的经验,命令工具python systrace.py
可以创建输出文件trace.html而不会出错,但结果是一个空文件(即使文件大小大于 5Mb 或更多)。
我们必须:
adb root
以 root 身份重新启动 adbdpython systrace.py
再次运行然后在 Chrome 中检查您创建的报告 .html 文件:)
我做了以下工作:
cd $ANDROID_HOME/platform-tools
git clone https://android.googlesource.com/platform/external/chromium-trace/
mv systrace old-systrace
ln -s chromium-trace/catapult/systrace/systrace/ systrace
解决了我的系统跟踪问题
systrace 报告至少在最新的 chrome 中工作