REST Resource: vitals.slowrenderingrate
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
资源:SlowRenderingRateMetricSet
表示一组“缓慢渲染”指标的单例资源。
此指标集包含由 SurfaceFlinger 捕获的低级渲染数据。系统会根据应用所拥有的任何 SurfaceFlinger 图层所处理的帧的 present-to-present 直方图来评估会话。
如果某个会话中超过 25% 的帧未达到相应指标的目标帧速率(20 FPS 或 30 FPS),则该会话为慢会话。
注意:此指标集仅适用于游戏。
支持的汇总周期:
DAILY
:指标按日历日期间隔进行汇总。由于历史限制,唯一支持的时区是 America/Los_Angeles
。
支持的指标:
slowRenderingRate20Fps
(google.type.Decimal
):汇总期内出现渲染缓慢的不同用户的百分比。
slowRenderingRate20Fps7dUserWeighted
(google.type.Decimal
):过去 7 天内 slowRenderingRate20Fps
的滚动平均值。每日值会根据当天的唯一身份用户数进行加权。
slowRenderingRate20Fps28dUserWeighted
(google.type.Decimal
):过去 28 天内 slowRenderingRate20Fps
的滚动平均值。每日值会根据当天的唯一身份用户数进行加权。
slowRenderingRate30Fps
(google.type.Decimal
):汇总期内出现渲染缓慢的不同用户的百分比。
slowRenderingRate30Fps7dUserWeighted
(google.type.Decimal
):过去 7 天内 slowRenderingRate30Fps
的滚动平均值。每日值会根据当天的唯一身份用户数进行加权。
slowRenderingRate30Fps28dUserWeighted
(google.type.Decimal
):过去 28 天内 slowRenderingRate30Fps
的滚动平均值。每日值会根据当天的唯一身份用户数进行加权。
distinctUsers
(google.type.Decimal
):在汇总周期内,用作 slowRenderingRate20Fps
/slowRenderingRate30Fps
指标的归一化值的不同用户数。如果用户的应用渲染了任何帧,则该用户会被纳入此指标的统计范围。请务必注意,不要进一步汇总此数量,否则可能会导致用户被多次统计。该值会舍入为最接近的 10、100、1,000 或 1,000,000 的倍数,具体取决于该值的大小。
支持的维度:
apiLevel
(string
):用户设备上运行的 Android API 级别,例如 26.
versionCode
(int64
):用户设备上运行的应用版本。
deviceModel
(string
):用户设备型号的唯一标识符。标识符的格式为“deviceBrand/device”,其中 deviceBrand 对应于 Build.BRAND,device 对应于 Build.DEVICE,例如 google/coral。
deviceBrand
(string
):用户设备品牌的唯一标识符,例如 google。
deviceType
(string
):用户设备的类型(也称为设备规格),例如 PHONE。
countryCode
(string
):用户设备的国家/地区(根据其 IP 地址确定),以 2 字母 ISO-3166 代码表示(例如,美国为“US”)。
deviceRamBucket
(int64
):设备的 RAM,以 MB 为单位,以分桶方式表示(3GB、4GB 等)。
deviceSocMake
(string
):设备主芯片组的制造商,例如 Samsung。参考文档
deviceSocModel
(string
):设备主芯片的型号,例如 “Exynos 2100”。参考文档
deviceCpuMake
(string
):设备 CPU 的品牌,例如 Qualcomm。
deviceCpuModel
(string
):设备 CPU 的型号,例如 “Kryo 240”。
deviceGpuMake
(string
):设备 GPU 的制造商,例如 ARM。
deviceGpuModel
(string
):设备的 GPU 型号,例如 马里。
deviceGpuVersion
(string
):设备的 GPU 版本,例如 T750。
deviceVulkanVersion
(string
):设备的 Vulkan 版本,例如 “4198400”。
deviceGlEsVersion
(string
):设备的 OpenGL ES 版本,例如 “196610”。
deviceScreenSize
(string
):设备的屏幕尺寸,例如 NORMAL、LARGE。
deviceScreenDpi
(string
):设备的屏幕密度,例如 mdpi、hdpi。
所需权限:如需访问此资源,调用用户需要拥有应用的查看应用信息(只读)权限。
JSON 表示法 |
{
"name": string,
"freshnessInfo": {
object (FreshnessInfo )
}
} |
字段 |
name |
string
标识符。资源名称。 格式:apps/{app}/slowRenderingRateMetricSet
|
freshnessInfo |
object (FreshnessInfo )
相应资源中有关数据新鲜度的摘要。
|
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-26。
[null,null,["最后更新时间 (UTC):2025-07-26。"],[[["\u003cp\u003eThe Slow Rendering Rate Metric Set provides insights into low-level rendering data for games, specifically focusing on frames handled by SurfaceFlinger.\u003c/p\u003e\n"],["\u003cp\u003eA slow session is defined as one where over 25% of frames fail to meet the target frame rate (20fps or 30fps).\u003c/p\u003e\n"],["\u003cp\u003eMetrics include slow rendering rates at both 20fps and 30fps, along with their 7-day and 28-day rolling averages, and distinct user counts.\u003c/p\u003e\n"],["\u003cp\u003eDimensions allow filtering data by device attributes (e.g., API level, model, brand), location, and app version.\u003c/p\u003e\n"],["\u003cp\u003eAccess requires the "View app information (read-only)" permission for the app in question.\u003c/p\u003e\n"]]],["The SlowRenderingRateMetricSet resource provides low-level rendering metrics for games, evaluating sessions where over 25% of frames fail to meet 20fps or 30fps targets. Metrics include slow rendering rates, 7/28-day user-weighted averages, and distinct user counts, aggregated daily in the `America/Los_Angeles` timezone. Supported dimensions cover API level, version code, device details, country code, RAM, SOC, CPU/GPU information, and screen properties. The resource can be accessed via `get` and `query` methods with the *View app information* permission.\n"],null,["# REST Resource: vitals.slowrenderingrate\n\n- [Resource: SlowRenderingRateMetricSet](#SlowRenderingRateMetricSet)\n - [JSON representation](#SlowRenderingRateMetricSet.SCHEMA_REPRESENTATION)\n- [Methods](#METHODS_SUMMARY)\n\nResource: SlowRenderingRateMetricSet\n------------------------------------\n\nSingleton resource representing the set of Slow Rendering metrics.\n\nThis metric set contains low-level rendering data captured by SurafeFlinger. Sessions are evaluated based on the present-to-present histogram of frames handled by any SurfaceFlinger layer owned by the app.\n\nA slow session is a session where more than 25% of frames for the session did not meet the metric's target frame rate (either 20fps, or 30fps).\n\n*NOTE:* This metric set is only available for games.\n\n**Supported aggregation periods:**\n\n- [DAILY](/play/developer/reporting/reference/rest/v1alpha1/AggregationPeriod#ENUM_VALUES.DAILY): metrics are aggregated in calendar date intervals. Due to historical constraints, the only supported timezone is `America/Los_Angeles`.\n\n**Supported metrics:**\n\n- `slowRenderingRate20Fps` (`google.type.Decimal`): Percentage of distinct users in the aggregation period that had slow rendering.\n- `slowRenderingRate20Fps7dUserWeighted` (`google.type.Decimal`): Rolling average value of `slowRenderingRate20Fps` in the last 7 days. The daily values are weighted by the count of distinct users for the day.\n- `slowRenderingRate20Fps28dUserWeighted` (`google.type.Decimal`): Rolling average value of `slowRenderingRate20Fps` in the last 28 days. The daily values are weighted by the count of distinct users for the day.\n- `slowRenderingRate30Fps` (`google.type.Decimal`): Percentage of distinct users in the aggregation period that had slow rendering.\n- `slowRenderingRate30Fps7dUserWeighted` (`google.type.Decimal`): Rolling average value of `slowRenderingRate30Fps` in the last 7 days. The daily values are weighted by the count of distinct users for the day.\n- `slowRenderingRate30Fps28dUserWeighted` (`google.type.Decimal`): Rolling average value of `slowRenderingRate30Fps` in the last 28 days. The daily values are weighted by the count of distinct users for the day.\n- `distinctUsers` (`google.type.Decimal`): Count of distinct users in the aggregation period that were used as normalization value for the `slowRenderingRate20Fps`/`slowRenderingRate30Fps` metric. A user is counted in this metric if their app rendered any frames. Care must be taken not to aggregate this count further, as it may result in users being counted multiple times. The value is rounded to the nearest multiple of 10, 100, 1,000 or 1,000,000, depending on the magnitude of the value.\n\n**Supported dimensions:**\n\n- `apiLevel` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): the API level of Android that was running on the user's device, e.g., 26.\n- `versionCode` ([int64](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.int64_value)): version of the app that was running on the user's device.\n- `deviceModel` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): unique identifier of the user's device model. The form of the identifier is 'deviceBrand/device', where deviceBrand corresponds to Build.BRAND and device corresponds to Build.DEVICE, e.g., google/coral.\n- `deviceBrand` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): unique identifier of the user's device brand, e.g., google.\n- `deviceType` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): the type (also known as form factor) of the user's device, e.g., PHONE.\n- `countryCode` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): the country or region of the user's device based on their IP address, represented as a 2-letter ISO-3166 code (e.g. US for the United States).\n- `deviceRamBucket` ([int64](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.int64_value)): RAM of the device, in MB, in buckets (3GB, 4GB, etc.).\n- `deviceSocMake` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Make of the device's primary system-on-chip, e.g., Samsung. [Reference](https://developer.android.com/reference/android/os/Build#SOC_MANUFACTURER)\n- `deviceSocModel` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Model of the device's primary system-on-chip, e.g., \"Exynos 2100\". [Reference](https://developer.android.com/reference/android/os/Build#SOC_MODEL)\n- `deviceCpuMake` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Make of the device's CPU, e.g., Qualcomm.\n- `deviceCpuModel` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Model of the device's CPU, e.g., \"Kryo 240\".\n- `deviceGpuMake` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Make of the device's GPU, e.g., ARM.\n- `deviceGpuModel` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Model of the device's GPU, e.g., Mali.\n- `deviceGpuVersion` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Version of the device's GPU, e.g., T750.\n- `deviceVulkanVersion` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Vulkan version of the device, e.g., \"4198400\".\n- `deviceGlEsVersion` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): OpenGL ES version of the device, e.g., \"196610\".\n- `deviceScreenSize` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Screen size of the device, e.g., NORMAL, LARGE.\n- `deviceScreenDpi` ([string](/play/developer/reporting/reference/rest/v1alpha1/anomalies#DimensionValue.FIELDS.string_value)): Screen density of the device, e.g., mdpi, hdpi.\n\n**Required permissions** : to access this resource, the calling user needs the *View app information (read-only)* permission for the app.\n\n| JSON representation |\n|---------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"name\": string, \"freshnessInfo\": { object (/play/developer/reporting/reference/rest/v1alpha1/FreshnessInfo) } } ``` |\n\n| Fields ||\n|-----------------|----------------------------------------------------------------------------------------------------------------------------------------------|\n| `name` | `string` Identifier. The resource name. Format: apps/{app}/slowRenderingRateMetricSet |\n| `freshnessInfo` | `object (`[FreshnessInfo](/play/developer/reporting/reference/rest/v1alpha1/FreshnessInfo)`)` Summary about data freshness in this resource. |\n\n| Methods ------- ||\n|-----------------------------------------------------------------------------------------------|---------------------------------------------|\n| ### [get](/play/developer/reporting/reference/rest/v1alpha1/vitals.slowrenderingrate/get) | Describes the properties of the metric set. |\n| ### [query](/play/developer/reporting/reference/rest/v1alpha1/vitals.slowrenderingrate/query) | Queries the metrics in the metric set. |"]]