L'API Google Health suit les pas et les données d'activité des utilisateurs à l'aide du type de données d'intervalle steps. Le nombre de pas représente une mesure fondamentale de l'activité physique quotidienne, qui aide les développeurs à suivre les progrès physiques, à calculer la dépense énergétique et à créer des résumés d'activité quotidienne visibles par l'utilisateur.
Découvrez comment lire et structurer les métriques de nombre de pas dans votre application pour offrir la meilleure expérience possible à vos utilisateurs.
Types de données acceptés
L'API est compatible avec le type de données suivant pour le suivi du nombre de pas :
| Type de données | Opérations disponibles |
Champ d'application |
|---|---|---|
|
Étapes
dataType :
stepsparamètre de filtre : steps
Type d'enregistrement : Intervalle
Résolution de stockage : 1 minute
Appareils compatibles
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
Consignes
Lorsque vous intégrez le suivi des pas dans votre application, suivez ces consignes de conception et d'implémentation.
Calcul de la vitesse et de l'allure
L'API Google Health utilise des formules standards pour calculer la vitesse et l'allure :
- Vitesse =
distance / time(hour) - Allure =
time(seconds) / distance
L'en-tête Accept-Language spécifié dans la requête détermine l'unité de distance.
Aperçu quotidien
Pour agréger avec précision le nombre de pas quotidiens lors de voyages, de changements de fuseau horaire ou de passage à l'heure d'été, n'effectuez pas de calculs de durée côté client. Interrogez plutôt le point de terminaison dailyRollUp, qui rapproche automatiquement les écarts de données physiques à l'aide des décalages UTC. Le cumul renvoie un StepsRollupValue contenant le champ countSum, qui représente le nombre total de pas cumulés pour le jour demandé. Pour en savoir plus, consultez Agrégation sur plusieurs jours calendaires dans le guide sur l'agrégation des données.
Dessiner des interfaces utilisateur (rapprochement)
Lorsque vous créez des éléments d'interface utilisateur pour afficher les données de pas, utilisez le point de terminaison reconcile. Si plusieurs sources de données (comme une montre connectée et un téléphone mobile) ont enregistré des pas en même temps, le point de terminaison reconcile résout les conflits et fusionne les flux pour renvoyer un seul flux de données réconcilié.
Pour en savoir plus sur la gestion des intervalles qui se chevauchent lors de la synchronisation des appareils connectés et sur la mutabilité des codes temporels, consultez le guide de gestion des données.
Suivi intrajournalier et histogrammes
Pour afficher l'activité détaillée de l'utilisateur tout au long de la journée (par exemple, des graphiques) :
- Histogrammes par heure ou par minute : interrogez le point de terminaison
rollUpen spécifiant la durée (par exemple,60spour une minute ou3600spour une heure) à l'aide du paramètrewindowSize. Étant donné que les données de pas sont enregistrées à des intervalles d'une minute (60s), définissezwindowSizesur au moins60s. Les requêtes dont la taille de fenêtre est inférieure à une minute (par exemple,10sou30s) ne découpent pas les totaux par minute, mais placent le nombre total de minutes dans le premier sous-bucket correspondant. Pour en savoir plus, consultez Fenêtre de cumul et résolution de stockage. - Tous les enregistrements de pas : utilisez le point de terminaison
listpour récupérer les enregistrements de pas bruts les plus précis.
Les points de terminaison rollUp, dailyRollUp et reconcile acceptent le paramètre dataSourceFamily, ce qui vous permet de filtrer les données de groupes sources spécifiques. Pour en savoir plus et obtenir des exemples d'utilisation, consultez la section Filtrer par famille de sources de données du guide "Filtrer les données".
Synchronisation en temps réel à l'aide de webhooks
Abonnez-vous à la collecte du type de données steps pour recevoir des notifications en temps réel lorsque de nouvelles données de pas sont importées ou synchronisées. Plutôt que d'interroger les points de terminaison REST, mettez à jour les tableaux de bord côté client de manière dynamique en réponse à ces notifications de webhook. Pour en savoir plus sur la configuration des abonnements, consultez Abonnements aux webhooks.