État
Dernière mise à jour | Version stable | Version finale | Version bêta | Version alpha |
---|---|---|---|---|
11 décembre 2024 | - | 1.0.0-rc02 | - | 1.1.0-alpha05 |
Déclarer des dépendances
Pour ajouter une dépendance sur Health, vous devez ajouter le dépôt Maven de Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.
Ajoutez les dépendances des artefacts dont vous avez besoin dans le fichier build.gradle
de votre application ou module :
Groovy
dependencies { implementation "androidx.health:health-services-client:1.1.0-alpha03" }
Kotlin
dependencies { implementation("androidx.health:health-services-client:1.1.0-alpha03") }
Commentaires
Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.
Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.
Client Santé Connect version 1.0
Version 1.0.0-alpha04
24 août 2022
Depuis la version 1.0.0-alpha04, androidx.health:health-connect-client
a été migré vers androidx.health.connect:connect-client
. Pour vos futures versions, veuillez utiliser androidx.health.connect:connect-client
et les notes de version associées sur notre page Santé Connect.
Pour effectuer la migration, remplacez simplement l'importation des dépendances androidx.health:health-connect-client:1.0.0-alpha03
par androidx.health.connect:connect-client:1.0.0-alpha04
.
Version 1.0.0-alpha03
27 juillet 2022
Publication d'androidx.health:health-connect-client:1.0.0-alpha03
. Liste des commits de la version 1.0.0-alpha03
Nouvelles fonctionnalités
- Résumé des modifications : un ensemble d'unités a été ajouté aux API de lecture, d'écriture et d'agrégation. Les applications peuvent désormais récupérer ou écrire des enregistrements avec l'unité de leur choix, par exemple le gramme ou le milligramme pour les nutriments de
NutritionRecord
.
Modifications apportées à l'API
- Correction de
List<DataOrigin>
enSet<DataOrigin>
dans différents objets de réponse aux requêtes. (I42342) - Correction de l'unité pour le nombre total de calories brûlées au repos dans Power->Energy. (I0b429)
- Déplacement des exemples de classes de série dans les enregistrements de série. (Ica9bb) :
CyclingPedalingCadence
->CyclingPedalingCadenceRecord.Sample
HeartRate
->HeartRateRecord.Sample
StepsCadence
->StepsCadenceRecord.Sample
- Abandon de la classe
HealthDataRequestPermission
en faveur dePermissionController.createRequestPermissionActivityContract
, pour une meilleure visibilité et un paramétrage unifié. (I81e7f) - Ajout de l'once liquide comme unité de volume. (I5f03d)
- Ajout du type d'unité Speed. (I1d574)
- Ajout du type d'unité Percentage. (I08f23)
- Ajout du type d'unité Pressure. (Ifb01f)
- Ajout du type d'unité Mass. (Ifd81a)
- Ajout du type d'unité Volume. (I59ad1)
- Ajout du type d'unité Power. Déplacement de l'exemple de classe de série Power dans la classe
PowerRecord
. (I5b1e5) - Ajout du type d'unité Energy. (I983ae)
- Ajout du type d'unité Temperature. (I4cdb5)
- Changement de nom : les références liées à Activity sont désormais adaptées à Exercise, par exemple (I3f936) :
ActivityLap
devientExerciseLapRecord
ActivityEvent
devientExerciseEventRecord
Repetitions
devientExerciseRepetitionsRecord
ActivitySession
devientExerciseSessionRecord
- Déplacement des métadonnées de package imbriquées sous les enregistrements. (Ie0835)
- Utilisation de l'unité Length dans tous les enregistrements restants (Ib10dd) :
ActivityLapRecord
ElevationGainedRecord
HeightRecord
HipCircumferenceRecord
WaistCircumferenceRecord
- Ajout du type d'unité Length. (Idae39)
- Mise à jour de la terminologie servant à décrire
CervicalMucus
(I25a2b) :CervicalMucus.Amount
->CervicalMucusRecord.Texture
CervicalMucus.Appearance
->CervicalMucusRecord.Sensation
- Ajout du suffixe "Record" à tous les noms de classe d'enregistrement. (I1ffc2)
Corrections de bugs
- Correction des problèmes liés à ProGuard lorsque la bibliothèque est compilée avec le type "release" et que
minifyEnabled
est défini sur "true". (I78933) - Masquage de la documentation non destinée à un usage public. (I7a08f)
- Correction du problème dans les clients susceptibles de disposer de leurs propres dépendances de tampon de protocole. (https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430)
Version 1.0.0-alpha02
1er juin 2022
Publication de androidx.health:health-connect-client:1.0.0-alpha02
. Liste des commits de la version 1.0.0-alpha02.
Modifications apportées à l'API
- Abandon de
hasMetric
etgetMetric
dansAggregationResult
, et ajout des opérateurs contains et get. (I7cc7c) - Ajout de
OvulationTest.Result.HIGH
etOvulationTest.Result.INCONCLUSIVE
. (I9f9c4)
Corrections de bugs
- Nouvelle configuration minimale requise : SDK 26. (I6d201)
Version 1.0.0-alpha01
11 mai 2022
Publication d'androidx.health:health-connect-client:1.0.0-alpha01
. Liste des commits de la version 1.0.0-alpha01
Nouvelles fonctionnalités
- API permettant de lire les informations de santé et de remise en forme partagées par d'autres applications.
- API permettant d'écrire des informations de santé et de remise en forme à partager avec d'autres applications.
- API permettant de récupérer des métriques agrégées pour les enregistrements accessibles.
- API permettant de récupérer les modifications incrémentielles (ajout, mise à jour ou suppression) apportées aux enregistrements par d'autres applications.
- API permettant de demander aux utilisateurs des autorisations concernant leurs informations de santé.
- API permettant de vérifier ou de révoquer les autorisations accordées concernant les informations de santé.
Client Services Santé version 1.1
Version 1.1.0-alpha05
11 décembre 2024
Publication d'androidx.health:health-services-client:1.1.0-alpha05
, androidx.health:health-services-client-external-protobuf:1.1.0-alpha05
et androidx.health:health-services-client-proto:1.1.0-alpha05
. La version 1.1.0-alpha05 contient ces commits.
Nouvelles fonctionnalités
- Inclut désormais des règles ProGuard pour éviter que les classes nécessaires ne soient supprimées. (65d0c3f)
Correction de bugs
- Cette bibliothèque utilise désormais les annotations de nullité JSpecify, qui sont des annotations de type. Les développeurs Kotlin doivent utiliser les arguments de compilation suivants pour appliquer une utilisation correcte:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(Iaf73a, b/326456246).
Version 1.1.0-alpha04
16 octobre 2024
Publication d'androidx.health:health-services-client:1.1.0-alpha04
, androidx.health:health-services-client-external-protobuf:1.1.0-alpha04
et androidx.health:health-services-client-proto:1.1.0-alpha04
. La version 1.1.0-alpha04 contient ces commits.
Correctifs de sécurité
- Depuis cette modification, androidx compile avec protobuf 4.28.2 afin de corriger CVE-2024-7254. Mettez à niveau votre dépendance sur
androidx.health:health-services-client
vers la dernière version 1.1.0-alpha04 pour résoudre le risque de faille.
Version 1.1.0-alpha02
13 décembre 2023
Publication d'androidx.health:health-services-client:1.1.0-alpha02
. Liste des commits de la version 1.1.0-alpha02
Modifications apportées à l'API
- Utilisez une seule source de vérité pour les
ExerciseEvent
compatibles. (I03308)
Correction de bugs
- Correction de bugs mineurs et améliorations de la documentation.
Version 1.1.0-alpha01
9 août 2023
Publication d'androidx.health:health-services-client:1.1.0-alpha01
. Liste des commits de la version 1.1.0-alpha01
Nouvelles fonctionnalités
- Des API
ExerciseEvent
ont été ajoutées avec le premier événement concret:GolfShotEvent
. Les primitivesExerciseEvent
permettent aux développeurs de demander de l'aide et d'être avertis lorsque la montre détecte un événement.GolfShotEvent
, par exemple, permet aux développeurs d'être avertis lorsque l'utilisateur frappe un coup de golf, en plus de recevoir le type de swing reconnu.
Modifications apportées à l'API
- Permet aux clients du SDK WHS d'utiliser les fonctionnalités
GolfShotEvent
. (I76b03)
Correction de bugs
- Plutôt que de générer des exceptions agressives en cas de détection de fonctionnalités d'événements d'exercice inconnues, filtrez-les de la liste. (I06afc)
Client Services Santé version 1.0
Version 1.1.0-alpha03
14 mai 2024
Publication d'androidx.health:health-services-client:1.1.0-alpha03
. La version 1.1.0-alpha03 contient ces commits.
Nouvelles fonctionnalités
- Ajout d'API
DebouncedGoal
permettant de suivre un objectif pour un type d'échantillon de données ou un type d'échantillon de données de statistiques pendant l'exercice avec des fonctionnalités de débouncing(initialDelay
etdurationAtThreshold
). (I09be9) - Ajout de l'exemple de métriques d'exécution avancées et de l'
DataTypes
statistique suivants. (I0b8b5) :Ground Contact Time
Vertical Oscillation
Vertical Ratio
Stride Length
Modifications apportées à l'API
- Ajout de
ELEVATION_GAIN_DAILY
DataType
. (I059d1) - Ajout de
SWIM_LAP_COUNT_TOTAL
DataType
en tant queDataType
agrégé pourSWIM_LAP_COUNT
. (I0beeb)
Correction de bugs
- Correction de divers problèmes pour améliorer la fiabilité de l'IPC.
Version 1.0.0-rc02
3 avril 2024
Publication d'androidx.health:health-services-client:1.0.0-rc02
. La version 1.0.0-rc02 contient ces commits. Il s'agit d'une version de correction de bugs uniquement et ne contient aucune modification d'API.
Correction de bugs
- Correction de divers problèmes pour améliorer la fiabilité de l'IPC
- Correction d'un problème qui pouvait entraîner une
ConcurrentModificationException
lors de l'appel destartExercise
en même temps queprepareExercise
(4e37773). - Amélioration de la documentation
Version 1.0.0-rc01
26 juillet 2023
Publication d'androidx.health:health-services-client:1.0.0-rc01
. Liste des commits de la version 1.0.0-rc01
Nouvelles fonctionnalités
- Health Services est passé à la version 1.0.0-rc01 après avoir été stabilisé en version bêta.
Modifications apportées à l'API
- Fusion des fichiers d'API publics et expérimentaux pour les chemins h à m. (Ic4630, b/278769092)
- N/A, les modifications apportées aux fichiers d'API ne sont que des méthodes de réorganisation. (I5fa95)
Version 1.0.0-beta03
5 avril 2023
Publication d'androidx.health:health-services-client:1.0.0-beta03
. Liste des commits de la version 1.0.0-beta03
Nouvelles fonctionnalités
BatchingMode
peut désormais être configuré pour envoyer des données d'exercice groupées à l'intervalle configuré au lieu de l'intervalle par défaut pendant un exercice actif, soit au début de l'exercice via ExerciseConfig
, soit pendant l'exercice avec une méthode de forçage. Cette fonctionnalité sera disponible dans une prochaine version des services de santé sur le Google Play Store et pourra être vérifiée via les fonctionnalités d'exercice. Remarque: Les modes de traitement par lot prennent effet lorsque l'appareil est dans un état d'alimentation non interactif et augmentent la consommation d'énergie.
Modifications apportées à l'API
- Lancement de
HealthServicesException
en cas d'échec de la fonction de suspensionoverrideBatchingModesForActiveExercise
(Ifd387) - Ajout de fonctions de suspension pour l'API
overrideBatchingModesForActiveExercise
asynchrone, ce qui les rend plus compatibles avec Kotlin (I7dd15) BatchingMode
remplace l'optionnel dansExerciseConfig
(Id22e9)
Correction de bugs
- Corrections mineures apportées à
DataType
etExerciseUpdate
(5e185f)
Version 1.0.0-beta02
11 janvier 2023
Publication d'androidx.health:health-services-client:1.0.0-beta02
. Liste des commits de la version 1.0.0-beta02.
Nouvelles fonctionnalités
- Ajout des fonctions d'extension
suspend
pour les APIListenableFuture
asynchrones existantes dansExerciseClient
,PassiveMonitoringClient
etMeasureClient
pour une meilleure prise en charge de Kotlin. (Iadea4) - Ajout de l'API
ExerciseTypeConfig
qui permet d'effectuer des mises à jour pendant un exercice en cours. Ajout deGolfExerciseTypeConfig
pour permettre la mise à jour d'ExerciseTypeConfig
pendant les exercices de golf. (I4c539)
Modifications apportées à l'API
- Lancement de
HealthServicesException
sur les fonctions de suspension (I5e509) - Ajout d'un autre constructeur pour assurer la rétrocompatibilité (Iddeda)
- Lancement de
RuntimeException
sur les fonctions de suspension (I53bca) - Suppression de l'implémentation par défaut de l'exception de lancement (Id947f)
- Ajout de l'annotation
@JvmDefaultWithCompatibility
(I8f206)
Corrections de bugs
- Ajout à kdoc pour plus de clarté (Ide285)
- Autorisation du suivi de surveillance passive pour les objectifs uniquement si les mêmes types de données font également l'objet d'un suivi (Ibed8d)
Version 1.0.0-beta01
24 octobre 2022
Publication d'androidx.health:health-services-client:1.0.0-beta01
. Liste des commits de la version 1.0.0-beta01
Nouvelles fonctionnalités
Ajout de la possibilité d'écouter des événements de santé via
PassiveMonitoringClient
, le premier événement étantHealthEvent.FALL_DETECTED
.Nouveaux types d'exercices :
ALPINE_SKIING
BACKPACKING
CROSS_COUNTRY_SKIING
HORSE_RIDING
INLINE_SKATING
MOUNTAIN_BIKING
ORIENTEERING
ROLLER_SKATING
YACHTING
Nouveaux types de données :
ELEVATION_LOSS
GOLF_SHOT_COUNT
Modifications apportées à l'API
- Mise à jour de la modélisation des données : le modèle de données et la représentation de
DataType
, deDataPoint
et des valeurs sous-jacentes ont été remaniés. L'impact principal est que les API sont désormais beaucoup plus explicites, avec une meilleure sûreté du typage. - Les objets
DataPoint
de position ne sont plus représentés par un élémentDoubleArray
, mais par un objetLocationData
très typé. - Transfert vers un nouvel ensemble d'API d'écoute passives :
- L'annonce a été remplacée par
PassiveListenerService
. - Les écouteurs existants ont été remplacés par un seul écouteur :
PassiveListenerCallback
.
- L'annonce a été remplacée par
- Ajout de la balise
<queries>
au fichier manifeste de Services Santé afin que les applications n'aient plus besoin de la spécifier dans leur propre fichier manifeste (à condition que la fusion des fichiers manifeste soit activée dans leur système de compilation). - Abandon de nombreux états
ExerciseState
pour illustrer que l'exercice s'achève ou s'est terminé, et ajout de nouveaux états d'exercice (ENDING
etENDED
). Ils sont maintenant combinés avecExerciseEndReason
pour représenter toute la gamme des états précédents. PassiveListenerConfig
a été renommésetPassiveGoals
parsetDailyGoals
pour mieux refléter que nous n'acceptons que les objectifs passifs quotidiens.- Les éléments
PassiveGoal
sont désormais toujoursREPEATED
, tandis que les élémentsTriggerFrequency
passifs ont été supprimés. - Tous les paramètres
Long
etDouble
ont été annotés avec@FloatRange
. - Ajout de la propriété
swimmingPoolLengthMeters
àExerciseConfig
, qui peut être spécifiée pour améliorer les calculs de distance pour les bassins de natation. - Abandon d'
ExerciseUpdate.activeDuration
. UtilisezExerciseUpdate.activeDurationCheckpoint
à la place. - L'API
flushExerciseAsync()
a été renomméeflushAsync()
dansExerciseClient
. - Remplacement du nom
Measure.registerCallback
parMeasure.registerMeasureCallback
. - Changements de noms généraux :
- Les propriétés de distance comportent désormais le suffixe
meters
. - Les noms des méthodes de rappel sont désormais au temps passé.
- La plupart des abréviations ont été supprimées (
HrAccuracy
est maintenantHeartRateAccuracy
). - Les propriétés qui suivent le format
enableFoo
sont désormais nomméesisFooEnabled
.
- Les propriétés de distance comportent désormais le suffixe
- Abandon progressif des énumérations.
- Les heures représentées par
Double
sont désormais représentées parDuration
. - Les fonctions renvoyant
ListenableFuture<Void?>
renvoient maintenantListenableFuture<Void>
. - Les fonctions qui acceptent un rappel affichent désormais toujours le rappel en tant que dernier paramètre.
- Les classes comportant des compilateurs disposent maintenant toujours de constructeurs publics.
- Les fonctions d'enregistrement ne renvoient plus de
ListenableFuture
et transmettent à la place l'état d'enregistrement au rappel fourni. - KDocs a été amélioré.
- Les classes publiques n'étendent plus
ProtoParcelable
.
Corrections de bugs
- Améliorations générales de la fiabilité de l'IPC. (I3b1e2)
Version 1.0.0-alpha03
3 novembre 2021
Publication d'androidx.health:health-services-client:1.0.0-alpha03
. Liste des commits de la version 1.0.0-alpha03
Nouvelles fonctionnalités
- Réenregistrement automatique des mesures, écouteurs d'exercices et rappels de surveillance passive par le SDK en cas d'interruption de la connexion IPC avec l'APK Services Santé.
Modifications apportées à l'API
- Remplacement du minSdkVersion de la bibliothèque du SDK par le niveau d'API 30, car le client Services Santé n'est actuellement compatible qu'avec Wear 3.
Version 1.0.0-alpha02
29 septembre 2021
Publication d'androidx.health:health-services-client:1.0.0-alpha02
. Liste des commits de la version 1.0.0-alpha02.
Modifications apportées à l'API
- Mise à jour de
ExerciseClient
, qui permet désormais de préparer un exercice. Les clients peuvent ainsi échauffer les capteurs avant de commencer l'exercice, le temps que le signal GPS se stabilise, par exemple. - Introduction des classes AggregateDataPoint CumulativeDataPoints et StatisticalDataPoints afin d'améliorer la modélisation des métriques agrégées suivies durant un exercice actif. CumulativeDataPoints contient les valeurs cumulées des données agrégées par intervalle (par exemple, la distance totale parcourue pendant l'exercice), tandis que le modèle StatisticalDataPoints cumule les points de données échantillonnés (comme la fréquence cardiaque minimale, maximale et moyenne). Ces classes remplacent les DataTypes
AGGREGATE_*
et sont accessibles dans ExerciseUpdate viagetLatestAggregateMetrics()
. Les DataTypesAGGREGATE_*
ne sont plus acceptés. - Changement de nom : les événements
PassiveMonitoring
deviennentPassiveGoals
. Ils permettent de fixer des objectifs et de recevoir des notifications dès que ces derniers sont atteints pour différents types de données tels que les métriques quotidiennes (par exemple, DAILY_STEPS). - Amélioration de la modélisation de la précision et de la disponibilité de la fréquence cardiaque et de la localisation grâce aux nouvelles classes HrAccuracy, LocationAccuracy et LocationAvailability.
- Amélioration des noms pour
ExerciseConfig
, ajout de champsPassiveMonitoringConfig
et introduction deExerciseConfig.shouldEnableGps
pour demander des données GPS.
Corrections de bugs
- Migration vers une connexion IPC basée sur un fichier proto pour une meilleure compatibilité avec les versions antérieures.
Version 1.0.0-alpha01
18 mai 2021
Publication d'androidx.health:health-services-client:1.0.0-alpha01
. Liste des commits de la version 1.0.0-alpha01
Fonctionnalités de la version initiale
La bibliothèque Services Santé fournit un ensemble homogène d'API que les développeurs peuvent intégrer aux implémentations de capteurs propres à l'appareil. Elle sera prête à l'emploi avec les émulateurs Wear OS 3 et les prochains appareils, et d'autres plates-formes seront compatibles à l'avenir. Cette version initiale inclut trois surfaces d'API de niveau supérieur : ExerciseClient
, PassiveMonitoringClient
et MeasureClient
.
ExerciseClient
ExerciseClient
est conçu pour les applications de suivi d'activité physique. Il peut contenir jusqu'à 82 ExerciseType
s différents pour la marche, la course à pied, la danse, le water-polo, etc. Lors du suivi d'une activité physique, vous avez accès à une sélection de 50 DataType
s selon le type d'exercice et le matériel disponible sur l'appareil. Pour commencer, il vous suffit de renseigner les informations pertinentes dans votre ExerciseConfig
, d'appeler exerciseClient.startExercise
et d'écouter la progression sur l'écouteur de mise à jour.
PassiveMonitoringClient
PassiveMonitoringClient
est un excellent choix pour les applications qui permettent de suivre l'activité de l'utilisateur tout au long de la journée. Vous pouvez enregistrer un PendingIntent
avec un ensemble de DataType
s et activer l'application pour gérer des modifications par lot. Vous pouvez également spécifier un Event
(comme un nombre de pas à atteindre).
MeasureClient
L'utilisateur peut avoir besoin d'effectuer une mesure (sa fréquence cardiaque, par exemple) de façon ponctuelle, et pas pendant un exercice ni tout au long de la journée. MeasureClient
est la solution idéale dans ces cas de figure. Il vous suffit d'enregistrer votre rappel avec les DataType
s compatibles pour recevoir un flux de données quand vous en avez besoin, et d'annuler ensuite cet enregistrement.