Salud
| Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
|---|---|---|---|---|
| 7 de mayo de 2025 | 1.0.0 | - | - | 1.1.0-alpha05 |
Cómo declarar dependencias
Para agregar una dependencia en Health, debes agregar el repositorio Maven de Google a tu proyecto. Lee el repositorio Maven de Google para obtener más información.
Agrega las dependencias de los artefactos que necesites en el archivo build.gradle de tu app o módulo:
Groovy
dependencies { implementation "androidx.health:health-services-client:1.1.0-alpha05" }
Kotlin
dependencies { implementation("androidx.health:health-services-client:1.1.0-alpha05") }
Comentarios
Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.
Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.
Health Connect Client versión 1.0
Versión 1.0.0-alpha04
24 de agosto de 2022
A partir de la versión 1.0.0-alpha04, se migró androidx.health:health-connect-client a androidx.health.connect:connect-client. Para versiones futuras, usa androidx.health.connect:connect-client y las notas de la versión asociadas en nuestra página de Health Connect.
Para migrar, simplemente cambia la importación de dependencias de androidx.health:health-connect-client:1.0.0-alpha03 a androidx.health.connect:connect-client:1.0.0-alpha04.
Versión 1.0.0-alpha03
27 de julio de 2022
Lanzamiento de androidx.health:health-connect-client:1.0.0-alpha03. La versión 1.0.0-alpha03 contiene estas confirmaciones.
Nuevas funciones
- Resumen de los nuevos cambios en la API: Se agregó un conjunto de unidades a las APIs de lectura, escritura y agregación. Las apps ahora pueden recuperar o escribir registros con la unidad que prefieran, como gramos o miligramos de nutrientes de
NutritionRecord.
Cambios en la API
- Se corrigió
List<DataOrigin>para que seaSet<DataOrigin>en varios objetos de respuesta de solicitud (I42342). - Se corrigió la unidad de calorías basales totales de Potencia->Energía (I0b429).
- Se movieron las clases de muestra de series dentro de los registros de series (Ica9bb):
CyclingPedalingCadence->CyclingPedalingCadenceRecord.SampleHeartRate->HeartRateRecord.SampleStepsCadence->StepsCadenceRecord.Sample
- La clase
HealthDataRequestPermissiondejó de estar disponible y se reemplazó porPermissionController.createRequestPermissionActivityContract. Esto mejora la visibilidad y la unificación de los parámetros (I81e7f). - Se agregaron onzas fluidas de EE.UU. al volumen (I5f03d).
- Se agregó el tipo de unidad Velocidad (I1d574).
- Se agregó el tipo de unidad Porcentaje (I08f23).
- Se agregó el tipo de unidad Presión (Ifb01f).
- Se agregó el tipo de unidad Masa (Ifd81a).
- Se agregó el tipo de unidad Volumen (I59ad1).
- Se agregó el tipo de unidad Potencia. Se movió la clase de muestra de la serie Potencia dentro de la clase
PowerRecord(I5b1e5). - Se agregó el tipo de unidad Energía (I983ae).
- Se agregó el tipo de unidad Temperatura (I4cdb5).
- Se cambió el nombre de las referencias de Actividad para que sean específicas de Ejercicio, incluidas las siguientes (I3f936):
- Se cambió el nombre de
ActivityLap->ExerciseLapRecord. - Se cambió el nombre de
ActivityEvent->ExerciseEventRecord. - Se cambió el nombre de
Repetitions->ExerciseRepetitionsRecord. - Se cambió el nombre de
ActivitySession->ExerciseSessionRecord.
- Se cambió el nombre de
- Se movieron los metadatos del paquete anidados en registros (Ie0835).
- Se usó la unidad Longitud en todos los registros restantes (Ib10dd):
ActivityLapRecordElevationGainedRecordHeightRecordHipCircumferenceRecordWaistCircumferenceRecord
- Se agregó el tipo de unidad Longitud (Idae39).
- Se actualizó la terminología de descripción
CervicalMucus(I25a2b):CervicalMucus.Amount->CervicalMucusRecord.TextureCervicalMucus.Appearance->CervicalMucusRecord.Sensation
- Se agregó el sufijo "Registro" a todos los nombres de clase de registro (I1ffc2).
Correcciones de errores
- Se corrigieron problemas de ProGuard cuando la biblioteca se compilaba con la variante de lanzamiento y
minifyEnabledverdadero (I78933). - Se ocultó la documentación que no está destinada al uso público (I7a08f).
- Se corrigió el problema en clientes que pueden tener sus propias dependencias de protobuf (https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430).
Versión 1.0.0-alpha02
1 de junio de 2022
Se lanzó androidx.health:health-connect-client:1.0.0-alpha02. La versión 1.0.0-alpha02 contiene estas confirmaciones.
Cambios en la API
hasMetricygetMetricdejaron de estar disponibles enAggregationResult, se agregaron los operadores contains y get (I7cc7c).- Se agregaron
OvulationTest.Result.HIGHyOvulationTest.Result.INCONCLUSIVE(I9f9c4).
Correcciones de errores
- Se redujeron los requisitos del SDK a 26 (I6d201).
Versión 1.0.0-alpha01
11 de mayo de 2022
Se lanzó androidx.health:health-connect-client:1.0.0-alpha01. La versión 1.0.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- API para leer registros de entrenamiento y salud compartidos por otras apps
- API para escribir registros de salud y entrenamiento, y compartirlos con otras apps
- API para recuperar las métricas globales de los registros a los que se tiene acceso
- API para recuperar cambios incrementales (inserción, actualización o eliminación) de los registros de otras apps
- API para solicitar permisos de salud a los usuarios
- API para verificar los permisos o revocar los permisos de salud otorgados
Health Services Client versión 1.1
Versión 1.1.0-alpha05
11 de diciembre de 2024
Lanzamiento de androidx.health:health-services-client:1.1.0-alpha05, androidx.health:health-services-client-external-protobuf:1.1.0-alpha05 y androidx.health:health-services-client-proto:1.1.0-alpha05. La versión 1.1.0-alpha05 contiene estas confirmaciones.
Nuevas funciones
- Ahora incluye reglas de ProGuard para evitar que se quiten las clases necesarias. (65d0c3f)
Correcciones de errores
- Esta biblioteca ahora usa anotaciones de nulidad de JSpecify, que son de tipo de uso. Los desarrolladores de Kotlin deben usar el siguiente argumento del compilador para aplicar el uso correcto:
-Xjspecify-annotations=strict(este es el valor predeterminado a partir de la versión 2.1.0 del compilador de Kotlin). (Iaf73a, b/326456246).
Versión 1.1.0-alpha04
16 de octubre de 2024
Lanzamiento de androidx.health:health-services-client:1.1.0-alpha04, androidx.health:health-services-client-external-protobuf:1.1.0-alpha04 y androidx.health:health-services-client-proto:1.1.0-alpha04. La versión 1.1.0-alpha04 contiene estas confirmaciones.
Correcciones de seguridad
- A partir de este cambio, androidx compila con protobuf 4.28.2 para abordar el CVE-2024-7254. Actualiza tu dependencia de
androidx.health:health-services-clienta la versión 1.1.0-alpha04 más reciente para abordar el riesgo de vulnerabilidad.
Versión 1.1.0-alpha02
13 de diciembre de 2023
Lanzamiento de androidx.health:health-services-client:1.1.0-alpha02. La versión 1.1.0-alpha02 contiene estas confirmaciones.
Cambios en la API
- Usa una única fuente de confianza para los
ExerciseEventadmitidos. (I03308).
Correcciones de errores
- Se corrigieron errores menores y se realizaron mejoras en la documentación.
Versión 1.1.0-alpha01
9 de agosto de 2023
Lanzamiento de androidx.health:health-services-client:1.1.0-alpha01. La versión 1.1.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Se agregaron las APIs de
ExerciseEventjunto con el primer evento concreto:GolfShotEvent. Las primitivasExerciseEventpermiten a los desarrolladores consultar la asistencia y solicitar que se les notifique cuando el reloj detecte que ocurrió algo.GolfShotEvent, como ejemplo, permite que los desarrolladores reciban una notificación cuando el usuario realiza un golpe de golf, además de recibir el tipo de swing reconocido.
Cambios en la API
- Habilita a los clientes del SDK de WHS para que usen las funciones de
GolfShotEvent. (I76b03)
Correcciones de errores
- En lugar de arrojar excepciones de forma agresiva cuando se ven capacidades de eventos de ejercicio desconocidas, fíltralas de la lista. (I06afc).
Health Services Client versión 1.0
Versión 1.0.0
7 de mayo de 2025
Lanzamiento de androidx.health:health-services-client:1.0.0. La versión 1.0.0 contiene estas confirmaciones.
Funciones principales de la versión 1.0.0
- Esta es la promoción de 1.0.0-rc02 a la versión estable de Health Services Client. No hay cambios desde la versión 1.0.0-rc02.
Versión 1.1.0-alpha03
14 de mayo de 2024
Lanzamiento de androidx.health:health-services-client:1.1.0-alpha03. La versión 1.1.0-alpha03 contiene estas confirmaciones.
Nuevas funciones
- Se introdujeron las APIs de
DebouncedGoalque permiten hacer un seguimiento de un objetivo para el tipo de datos de muestra o el tipo de datos de muestra de estadísticas durante el ejercicio con funciones de anulación de rebote(initialDelayydurationAtThreshold). (I09be9) - Se agregó el siguiente ejemplo de métricas de carrera avanzadas y
DataTypesestadístico. (I0b8b5):Ground Contact TimeVertical OscillationVertical RatioStride Length
Cambios en la API
- Se agregó
ELEVATION_GAIN_DAILYDataType. (I059d1) - Se agregó
SWIM_LAP_COUNT_TOTALDataTypecomo elDataTypeagregado paraSWIM_LAP_COUNT. (I0beeb).
Correcciones de errores
- Se corrigieron varios problemas para mejorar la confiabilidad del IPC.
Versión 1.0.0-rc02
3 de abril de 2024
Lanzamiento de androidx.health:health-services-client:1.0.0-rc02. La versión 1.0.0-rc02 contiene estas confirmaciones. Esta es una versión solo de corrección de errores y no contiene cambios en la API.
Correcciones de errores
- Se corrigieron varios problemas para mejorar la confiabilidad del IPC
- Se solucionó un problema por el que llamar a
startExerciseal mismo tiempo que aprepareExercisepodía generar unConcurrentModificationException(4e37773). - Documentación mejorada
Versión 1.0.0-rc01
26 de julio de 2023
Lanzamiento de androidx.health:health-services-client:1.0.0-rc01. La versión 1.0.0-rc01 contiene estas confirmaciones.
Nuevas funciones
- Health Services pasó a la versión 1.0.0-rc01 después de estabilizarse en la versión beta.
Cambios en la API
- Se combinaron los archivos de API públicos y experimentales para las rutas h a m. (Ic4630, b/278769092).
- N/A, los cambios en el archivo de la API son solo métodos de reordenamiento. (I5fa95).
Versión 1.0.0-beta03
5 de abril de 2023
Lanzamiento de androidx.health:health-services-client:1.0.0-beta03. La versión 1.0.0-beta03 contiene estas confirmaciones.
Nuevas funciones
Ahora se puede configurar BatchingMode para que envíe datos de ejercicio por lotes en el intervalo configurado en lugar del predeterminado durante un ejercicio activo, ya sea al comienzo del ejercicio a través de ExerciseConfig o durante con un método de anulación. La compatibilidad con esta función se habilitará en una próxima versión de los Servicios de salud en Google Play Store y se podrá verificar a través de las funciones de ejercicio. Nota: Los modos por lotes se aplican mientras el dispositivo está en un estado de energía no interactivo y aumentarán el consumo de energía.
Cambios en la API
- Se arroja
HealthServicesExceptioncuando falla la función de suspensiónoverrideBatchingModesForActiveExercise(Ifd387). - Se introdujeron funciones de suspensión para la API de
overrideBatchingModesForActiveExerciseasíncrona, lo que las hace más compatibles con Kotlin (I7dd15). BatchingModeanula lo opcional enExerciseConfig(Id22e9).
Correcciones de errores
- Correcciones menores de
DataTypeyExerciseUpdate(5e185f)
Versión 1.0.0-beta02
11 de enero de 2023
Se lanzó androidx.health:health-services-client:1.0.0-beta02. La versión 1.0.0-beta02 contiene estas confirmaciones.
Nuevas funciones
- Se agregaron funciones de extensión
suspendde las APIsListenableFutureasíncronas existentes enExerciseClient,PassiveMonitoringClientyMeasureClientpara mejorar la compatibilidad con Kotlin (Iadea4). - Se agregó la API de
ExerciseTypeConfigque habilita las actualizaciones durante un ejercicio en curso. Se agregóGolfExerciseTypeConfigpara admitir la actualización deExerciseTypeConfigdurante los ejercicios de golf (I4c539).
Cambios en la API
- Se agregó
HealthServicesExceptionen las funciones de suspensión (I5e509). - Se agregó otro constructor para generar retrocompatibilidad (Iddeda).
- Se arroja
RuntimeExceptionen las funciones de suspensión (I53bca). - Se quitó la implementación predeterminada de la excepción de lanzamiento (Id947f).
- Se agregó la anotación
@JvmDefaultWithCompatibility(I8f206).
Correcciones de errores
- Se agregó kdoc para brindar mayor claridad al usuario (Ide285).
- Se permite el seguimiento de supervisión pasivo para objetivos solo si también se realiza el seguimiento de los mismos tipos de datos (Ibed8d).
Versión 1.0.0-beta01
24 de octubre de 2022
Lanzamiento de androidx.health:health-services-client:1.0.0-beta01. La Versión 1.0.0-beta01 contiene estas confirmaciones.
Nuevas funciones
Se agregó la capacidad de escuchar eventos de salud a través de
PassiveMonitoringClient. El primero esHealthEvent.FALL_DETECTED.Nuevos ExerciseTypes:
ALPINE_SKIINGBACKPACKINGCROSS_COUNTRY_SKIINGHORSE_RIDINGINLINE_SKATINGMOUNTAIN_BIKINGORIENTEERINGROLLER_SKATINGYACHTING
Nuevos DataTypes:
ELEVATION_LOSSGOLF_SHOT_COUNT
Cambios en la API
- Actualización de la forma en que se modelan los datos: Se reacondicionaron el modelo de datos y cómo se representan
DataType,DataPointy sus valores subyacentes. El impacto de nivel superior es que las APIs ahora son mucho más explícitas y de tipo seguro. - Los
DataPointde ubicación ya no se representan comoDoubleArray, sino como un objetoLocationDatade tipo fuerte. - Se trasladó a un nuevo conjunto de APIs de objetos de escucha pasivos:
- La transmisión se reemplazó por
PassiveListenerService. - Los objetos de escucha existentes se reemplazaron por un solo objeto de escucha:
PassiveListenerCallback.
- La transmisión se reemplazó por
- Se agregó la etiqueta
<queries>al manifiesto de Servicios de salud para que las aplicaciones ya no necesiten especificarlo en su propio manifiesto (siempre que esté activada la combinación de manifiestos en su sistema de compilación). - Se quitó de muchos
ExerciseStatepara representar que el ejercicio está finalizando o finalizado y se agregaron nuevos estados de ejercicioENDINGyENDED. Ahora se combinan conExerciseEndReasonpara representar la gama completa de estados anteriores. - Se cambió el nombre de
PassiveListenerConfigsetPassiveGoalsasetDailyGoalspara reflejar mejor que solo admitimos objetivos pasivos diarios. - Ahora,
PassiveGoalsiempre esREPEATEDy se quitó elTriggerFrequencypasivo. - Se anotaron todos los parámetros
LongyDoublecon@FloatRange. - Se agregó la propiedad
swimmingPoolLengthMetersaExerciseConfig, que se puede especificar de forma opcional a fin de mejorar los cálculos de distancia para natación en piscinas. ExerciseUpdate.activeDurationquedó obsoleto. UsaExerciseUpdate.activeDurationCheckpointen su lugar.- Se cambió el nombre de la API
flushExerciseAsync()aflushAsync()enExerciseClient. - Se cambió el nombre de
Measure.registerCallbackporMeasure.registerMeasureCallback. - Cambios generales en los nombres:
- Las propiedades de distancia ahora tienen el sufijo
meters. - Los nombres de los métodos de devolución de llamada están en pasado.
- Se quitaron la mayoría de las abreviaturas (
HrAccuracyahora esHeartRateAccuracy). - Las propiedades que siguen el patrón
enableFooahora se denominanisFooEnabled.
- Las propiedades de distancia ahora tienen el sufijo
- Se migró de Enums.
- Los horarios representados por
Doubleahora están representados porDuration. - Las funciones que muestran un
ListenableFuture<Void?>ahora muestran unListenableFuture<Void>. - Las funciones que aceptan una devolución de llamada ahora siempre la muestran como el último parámetro.
- Las clases con compiladores ahora también tienen constructores públicos.
- Las funciones de registro ya no muestran un
ListenableFuture, sino que pasan el estado de registro a la devolución de llamada proporcionada. - Se mejoró KDocs.
- Las clases públicas ya no extienden
ProtoParcelable.
Correcciones de errores
- Se hicieron mejoras generales en la confiabilidad de IPC (I3b1e2).
Versión 1.0.0-alpha03
3 de noviembre de 2021
Se lanzó androidx.health:health-services-client:1.0.0-alpha03. La versión 1.0.0-alpha03 contiene estas confirmaciones.
Nuevas funciones
- El SDK volverá a registrar automáticamente las solicitudes de registro de devoluciones de llamada de supervisión, medición de objetos y supervisión pasiva en caso de que la conexión IPC se interrumpa con el APK de Servicios de salud.
Cambios en la API
- Se mejoró la minSdkVersion de la biblioteca de SDK hasta el nivel de API 30, ya que el cliente de Servicios de salud solo se admite actualmente en Wear3.
Versión 1.0.0-alpha02
29 de septiembre de 2021
Lanzamiento de androidx.health:health-services-client:1.0.0-alpha02. La versión 1.0.0-alpha02 contiene estas confirmaciones.
Cambios en la API
ExerciseClientahora admite la preparación de un ejercicio. De esta manera, los clientes pueden preparar los sensores y esperar a que, por ejemplo, se obtengan datos del GPS, antes de comenzar a hacer ejercicio.- Se incorporaron las clases CumulativeDataPoints y StatisticalDataPoints AggregateDataPoint para modelar mejor las métricas agregadas que se registran durante un ejercicio activo. CumulativeDataPoints conserva valores acumulados de tipos de datos de intervalos agregados (como la distancia total durante el ejercicio), mientras que el modelo StatisticalDataPoints acumula valores agregados de datos de muestra (como los valores mínimos y máximos y HeartRateBpm promedio). Esto reemplaza los DataTypes de
AGGREGATE_*anteriores y se puede acceder a ellos en ExerciseUpdate mediantegetLatestAggregateMetrics(). Ya no se admiten DataTypes deAGGREGATE_*. - Se cambió en nombre de Events de
PassiveMonitoringporPassiveGoals, que admite configurar objetivos y repetir notificaciones cuando se alcanzan dichos objetivos para tipos de datos como métricas diarias (es decir, DAILY_STEPS). - Se mejoraron los modelos precisión y disponibilidad del ritmo cardíaco y la ubicación mediante la incorporación de las nuevas clases HrAccuracy, LocationAccuracy y LocationAvailability.
- Se mejoró la denominación de
ExerciseConfigy los nuevos camposPassiveMonitoringConfig, y se incorporóExerciseConfig.shouldEnableGpspara solicitar datos respaldados por GPS.
Correcciones de errores
- Se migró al transporte IPC respaldado por proto para una mejor retrocompatibilidad.
Versión 1.0.0-alpha01
18 de mayo de 2021
Lanzamiento de androidx.health:health-services-client:1.0.0-alpha01. La versión 1.0.0-alpha01 contiene estas confirmaciones.
Funciones de la versión inicial
La biblioteca de servicios de Health proporciona un conjunto uniforme de API que los desarrolladores pueden integrar a las implementaciones de sensores específicas del dispositivo. Funciona de inmediato con emuladores Wear OS 3 y dispositivos futuros. Además, se admitirán plataformas adicionales. En esta versión inicial, se incluyen tres superficies de API de nivel superior: ExerciseClient, PassiveMonitoringClient y MeasureClient.
ExerciseClient
ExerciseClient está diseñado para aplicaciones que realizan un seguimiento de los entrenamientos activos, con hasta 82 ExerciseType diferentes que van desde caminar y correr hasta bailar y practicar waterpolo. Mientras realizas un seguimiento de estos ejercicios, hay una selección de 50 DataType diferentes disponibles según el tipo de ejercicio y hardware disponibles en el dispositivo. Para comenzar, solo especifica la información relevante en tu ExerciseConfig, llama a exerciseClient.startExercise y escucha el progreso del objeto de escucha de actualizaciones.
PassiveMonitoringClient
PassiveMonitoringClient es una excelente opción si tu aplicación realiza un seguimiento de la actividad del usuario a lo largo del día. Puedes registrar un PendingIntent con un conjunto de DataType y despertarte para controlar los cambios por lotes. Como alternativa, puedes especificar un Event, como alcanzar una determinada cantidad de pasos.
MeasureClient
A veces, el usuario necesita medir, p. ej., su ritmo cardíaco en el momento, no durante un ejercicio ni a lo largo del día. En esas instancias, MeasureClient es la mejor opción. Solo debes registrar tu devolución de llamada con los DataType compatibles para recibir una transmisión de datos y cancelar el registro de tu devolución de llamada cuando ya no sea necesario.