Zustand
Letzte Aktualisierung | Stabile Version | Release Candidate | Beta-Ausgabe | Alphaversion |
---|---|---|---|---|
11. Dezember 2024 | - | 1.0.0-rc02 | - | 1.1.0-alpha05 |
Abhängigkeiten deklarieren
Wenn Sie eine Abhängigkeit von Health hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle
für Ihre App oder Ihr Modul die Abhängigkeiten für die erforderlichen Artefakte hinzu:
Cool
dependencies { implementation "androidx.health:health-services-client:1.1.0-alpha03" }
Kotlin
dependencies { implementation("androidx.health:health-services-client:1.1.0-alpha03") }
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Bitte teilen Sie uns mit, wenn Sie neue Probleme feststellen oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können einem vorhandenen Problem Ihre Stimme geben, indem Sie auf die Schaltfläche mit dem Stern klicken.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Health Connect-Clientversion 1.0
Version 1.0.0-alpha04
24. August 2022
Seit Version 1.0.0-alpha04 wurde androidx.health:health-connect-client
zu androidx.health.connect:connect-client
migriert. Verwenden Sie für zukünftige Releases bitte androidx.health.connect:connect-client
und die zugehörigen Versionshinweise auf unserer Seite Health Connect.
Ändern Sie dazu einfach den Abhängigkeitsimport von androidx.health:health-connect-client:1.0.0-alpha03
in androidx.health.connect:connect-client:1.0.0-alpha04
.
Version 1.0.0-alpha03
27. Juli 2022
androidx.health:health-connect-client:1.0.0-alpha03
wird veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Neue Funktionen
- Zusammenfassung der neuen API-Änderungen: Den APIs zum Lesen, Schreiben und Aggregieren wurden mehrere Einheiten hinzugefügt. Apps können jetzt Einträge mit der gewünschten Einheit abrufen oder schreiben, z. B. Gramm oder Milligramm für
NutritionRecord
-Nährstoffe.
API-Änderungen
- Ändern Sie
List<DataOrigin>
inSet<DataOrigin>
in verschiedenen Anfrage-/Antwortobjekten. (I42342) - Einheit der Gesamtzahl der Basalkalorien unter „Leistung“ -> „Energie“ korrigieren (I0b429)
- Beispielklassen für Reihen in Reihendatensätze verschoben (Ica9bb):
CyclingPedalingCadence
->CyclingPedalingCadenceRecord.Sample
HeartRate
->HeartRateRecord.Sample
StepsCadence
->StepsCadenceRecord.Sample
- Die Klasse
HealthDataRequestPermission
wird zugunsten vonPermissionController.createRequestPermissionActivityContract
eingestellt. Dadurch wird die Sichtbarkeit verbessert und die Parameter werden vereinheitlicht. (I81e7f) - Dem Volumen wurden US-Flüssigunzen hinzugefügt. (I5f03d)
- Geschwindigkeitseinheitstyp hinzugefügt (I1d574)
- Der Prozentsatz als Einheitstyp wurde hinzugefügt (I08f23).
- Druckeinheitstyp hinzugefügt (Ifb01f)
- Der Einheitentyp „Masse“ (Ifd81a) wurde hinzugefügt.
- Volume-Einheitstyp hinzugefügt (I59ad1)
- „Art der Energieversorgung“ hinzugefügt. Die Beispielklasse für Potenzreihen wurde in die Klasse
PowerRecord
verschoben. (I5b1e5) - Energieeinheitstyp hinzugefügt (I983ae)
- Temperatureinheitstyp hinzugefügt (I4cdb5)
- Benennen Sie Verweise auf „Aktivität“ so um, dass sie sich auf „Training“ beziehen, einschließlich (I3f936):
ActivityLap
inExerciseLapRecord
umbenanntActivityEvent
inExerciseEventRecord
umbenanntRepetitions
inExerciseRepetitionsRecord
umbenanntActivitySession
inExerciseSessionRecord
umbenannt
- Verschachtelte Paketmetadaten wurden in Einträge verschoben. (Ie0835)
- Verwendete Längeneinheit in allen verbleibenden Einträgen (Ib10dd):
ActivityLapRecord
ElevationGainedRecord
HeightRecord
HipCircumferenceRecord
WaistCircumferenceRecord
- Hinzugefügter Längeneinheitstyp (Idae39)
- Beschreibungsterminologie für
CervicalMucus
aktualisieren (I25a2b):CervicalMucus.Amount
->CervicalMucusRecord.Texture
CervicalMucus.Appearance
->CervicalMucusRecord.Sensation
- Allen Namen von Datensatzklassen wurde das Suffix „Record“ hinzugefügt (I1ffc2)
Fehlerkorrekturen
- Proguard-Probleme beheben, wenn die Lib mit Release-Variante und
minifyEnabled
als „true“ erstellt wurde (I78933) - Hiermit wird Dokumentation ausgeblendet, die nicht für die Öffentlichkeit bestimmt ist. (I7a08f)
- Behebt das Problem bei Clients, die eigene Protobuf-Abhängigkeiten haben können.(https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430)
Version 1.0.0-alpha02
1. Juni 2022
androidx.health:health-connect-client:1.0.0-alpha02
wird veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
API-Änderungen
hasMetric
undgetMetric
inAggregationResult
wurden eingestellt. Die Operatoren „enthält“ und „get“ wurden hinzugefügt (I7cc7c)- Fügt
OvulationTest.Result.HIGH
undOvulationTest.Result.INCONCLUSIVE
hinzu. (I9f9c4)
Fehlerkorrekturen
- SDK-Anforderungen auf 26 reduzieren (I6d201)
Version 1.0.0-alpha01
11. Mai 2022
androidx.health:health-connect-client:1.0.0-alpha01
wird veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
- API zum Lesen von Fitness- und Gesundheitsdaten, die von anderen Apps freigegeben wurden.
- API zum Schreiben von Fitness- und Gesundheitsdaten, die mit anderen Apps geteilt werden können.
- API zum Abrufen zusammengefasster Messwerte für zugängliche Einträge.
- API zum Abrufen inkrementeller Änderungen (Einfügen, Aktualisieren oder Löschen) von Einträgen durch andere Apps.
- API, mit der Nutzer um Berechtigungen für Gesundheitsdaten gebeten werden.
- API, mit der Berechtigungen geprüft oder erteilte Berechtigungen für den Zugriff auf Gesundheitsdaten widerrufen werden können.
Clientversion für Gesundheitsdienste 1.1
Version 1.1.0-alpha05
11. Dezember 2024
androidx.health:health-services-client:1.1.0-alpha05
, androidx.health:health-services-client-external-protobuf:1.1.0-alpha05
und androidx.health:health-services-client-proto:1.1.0-alpha05
werden losgelassen. Version 1.1.0-alpha05 enthält diese Commits.
Neue Funktionen
- Enthält jetzt ProGuard-Regeln, um zu verhindern, dass erforderliche Klassen entfernt werden. (65d0c3f)
Fehlerkorrekturen
- Diese Bibliothek verwendet jetzt JSpecify-Null-Anmerkungen, die sich auf den Typ beziehen. Kotlin-Entwickler sollten die folgenden Compilerargumente verwenden, um die korrekte Verwendung zu erzwingen:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(Iaf73a, b/326456246)
Version 1.1.0-alpha04
16. Oktober 2024
androidx.health:health-services-client:1.1.0-alpha04
, androidx.health:health-services-client-external-protobuf:1.1.0-alpha04
und androidx.health:health-services-client-proto:1.1.0-alpha04
werden losgelassen. Version 1.1.0-alpha04 enthält diese Commits.
Behebung von Sicherheitsproblemen
- Seit dieser Änderung wird androidx mit protobuf 4.28.2 kompiliert, um CVE-2024-7254 zu beheben. Aktualisieren Sie die Abhängigkeit von
androidx.health:health-services-client
auf die neueste Version 1.1.0-alpha04, um das Sicherheitsrisiko zu beheben.
Version 1.1.0-alpha02
13. Dezember 2023
androidx.health:health-services-client:1.1.0-alpha02
wird veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
API-Änderungen
- Verwenden Sie eine zentrale Informationsquelle für unterstützte
ExerciseEvent
s. (I03308)
Fehlerkorrekturen
- Kleinere Fehlerkorrekturen und Verbesserungen der Dokumentation.
Version 1.1.0-alpha01
9. August 2023
androidx.health:health-services-client:1.1.0-alpha01
wird veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
Neue Funktionen
- Neben dem ersten konkreten Ereignis wurden
ExerciseEvent
APIs hinzugefügt:GolfShotEvent
. Mit denExerciseEvent
-Primitiven können Entwickler den Support anfragen und sich benachrichtigen lassen, wenn die Smartwatch etwas erkennt. MitGolfShotEvent
können Entwickler beispielsweise benachrichtigt werden, wenn der Nutzer einen Golfschlag ausführt, und zusätzlich den erkannten Schwungtyp erhalten.
API-Änderungen
- WHS SDK-Clients die Verwendung von
GolfShotEvent
-Funktionen ermöglichen (I76b03)
Fehlerkorrekturen
- Anstatt bei unbekannten Funktionen für Trainingsereignisse aggressiv Ausnahmen zu werfen, sollten Sie sie aus der Liste herausfiltern. (I06afc)
Health Services Client Version 1.0
Version 1.1.0-alpha03
14. Mai 2024
androidx.health:health-services-client:1.1.0-alpha03
wird veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.
Neue Funktionen
- Einführung von
DebouncedGoal
APIs, mit denen sich ein Ziel für den Datentyp „Beispieldaten“ oder „Statistische Beispieldaten“ während eines Trainings mit Anti-Rutsch-Funktionen(initialDelay
unddurationAtThreshold
) verfolgen lässt. (I09be9) - Das folgende Beispiel für erweiterte Laufmesswerte und die statistische
DataTypes
wurden hinzugefügt. (I0b8b5):Ground Contact Time
Vertical Oscillation
Vertical Ratio
Stride Length
API-Änderungen
ELEVATION_GAIN_DAILY
DataType
wurde hinzugefügt. (I059d1)SWIM_LAP_COUNT_TOTAL
DataType
wurde als aggregierteDataType
fürSWIM_LAP_COUNT
hinzugefügt. (I0beeb)
Fehlerkorrekturen
- Verschiedene Probleme behoben, um die IPC-Zuverlässigkeit zu verbessern.
Version 1.0.0-rc02
3. April 2024
androidx.health:health-services-client:1.0.0-rc02
wird veröffentlicht. Version 1.0.0-rc02 enthält diese Commits. Diese Version enthält nur Fehlerkorrekturen und keine API-Änderungen.
Fehlerkorrekturen
- Verschiedene Probleme behoben, um die IPC-Zuverlässigkeit zu verbessern
- Ein Problem wurde behoben, durch das das gleichzeitige Drücken von
startExercise
undprepareExercise
zuConcurrentModificationException
führen konnte (4e37773) - Verbesserte Dokumentation
Version 1.0.0-rc01
26. Juli 2023
androidx.health:health-services-client:1.0.0-rc01
wird veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
Neue Funktionen
- Die Health Services API wurde auf Version 1.0.0-rc01 umgestellt, nachdem sie in der Betaversion stabilisiert wurde.
API-Änderungen
- Zusammengeführte öffentliche und experimentelle API-Dateien für H- bis M-Pfade. (Ic4630, b/278769092)
- – API-Dateien können nur neu angeordnet werden. (I5fa95)
Version 1.0.0-beta03
5. April 2023
androidx.health:health-services-client:1.0.0-beta03
wird veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.
Neue Funktionen
BatchingMode
kann jetzt so konfiguriert werden, dass während einer aktiven Trainingseinheit im konfigurierten Intervall statt im Standardintervall gebatchte Trainingsdaten gesendet werden. Das kann entweder zu Beginn des Trainings über ExerciseConfig
oder während des Trainings mit einer Überschreibungsmethode erfolgen. Die Unterstützung wird durch eine bevorstehende Version der Gesundheitsdienste im Google Play Store aktiviert und kann über die Trainingsfunktionen geprüft werden. Hinweis: Batch-Modi werden angewendet, wenn sich das Gerät in einem nicht interaktiven Energiesparmodus befindet, und führen zu einem erhöhten Stromverbrauch.
API-Änderungen
- Auslösen von
HealthServicesException
, wenn die AussetzungsfunktionoverrideBatchingModesForActiveExercise
fehlschlägt (Ifd387) - Einführung von Suspend-Funktionen für die asynchrone
overrideBatchingModesForActiveExercise
API, die sie für Kotlin-Code besser geeignet machen (I7dd15) BatchingMode
überschreibt optional inExerciseConfig
(Id22e9)
Fehlerkorrekturen
- Kleine Fehlerkorrekturen bei
DataType
undExerciseUpdate
(5e185f)
Version 1.0.0-beta02
11. Januar 2023
androidx.health:health-services-client:1.0.0-beta02
wird veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.
Neue Funktionen
- Für die vorhandenen asynchronen
ListenableFuture
APIs inExerciseClient
,PassiveMonitoringClient
undMeasureClient
wurdensuspend
-Erweiterungsfunktionen hinzugefügt, um die Kotlin-Unterstützung zu verbessern. (Iadea4) - Die
ExerciseTypeConfig
API wurde hinzugefügt, mit der Aktualisierungen während einer laufenden Übung möglich sind.GolfExerciseTypeConfig
wurde hinzugefügt, umExerciseTypeConfig
während Golfübungen zu aktualisieren. (I4c539)
API-Änderungen
HealthServicesException
bei Suspend-Funktionen auswerfen (I5e509)- Einen weiteren Konstruktor für die Abwärtskompatibilität hinzufügen (Iddeda)
RuntimeException
bei Suspend-Funktionen auslösen (I53bca)- Standardimplementierung des Auslösens von Ausnahmen entfernen (Id947f)
@JvmDefaultWithCompatibility
-Anmerkung hinzufügen (I8f206)
Fehlerkorrekturen
- Zur Klarstellung in den K-Doc aufnehmen (Ide285)
- Passives Monitoring nur für Zielvorhaben zulassen, wenn auch dieselben Datentypen erfasst werden (Ibed8d)
Version 1.0.0-beta01
24. Oktober 2022
androidx.health:health-services-client:1.0.0-beta01
wird veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Neue Funktionen
Es ist jetzt möglich, über
PassiveMonitoringClient
auf Gesundheitsereignisse zu warten. Das erste Ereignis istHealthEvent.FALL_DETECTED
.Neue Trainingstypen:
ALPINE_SKIING
BACKPACKING
CROSS_COUNTRY_SKIING
HORSE_RIDING
INLINE_SKATING
MOUNTAIN_BIKING
ORIENTEERING
ROLLER_SKATING
YACHTING
Neue Datentypen:
ELEVATION_LOSS
GOLF_SHOT_COUNT
API-Änderungen
- Datenmodell aktualisiert: Das Datenmodell und die Darstellung von
DataType
s,DataPoint
s und ihren zugrunde liegenden Werten wurden überarbeitet. Die wichtigste Auswirkung besteht darin, dass APIs jetzt viel expliziter und typsicher sind. - Standort-
DataPoint
s werden nicht mehr alsDoubleArray
, sondern als stark typisiertesLocationData
-Objekt dargestellt. - Es wurde zu einer neuen Reihe von APIs für passive Listener gewechselt:
- Die Übertragung wurde durch die
PassiveListenerService
ersetzt. - Die vorhandenen Hörer wurden durch einen einzelnen Hörer ersetzt:
PassiveListenerCallback
.
- Die Übertragung wurde durch die
- Dem Manifest für Gesundheitsdienste wurde das
<queries>
-Tag hinzugefügt, damit Entwickler dies nicht mehr in ihrem eigenen Manifest angeben müssen, sofern die Manifest-Dateien in ihrem Build-System zusammengeführt werden. - Wir haben die vielen
ExerciseState
s entfernt, die das Ende einer Übung symbolisieren, und neue Übungszustände hinzugefügt:ENDING
undENDED
. Diese werden jetzt mitExerciseEndReason
kombiniert, um die gesamte Bandbreite der vorherigen Status darzustellen. PassiveListenerConfig
setPassiveGoals
wurde insetDailyGoals
umbenannt, um besser zu verdeutlichen, dass wir nur tägliche passive Ziele unterstützen.PassiveGoal
s sind jetzt immerREPEATED
, passiveTriggerFrequency
wurden entfernt.- Alle
Long
- undDouble
-Parameter wurden mit@FloatRange
gekennzeichnet. - Dem Attribut
ExerciseConfig
wurde das AttributswimmingPoolLengthMeters
hinzugefügt, das optional angegeben werden kann, um die Entfernungsberechnungen für Schwimmen im Pool zu verbessern. ExerciseUpdate.activeDuration
wurde eingestellt. Verwenden Sie stattdessenExerciseUpdate.activeDurationCheckpoint
.- Die API
flushExerciseAsync()
wurde inExerciseClient
influshAsync()
umbenannt. Measure.registerCallback
wurde inMeasure.registerMeasureCallback
umbenannt.- Allgemeine Änderungen an der Benennung:
- Entfernungseigenschaften haben jetzt das Suffix
meters
. - Die Namen der Callback-Methoden werden jetzt im Präteritum angegeben.
- Die meisten Abkürzungen wurden entfernt (
HrAccuracy
ist jetztHeartRateAccuracy
). - Eigenschaften, die dem Muster
enableFoo
folgen, heißen jetztisFooEnabled
.
- Entfernungseigenschaften haben jetzt das Suffix
- Enums wurden eingestellt.
- Zeiten, die zuvor mit
Double
dargestellt wurden, werden jetzt mitDuration
dargestellt. - Funktionen, die eine
ListenableFuture<Void?>
zurückgeben, geben jetzt eineListenableFuture<Void>
zurück. - Bei Funktionen, die einen Rückruf akzeptieren, wird der Rückruf jetzt immer als letzter Parameter angezeigt.
- Klassen mit Buildern haben jetzt immer auch öffentliche Konstruktoren.
- Registrierungsfunktionen geben keinen
ListenableFuture
mehr zurück, sondern übergeben den Registrierungsstatus an den angegebenen Callback. - KDocs wurden verbessert.
- Öffentliche Kurse erweitern
ProtoParcelable
nicht mehr.
Fehlerkorrekturen
- Allgemeine Verbesserungen der IPC-Zuverlässigkeit (I3b1e2)
Version 1.0.0-alpha03
3. November 2021
androidx.health:health-services-client:1.0.0-alpha03
wird veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Neue Funktionen
- Das SDK registriert automatisch die Registrierungsanfragen für Messwerte, Trainingsereignisse und passive Überwachung, falls die IPC-Verbindung mit der APK der Gesundheitsdienste unterbrochen wird.
API-Änderungen
- Die minSdkVersion der SDK-Bibliothek wurde auf API-Level 30 erhöht, da der Health Services-Client derzeit nur auf Wear 3 unterstützt wird.
Version 1.0.0-alpha02
29. September 2021
androidx.health:health-services-client:1.0.0-alpha02
wird veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
API-Änderungen
ExerciseClient
unterstützt jetzt die Vorbereitung einer Übung. So können Kunden die Sensoren aufwärmen und auf Dinge wie eine GPS-Fixierung warten, bevor sie mit dem Training beginnen.- Es wurden die Klassen „CumulativeDataPoints“ und „StatisticalDataPoints“ für „AggregateDataPoint“ eingeführt, um zusammengefasste Messwerte, die während einer aktiven Übung erfasst werden, besser zu modellieren. CumulativeDataPoints enthalten kumulative Werte aggregierter Intervalldatentypen (z. B. die Gesamtstrecke während des Trainings), während StatisticalDataPoints Aggregate von Stichprobendatenpunkten (z. B. min, max und durchschnittliche Herzfrequenz in Schlägen pro Minute) modellieren. Dieser ersetzt die vorherigen
AGGREGATE_*
-Datentypen und kann in der „ExerciseUpdate“ übergetLatestAggregateMetrics()
aufgerufen werden.AGGREGATE_*
-Datentypen werden nicht mehr unterstützt. PassiveMonitoring
-Ereignisse wurden inPassiveGoals
umbenannt. Damit können Sie Ziele festlegen und Benachrichtigungen erhalten, wenn diese Ziele für Datentypen wie tägliche Messwerte (z. B. DAILY_STEPS) erreicht werden.- Verbesserte Modellierung der Herzfrequenz und der Standortgenauigkeit und -verfügbarkeit durch die Einführung der neuen Klassen „HrAccuracy“, „LocationAccuracy“ und „LocationAvailability“.
- Die Benennung von
ExerciseConfig
wurde verbessert und neuePassiveMonitoringConfig
-Felder sowieExerciseConfig.shouldEnableGps
zum Anfordern von GPS-gestützten Daten wurden eingeführt.
Fehlerkorrekturen
- Migration zu einem proto-gestützten IPC-Transport für eine bessere Abwärtskompatibilität
Version 1.0.0-alpha01
18. Mai 2021
androidx.health:health-services-client:1.0.0-alpha01
wird veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Funktionen der Erstversion
Die Health Services-Bibliothek bietet Entwicklern eine einheitliche Reihe von APIs, die sie in gerätespezifische Sensorimplementierungen einbinden können. Die Funktion ist sofort einsatzbereit und funktioniert mit Wear OS 3-Emulatoren und zukünftigen Geräten. Weitere Plattformen werden in Zukunft unterstützt. Diese erste Version enthält drei API-Oberflächen der obersten Ebene: ExerciseClient
, PassiveMonitoringClient
und MeasureClient
.
ExerciseClient
Der ExerciseClient
ist für Anwendungen zum Erfassen aktiver Trainings konzipiert. Er bietet bis zu 82 verschiedene ExerciseType
s, von Gehen und Laufen bis hin zu Tanzen und Wasserball. Während dieser Übungen stehen je nach Trainingstyp und auf dem Gerät verfügbarer Hardware 50 unterschiedliche DataType
zur Verfügung. Geben Sie dazu einfach die relevanten Informationen in ExerciseConfig
an, rufen Sie exerciseClient.startExercise
auf und warten Sie auf den Fortschritt des Update-Listeners.
PassiveMonitoringClient
Die PassiveMonitoringClient
ist eine gute Wahl, wenn Ihre App die Aktivitäten der Nutzer den ganzen Tag über erfasst. Sie können eine PendingIntent
mit einer Reihe von DataType
s registrieren und benachrichtigt werden, wenn es Änderungen im Batch gibt. Alternativ können Sie eine Event
angeben, z. B. das Erreichen einer bestimmten Anzahl von Schritten.
MeasureClient
Manchmal muss der Nutzer z.B. seine Herzfrequenz im Moment messen, nicht während eines Trainings und nicht den ganzen Tag über. In diesen Fällen ist die MeasureClient
die perfekte Wahl.Sie registrieren Ihren Callback einfach bei unterstützten DataType
s, um einen Datenstream zu erhalten, und heben die Registrierung auf, wenn er nicht mehr benötigt wird.