systrace
对于检查应用程序的UI性能
特别有用,因为它可以分析您的代码和帧速率以识别问题区域并提供可能的解决方案。 开始,按照以下步骤进行:
- 连接手机并运行您的
app
。 - 使用以下命令运行systrace:
python systrace.py view --time = 10
- 操作您的应用 10秒后,
systrace
生成一个HTML报告。 - 使用网络浏览器打开HTML报告。
您现在可以与报告进行交互,以便在记录期间检查设备CPU
使用情况。 以下部分介绍如何检查报告中的信息以查找和修复UI性能问题
。
5. 使用Systrace 检测警告以及掉帧问题
如下报告列出了每个进程呈现UI帧,并指示沿着时间线的每个渲染帧。 在绿色框架
圆圈中指示在16.6毫秒内呈现的帧以保持每秒稳定60帧。 花费16.6毫秒以上渲染的帧用黄色
或红色
框圈表示。
注意: 在运行
Android 5.0(API级别21)
或更高版本的设备上, UI 渲染的工作是在UI Thread
和RenderThread
两个线程完成。 在之前的版本中,创建框架的所有工作都是在UI Thread
上完成的。
点击一个F框架圈
可以提供有关系统为渲染该框架而完成的工作的其他信息,包括警报。 它还向您展示了在渲染该框架时系统正在执行的方法,因此您可以调查这些方法是否导致UI jank
。
选择慢帧后,您可能会在报告的底部窗格中看到警报。 上图中显示的Alert
提出,框架的主要问题是在ListView
回收和重新绑定中花费了太多的时间。 跟踪中有相关事件的链接可以解释更多关于系统在这段时间内正在做什么的事情。
要查看工具在trace