Desarrolla experiencias de Pasos con la API de Google Health

La API de Google Health realiza un seguimiento de los pasos del usuario y los datos de actividad con el tipo de datos de intervalo steps. El recuento de pasos representa una medida fundamental de la actividad física diaria, lo que ayuda a los desarrolladores a realizar un seguimiento del progreso de la actividad física, calcular el gasto de energía y compilar resúmenes de actividad diaria para los usuarios.

Comprende cómo leer y estructurar las métricas de recuento de pasos en tu aplicación para ofrecer la mejor experiencia a tus usuarios.

Tipos de datos admitidos

La API admite el siguiente tipo de datos para realizar un seguimiento de los recuentos de pasos:

Tabla: Tipos de datos de pasos de la API de Google Health
Tipo de datos Operaciones
disponibles
Alcance
Pasos
dataType: steps
filter parameter: steps
Tipo de registro: Intervalo

Dispositivos compatibles

list, reconcile, rollup, dailyRollup .activity_and_fitness.readonly
.activity_and_fitness.writeonly

Lineamientos

Cuando integres el seguimiento de pasos en tu app, sigue estos lineamientos de diseño e implementación.

Cálculo de velocidad y ritmo

La API de Google Health usa fórmulas estándar para calcular la velocidad y el ritmo:

  • Velocidad = distance / time(hour)
  • Ritmo = time(seconds) / distance

El encabezado Accept-Language especificado en la solicitud determina la unidad de distancia.

Resumen diario

Para agregar recuentos de pasos diarios con precisión durante los viajes, los cambios de zona horaria o el horario de verano, no realices cálculos de duración del cliente. En su lugar, consulta el extremo dailyRollUp, que concilia automáticamente las brechas de datos físicos con los desplazamientos de UTC. El resumen muestra un StepsRollupValue que contiene el campo countSum, que representa el total de pasos acumulados para el día solicitado.

Dibujo de interfaces de usuario (conciliación)

Cuando compiles elementos de la interfaz de usuario para mostrar datos de pasos, usa el extremo reconcile. Si varias fuentes de datos (como un reloj inteligente y un teléfono celular) registraron pasos al mismo tiempo, el extremo reconcile resuelve los conflictos y combina las transmisiones para mostrar una sola transmisión de datos conciliada.

Seguimiento y histogramas intradía

Para mostrar la actividad detallada del usuario durante todo el día (como gráficos):

  • Histogramas de pasos por hora: Consulta el extremo rollUp y especifica la duración (p.ej., 3600s durante 1 hora) con el parámetro windowSize.
  • Todos los registros de pasos: Usa el extremo list para recuperar los registros de pasos sin procesar más detallados.

Los extremos rollUp, dailyRollUp y reconcile aceptan el parámetro dataSourceFamily, lo que te permite filtrar datos de grupos de fuentes específicos. Para obtener más detalles y ejemplos de uso, consulta la sección Filtrar y agregar por familia de fuentes de datos de la guía de extremos.

Sincronización en tiempo real con webhooks

Suscríbete a la colección de tipos de datos steps para recibir notificaciones en tiempo real cuando se importen o sincronicen datos de pasos nuevos. En lugar de sondear extremos de REST, actualiza los paneles del cliente de forma dinámica en respuesta a estas notificaciones de webhook. Para obtener detalles sobre cómo configurar suscripciones, consulta Suscripciones de webhook.

Controla los ceros verdaderos

La API de Google Health implementa ceros verdaderos para resolver intervalos sedentarios. Si un usuario usa un dispositivo de seguimiento, pero no camina durante un período determinado, la API muestra un registro para ese intervalo que contiene la fuente de datos normal y los metadatos de marca de tiempo, pero omite la propiedad count.

Esto te permite distinguir los siguientes tipos:

  • Períodos estacionarios en la muñeca: El usuario usa el dispositivo, pero no camina. Esto muestra registros sin la propiedad count (interpretada como cero pasos).
  • Períodos sin usar en la muñeca: El usuario no usa el dispositivo. Esto no muestra ningún registro, lo que genera grandes brechas de datos.

Consulta la guía Presencia de datos y ceros verdaderos para obtener más detalles.