Las sesiones son una forma para que los usuarios vean de manera rápida y sencilla una lista de todas las actividades principales que realizaron. Aparecen en la página del diario de la app de Google Fit. Por ejemplo, una sesión de respiración, una caminata, una carrera o una noche de sueño son ejemplos de sesiones.
Las sesiones agrupan los conjuntos de datos de un período específico que se recopilaron durante una actividad. Por ejemplo, si un usuario registró cuándo comenzó y terminó una carrera de 3 km, se podría crear una sesión y todos los datos de actividad física que se encuentren dentro de ese período (como pasos, velocidad y distancia) se asociarían con esa sesión.
Las sesiones en sí no contienen detalles sobre la actividad. Esto se encuentra en el conjunto de datos. Las sesiones tienen las siguientes propiedades:
- Un nombre descriptivo y amigable (por ejemplo, "carrera matutina")
- Una descripción.
- Un identificador único
- El tipo de actividad que se captura (por ejemplo, una carrera)
Beneficios de usar sesiones
- Útil para los usuarios: Las sesiones te ayudan a organizar los datos de actividad y los entrenamientos de una manera significativa para los usuarios. Pueden ver todas sus actividades del día en la página Diario de la app de Google Fit.
- Experiencia del usuario coherente: Si tu app o dispositivo complementario permite el seguimiento de la actividad (en el que los usuarios pueden iniciar y detener una actividad), tener sesiones para estos entrenamientos permite que los usuarios vean su actividad en ambas apps.
- Datos más completos: Google Fit también combina datos de varias fuentes para complementar y enriquecer la información de tus sesiones. Esto les brinda a los usuarios un panorama más completo de su actividad.
- Aprovecha la plataforma de Google Fit: Si tus usuarios no hacen un seguimiento de su actividad o tu app no admite el seguimiento, aún puedes leer las sesiones en Google Fit. Puedes consultar datos detallados o agregados del almacén de Fitness y encontrar sesiones disponibles sin necesidad de implementar tu propio esquema y almacenamiento.
- Mayor participación de los usuarios: Puedes mostrarles a los usuarios las sesiones disponibles y las apps que las crearon. Interactuar con otras apps de fitness de esta manera podría aumentar la participación de los usuarios.
Cómo obtener la autorización del usuario para las sesiones
Si quieres leer o escribir sesiones, tu app debe obtener el permiso del usuario. El acceso a las sesiones usa los mismos alcances de autorización que los tipos de datos, que debes solicitar de la siguiente manera:
Android
Especifica a qué tipo de sesión debe acceder tu app con los métodos adecuados de FitnessOptions.
Por ejemplo, para leer las sesiones relacionadas con la carrera, puedes elegir lo siguiente:
val fitnessOptions = FitnessOptions.builder()
.accessActivitySessions(FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_HEART_RATE_BPM, FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_SPEED, FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_LOCATION_SAMPLE, FitnessOptions.ACCESS_READ)
.build()
En este ejemplo, se especifica que tu app quiere acceder a los metadatos de las sesiones de actividad y también se especifican los tipos de datos que quiere leer dentro de esas sesiones. En este ejemplo, se usan los tipos de datos de frecuencia cardíaca, velocidad y ubicación.
REST
Solicita los permisos de la siguiente manera:
- Sesiones con tipos de actividad de sueño:
https://www.googleapis.com/auth/fitness.sleep.readhttps://www.googleapis.com/auth/fitness.sleep.write
- Todas las demás sesiones:
https://www.googleapis.com/auth/fitness.activity.readhttps://www.googleapis.com/auth/fitness.activity.write
Cómo usar sesiones
Android
Puedes usar la API de Sessions para hacer lo siguiente:
- Crea sesiones en tiempo real
- Inserta sesiones en el almacén de fitness
- Se insertaron segmentos de actividad para admitir pausas durante los entrenamientos.
- Leer las sesiones y los conjuntos de datos asociados a ellas
- Iniciar otra app para mostrar información sobre una sesión que creó
- Recibe un intent cuando otra app inicia una sesión
REST
Puedes usar la API de Sessions para hacer lo siguiente:
- Crea sesiones en tiempo real
- Inserta sesiones en el almacén de fitness
- Se insertaron segmentos de actividad para admitir pausas durante los entrenamientos.
- Leer las sesiones y los conjuntos de datos asociados a ellas
Cómo interactúan los conjuntos de datos y los segmentos con las sesiones
En Google Fit, haz lo siguiente:
- Un conjunto de datos representa un conjunto de puntos de datos de una fuente de datos en particular durante un período específico. Los conjuntos de datos se pueden insertar por sí solos. Sin embargo, si vas a crear una sesión, tal vez sea más fácil crear la sesión y sus conjuntos de datos juntos.
- Un segmento agrupa los conjuntos de datos de una sesión según la actividad exacta que realizó el usuario en la sesión. Por ejemplo, si el usuario hace un seguimiento de una carrera de 30 minutos (la sesión), pero caminó un poco durante ese tiempo, esto se podría dividir en segmentos. Habría un segmento para la carrera, luego el descanso para caminar y, después, la carrera nuevamente.
En la Figura 1, se muestra un intervalo de tiempo en la tienda de fitness durante el cual las apps A, B y C insertaron algunos conjuntos de datos y sesiones:
- La app A insertó los conjuntos de datos A1 y A2 junto con la sesión 1, y A3 de forma independiente de cualquier sesión.
- La app B insertó los conjuntos de datos B1 y B2 junto con la sesión 2.
- La app C insertó el conjunto de datos C1 de forma independiente de cualquier sesión.
Cuando lees datos de sesiones desde el almacén de fitness, todos los datos de fitness que se encuentran dentro del intervalo de tiempo de una sesión se asocian automáticamente con esa sesión, incluso si insertas los datos después de crear la sesión o creas una sesión después de que se hayan rastreado los datos de forma pasiva. Por ejemplo, una consulta de datos de actividad física de la sesión 1 devolvería lo siguiente:
- Conjunto de datos A1
- Conjunto de datos A2
- La parte del conjunto de datos A3 entre t1 y t2
- La parte del conjunto de datos C1 entre t1 y t2
Puedes saber qué app insertó cada sesión y conjunto de datos.
Crea sesiones
Las sesiones se pueden crear de varias maneras:
- Tu app puede crear una sesión de forma activa en cualquiera de los siguientes casos:
- En tiempo real cuando un usuario hace un seguimiento activo de una actividad en un dispositivo (solo para Android)
- Insertándolo manualmente
- Cuando un usuario agrega manualmente un entrenamiento o una actividad en la app de Google Fit
Cuándo crear una sesión
¿Estás agregando datos de sueño?
- Sí: Crea una sesión y, luego, insértala manualmente en la tienda de entrenamiento. Por ejemplo, insertar una sesión de sueño. Esto se debe a que los usuarios con apps o dispositivos de monitoreo del sueño no interactuarán con los dispositivos para iniciar y detener su actividad de sueño (esto se monitorea de forma pasiva).
- No: ¿Tu app permite que los usuarios inicien y detengan actividades?
- No: No se crea una sesión. Solo agrega conjuntos de datos de tu app.
- Sí: Con la API de Android, crea una sesión en tiempo real si los usuarios hacen un seguimiento de su actividad o manualmente. Con la API de REST, crea una sesión y, luego, insértala manualmente en el almacén de fitness.
- ¿Puede tu app detectar cuándo un usuario realiza diferentes actividades a un nivel más detallado (por ejemplo, caminar en lugar de correr)?
- Sí: Agrega segmentos.
- No: Solo agrega conjuntos de datos. Por el momento, omite los segmentos y deja que Google Fit los cree de forma pasiva.
Cómo leer sesiones
Tu app puede leer sesiones de varias maneras:
- Busca una sesión específica que haya creado o insertado
- Nombre o
- ID
- Busca todas las sesiones que creó o insertó, por período.
- Buscar todas las sesiones disponibles creadas por todas las apps (incluida Google Fit) por período
Descubre qué fuentes crearon una sesión
Puedes mostrar a tus usuarios qué app o dispositivo creó cada una de sus sesiones. Cada sesión tiene una fuente de datos asociada, que contiene información sobre la app o el dispositivo que recopiló o transformó los datos.
Android
Actualmente, solo puedes obtener el nombre del paquete de una sesión escrita por un cliente de Android. Para obtener el nombre del paquete de la app que creó una sesión, usa el método getAppPackageName. Puedes usar esta información en tu app para mostrarles a los usuarios qué otras apps insertaron sesiones de actividad física. Puedes mostrar el ícono de cada una de estas apps para ayudar a los usuarios a identificarlas.
También puedes activar un intent para iniciar otras apps y mostrar los detalles de las sesiones que crearon. Otras apps también pueden activar un intent para iniciar tu app.
Obtén más información para encontrar la fuente que creó una sesión.
REST
Para obtener el nombre del paquete de la app para Android que creó sesiones, usa la propiedad session.application. En el caso de las sesiones creadas con la API de REST, usa la propiedad session.name. Puedes usar esta información en tu app para mostrar a los usuarios qué otras apps insertaron sesiones de actividad física. Puedes mostrar el ícono de cada una de estas apps para ayudar a los usuarios a identificarlas.
Obtén más información para encontrar la fuente que creó una sesión.