选择合适的分析方法

您可以使用两种主要方法来收集性能分析文件:手动收集性能分析文件和使用 ProfilingManager API。

我们建议使用 ProfilingManager 来收集和分析来自许多用户的数据,或用于调试罕见的问题。不过,对于更容易重现的问题,手动分析可能是一个更好的选择。

下表显示了这两种记录个人资料的方法之间的区别:

ProfilingManager 手动收集个人资料
个人资料时间控制 更多 收起
个人资料来源 本地设备和公开用户 仅限本地设备
个人资料输出 已隐去 未隐去
基于事件的分析
个人资料可自定义程度 收起 更多
可伸缩性

以下部分简要介绍了各种配置文件记录方法之间的区别。

个人资料时间控制

与手动分析相比,ProfilingManager API 可以更好地控制应用何时开始或停止分析,而手动分析可能难以确定时间分析的初始化时间。ProfilingManager 还可以更轻松地分析意外行为,因为即使您无法在本地重现该行为,也可以收集配置文件。

个人资料来源

借助 ProfilingManager,您可以从公开用户那里收集数据,以查找和修复性能问题。相比之下,手动分析仅允许您在自己的设备上重现问题。

个人资料输出

ProfilingManager 和手动收集会生成不同类型的性能剖析输出:

  • ProfilingManager 生成经过编辑的轨迹。经过删减的轨迹会显示有关应用进程的信息,但会隐藏系统上其他应用的数据。由于 ProfilingManager 会在返回轨迹之前收集并编辑轨迹,因此您可以从公开用户处收集轨迹,同时通过不显示其他应用的数据来保护他们的隐私。

  • 手动收集的配置文件会生成未经过编辑的轨迹。手动记录系统轨迹时,输出可能包含系统上运行的所有进程。虽然这些未经过编辑的轨迹可提供更完整的数据以供调试,但出于隐私方面的考虑,您只能在本地访问它们。

基于事件的分析

ProfilingManager 还可以在发生特定事件(例如“应用无响应”(ANR) 错误或应用启动)时收集配置文件。ProfilingManager 将处理基于事件的收集的配置文件启动和停止。

个人资料可自定义程度

手动分析可提供最丰富的自定义选项,而 ProfilingManager 提供的自定义选项较少。

可伸缩性

ProfilingManager 是扩展跟踪的最佳方式,因为它是唯一允许应用开发者记录公开用户配置的选项。借助 ProfilingManager,您可以设置大规模的轨迹收集和分析。 手动分析仅限本地使用。