Tipos de datos

Google Fit proporciona un conjunto de tipos de datos de salud y bienestar en el espacio de nombres com.google.

Los tipos de datos definen el formato de los valores dentro de los datos. Un punto de datos puede representar lo siguiente:

  • Observación o lectura instantánea
  • Un agregado con estadísticas durante un intervalo de tiempo

Google Fit define los tipos de datos de las observaciones instantáneas y los tipos de datos del agregado de datos no estructurados. Los datos consisten en valores para los campos de un tipo de datos y la información de la marca de tiempo. Los puntos que representan observaciones instantáneas incluyen una marca de tiempo y puntos de un tipo de datos agregados también incluyen la hora de inicio del intervalo.

Google Fit también te permite definir nuevos tipos de datos.

Grupos de tipos de datos

Google Fit tiene los siguientes tipos de datos:

Tipos de datos públicos
Los tipos de datos estándar que proporciona la plataforma tienen el dominio "com.google" . Por ejemplo, com.google.step_count.delta. Estos tipos de datos capturan lecturas instantáneas de datos de salud y bienestar, incluidos la actividad física, el sueño y la nutrición. Cualquiera puede solicitar los permisos relevantes para leer y escribir en estos tipos de datos salvo algunos tipos de datos de ubicación que solo la aplicación puede leer las escribió.

Para obtener más información, consulta:

Tipos de datos de salud
Los tipos de datos proporcionados por la plataforma que tienen acceso restringido debido a datos potencialmente sensibles. Para obtener más información, consulta Datos de salud. tipos.
Tipos de datos agregados
Los tipos de datos para leer información de salud y bienestar agregada por hora o tipo de actividad. Para obtener más información, consulta Agrega datos tipos.
Tipos de datos personalizados privados
Tipos de datos personalizados definidos por una app específica Solo la app que define la tipo de datos puede leer y escribir datos de este tipo. Para obtener más información, consulta Tipos de datos personalizados.

Usa tipos de datos

Android

En Android, los tipos de datos se definen como campos públicos del DataType . La forma de invocar las APIs de Fitness con el tipo de datos depende de lo que quieras lograr:

  • Para registrar datos, usa la API de Recording para crea una suscripción para cada tipo de datos que quieras grabar.
  • Si quieres leer datos, usa la API de History para enviar una operación de lectura. para cada tipo de datos.
  • Para insertar datos históricos del pasado, usa la API de History para realizar las siguientes acciones: envía una solicitud de inserción para cada tipo de datos.
  • Si quieres crear sesiones, usa la API de Sessions para insertarlas o registrarlas con metadatos de sesión.

Para crear puntos de datos para una DataType asigna valores con el formato correcto. En el siguiente ejemplo, se muestra cómo asignar el alimento como cadena, el tipo de comida como una constante de la clase Field, y nutrientes como valores de número de punto flotante asignados.

val nutritionSource = DataSource.Builder()
    .setDataType(DataType.TYPE_NUTRITION)
    ...
    .build()

val nutrients = mapOf(
    Field.NUTRIENT_TOTAL_FAT to 0.4f,
    Field.NUTRIENT_SODIUM to 1f,
    Field.NUTRIENT_POTASSIUM to 422f
)
val banana = DataPoint.builder(nutritionSource)
    .setTimestamp(now, TimeUnit.MILLISECONDS)
    .setField(Field.FIELD_FOOD_ITEM, "banana")
    .setField(Field.FIELD_MEAL_TYPE, Field.MEAL_TYPE_SNACK)
    .setField(Field.FIELD_NUTRIENTS, nutrients)
    .build()

Después de establecer puntos de datos en tu app, puedes insertarlos, leerlos o borrarlos datos históricos con la API de History.

REST

El recurso dataSources incluye el tipo de datos (y una lista de sus campos) para cada fuente de datos. Puedes especificar uno de estos tipos de datos cuando creas fuentes de datos y puedes obtener el nombre del tipo de datos y una lista de sus campos Cuando recuperes una fuente de datos de la tienda de entrenamiento.

Por ejemplo, una representación de fuente de datos especifica su tipo de datos de la siguiente manera:

{
"dataStreamId": "exampleDataSourceId",
...
"dataType": {
  "name": "com.google.step_count.delta"
},
...
}

Alcances de autorización

Los permisos de autorización abarcan grupos de tipos de datos a los que un usuario puede autorizar una app. el acceso a los datos. Ayudan a los usuarios a comprender a qué tipos de datos quiere acceder una app. También facilitan dar permiso a las apps para que usen esos datos, ya que no tienen para aprobar cada tipo de datos individual. Los usuarios otorgan estos permisos una vez descargaron tu aplicación.

Ejemplo de la pantalla de consentimiento de permisos de OAuth
Figura 2: Pantalla de consentimiento de permisos de OAuth.

Después de probar tu app con una cantidad pequeña de usuarios, antes de lanzar tu app, debes solicitar verificación según la y permisos relevantes para esos tipos de datos. Lee las páginas de tipos de datos vinculadas para entender qué alcances se aplican a cada tipo de datos.

Por ejemplo, si necesita leer y escribir la presión arterial, debe declarar que realiza operaciones de lectura y escritura, y que solicita ambos alcances. Si es solo escribirá datos de presión arterial en la plataforma de Google Fit, solo deberá solicitar el permiso de escritura.

Elige los tipos de datos con responsabilidad. No solicites todos los tipos de datos en caso de que tu app lo necesiten. Los tipos especificados determinan los permisos que se le solicitan al usuario para otorgar permiso. Pregunta solo por los tipos de datos que necesita la app para que los usuarios más probabilidades de otorgar acceso. Los usuarios otorgan acceso con mayor facilidad a permisos limitados los permisos descritos.

Usa esta tabla para verificar si los permisos a los que necesita acceder tu app son sensibles o restringido (lo que determina la verificación pasos que debes seguir):

Alcance Descripción Categoría
https://www.googleapis.com/auth/fitness.activity.read Leer datos de actividad de la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.activity.write Cómo escribir datos de actividad en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.blood_glucose.read Leer datos sobre glucemia de la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.blood_glucose.write Escribir datos sobre la glucemia en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.blood_pressure.read Leer datos de presión arterial en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.blood_pressure.write Escribir los datos de presión arterial en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.body.read Leer datos de mediciones corporales (altura, peso, porcentaje de grasa corporal) en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.body.write Escribir los datos de medición corporal en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.body_temperature.read Leer los datos de temperatura corporal de la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.body_temperature.write Escribe los datos de temperatura corporal en la plataforma de Google Fit. Restringido
https://www.googleapis.com/auth/fitness.heart_rate.read Leer datos de la frecuencia cardíaca en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.heart_rate.write Escribir datos de la frecuencia cardíaca en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.location.read Leer los datos de ubicación de la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.location.write Escribir los datos de ubicación en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.nutrition.read Leer datos de nutrición de la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.nutrition.write Escribir datos de nutrición en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.oxygen_saturation.read Lee los datos sobre saturación de oxígeno de la plataforma de Google Fit. Restringido
https://www.googleapis.com/auth/fitness.oxygen_saturation.write Escribir datos sobre la saturación de oxígeno en la plataforma de Google Fit. Restringido
https://www.googleapis.com/auth/fitness.reproductive_health.read Leer datos sobre salud reproductiva en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.reproductive_health.write Escribir los datos sobre salud reproductiva en la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.sleep.read Leer datos de sueño de la plataforma de Google Fit Restringido
https://www.googleapis.com/auth/fitness.sleep.write Escribir los datos de sueño en la plataforma de Google Fit Restringido

Cómo agregar permisos nuevos a una app existente

Cuando actualices tu app para solicitar un nuevo alcance (por ejemplo, si agregas el nuevo alcances de sueño o ritmo cardíaco, o agregar un alcance de lectura), se solicitará a los usuarios que tu app solicita acceso a estos permisos y puede optar por otorgar o rechazan el acceso.

Se recomienda solicitar autorización de los usuarios para los recursos en ese momento los necesitas. Sigue las pautas para solicitar incrementos autorización.

Es más probable que los usuarios otorguen acceso si entienden por qué o cómo se usa tu app. usa estos datos:

  • Considera agregar una pantalla que advierta o informe a los usuarios que se les pedirá estos alcances.
  • Explica claramente por qué tu app solicita acceso a esos permisos o datos, de manera que para que los usuarios puedan tomar decisiones informadas.

Obtén más información sobre las prácticas recomendadas relacionadas con los permisos de las apps para Android.