使用 Android Vitals 监控应用在各项技术方面的效果

您可以通过 Play 管理中心来查看相关数据,以帮助您了解和改善应用的电池用量、稳定性和呈现时间。

以下数据源自用户选择自动分享的使用情况和诊断数据(收集范围涵盖部分 Android 设备和某些版本的操作系统)。如需详细了解 Android 用户选择分享数据的方式,请转到帐号帮助中心

全部收起 全部展开

数据类型

电池用量
  • 唤醒锁定操作卡住
  • 唤醒锁定操作卡住(后台)
  • 唤醒次数过多
  • WLAN 扫描次数过多(后台)
  • 网络使用量过高(后台)
稳定性
  • ANR 发生率
  • 多次 ANR 发生率
  • 崩溃率
  • 多次崩溃率
呈现时间
  • 呈现速度缓慢(16 毫秒)
  • 界面帧冻结(700 毫秒)
应用启动时间
  • 冷启动时间过长
  • 温启动时间过长
  • 热启动时间过长
权限
  • 权限遭拒

查找和查看应用数据

Android Vitals 页面上列出的日期范围包含您应用的所有可用数据,并且无法自定义。Android Vitals 数据的记录时间以太平洋时间 (PT) 为准。

重要提示:如果没有可用数据,则会导致应用在特定过滤条件下没有足够的数据点,无法找出应用存在的问题。

要查找和查看应用的 Android Vitals 数据,请按以下步骤操作:

  1. 登录您的 Play 管理中心
  2. 选择相应应用。
  3. 在左侧菜单中,依次点击 Android Vitals > 概览
  4. 选择您要查看应用数据的方式。
查看概览信息中心和详细的指标页面

Android Vitals 核心指标

概览页面的顶部会显示应用的 Android Vitals 核心指标数据,这些效果指标会影响您的应用在 Google Play 中的曝光度和排名。Android Vitals 核心指标包括:

  • 部分唤醒锁定操作卡住(后台)
  • 唤醒次数过多
  • ANR 发生率
  • 崩溃率

如果您的应用存在任何需要关注的重大性能问题,包括指标超出不良行为阈值、性能数据发生显著变化(即异常情况),您可以使用该页面快速找出应用有待改进的部分。如果要让系统在检测到重大 ANR、崩溃集群或 Android Vitals 变化时向您发送电子邮件通知,请依次访问设置 > 偏好设置

重要提示:为了提供最佳用户体验,您应当找出并解决所有应用存在的问题,以免应用超过不良行为阈值。

浏览所有 Android Vitals 指标

概览页面中间附近,您可以按数据类型查看所有 Android Vitals 指标的数据。要过滤表格中的数据,请选择您要查看的维度和时间段。

您可以针对每个指标,查看应用在当前时段和上一时段受影响的工作时段数百分比。要了解您的应用与 Google Play 上其他应用的性能对比情况,您还可以查看您应用的数据与类似应用中间值的差值。

查看详细的指标

如需了解有关某项指标的其他详细信息,请选择查看详细信息。系统将在下一屏幕显示以下信息:

  • 效果数据中找到的异常情况(仅限 Android Vitals 核心指标)
  • 不良行为阈值(仅限 Android Vitals 核心指标)
  • 类别的基准数据
  • 与基准数据的详细对比情况
    • 在页面顶部附近的类似应用对比情况卡片中,选择修改类似应用群组,以修改自定义类似应用群组。创建自定义类似应用群组后,您可以查看自己的应用与所选的其他 Google Play 应用的对比情况。
  • 按 APK 版本代码、设备、操作系统版本、基准或时间段显示的各项指标
    • 选择表格中各行右侧的向下箭头即可展开相关详细信息。
按不良行为过滤

概览页面顶部,部分指标可能会标示红色错误图标 。这表示显示的数字偏高(与其他应用相比),这就是所谓的不良行为。

选择标有该图标的卡片即可查看应用的哪个 APK 具有相应不良行为。

指标详细信息

唤醒锁定操作卡住和唤醒锁定操作卡住(后台)

唤醒锁定操作卡住唤醒锁定操作卡住(后台)页面会显示应用通过 PowerManager 类获取的部分唤醒锁定。部分唤醒锁定可确保 CPU 正常运行,但屏幕和键盘背光可以关闭。

数据收集详情

  • 为了保护隐私,部分唤醒锁定识别标记已进行匿名化处理。
  • 部分唤醒锁定的相关数据是系统在设备未充电以及屏幕关闭时收集的。
  • 只有当应用在后台运行的时候,系统才会收集后台唤醒锁定操作卡住的相关数据。
  • Google 会计算每次电池工作时段的部分唤醒锁定持续时间的上限,以显示受到长时间唤醒锁定影响的工作时段数。例如,如果用户触发两次 1 小时长的唤醒锁定,那么 Google 将使用的最大唤醒锁定值为 1 小时。
  • 对于在清单文件中设置了 sharedUserId 的应用:只有当最多安装了一个具有相同 sharedUserId 的应用时,您才会看到相关数据。

Vital 详细信息

  • 受影响的工作时段数:用户遇到至少 1 次长达 1 小时以上的唤醒锁定的电池工作时段数百分比。
  • 会话数:系统已记录的会话的大概数量。
  • 第 90/99 个百分位:10%/1% 的每日工作时段中用户遇到部分唤醒锁定持续时间高于显示的数字。
  • 最低 25%:如果您的应用发生问题的工作时段比例等于或高于显示的阈值,则系统会将此应用归在这项指标的最低 25% 区间(依据为 Google Play 上前 1000 个热门应用,按安装量统计)。

解决问题

如果您的应用经常发生唤醒锁定现象,请转到 Android 开发者网站,了解我们推荐的解决方案。

唤醒次数过多

唤醒次数过多页面会显示由应用触发的 Alarm Manager 唤醒次数。您会看到类 ELAPSED_REALTIME_WAKEUP 或 RTC_WAKEUP 的唤醒数据。

数据收集详情

  • 为了保护隐私,唤醒识别标记已进行匿名化处理。
  • 唤醒次数是系统在设备未充电时收集的。
  • 为了提供标准化指标,系统会将唤醒次数与设备使用电池的时间进行比较。Google 会计算每个用户在每小时的唤醒次数,以显示受到高唤醒率影响的用户数。
  • 对于在清单文件中设置了 sharedUserId 的应用:只有当最多安装了一个具有相同 sharedUserId 的应用时,您才会看到相关数据。

Vital 详细信息

  • 受影响的工作时段数:用户遇到每小时 10 次以上唤醒的电池工作时段数百分比。电池会话是指设备在两次充满电之间的间隔时间。Google 仅会在设备未充电时收集这项数据。
  • 会话数:系统已记录的会话的大概数量。
  • 第 90/99 个百分位:10%/1% 的每日工作时段中用户每小时遇到唤醒次数高于显示的值。
  • 最低 25%:如果您的应用发生问题的工作时段比例等于或高于显示的阈值,则系统会将此应用归在这项指标的最低 25% 区间(依据为 Google Play 上前 1000 个热门应用,按安装量统计)。

解决问题

如果您的应用的唤醒次数频繁,请转到 Android 开发者网站,了解我们推荐的解决方案。

WLAN 扫描次数过多(后台)

WLAN 扫描次数过多(后台)页面显示了 WLAN 扫描何时会导致电量消耗较高。

数据收集详情

WLAN 扫描的相关数据是系统在设备未充电以及应用在后台运行时收集的。

Vital 详细信息

  • 受影响的工作时段数:用户遇到每小时 4 次以上 WLAN 扫描的电池工作时段数百分比。
  • 工作时段数:系统已记录的工作时段的大概数量。
  • 第 90/99 个百分位:10%/1% 的每日工作时段中用户每小时遇到的后台 WLAN 扫描次数高于显示的数字。
  • 最低 25%:如果您的应用发生问题的工作时段比例等于或高于显示的阈值,则系统会将此应用归在这项指标的最低 25% 区间(依据为 Google Play 上前 1000 个热门应用,按安装量统计)。

解决问题

如果您的应用在后台进行 WLAN 扫描的次数较多,请转到 Android 开发者网站,了解我们推荐的解决方案。

网络使用量过高(后台)

网络使用量过高(后台)页面显示了大量的网络数据何时与后台服务相关联。当移动网络的使用发生在后台时,用户将难以控制和停止数据传输。

数据收集详情

移动网络使用量的相关数据是系统在设备未充电以及应用在后台运行时收集的。

Vital 详细信息

  • 受影响的工作时段数:用户遇到每日后台网络使用量超过 50MB 的电池工作时段数百分比。
  • 工作时段数:系统已记录的工作时段的大概数量。
  • 第 90/99 个百分位:10%/1% 的每日工作时段中用户每日的后台网络使用量高于显示的数字。
  • 最低 25%:如果您的应用发生问题的工作时段比例等于或高于显示的阈值,则系统会将此应用归在这项指标的最低 25% 区间(依据为 Google Play 上前 1000 个热门应用,按安装量统计)。

解决问题

如果您的应用的后台网络使用量较高,请转到 Android 开发者网站,了解我们推荐的解决方案。

ANR 发生率和多次 ANR 发生率

了解应用的数据

ANR 发生率多次 ANR 发生率页面上,系统显示的数据与应用的 ANR 和崩溃次数页面上显示的数据类似。Android Vitals 页面上,系统会结合使用 ANR 数据和使用情况数据来创建标准化指标。

ANR 发生率的详细信息

  • 受影响的工作时段数:用户遇到至少一次 ANR 问题的每日工作时段数百分比。每日工作时段是指用户一天内使用应用的时间。例如,如果有两位用户使用该应用两天,则系统会生成四次每日会话。
  • 未发生 ANR 问题的会话数:用户未遇到任何 ANR 问题的每日会话数百分比。每日会话是指用户一天内使用应用的时间。
  • 工作时段数:系统已记录的工作时段的大概数量。
  • 最低 25%:如果您的应用发生问题的工作时段比例等于或高于显示的阈值,则系统会将此应用归在这项指标的最低 25% 区间(依据为 Google Play 上前 1000 个热门应用,按安装量统计)。
  • ANR 相关信息:要查看实时 ANR 详细信息,请选择 ANR 链接。您将转至 Play 管理中心内的“ANR 和崩溃次数”页面

多次 ANR 发生率的详细信息

  • 受影响的工作时段数:用户遇到至少两次 ANR 问题的每日工作时段数百分比。每日工作时段是指用户一天内使用应用的时间。例如,如果有两位用户使用该应用两天,则系统会生成四次每日工作时段。
  • 未受影响的工作时段数:用户遇到一次或未遇到 ANR 问题的每日工作时段数百分比。每日工作时段是指用户一天内使用应用的时间。
  • 工作时段数:系统已记录的工作时段的大概数量。
  • ANR 相关信息:要查看实时 ANR 详细信息,请选择 ANR 链接。您将转至 Play 管理中心内的“ANR 和崩溃次数”页面

解决问题

如果您的应用经常发生 ANR,请转到 Android 开发者网站,了解我们推荐的解决方案。

崩溃率和多次崩溃率

了解应用的数据

崩溃率多次崩溃率页面上,系统显示的数据与应用的 ANR 和崩溃次数页面上显示的数据类似。在 Android Vitals 页面上,系统会结合使用崩溃数据和使用情况数据来创建标准化指标。

崩溃率的详细信息

  • 受影响的工作时段数:用户遇到至少一次崩溃问题的每日工作时段数百分比。每日会话是指用户一天内使用应用的时间。例如,如果有两位用户使用该应用两天,则系统会生成四次每日会话。
  • 未发生崩溃问题的会话数:用户未遇到任何崩溃问题的每日会话数百分比。每日会话是指用户一天内使用应用的时间。
  • 工作时段数:系统已记录的工作时段的大概数量。
  • 最低 25%:如果您的应用发生问题的工作时段比例等于或高于显示的阈值,则系统会将此应用归在这项指标的最低 25% 区间(依据为 Google Play 上前 1000 个热门应用,按安装量统计)。
  • 崩溃相关信息:要查看实时崩溃详细信息,请选择崩溃链接。您将转至 Play 管理中心内的“ANR 和崩溃次数”页面

多次崩溃率的详细信息

  • 受影响的工作时段数:用户遇到至少两次崩溃问题的每日工作时段数百分比。每日工作时段是指用户一天内使用应用的时间。例如,如果有两位用户使用该应用两天,则系统会生成四次每日工作时段。
  • 未受影响的工作时段数:用户遇到一次或未遇到崩溃问题的每日工作时段数百分比。每日工作时段是指用户一天内使用应用的时间。
  • 工作时段数:系统已记录的工作时段的大概数量。
  • 崩溃相关信息:要查看实时崩溃详细信息,请选择崩溃链接。您将转至 Play 管理中心内的“ANR 和崩溃次数”页面

解决问题

如果您的应用经常发生崩溃,请转到 Android 开发者网站,了解我们推荐的解决方案。

呈现速度缓慢

了解应用的数据

呈现速度缓慢页面上,系统会显示用户遇到超过 50% 的帧的呈现时间超过 16 毫秒的每日工作时段数百分比详情。用户与应用的互动速度应该保持在 60 帧/秒,不会出现帧丢失或帧延迟的情况。

数据收集详情

Google 会在应用使用界面工具包框架(而非直接使用 OpenGL)呈现帧时收集各个帧的呈现时间。

信息中心显示内容

在您选择某行后,系统会显示细分为百分位的数据。

  • 受影响的会话数:用户遇到超过 50% 的帧的呈现时间超过 16 毫秒的每日会话数百分比。每日会话是指用户一天内使用应用的时间。例如,如果有两位用户使用该应用两天,则系统会生成四次每日会话。
  • 会话数:系统已记录的会话的大概数量。
  • 第 90/99 个百分位:所有帧中有 90%/99% 的帧呈现时间低于显示的数字。这些数字是根据系统收集的所有帧计算得出的。
  • 最低 25%:如果您的应用发生问题的工作时段比例等于或高于显示的阈值,则系统会将此应用归在这项指标的最低 25% 区间(依据为 Google Play 上前 1000 个热门应用,按安装量统计)。

当您点击表中的某个条目时,系统会显示“界面呈现时间分布图”图表。在查看该图表时,您需要确保应用的大多数帧的呈现时间都不到 16 毫秒。

图表下方的数据展示了该应用的呈现效果,可能有助于您发现所有呈现时间问题的根本原因。例如,如果“输入延迟时间长”百分比较高,您可能需要查看处理用户输入的应用代码。要详细了解这些指标,请转到测试界面性能页面。

  • 错过的 Vsync:对于所有呈现时间超过 16 毫秒的帧,以错过的 Vsync 事件数除以帧数。
  • 输入延迟时间长:对于所有呈现时间超过 16 毫秒的帧,以超过 24 毫秒的输入事件数除以帧数。
  • UI 线程速度缓慢:对于所有呈现时间超过 16 毫秒的帧,以界面线程执行时间超过 8 毫秒的次数除以帧数。
  • 绘图命令速度缓慢:对于所有呈现时间超过 16 毫秒的帧,以向 GPU 发送绘图命令的时间超过 12 毫秒的次数除以帧数。
  • 位图上传速度缓慢:对于所有呈现时间超过 16 毫秒的帧,以位图上传到 GPU 的时间超过 3.2 毫秒的次数除以帧数。

解决问题

如果您的应用有大量帧的呈现时间超过 16 毫秒,请转到 Android 开发者网站,了解我们推荐的解决方案。

冻结的帧

冻结的帧页面上,系统会显示用户遇到超过 0.1% 的帧的呈现时间超过 700 毫秒的每日工作时段数百分比详情。用户与应用的互动速度应该保持在 60 帧/秒,不会出现帧丢失或帧延迟的情况。

数据收集详情

Google 会在应用使用界面工具包框架(而非直接使用 OpenGL)呈现帧时收集各个帧的呈现时间。

信息中心显示内容

在您展开某个维度行后,系统会显示细分为百分位的数据。

  • 受影响的会话数:用户遇到超过 0.1% 的帧的呈现时间超过 700 毫秒的每日会话数百分比。每日会话是指用户一天内使用应用的时间。例如,如果有两位用户使用该应用两天,则系统会生成四次每日会话。
  • 会话数:系统已记录的会话的大概数量。
  • 第 90/99 个百分位:所有帧中有 90%/99% 的帧呈现时间低于显示的数字。这些数字是根据系统收集的所有帧计算得出的。
  • 最低 25%:如果您的应用发生问题的工作时段比例等于或高于显示的阈值,则系统会将此应用归在这项指标的最低 25% 区间(依据为 Google Play 上前 1000 个热门应用,按安装量统计)。

当您点击表中的某个条目时,系统会显示“界面呈现时间分布图”图表。在查看该图表时,您需要确保应用的大多数帧的呈现时间都不到 700 毫秒。

图表下方的数据展示了该应用的呈现效果,可能有助于您发现所有呈现时间问题的根本原因。例如,如果“输入延迟时间长”百分比较高,您可能需要查看处理用户输入的应用代码。要详细了解这些指标,请转到测试界面性能页面。

  • 错过的 Vsync:对于所有呈现时间超过 16 毫秒的帧,以错过的 Vsync 事件数除以帧数。
  • 输入延迟时间长:对于所有呈现时间超过 16 毫秒的帧,以超过 24 毫秒的输入事件数除以帧数。
  • UI 线程速度缓慢:对于所有呈现时间超过 16 毫秒的帧,以界面线程执行时间超过 8 毫秒的次数除以帧数。
  • 绘图命令速度缓慢:对于所有呈现时间超过 16 毫秒的帧,以向 GPU 发送绘图命令的时间超过 12 毫秒的次数除以帧数。
  • 位图上传速度缓慢:对于所有呈现时间超过 16 毫秒的帧,以位图上传到 GPU 的时间超过 3.2 毫秒的次数除以帧数。

解决问题

如果您的应用有大量帧的呈现时间超过 700 毫秒,请转到 Android 开发者网站,了解我们推荐的解决方案。

应用启动时间

如果您的应用从这三种系统状态下启动较慢,则您在应用启动时间页面上可以看到相关详细信息。

数据收集详情

  • 系统只会在用户触发活动时记录启动时间。
    • 示例:键盘应用的启动时间等于配套应用的启动时间。
  • 如果应用在同一天内多次从同一系统状态下启动,则系统会记录当天最长的启动时间。
  • 当应用的第一帧完全加载,系统就会跟踪应用的启动时间,即使用户并未与该屏幕互动。
    • 示例:如果应用开启时会显示启动画面,则启动时间就等于显示启动画面所需的时间。

Vital 详细信息

  • 受影响的工作时段数:用户在各个系统状态下遇到启动时间过长问题的工作时段数百分比:
    • 冷启动时间过长:5 秒或更长
    • 温启动时间过长:2 秒或更长
    • 热启动时间过长:1 秒或更长
  • 工作时段数:系统已记录的工作时段的大概数量。
  • 第 90/99 个百分位:10%/1% 的每日工作时段中,用户在您的应用中遇到启动时间过长的问题。
  • 最低 25%:如果您的应用的出现率等于或高于显示的阈值,则表示此应用位于 Google Play 前 1000 个热门应用的最低 25%(根据安装量计算)。

解决问题

如果您的应用经常出现启动时间过长的问题,请转到 Android 开发者网站查看建议的解决方案。

权限遭拒

权限遭拒页面会针对用户拒绝权限的情况,提供每日权限工作时段数百分比的详细信息。每日权限工作时段是指一天内您的应用向用户请求至少一项权限的情况。

数据收集详情

系统会在用户针对应用内的权限请求做出回应时,收集权限遭拒的数据。

Vital 详细信息

  • 遭拒:用户拒绝了权限的每日权限工作时段数百分比。
  • 不再询问:用户通过选择不再询问选项拒绝了权限的每日权限工作时段数百分比。
  • 请求总数:系统已记录的工作时段的大概数量。
  • 最低 25%:如果您的应用的出现率等于或高于显示的阈值,则表示此应用位于 Google Play 前 1000 个热门应用的最低 25%(根据安装量计算)。

解决问题

如果您的应用的权限遭拒次数过多,请转到 Android 开发者网站查看建议的解决方案。

使用维度分析数据

应用的所有数据都会按以下维度进行细分,以帮助您整理、细分和分析数据。

  • 应用版本:应用的版本
  • Android 版本:用户设备所报告的 Android 操作系统版本
  • 设备:用户设备的宣传名称和设备名称(如 Google Nexus 7/Flo)
  • 唤醒锁定标记:在应用中使用 PowerManager API 时以编程方式设置的标记
  • 唤醒标记:使用应用中的 AlarmManager API 时,以编程方式设置的标记
  • ANR 活动名称:发生 ANR 的活动类别的完全限定名称(如有)
  • ANR 类型:发生 ANR 的时机,例如,在执行服务时(如有)

相关内容

请参阅这篇文章,探索利用 Android Vitals 改善应用的性能和稳定性的最佳做法。

该内容对您有帮助吗?
您有什么改进建议?