TraceView Android

TraceView Android,android,Android,在提出这个问题之前,我看到了以下链接 现在我能够生成跟踪并进行方法分析 但我仍然不清楚如何读取跟踪并使我的代码高效。我的应用程序运行得很慢。请指导我 请参见时间线面板和个人资料面板的图片 看起来您正在emulator中运行应用程序。应该提到的是,仿真器比实际设备慢得多 不幸的是,图像不是高分辨率的,我看不到细节,但主线程看起来很好,没有任何很长的调用 在执行分析任务时,我通常会查找怀疑会降低性能的位置,并在这些位置周围放置Debug.startMethodTracing()和Debug

在提出这个问题之前,我看到了以下链接

现在我能够生成跟踪并进行方法分析

但我仍然不清楚如何读取跟踪并使我的代码高效。我的应用程序运行得很慢。请指导我

请参见时间线面板和个人资料面板的图片


看起来您正在emulator中运行应用程序。应该提到的是,仿真器比实际设备慢得多

不幸的是,图像不是高分辨率的,我看不到细节,但主线程看起来很好,没有任何很长的调用

在执行分析任务时,我通常会查找怀疑会降低性能的位置,并在这些位置周围放置
Debug.startMethodTracing()
Debug.stopMethodTracing()
。例如,如果某个活动非常慢,则将其放在该活动的OnStart()/OnStop()中。
之后,只需使用
Find:
traceview行来查找包类并确定性能瓶颈。

我是否必须在.java类上编写它,或者我可以使用
Start Profiling Method
按钮在代码中进行编辑似乎更为精确。但是,在某些情况下(例如,观察到列表滚动速度较慢),使用DDMS按钮可能更容易。