L'API Google Health tiene traccia dei passi e dei dati sulle attività degli utenti utilizzando il tipo di dati a intervalli steps. Il conteggio dei passi rappresenta una misura fondamentale dell'attività fisica quotidiana, che aiuta gli sviluppatori a monitorare i progressi di fitness, calcolare il dispendio energetico e creare riepiloghi delle attività quotidiane rivolti agli utenti.
Scopri come leggere e strutturare le metriche del conteggio dei passi nella tua applicazione per offrire la migliore esperienza ai tuoi utenti.
Tipi di dati supportati
L'API supporta il seguente tipo di dati per il monitoraggio del conteggio dei passi:
| Tipo di dati | Operazioni disponibili |
Ambito |
|---|---|---|
|
Passi
dataType:
stepsfilter parameter: steps
Tipo di record: Intervallo
Dispositivi compatibili
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
Linee guida
Quando integri il monitoraggio dei passi nella tua app, segui queste linee guida per la progettazione e l'implementazione.
Calcolo di velocità e andatura
L'API Google Health utilizza formule standard per calcolare velocità e andatura:
- Velocità =
distance / time(hour) - Andatura =
time(seconds) / distance
L'intestazione Accept-Language specificata nella richiesta determina l'unità di distanza.
Riepilogo giornaliero
Per aggregare con precisione i conteggi dei passi giornalieri durante i viaggi, i cambi di fuso orario o l'ora legale, non eseguire calcoli della durata lato client. Esegui invece una query sull'endpoint dailyRollUp, che riconcilia automaticamente le lacune nei dati fisici utilizzando gli offset UTC. Il rollup restituisce un StepsRollupValue contenente il campo countSum, che rappresenta il totale dei passi accumulati per il giorno richiesto.
Disegno delle interfacce utente (riconciliazione)
Quando crei elementi dell'interfaccia utente per visualizzare i dati dei passi, utilizza l'endpoint reconcile. Se più origini dati (ad esempio uno smartwatch e un cellulare) hanno registrato i passi contemporaneamente, l'endpoint reconcile risolve i conflitti e unisce gli stream per restituire un singolo stream di dati riconciliato.
Monitoraggio e istogrammi intraday
Per visualizzare l'attività utente dettagliata durante il giorno (ad esempio grafici e diagrammi):
- Istogrammi dei passi orari: esegui una query sull'endpoint
rollUp, specificando la durata (ad es.3600sper 1 ora) utilizzando il parametrowindowSize. - Tutti i record dei passi: utilizza l'endpoint
listper recuperare i record dei passi non elaborati più granulari.
Gli endpoint rollUp, dailyRollUp e reconcile accettano il parametro dataSourceFamily, che consente di filtrare i dati di gruppi di origini specifici. Per maggiori dettagli ed esempi di utilizzo, consulta la sezione
Filtrare e aggregare per famiglia di origini dati
della guida agli endpoint.
Sincronizzazione in tempo reale tramite webhook
Abbonati alla raccolta di tipi di dati steps per ricevere una notifica in tempo reale quando vengono importati o sincronizzati nuovi dati sui passi. Anziché eseguire il polling degli endpoint REST, aggiorna dinamicamente i dashboard lato client in risposta a queste notifiche webhook. Per informazioni dettagliate su come configurare gli abbonamenti, consulta
Abbonamenti webhook.
Gestire gli zeri effettivi
L'API Google Health implementa gli zeri effettivi per risolvere gli intervalli sedentari. Se un utente indossa un tracker ma non cammina durante un determinato periodo, l'API restituisce un record per quell'intervallo che contiene i metadati normali dell'origine dati e del timestamp, ma omette la proprietà count.
In questo modo, puoi distinguere tra:
- Periodi di stazionamento al polso: l'utente indossa il dispositivo ma non cammina. Vengono restituiti record senza la proprietà
count(interpretata come zero passi). - Periodi senza dispositivo: l'utente non indossa il dispositivo. Non viene restituito alcun record, il che comporta grandi lacune nei dati.
Per maggiori dettagli, consulta la guida Presenza dei dati e zeri effettivi per maggiori dettagli.