Health Connect

  
Ermöglicht es Entwicklern, die Gesundheits- und Fitnessdaten von Nutzern zu lesen oder zu schreiben.
Letzte Aktualisierung Stabile Version Release-Kandidat Beta-Ausgabe Alphaversion
15. Januar 2025 - - 1.1.0-alpha11

Zugriff auf Datentypen anfordern

Um den Datenschutz und die Sicherheit der Nutzer zu stärken, müssen Entwickler, die Health Connect einbinden, den Lese- und/oder Schreibzugriff für die Datentypen deklarieren, die in ihren Apps verwendet werden. Entwickler müssen gültige Anwendungsfälle für die von ihnen verwendeten Datentypen angeben, die dem Zweck der App entsprechen. Weitere Informationen finden Sie unter Informationen in das Formular für die Erklärung zu Gesundheits-Apps angeben und Berechtigungen für Health Connect by Android.

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 build.gradle-Datei Ihrer App oder Ihres Moduls die Abhängigkeiten für die erforderlichen Artefakte hinzu:

Cool

dependencies {
    // Use to implement health connects
    implementation "androidx.health.connect:connect-client:1.1.0-alpha08"
}

Kotlin

dependencies {
    // Use to implement health connects
    implementation("androidx.health.connect:connect-client:1.1.0-alpha08")
}

Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.

Feedback

Ihr Feedback hilft uns, Jetpack zu verbessern. Bitte melden Sie uns neue Probleme oder Ideen zur Verbesserung dieser Bibliothek. 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.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.

Health Connect-Testversion 1.0

Version 1.0.0-alpha01

4. September 2024

androidx.health.connect:connect-testing:1.0.0-alpha01 wird veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

Die Health Connect Testing Library vereinfacht die Erstellung automatisierter Tests. Mit dieser Bibliothek können Sie das Verhalten Ihrer App prüfen und überprüfen, ob sie auf ungewöhnliche Fälle richtig reagiert, die sich nur schwer manuell testen lassen.

Sie können die Bibliothek verwenden, um lokale Unit-Tests zu erstellen, mit denen in der Regel das Verhalten der Klassen in Ihrer App überprüft wird, die mit dem Health Connect-Client interagieren.

Der Einstiegspunkt in die Bibliothek ist die Klasse FakeHealthConnectClient, die Sie in Tests anstelle der HealthConnectClient verwenden. Sie hat folgende Funktionen:

  • Eine speicherinterne Darstellung von Einträgen, die Sie einfügen, entfernen, löschen und lesen können
  • Generierung von Änderungstokens und Änderungs-Tracking
  • Paginierung für Einträge und Änderungen
  • Antworten für die Aggregation werden mit Stubs unterstützt
  • Ermöglicht es jeder Funktion, Ausnahmen zu werfen
  • Ein FakePermissionController, mit dem Berechtigungsprüfungen emuliert werden können

API-Änderungen

  • FakeHealthConnectClient e8469 hinzufügen
  • Stub-Überschreibungen für FakeHealthConnectClient e8469 hinzufügen

Version 1.1

Version 1.1.0-alpha11

15. Januar 2025

androidx.health.connect:connect-client:1.1.0-alpha11, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha11 und androidx.health.connect:connect-client-proto:1.1.0-alpha11 werden losgelassen. Version 1.1.0-alpha11 enthält diese Commits.

Neue Funktionen

  • Die Leseberechtigungen für Hintergrund und Verlauf wurden aktualisiert, um Android 13 und niedriger zu unterstützen.

API-Änderungen

  • Inline-reified Überladungen für HealthPermission.getReadPermission und HealthPermission.getWritePermission hinzugefügt (I59a2e)

Fehlerkorrekturen

  • Alte Berechtigungsmethoden entfernen (Ifd080)
  • 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)
  • Die Dokumentation für HealthPermission.READ_HEALTH_DATA_HISTORY wurde korrigiert. Insbesondere wurde darauf hingewiesen, dass Lesevorgänge ohne diese Berechtigung nur dann fehlschlagen, wenn versucht wird, einen einzelnen Datenpunkt zu lesen. (Id5b5a)

Version 1.1.0-alpha10

16. Oktober 2024

androidx.health.connect:connect-client:1.1.0-alpha10, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha10 und androidx.health.connect:connect-client-proto:1.1.0-alpha10 werden losgelassen. Version 1.1.0-alpha10 enthält diese Commits.

Neue Funktionen

  • SkinTemperature Aggregationstypen hinzugefügt. (Ibe123)
  • Konstante FEATURE_PLANNED_EXERCISE (Ie02a3) hinzugefügt
  • Es wurden Berechtigungen für die Lesevorgänge im Verlauf hinzugefügt. (I5cf41)
  • Training Plans API hinzugefügt (If5be1)
  • SkinTemperatureRecord API hinzugefügt. (I5605d)

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:connect:connect-client-proto und androidx.health:connect:connect-client-external-protobuf auf die neueste Version 1.1.0-alpha10, um das Sicherheitsrisiko zu beheben.

Version 1.1.0-alpha09

18. September 2024

androidx.health.connect:connect-client:1.1.0-alpha09, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha09 und androidx.health.connect:connect-client-proto:1.1.0-alpha09 werden losgelassen. Version 1.1.0-alpha09 enthält diese Commits.

Neue Funktionen

  • Berechtigung zum Lesen im Hintergrund hinzufügen, die von der Verfügbarkeit der Funktion abhängt. (I01036, I44db9)

Version 1.1.0-alpha08

4. September 2024

androidx.health.connect:connect-client:1.1.0-alpha08, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha08 und androidx.health.connect:connect-client-proto:1.1.0-alpha08 werden losgelassen. Version 1.1.0-alpha08 enthält diese Commits.

API-Änderungen

  • Legen Sie in HealthConnectClient einen Standardwert für die Variable „features“ fest. (I788dc)
  • Fügen Sie eine API hinzu, um die Verfügbarkeit der Funktion zu prüfen. (Iedd43)

Fehlerkorrekturen

  • Gibt SDK_UNAVAILABLE in HealthConnectClient.getSdkStatus() zurück, wenn HealthConnectManager in U+ 5802f null ist
  • toString-Überschreibungen zu RecordClasses aa5dc hinzufügen
  • Die manuelle Kennzeichnung des Zugriffs auf neue Plattform-APIs wurde entfernt, da dies bei Verwendung von R8 mit AGP 7.3 oder höher (z.B. R8 Version 3.3) und für alle Builds bei Verwendung von AGP 8.1 oder höher (z.B. D8 Version 8.1) automatisch über die API-Modellierung erfolgt. Kunden, die AGP nicht verwenden, wird empfohlen, auf D8 Version 8.1 oder höher umzustellen. Weitere Details findest du in diesem Artikel. (If6b4c, b/345472586)

Version 1.1.0-alpha07

10. Januar 2024

androidx.health.connect:connect-client:1.1.0-alpha07 wird veröffentlicht. Version 1.1.0-alpha07 enthält diese Commits.

API-Änderungen

  • Gibt SDK_UNAVAILABLE zurück, wenn #getSdkStatus aus dem Nutzerkontext eines Profils aufgerufen wird. (I91df3)
  • Entfernen Sie SleepStageRecord. (/If6ada)

Fehlerkorrekturen

  • Bei Bindungsfehlern RemoteException statt IllegalStateException auswerfen (Id2233)

Version 1.1.0-alpha06

18. Oktober 2023

androidx.health.connect:connect-client:1.1.0-alpha06 wird veröffentlicht. Version 1.1.0-alpha06 enthält diese Commits.

API-Änderungen

  • recordingMethod-Definitionen werden veröffentlicht. (I401fb)

Fehlerkorrekturen

  • Fügen Sie der Trainingsroute eine Dokumentation hinzu, in der angegeben ist, dass der Standort vor dem Ende der Sitzung liegen muss. (0e51e6)

Version 1.1.0-alpha05

4. Oktober 2023

androidx.health.connect:connect-client:1.1.0-alpha05 wird veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.

API-Änderungen

  • Es wurde eine Intent hinzugefügt, die zum Bildschirm für die Datenverwaltung von Health Connect führt. (Ibf591)
  • In AggregationResult wurden veraltetet Methoden entfernt. (Idbda9)
  • Es wurde eine praktische API zum Erstellen von ReadRecordsRequest sowie zum Löschen und Lesen von Einträgen mit einem reifierten Datensatztyp hinzugefügt. (If58a5)

Fehlerkorrekturen

  • Ein Fehler in Android 14 wurde behoben, durch den leere Nährwertfelder als Double.MIN_VALUE zurückgegeben wurden. (1aa1d1)
  • Ein Fehler in Android 14 wurde behoben, bei dem bei der Aggregation nach Monat/Jahr eine Ausnahme in der Antwort ausgelöst wurde, weil die Zeiträume der einzelnen Bucket identisch waren. (281313)

Version 1.1.0-alpha04

6. September 2023

androidx.health.connect:connect-client:1.1.0-alpha04 wird veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.

API-Änderungen

Fehlerkorrekturen

Version 1.1.0-alpha03

26. Juli 2023

androidx.health.connect:connect-client:1.1.0-alpha03 wird veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.

Neue Funktionen

  • API zum Lesen und Schreiben von Trainingsstrecken:
    • "ExerciseRouteResult" zu "ExerciseSessionRecord" hinzugefügt
    • ExerciseRouteRequestContract“ wurde hinzugefügt

API-Änderungen

  • ExerciseRouteResult und die untergeordneten Klassen Data, NoData und ConsentRequiredStates wurden hinzugefügt.
  • ExerciseRoute wurde als eigenständige Klasse hinzugefügt, die Standortdaten für die Route enthält. (I22eed)
  • PERMISSION_WRITE_EXERCISE_ROUTE wurde hinzugefügt. (I92fc4)
  • ExerciseRouteRequestContract hinzugefügt, HealthPermissionsRequestContract hinzugefügt. (Ief0e5)

Fehlerkorrekturen

  • Feste Angabe der Energie in Kilojoule (Ie8791)

Version 1.1.0-alpha02

21. Juni 2023

androidx.health.connect:connect-client:1.1.0-alpha02 wird veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Behobener HealthDataSdkService-Leak (Ia3ba5)
  • Bei der Anforderung von Berechtigungen unter Android U immer an den richtigen HealthConnect-Client weiterleiten (I6415a)

Version 1.1.0-alpha01

7. Juni 2023

androidx.health.connect:connect-client:1.1.0-alpha01 wird veröffentlicht. Diese Version wird in einem internen Branch entwickelt.

Neue Funktionen

  • Unterstützung für die Framework-Version von Health Connect für Android 14 Dieses SDK ist eine Voraussetzung für Android 14. Ohne diese Funktion können Apps unter Android 14 nicht mit Health Connect verknüpft werden.
  • Es wurde eine Aufzeichnungsmethode zum Aufzeichnen von Metadaten hinzugefügt.

API-Änderungen

  • Änderungen an der Session API:
    • SleepSessionRecord enthält jetzt verschiedene Schlafphasen und SleepStageRecord wurde entfernt.
    • ExerciseLap und ExerciseSegment wurden zu ExerciseSessionRecord hinzugefügt.
  • Periodische und tägliche Ratenlimits (einschließlich Speicherlimits) für Lese-, Änderungsprotokoll-, Einfüge- und Löschvorgänge.
  • Validierung für alle NutritionRecord-Felder hinzugefügt.
  • Validierung für HeartRateVariabilityRmssdRecord hinzugefügt.
  • Zwei verworfene APIs wurden entfernt: HealthConnectClient#isProviderAvailable und HealthConnectClient#isApiSupported.

Fehlerkorrekturen

  • Gleichheit der festen Einheiten für alle Einheitentypen. Die Gleichheit hängt nicht mehr vom Typ ab, der für die Einheiteninitialisierung verwendet wird. Beispiel: „Mass.grams(1000)“ entspricht jetzt „Mass.kilograms(1)“.

Version 1.0

Version 1.0.0-alpha11

22. Februar 2023

androidx.health.connect:connect-client:1.0.0-alpha11 wird veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.

API-Änderungen

  • Es wurde eine Intent hinzugefügt, die zum Öffnen von Health Connect verwendet wird. (Ic8055)
  • Einige Trainingsarten werden entfernt. Verwenden Sie EXERCISE_TYPE_STRENGTH_TRAINING, EXERCISE_TYPE_HIGH_INTENSITY_INTERVAL_TRAINING oder EXERCISE_TYPE_CALISTHENICS anstelle der entfernten Typen. (I7291c)
  • Neue API sdkStatus() hinzufügen, die die beiden jetzt eingestellten APIs isSdkSupported() und isProviderAvailable() kombiniert. (Iac89d)
  • APIs, die providerPackageName akzeptieren, werden so geändert, dass sie statt einer Liste einen einzelnen String akzeptieren. (I67e0f)

Version 1.0.0-alpha10

25. Januar 2023

androidx.health.connect:connect-client:1.0.0-alpha10 wird veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.

API-Änderungen

  • ExerciseEventRecord, ExerciseLapRecord,ExerciseRepititionRecord und SwimmingStrokesRecord werden nicht mehr als RecordTypes unterstützt. Sie können nicht mehr auf HealthConnect geschrieben oder von dort gelesen werden. Entfernen Sie alle Verweise auf diese Datentypen aus der HealthConnect-Integration. (If7ca2)
  • Änderungen an Berechtigungs-APIs, um Berechtigungen in einem neuen stringbasierten Format zu akzeptieren. Durch diese Änderung muss auch die Erklärung zu Berechtigungen in das Standardformat für Android-Berechtigungen geändert werden. (Ib0a2f)

Version 1.0.0-alpha09

11. Januar 2023

androidx.health.connect:connect-client:1.0.0-alpha09 wird veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.

Neue Funktionen

  • Es wurden zwei neue Datentypen für die Gesundheit von Frauen für Health Connect hinzugefügt: IntermenstrualBleedingRecord und MenstruationPeriodRecord. MenstruationFlow.ENUMs sind „Leicht“, „Mittel“, „Hoch“ und „Unbekannt“.

API-Änderungen

  • IntermenstrualBleedingRecord (Idc470) wurde hinzugefügt
  • Der Datensatztyp MenstruationPeriodRecord (Iea545) wurde hinzugefügt.

Version 1.0.0-alpha08

7. Dezember 2022

androidx.health.connect:connect-client:1.0.0-alpha08 wird veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.

API-Änderungen

  • BodyWaterMass und HeartRateVariabilityRmssdRecord werden als neue unterstützte Datensatztypen hinzugefügt. (Ifd58f)
  • Entfernt HipCircumferenceRecord und WaistCircumferenceRecord als unterstützte RecordTypes. (I62fb9)
  • MenstruationFlowRecord.flow wurde von stringdef in intdefs geändert. (I0369f)
  • Enum-ähnliche Datensatzfelder wurden von Strings in Integers geändert, um die Leistung zu verbessern. (I3b295)
  • Die enum-artigen Felder ExerciseSession, ExerciseRepetitions und SleepStage wurden von String- zu Ganzzahltypen geändert. (Id32a9)
  • ExerciseSessionRecord.ACTIVE_TIME_TOTAL->EXERCISE_DURATION_TOTAL wurde umbenannt. (I5d7bd)
  • Dem CervicalMucus-Enum wird „Ungewöhnlich“ hinzugefügt. Benenne „Clear“ in „Eggwhite“ um, um genauer zu sein. CervicalMucus#appearance und #sensation wurden von StringDefs zu IntDefs geändert. (I3ac51)
  • StringDef von DeviceTypes wird jetzt unter „Gerät“ in IntDefs verschoben. (I3abf3)
  • Fügen Sie HealthConnectClient.isApiSupported() hinzu, wodurch für SDK-Versionen ohne kompatible Implementierungen „false“ zurückgegeben wird. HealthConnectClient.isAvailable->isProviderAvailable wurde umbenannt. (I3674e)

Fehlerkorrekturen

  • HeartRate beatsPerMinute-Werte unter 1 nicht zulassen (I6052f)
  • @JvmDefaultWithCompatibility-Anmerkung hinzufügen (I8f206)

Version 1.0.0-alpha07

24. Oktober 2022

androidx.health.connect:connect-client:1.0.0-alpha07 wird veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

API-Änderungen

  • Datensatzargumente ohne Standardwerte werden vor Argumenten mit Standardwerten platziert. Aus Gründen der Einheitlichkeit werden Instant- und ZoneOffset-Argumente immer ganz am Anfang platziert. (Id618c)
  • Benennen Sie HealthConnectClient.getOrCreate#packageNames in providerPackageNames um. (Id81e4)

Fehlerkorrekturen

  • Fügen Sie Validierungen für den Wert des Datensatzfelds hinzu. Bei extrem falschen Werten wird IllegalArgumentExceptions ausgegeben, wenn der angegebene Wert außerhalb des zulässigen Bereichs liegt. (Ie171d)
  • Prüft, ob die Startzeit vor der Endzeit liegt. (I02460)

Version 1.0.0-alpha06

5. Oktober 2022

androidx.health.connect:connect-client:1.0.0-alpha06 wird veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Fehlerkorrekturen

  • Verbessert den Dienstverbindungslebenszyklus. (If2bd5)
  • Behebung eines NPE-Absturzfehlers, der bei einer Ausnahme in der Dienstverbindung auftritt. (I13546)

Version 1.0.0-alpha05

21. September 2022

androidx.health.connect:connect-client:1.0.0-alpha05 wird veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

API-Änderungen

  • Metadata.uid in Metadata.id umbenannt und die Terminologie recordId in allen zugehörigen CRUD APIs einheitlich verwendet. (I3d1d2)
  • PermissionController.createRequestPermissionActivityContract wurde zu einer statischen Methode anstelle einer Instanzmethode. Wurde in PermissionController.createRequestPermissionResultContract umbenannt. (Icd2fe)
  • BloodGlucose-Einheitstyp für BloodGlucoseRecord hinzugefügt (I97678)
  • MenstruationRecord in MenstruationFlowRecord umbenennen (I3b88e)

Fehlerkorrekturen

  • Behebung eines unbeabsichtigten Verhaltens, bei dem Statistiken im Vordergrund nicht vom Clientprozess weitergegeben wurden. (Ifb44c)

Version 1.0.0-alpha04

24. August 2022:androidx.health.connect:connect-client:1.0.0-alpha04 wird veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

Migration zu „androidx.health.connect“

Seit Version 1.0.0-alpha04 wurde androidx.health:health-connect-client zu androidx.health.connect:connect-client migriert. Informationen zu früheren Versionen von Health Connect finden Sie auf der Seite androidx.health.

Ä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.

Neue Funktionen

  • Optionale Debug-Logs für API-Aufrufe (Link)

API-Änderungen

  • Die Metadaten clientId wurden in clientRecordId und clientVersion in clientRecordVersion umbenannt. (Link)
  • Die „Metadata uid“ ist jetzt für Leser besser lesbar und nicht mehr nullwertig. (Link)
  • Die Maßeinheit „Pfund“ wurde der Kategorie „Masse“ hinzugefügt (Link)
  • DeletionChange.deleteUid in „uid“ umbenannt (Link)
  • Berechtigung umbenennen in „HealthPermission“. Dadurch werden Unklarheiten bei den Berechtigungen des Android-Frameworks vermieden. (Link)

Fehlerkorrekturen

  • Behebung von Regressionsproblemen mit falscher Kalorieneinheit bei Energie (Link)
  • Regressionsproblem bei der Aggregation für einige Datensatztypen (link) behoben