REST Resource: vitals.stuckbackgroundwakelockrate
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Risorsa: StuckBackgroundWakelockRateMetricSet
Risorsa singleton che rappresenta l'insieme di metriche Wakelock in background bloccati.
Questo insieme di metriche contiene dati sulla durata del wakelock di PowerManager combinati con dati sullo stato del processo per produrre una metrica normalizzata indipendente dal numero di utenti.
Periodi di aggregazione supportati:
DAILY
: le metriche vengono aggregate in intervalli di date del calendario. A causa di vincoli storici, l'unico fuso orario supportato è America/Los_Angeles
.
Metriche supportate:
stuckBgWakelockRate
(google.type.Decimal
): percentuale di utenti unici nel periodo di aggregazione che hanno avuto un wakelock in background per più di un'ora.
stuckBgWakelockRate7dUserWeighted
(google.type.Decimal
): valore medio mobile di stuckBgWakelockRate
negli ultimi 7 giorni. I valori giornalieri sono ponderati in base al conteggio degli utenti unici per il giorno.
stuckBgWakelockRate28dUserWeighted
(google.type.Decimal
): valore medio mobile di stuckBgWakelockRate
negli ultimi 28 giorni. I valori giornalieri sono ponderati in base al conteggio degli utenti unici per il giorno.
distinctUsers
(google.type.Decimal
): conteggio degli utenti unici nel periodo di aggregazione utilizzati come valore di normalizzazione per la metrica stuckBgWakelockRate
. Un utente viene conteggiato in questa metrica se la sua app svolgeva qualsiasi attività sul dispositivo, ovvero non solo l'utilizzo attivo in primo piano, ma anche l'attività in background. È necessario prestare attenzione a non aggregare ulteriormente questo conteggio, in quanto potrebbe comportare il conteggio degli utenti più volte. Il valore viene arrotondato al multiplo più vicino di 10, 100, 1000 o 1.000.000, a seconda della sua grandezza.
Dimensioni supportate:
apiLevel
(string
): il livello API di Android in esecuzione sul dispositivo dell'utente, ad esempio 26.
versionCode
(int64
): la versione dell'app in esecuzione sul dispositivo dell'utente.
deviceModel
(string
): identificatore univoco del modello di dispositivo dell'utente. Il formato dell'identificatore è "deviceBrand/device", dove deviceBrand corrisponde a Build.BRAND e device corrisponde a Build.DEVICE, ad esempio google/coral.
deviceBrand
(string
): identificatore univoco del brand del dispositivo dell'utente, ad es. google.
deviceType
(string
): il tipo (noto anche come fattore di forma) del dispositivo dell'utente, ad esempio PHONE.
countryCode
(string
): il paese o la regione del dispositivo dell'utente in base al suo indirizzo IP, rappresentato come codice ISO-3166 di due lettere (ad es. US per gli Stati Uniti).
deviceRamBucket
(int64
): RAM del dispositivo, in MB, in bucket (3 GB, 4 GB e così via).
deviceSocMake
(string
): marca del system-on-chip principale del dispositivo, ad es. Samsung. Riferimento
deviceSocModel
(string
): modello del system-on-chip principale del dispositivo, ad esempio "Exynos 2100". Riferimento
deviceCpuMake
(string
): produttore della CPU del dispositivo, ad es. Qualcomm.
deviceCpuModel
(string
): modello della CPU del dispositivo, ad esempio "Kryo 240".
deviceGpuMake
(string
): marca della GPU del dispositivo, ad esempio ARM.
deviceGpuModel
(string
): modello della GPU del dispositivo, ad esempio Mali.
deviceGpuVersion
(string
): versione della GPU del dispositivo, ad es. T750.
deviceVulkanVersion
(string
): versione Vulkan del dispositivo, ad es. "4198400".
deviceGlEsVersion
(string
): versione OpenGL ES del dispositivo, ad es. "196610".
deviceScreenSize
(string
): dimensioni dello schermo del dispositivo, ad esempio NORMALE, GRANDE.
deviceScreenDpi
(string
): densità dello schermo del dispositivo, ad esempio mdpi, hdpi.
Autorizzazioni richieste: per accedere a questa risorsa, l'utente chiamante deve disporre dell'autorizzazione Visualizzazione di informazioni sull'app (sola lettura) per l'app.
Rappresentazione JSON |
{
"name": string,
"freshnessInfo": {
object (FreshnessInfo )
}
} |
Campi |
name |
string
Identificatore. Nome della risorsa. Formato: apps/{app}/stuckBackgroundWakelockRateMetricSet
|
freshnessInfo |
object (FreshnessInfo )
Riepilogo sull'aggiornamento dei dati in questa risorsa.
|
Metodi |
|
Descrive le proprietà del set di metriche. |
|
Esegue query sulle metriche nel set di metriche. |
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-26 UTC.
[null,null,["Ultimo aggiornamento 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. |"]]