REST Resource: vitals.stuckbackgroundwakelockrate
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Ressource : StuckBackgroundWakelockRateMetricSet
Ressource singleton représentant l'ensemble des métriques "Wakelocks en arrière-plan bloqués".
Cet ensemble de métriques contient des données sur la durée du wakelock PowerManager combinées à des données sur l'état du processus pour produire une métrique normalisée indépendante du nombre d'utilisateurs.
Périodes d'agrégation acceptées :
DAILY
: les métriques sont agrégées par intervalles de dates civiles. En raison de contraintes historiques, le seul fuseau horaire accepté est America/Los_Angeles
.
Métriques acceptées :
stuckBgWakelockRate
(google.type.Decimal
) : pourcentage d'utilisateurs uniques au cours de la période d'agrégation qui ont subi un wakelock en arrière-plan pendant plus d'une heure.
stuckBgWakelockRate7dUserWeighted
(google.type.Decimal
) : valeur moyenne glissante de stuckBgWakelockRate
au cours des sept derniers jours. Les valeurs quotidiennes sont pondérées par le nombre d'utilisateurs distincts pour la journée.
stuckBgWakelockRate28dUserWeighted
(google.type.Decimal
) : valeur moyenne glissante de stuckBgWakelockRate
au cours des 28 derniers jours. Les valeurs quotidiennes sont pondérées par le nombre d'utilisateurs distincts pour la journée.
distinctUsers
(google.type.Decimal
) : nombre d'utilisateurs distincts au cours de la période d'agrégation, utilisé comme valeur de normalisation pour la métrique stuckBgWakelockRate
. Un utilisateur est comptabilisé dans cette métrique si son application effectuait une tâche sur l'appareil, c'est-à-dire non seulement une utilisation active au premier plan, mais aussi une tâche en arrière-plan. Veillez à ne pas agréger davantage ce nombre, car cela pourrait entraîner le comptage des utilisateurs plusieurs fois. La valeur est arrondie au multiple le plus proche de 10, 100, 1 000 ou 1 000 000, selon son ordre de grandeur.
Dimensions acceptées :
apiLevel
(string
) : niveau d'API d'Android exécuté sur l'appareil de l'utilisateur, par exemple 26.
versionCode
(int64
) : version de l'application qui s'exécutait sur l'appareil de l'utilisateur.
deviceModel
(string
) : identifiant unique du modèle d'appareil de l'utilisateur. L'identifiant est au format "deviceBrand/device", où deviceBrand correspond à Build.BRAND et device à Build.DEVICE (par exemple, google/coral).
deviceBrand
(string
) : identifiant unique de la marque de l'appareil de l'utilisateur, par exemple "google".
deviceType
(string
) : type (également appelé facteur de forme) de l'appareil de l'utilisateur, par exemple PHONE.
countryCode
(string
) : pays ou région de l'appareil de l'utilisateur en fonction de son adresse IP, représenté par un code ISO-3166 à deux lettres (par exemple, "US" pour les États-Unis).
deviceRamBucket
(int64
) : RAM de l'appareil, en Mo, dans des buckets (3 Go, 4 Go, etc.).
deviceSocMake
(string
) : marque du principal système sur puce de l'appareil, par exemple Samsung. Référence
deviceSocModel
(string
) : modèle du système sur puce principal de l'appareil, par exemple "Exynos 2100". Référence
deviceCpuMake
(string
) : fabricant du processeur de l'appareil, par exemple Qualcomm.
deviceCpuModel
(string
) : modèle du processeur de l'appareil, par exemple "Kryo 240".
deviceGpuMake
(string
) : fabricant du GPU de l'appareil, par exemple ARM
deviceGpuModel
(string
) : modèle du GPU de l'appareil, par exemple Mali.
deviceGpuVersion
(string
) : version du GPU de l'appareil, par exemple T750.
deviceVulkanVersion
(string
) : version Vulkan de l'appareil, par exemple "4198400".
deviceGlEsVersion
(string
) : version OpenGL ES de l'appareil, par exemple "196610".
deviceScreenSize
(string
) : taille de l'écran de l'appareil, par exemple NORMAL, LARGE.
deviceScreenDpi
(string
) : densité d'écran de l'appareil (par exemple, mdpi ou hdpi).
Autorisations requises : pour accéder à cette ressource, l'utilisateur appelant doit disposer de l'autorisation Afficher les informations sur l'application (lecture seule) pour l'application.
Représentation JSON |
{
"name": string,
"freshnessInfo": {
object (FreshnessInfo )
}
} |
Champs |
name |
string
Identifiant. Nom de la ressource. Format : apps/{app}/stuckBackgroundWakelockRateMetricSet
|
freshnessInfo |
object (FreshnessInfo )
Résumé sur la fraîcheur des données dans cette ressource.
|
Méthodes |
|
Décrit les propriétés de l'ensemble de métriques. |
|
Interroge les métriques du groupe de métriques. |
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/26 (UTC).
[null,null,["Dernière mise à jour le 2025/07/26 (UTC)."],[[["\u003cp\u003eThe StuckBackgroundWakelockRateMetricSet resource provides insights into wakelock durations and process state data, normalized to user counts.\u003c/p\u003e\n"],["\u003cp\u003eMetrics offered include the percentage of users with background wakelocks exceeding an hour and rolling averages (7-day, 28-day).\u003c/p\u003e\n"],["\u003cp\u003eSupported dimensions encompass device attributes (API level, model, brand, type, RAM, SoC, CPU, GPU), user location (country code), and app version.\u003c/p\u003e\n"],["\u003cp\u003eThis metric set uses a daily aggregation period with the \u003ccode\u003eAmerica/Los_Angeles\u003c/code\u003e timezone due to historical reasons.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003edistinctUsers\u003c/code\u003e metric counts users whose app was active, including background work, and is rounded for privacy.\u003c/p\u003e\n"]]],["The `StuckBackgroundWakelockRateMetricSet` resource provides metrics on background wakelock duration, normalized for user counts. It supports daily aggregation, with data available in `stuckBgWakelockRate`, 7 and 28-day user-weighted rolling averages, and `distinctUsers`. Metrics can be filtered by various device and user dimensions like API level, device model, country, RAM, and GPU. The resource offers `get` and `query` methods to retrieve data, and requires read-only app information permissions.\n"],null,["# REST Resource: vitals.stuckbackgroundwakelockrate\n\n- [Resource: StuckBackgroundWakelockRateMetricSet](#StuckBackgroundWakelockRateMetricSet)\n - [JSON representation](#StuckBackgroundWakelockRateMetricSet.SCHEMA_REPRESENTATION)\n- [Methods](#METHODS_SUMMARY)\n\nResource: StuckBackgroundWakelockRateMetricSet\n----------------------------------------------\n\nSingleton resource representing the set of Stuck Background Wakelocks metrics.\n\nThis metric set contains PowerManager wakelock duration data combined with process state data to produce a normalized metric independent of user counts.\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- `stuckBgWakelockRate` (`google.type.Decimal`): Percentage of distinct users in the aggregation period that had a wakelock held in the background for longer than 1 hour.\n- `stuckBgWakelockRate7dUserWeighted` (`google.type.Decimal`): Rolling average value of `stuckBgWakelockRate` in the last 7 days. The daily values are weighted by the count of distinct users for the day.\n- `stuckBgWakelockRate28dUserWeighted` (`google.type.Decimal`): Rolling average value of `stuckBgWakelockRate` 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 `stuckBgWakelockRate` metric. A user is counted in this metric if their app was doing any work on the device, i.e., not just active foreground usage but also background work. 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}/stuckBackgroundWakelockRateMetricSet |\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.stuckbackgroundwakelockrate/get) | Describes the properties of the metric set. |\n| ### [query](/play/developer/reporting/reference/rest/v1alpha1/vitals.stuckbackgroundwakelockrate/query) | Queries the metrics in the metric set. |"]]