指标集简介

借助 Google Play Developer Reporting API,您可以访问与应用相关的指标、报告和时间轴信息。 为了尽可能简化 API 用量,指标集可标准化指标访问。 指标集是相关指标的逻辑分组,这些指标具有共同的属性(例如新鲜度和粒度),并且可以一起查询。 指标集还包含许多维度,可用于过滤或生成细分。 除非另有说明,否则所有指标都可以按所有可用维度进行细分或过滤。

时效性

每个指标集资源都提供一个标准 GET 方法来检索最新可用数据点(称为新鲜度)的日期和时间。由于指标集可以支持多种粒度(每日、每小时),因此该操作会针对每种支持的粒度返回一个新鲜度值。

您可以直接将新鲜度值用作查询时间范围内的端点。

数据查询

如需访问指标集中的数据,您应使用自定义 QUERY 方法来发出查询。 每个查询都必须指定粒度和时间范围。除了要访问的指标之外,您还应指定用于细分汇总数据的维度。

在请求时间轴以请求日期范围时,应注意使时间范围的大小与应用的大小和细分数量成反比。 例如,大型应用应在单个查询请求中选择较少的天数,以避免因读取过多数据而导致查询超时。

可用的指标集

下表列出了您可以请求的所有端点和关联数据。

指标集 说明 支持的指标
vitals.anrrate 包含 ANR 数据和使用情况数据,可生成与用户数量无关的标准化指标。 anrRate (google.type.Decimal):在汇总时间段内,遇到过至少一次 ANR 的不同用户所占的百分比。
anrRate7dUserWeighted (google.type.Decimal):在指定日期之前 7 天内(含指定日期)anrRate 指标的用户加权平均值。
anrRate28dUserWeighted (google.type.Decimal):在指定日期之前 28 天内,anrRate 指标的用户加权平均值。
userPerceivedAnrRate (google.type.Decimal):在汇总时间段内,遇到过至少 1 次用户感知的 ANR 的不同用户所占的百分比。目前,系统仅统计“输入调度”ANR。
userPerceivedAnrRate7dUserWeighted (google.type.Decimal):在指定日期之前(含指定日期)的 7 天内,用户感知到的 ANR 率指标的用户加权平均值。
userPerceivedAnrRate28dUserWeighted (google.type.Decimal):截至相应日期(含)之前 28 天内 userPerceivedAnrRate 指标的用户加权平均值。
distinctUsers (google.type.Decimal):在汇总期内有可用数据的用户的大致数量。
vitals.anonrssandswapmemoryusage 包含匿名 RSS 和交换内存用量数据(与使用情况数据相结合)。 anonRssAndSwapMemoryUsageP50 (google.type.Decimal):匿名 RSS 和交换内存用量的第 50 百分位数值。
anonRssAndSwapMemoryUsageP75 (google.type.Decimal):匿名 RSS 和交换内存用量的第 75 个百分位。
anonRssAndSwapMemoryUsageP90 (google.type.Decimal):匿名 RSS 和交换内存用量的第 90 百分位数值。
anonRssAndSwapMemoryUsageP95 (google.type.Decimal):匿名 RSS 和交换内存用量的第 95 百分位。
anonRssAndSwapMemoryUsageP99 (google.type.Decimal):匿名 RSS 和交换内存用量的第 99 百分位。
distinctUsers (google.type.Decimal):在汇总期间报告了内存指标的去重用户数。请务必注意,不要进一步汇总此数量,否则可能会导致用户被多次统计。该值会舍入为最接近的 10、100、1,000 或 1,000,000 的倍数,具体取决于该值的大小。
vitals.bitmapmemoryusage 包含位图内存用量数据和使用情况数据。 bitmapMemoryUsageP50 (google.type.Decimal):位图内存用量的第 50 百分位。
bitmapMemoryUsageP75 (google.type.Decimal):位图内存用量的第 75 个百分位。
bitmapMemoryUsageP90 (google.type.Decimal):位图内存用量的第 90 百分位。
bitmapMemoryUsageP95 (google.type.Decimal):位图内存用量的第 95 个百分位。
bitmapMemoryUsageP99 (google.type.Decimal):位图内存使用率的第 99 百分位。
distinctUsers (google.type.Decimal):在汇总期间报告了内存指标的去重用户数。请务必注意,不要进一步汇总此数量,否则可能会导致用户被多次统计。该值会舍入为最接近的 10、100、1,000 或 1,000,000 的倍数,具体取决于该值的大小。
vitals.crashrate 包含与使用情况数据相结合的崩溃数据,以生成与用户数量无关的标准化指标。 crashRate (google.type.Decimal):在汇总时间段内,遇到过至少一次崩溃的不同用户所占的百分比。
crashRate7dUserWeighted (google.type.Decimal):在指定日期之前(含指定日期)的 7 天内,crashRate 指标的用户加权平均值。
crashRate28dUserWeighted (google.type.Decimal):在指定日期之前 28 天内,crashRate 指标的用户加权平均值。
userPerceivedCrashRate (google.type.Decimal):在汇总时间段内,在应用处于活跃使用状态时遇到过至少一次崩溃的去重用户所占的百分比。
userPerceivedCrashRate7dUserWeighted (google.type.Decimal):在截至指定日期(含)的前 7 天内,userPerceivedCrashRate 指标的用户加权平均值。
userPerceivedCrashRate28dUserWeighted (google.type.Decimal):在指定日期(含)之前的 28 天内,userPerceivedCrashRate 指标的用户加权平均值。
distinctUsers (google.type.Decimal):在汇总期内有可用数据的用户的大致数量。
vitals.lmkrate 包含 LMK(低内存终止)数据,这些数据与使用情况数据相结合,可生成与用户数量无关的标准化指标。 userPerceivedLmkRate (google.type.Decimal):在汇总期内,在主动使用应用期间遇到过至少一次 LMK(低内存终止)的去重用户所占的百分比。如果应用正在显示任何 activity 或执行任何前台服务,则视为正在主动使用。
userPerceivedLmkRate7dUserWeighted (google.type.Decimal):在截至指定日期(含)的 7 天内,userPerceivedLmkRate 指标的用户加权平均值。
userPerceivedLmkRate28dUserWeighted (google.type.Decimal):在指定日期之前(含指定日期)的 28 天内,userPerceivedLmkRate 指标的用户加权平均值。
distinctUsers (google.type.Decimal):在汇总期内有可用数据的用户的大致数量。
vitals.excessivewakeuprate 包含 AlarmManager 唤醒次数数据,并与进程状态数据相结合,以生成与用户数量无关的标准化指标。 excessiveWakeupRate (google.type.Decimal):在聚合周期内,每小时唤醒次数超过 10 次的不同用户所占的百分比。 excessiveWakeupRate7dUserWeighted (google.type.Decimal):在指定日期之前(含指定日期)的 7 天内,excessiveWakeupRate 指标的用户加权平均值。
excessiveWakeupRate28dUserWeighted (google.type.Decimal):在指定日期之前 28 天内,过度唤醒率指标的用户加权平均值。
distinctUsers (google.type.Decimal):在汇总期内有可用数据的用户的大致数量。
vitals.stuckbackgroundwakelockrate 包含 PowerManager 唤醒锁时长数据,并与进程状态数据相结合,以生成与用户数量无关的标准化指标。 stuckBgWakelockRate (google.type.Decimal):在汇总周期内,在后台持有唤醒锁定超过 1 小时的不同用户所占的百分比。 stuckBgWakelockRate7dUserWeighted (google.type.Decimal):在指定日期之前(含指定日期)的 7 天内,stuckBgWakelockRate 指标的用户加权平均值。
stuckBgWakelockRate28dUserWeighted (google.type.Decimal):在指定日期(含)之前的 28 天内,stuckBgWakelockRate 指标的用户加权平均值。
distinctUsers (google.type.Decimal):汇总期内有可用数据的用户的大致数量。
vitals.slowstartrate 包含按应用启动类型(冷启动、温启动、热启动)细分的缓慢应用启动数据。 slowStartRate (google.type.Decimal):在汇总期内发生过启动缓慢事件的不同用户所占的百分比。 slowStartRate7dUserWeighted (google.type.Decimal):在指定日期之前(含指定日期)的 7 天内,slowStartRate 指标的用户加权平均值。
slowStartRate28dUserWeighted (google.type.Decimal):截至相应日期(含)之前 28 天内 slowStartRate 指标的用户加权平均值。
distinctUsers (google.type.Decimal):汇总期内有可用数据的用户的大致数量。
vitals.errors.counts 包含未归一化的错误报告数量。 请注意:此资源目前仅在 API 的 v1 Alpha 版中提供。
errorReportCount (google.type.Decimal):相应应用收到的各个错误报告的绝对数量。

维度

每个指标集都支持一组不同的维度,用于过滤和细分。请查看下面的维度索引,了解 API 中可用的维度列表。

维度 说明
versionCode 在捕获数据时用户设备上运行的应用的版本代码。相应维度的字符串值可解析为整数。如需详细了解 Android 上的应用版本控制如何运作,请点击此处
countryCode 根据用户 IP 地址确定的用户所在国家/地区的标识符,以 2 个字母的 ISO-3166 代码表示(例如,美国为“US”)。

设备尺寸

这些维度特定于设备及其软件和硬件特征。

维度 说明
apiLevel 在捕获数据时,用户设备上运行的 Android API 级别。相应维度的字符串值可解析为整数。如需查看 Android 版本列表以及它们与 API 级别的对应关系,请点击此处
deviceModel 特定设备型号的标识符,由 Play 管理中心设备目录定义。
deviceType 特定设备规格的标识符,与 Play 管理中心设备目录所用的标识符相同。
deviceRamBucket 设备的 RAM(以 MB 为单位),以分桶形式(3GB、4GB 等)。
deviceSocMake 设备主系统芯片的制造商,例如 Samsung。如需了解详情,请点击此处
deviceSocModel 设备主系统芯片的型号名称,例如“Exynos 2100”。如需了解详情,请点击此处
deviceCpuMake 设备 CPU 的制造商,例如 Qualcomm。
deviceCpuModel 设备 CPU 的型号,例如“Kryo 240”。
deviceGpuMake 设备 GPU 的制造商,例如 ARM。
deviceGpuModel 设备的 GPU 型号,例如 Mali。
deviceGpuVersion 设备的 GPU 版本,例如 T750。
deviceVulkanVersion 设备的 Vulkan 版本,例如“4198400”。
deviceGlEsVersion 设备的 OpenGL ES 版本,例如“196610”。
deviceScreenSize 设备的屏幕尺寸,例如 NORMAL、LARGE。
deviceScreenDpi 设备的屏幕密度,例如 mdpi、hdpi。