Dopo aver configurato tutto, puoi inviare richieste all'API Google Play Developer Reporting per recuperare i metadati relativi agli insiemi di metriche e interrogare le relative metriche.
I seguenti esempi di codice mostrano come inviare alcune semplici richieste. Ad esempio, i metodi riportati di seguito mostrano come recuperare varie metriche per la tua app. Esistono alcuni parametri di ricerca diversi che possono essere utilizzati per restringere la query.
Recupero dei metadati dell'insieme di metriche
L'esempio seguente recupera i metadati per la metrica della percentuale di arresti anomali impostata per un'applicazione
fittizia, com.example.app
.
Richiesta semplice:
Questa richiesta HTTP GET
specifica il parametro del nome dell'applicazione e restituisce la risorsa completa della metrica associata all'applicazione.
GET https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet
Risposta alle informazioni sulla metrica:
La risposta include i seguenti campi relativi all'insieme di metriche:
{ "freshness_info": { "freshness": [ "aggregation_period": "DAILY" "latest_end_time": { year: "2021" month: "7" day: "22" time_zone: "America/Los_Angeles" } ] } }
usando la funzionalità di query.
La seguente richiesta HTTP POST
per la stessa risorsa utilizza l'endpoint
query
per recuperare dati specifici dall'interno del set di metriche.
POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query
Nel corpo della richiesta, trasmetti le opzioni di query per recuperare le metriche in base a criteri specifici.
{ "timeline_spec": { "aggregation_period": "DAILY" "start_time": { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" } "end_time": { year: "2021" month: "7" day: "3" time_zone: "America/Los_Angeles" } } "dimensions": ["apiLevel"] "metrics": ["errorReportCount", "distinctUsers"] "page_size": "10" }
Ecco alcuni esempi a livello di raccolta:
Campi | |
---|---|
timelineSpec |
Specifica dei parametri di aggregazione della sequenza temporale. Consulta la documentazione di ogni insieme di metriche per un elenco dei periodi di aggregazione supportati. |
dimensions[] |
Dimensioni in base alle quali suddividere le metriche. Consulta la documentazione di ogni set di metriche per un elenco delle dimensioni supportate. |
metrics[] |
Metriche da aggregare. |
pageSize |
Dimensione massima dei dati restituiti. Se non viene specificato, verrà restituito al massimo 1000 righe. Il valore massimo è 100.000; i valori superiori a 100.000 saranno forzati a 100.000. |
Gestione delle risposte
Dopo aver elaborato una richiesta valida che include campi validi, il server restituisce un codice di stato HTTP 200 OK
, insieme ai dati richiesti. Se il parametro di ricerca fields
contiene un errore o non è valido, il server restituisce un codice di stato HTTP 400 Bad Request
e un messaggio di errore che segnala all'utente l'errore nella selezione dei campi (ad esempio, "Invalid field timeline_spec"
).
Ecco l'esempio di risposta mostrato nella sezione introduttiva precedente.
POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query
La risposta sarà simile alla seguente:
200 OK
{ rows: [ { aggregation_period: "DAILY" start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" } dimensions: [{dimension: "apiLevel" int64_value: "20"}] metrics: [ {metric: "errorReportCount" decimal_value: "100"}, {metric: "distinctUsers" decimal_value: "57"}, ] }, { aggregation_period: "DAILY" start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" } dimensions: [{dimension: "apiLevel" int64_value: "21"}] metrics: [ {metric: "errorReportCount" decimal_value: "123"}, {metric: "distinctUsers" decimal_value: "65"}, ] }, ... ] next_page_token: "eW91IGhhdmUgdG9vIG11Y2ggZnJlZSB0aW1l" }
Nota: per le API che supportano i parametri di ricerca per l'impaginazione dei dati (maxResults
e nextPageToken
, ad esempio), utilizza questi parametri per ridurre i risultati di ogni query in una dimensione gestibile.