分析应用性能

如果应用响应速度慢、动画播放不流畅、卡顿或耗电量过高,就表示应用的性能不佳。若要解决性能问题,就需要对应用进行性能分析,或找出应用的哪些方面导致不能高效地利用资源(例如 CPU、内存、图形、网络或设备电池)。本主题将介绍可用于实现以下目的的 Android Studio 工具和技术: 解决常见的性能问题

了解如何在不运行整个 Android 的情况下运行独立性能分析器 Studio IDE(仅限 Windows 或 Linux),请参阅 运行独立性能分析器

要求

如需分析您的应用,我们建议您进行以下设置:

  • 具有发布 build 变体且具有 profileable 清单的应用 也称为可分析应用。默认情况下,应用具有 请将此配置设为 true。如需检查或更改此配置,请打开应用的清单或 AndroidManifest.xml 文件,然后在 <application> 部分中查找 profileable 清单配置:

    <profileable android:shell="true" />
    
  • 搭载 API 级别 29 或更高级别且具有 Google Play。

  • Android Gradle 插件 7.3 或更高版本。

可分析应用和可调试应用

借助可分析应用,您可以执行最常见的性能分析任务,但应使用 可调试应用(如果您需要录制 Java/Kotlin 内容) 或捕获堆转储一个可调试的应用进程和设备运行 API 级别 26 或更高级别还可让您查看 Interaction 时间轴, 在提供用户互动和应用生命周期事件的任务视图中显示事件。

可调试的应用基于应用的 debug build 变体,可让您 使用调试程序等开发工具;然而,当出现 但会降低一些性能可分析应用基于 release build 变体,并启用一部分常见的分析任务,而无需 调试 build 的性能开销。

构建并运行可分析应用

如需在 Android Studio 中构建并运行可分析应用,请按以下步骤操作:

  1. 创建运行/调试配置(如果您有 还没有一个。
  2. 选择您的发布 build 变体 (Build > Select Build Variant)。
  3. 点击更多操作 &gt;个人资料“应用”费用低 配置文件“app”包含完整数据 (“app”是运行配置的名称,因此它可能不同于 您)。如需在这两个选项之间进行选择,请参阅要求。 应用会在测试设备上打开,并且 Profiler 窗格会在 Android 中打开 Studio。

如果这些说明对您不适用,请参阅构建和运行可分析应用 手动设置

开始分析

如需开始分析任务,请按以下步骤操作:

  1. 性能分析器窗格中的首页标签页列表中选择一个进程。在大多数情况下,您需要选择 。

    性能分析器“首页”标签页
  2. Tasks 部分中选择一项分析任务。如需详细了解 请参阅本节其他页面。并非所有性能分析任务 可用于所有进程如果您不知道从何处入手,不妨 效果活动视图 实时测试应用

  3. 使用 Start profiler task from 下拉菜单选择是否启动 性能分析器任务,或者在进程运行时附加到进程。如果您 或尝试缩短应用启动时间 应用启动期间,您应将启动项包括在内;否则,您可以 分析应用的当前状态。

  4. 点击启动性能分析器任务。任务会在自己的标签页中开始。

  5. 与您的应用交互,以便触发 activity。

  6. 停止记录(如果适用),等待其解析,然后查看 结果。

比较、导出和导入跟踪记录

当您停止性能分析任务时,系统会自动将其保存在性能分析器窗格中的过往记录标签页中。您可以使用这些已保存的 来比较不同场景中的资源使用情况。录音为 在当前 Android Studio 会话期间保存;如果你想 将这些视频保留更长时间,点击导出录制内容即可将其导出 。 并非所有轨迹类型都可以导出。

如需导入轨迹(例如从之前运行的 Android Studio 中导入),请点击 导入录制内容 (在过往记录标签页中),然后选择您的跟踪文件。您还可以导入 将文件拖动到 Android Studio 编辑器窗口中。

修改录制配置

如需修改性能分析器任务记录配置,请点击性能分析器设置 。您可以切换主要的两项设置:

  • 对于涉及采样的任务,采样间隔表示 。指定的时间间隔越短,达到记录数据的文件大小限制就越快。
  • File size limit 表示可以写入连接设备的数据量。当您停止记录时,Android Studio 会解析此数据 并将其显示在性能分析器窗口中如果您提高此限制并录制了 因此 Android Studio 需要更长的时间来解析文件,并且 可能无响应