3

我想衡量特定功能(以及它调用的所有内容)的性能。为此,我似乎应该使用 Debug.startMethodTracing() 和 Debug.stopMethodTracing(),然后以某种方式启动 DDMS 跟踪。

但是,当我在 Eclipse 中打开 DDMS 视图并单击 Start Method Profiling 按钮时,它会立即启动 - 而不是在 startMethodTracing() 执行时启动。结果是一个巨大的跟踪文件,其中包含大部分不相关的内容。太难缩小(我试过几次)。

显然 TraceView 已被弃用。无论如何我应该破解一种使用它的方法吗?好点了吗?做我需要的正确方法是什么?

谢谢。

4

1 回答 1

2

如果您使用 Debug.startMethodTracing() 和 Debug.stopMethodTracing() 将在设备上创建一个 .trace 文件。它的确切位置打印在 logcat 中。

查找以“TRACE STARTED”和“TRACE STOPPED”开头的条目。然后,您可以使用 adb pull 从您的设备中获取 .trace 文件并在您选择的工具中打开它进行分析(例如 Eclipse 或某些第三方产品)

如果您使用上述调用,则无需在 Eclipse 中手动使用 DDMS。.trace 文件本身可以通过使用 File -> Open 在 Eclipse 中简单地打开

于 2013-07-06T22:11:50.417 回答