您可以通过在短时间内记录设备活动并收集应用启动期间的跟踪信息来识别潜在瓶颈并提高应用整体性能。此页面介绍如何设置性能测试环境。
使用 Macrobenchmark 库
Macrobenchmark 库 测量较大的最终用户交互,例如启动、与 UI 交互和动画。该库可直接控制您正在测试的性能环境。它允许您控制编译、启动和停止应用,以直接测量精确的应用启动时间。它还可以最大限度地减少测试运行之间的噪声和差异。
使用中端设备识别潜在的性能问题
测试您关心的每种设备类型的性能。具有快速组件的高端设备可能会隐藏早期、较慢或低 RAM 设备上的性能问题。低端设备加载数据或运行代码可能需要更长时间,从而更容易识别瓶颈。针对低端设备优化性能通常也有利于高端设备的优化。
减少噪声
- 网络:使用强劲稳定的互联网 Wi-Fi 速度测试您的应用或进程。如果应用启动时间包括网络请求,请将其记为可能出现变异的地方。
- RAM 使用情况:测试应用启动性能时,请勿在设备后台运行任何其他应用。
- 电池:确保您的设备已充满电,以避免任何硬件特定的低功耗性能限制。
在发布版本上进行测试
使用发布版本测试性能。调试版本不适合性能调试,因为它们不提供编译优化,并且会严重影响性能。
但是,可以使用未混淆的发布版本来识别类和操作名称。具体来说,我们建议启用压缩 (R8) 并停用混淆,在 proguard 文件中使用-dontobfuscate
。如果构建未混淆,则更容易识别布局、资源和资产。
确保在清单中包含profileable标志,以便在不可调试的构建中显示自定义事件。此标志在 Android 10(API 级别 29)及更高版本上可用。
向您的应用操作添加自定义跟踪
在你的应用中添加自定义追踪,以便更容易地区分你的应用执行的操作与其他库执行的操作。这有助于你随时了解应用的运行状态。