Android Studio 3.0 及更高版本中的 Android Profiler 取代了 Android Monitor 工具。Android Profiler 工具可提供实时数据,帮助您了解应用的 CPU、内存、网络和电池资源使用情况。
如需详细了解各个性能分析器,请参阅以下内容:
Android Profiler 与 Android 5.0(API 级别 21)及更高版本兼容。
有关 Android 性能分析器的介绍,请观看以下视频。
如需打开 Profiler 窗口,请依次选择 View > Tool Windows > Profiler,或点击工具栏中的 Profile 图标 。如果 Select Deployment Target 对话框提示,请选择要在哪个设备上分析应用的性能。如果您通过 USB 连接了某个设备但系统未列出该设备,请确保您已启用 USB 调试。如果您使用的是 Android 模拟器或已取得 root 权限的设备,Android 性能分析器将列出所有正在运行的进程,即使这些进程可能无法调试。当您启动可调试的应用时,默认情况下会选择该进程。
Android Profiler 会持续收集性能分析数据,直到您断开设备连接或点击 End Session。
图 1. Android Profiler 共享时间轴视图
1 Android Profiler 显示当前正在分析的进程和设备。
2 在 Sessions 窗格中,选择要查看的会话,或启动一个新的分析会话。
3 使用缩放按钮控制要查看的时间轴范围,或使用 Attach to live 按钮跳转到实时更新。
4 事件时间轴显示与用户输入相关的事件,包括键盘活动、音量控制变化和屏幕旋转。
5 共享时间轴视图,包括 CPU、内存、网络和耗电量图表。
此共享时间轴视图只显示时间轴图表。如需使用详细性能分析工具,请点击与您要检查的性能数据对应的图表。例如,如需使用相关工具检查堆数据并跟踪内存分配情况,请点击 Memory 图表。
并非所有分析数据在默认情况下都可见。如果您看到一条消息,显示“Advanced profiling is unavailable for the selected process”,您可以在运行配置中启用高级性能分析以查看其他数据。
会话
您可以将性能分析器数据另存为会话,这些会话将一直保留,直到您退出 Android Studio。通过在多个会话中记录性能分析信息并在它们之间进行切换,您可以比较各种场景中的资源使用情况。
如需启动一个新的会话,请点击 Start a new profiling session
按钮,然后从出现的下拉菜单中选择一个应用进程。
在您记录跟踪数据或捕获堆转储时,Android Studio 会将相应数据(以及您应用的网络活动)作为单独的条目添加到当前会话。
如需停止向当前会话添加数据,请点击 Stop the current profiling session 图标
。
如需导入之前运行 Android Studio 时导出的跟踪记录,请点击 Start new profiler session 图标
,然后选择 Load from file。
为旧款设备(API 26 以下级别)启用额外的支持
如需在运行搭载 Android 7.1 或更低版本的设备时向您显示额外的性能分析数据,Android Studio 必须将监控逻辑注入您编译的应用。这些额外的性能分析数据包括:
- 所有性能分析器窗口中的事件时间轴
- 内存性能分析器中已分配对象的数量
- 内存性能分析器中的垃圾回收事件
- 网络性能分析器中有关所有已传输文件的详细信息
如需为旧款设备启用额外的支持,请按以下步骤操作:
- 依次选择 Run > Edit Configurations。
- 在左侧窗格中选择您的应用模块。
- 点击 Profiling 标签页,然后选中 Enable additional support for older devices (API level < 26)。
- 再次构建并运行您的应用。
为旧款设备启用额外的支持会使构建流程变慢,所以只有在您想要开始分析应用的性能时,才应启用这种支持。
运行独立性能分析器
借助独立 Android Studio 性能分析器,您可以分析应用的性能,而无需运行完整的 Android Studio IDE。
如需运行独立性能分析器,请执行以下操作:
- 确保性能分析器当前未在 Android Studio 中运行。
转到安装目录,然后转到
bin
目录:Windows/Linux:
<studio-installation-folder>/bin
macOS:
<studio-installation-folder>/Contents/bin
根据您的操作系统,运行
profiler.exe
或profiler.sh
。系统随即会显示 Android Studio 启动画面。启动画面消失后,系统会打开性能分析器窗口:
启动 Android 模拟器或连接一个 Android 设备,然后等待主屏幕加载。如需从命令行运行模拟器,请参阅从命令行启动模拟器。 如果从 Android Studio 启动模拟器,请务必在模拟器启动后关闭 Android Studio。
在独立性能分析器的菜单中,点击
按钮,系统应该会显示所有连接的设备和模拟器:
例如,在模拟器中打开 Google 地图。通过从下拉列表中选择一个模拟器创建新的性能分析会话,然后选择 com.google.android.apps.maps (...)。这会启动一个性能分析会话。
当您与地图互动时,性能分析器中会显示触摸事件和 CPU 使用率。点击“CPU”、“Memory”、“Network”或“Energy”图可查看更多详情。
点击 按钮可结束性能分析会话。