Datentypen in Health Connect werden in Objekten gespeichert, die Unterklassen von Record
sind.
Mit jedem Datentyp sind Felder verknüpft, die entweder generisch wie time
und zoneOffset
oder spezifisch wie title
, count
und percentage
sind.
Für einige Felder werden einfache Typen wie „long“, „double“ oder „string“ verwendet, während für andere komplexe Typen wie Aufzählungen und Klassen wie Instant
und ZoneOffset
verwendet werden. Die Attribute dieser Felder können erforderlich oder optional sein. Einige Attribute sind schreibgeschützt, einige sind auf einen bestimmten Wertebereich beschränkt.
Eine vollständige Liste der verfügbaren Datentypen und ihrer Felder findest du in den Klassen in Jetpack.
Metadatenattribute
Die Daten in der Health Connect API enthalten auch Metadaten-Attribute, die in der folgenden Liste beschrieben werden:
- Health Connect-ID: Jedem Datenpunkt wird beim Erstellen eine eindeutige Kennung (UID) zugewiesen. Das ist nützlich für Standardlese- und Schreibvorgänge. Weitere Informationen findest du unter Health Connect-ID.
- Zuletzt geändert: Dies ist der Zeitstempel der letzten Instanz, für die ein Eintrag aktualisiert wurde. Sie wird automatisch beim ersten Erstellen des Eintrags oder bei jeder Aktualisierung generiert.
- Herkunft der Daten: In Health Connect werden Informationen zur App gespeichert, aus der die Daten stammen. Sie enthält den Paketnamen dieser Quelle, der beim Erstellen automatisch hinzugefügt wird.
- Gerät: In Health Connect werden Informationen zum Gerät gespeichert, von dem die Daten stammen. Dazu zählen der Hersteller und das Modell des Geräts, für das du den Wert manuell angibst.
- Client-ID: Health Connect stellt Client-IDs bereit, damit Client-Apps Daten mit ihren eigenen IDs referenzieren können. Das hilft bei der Konfliktbehebung und vereinfacht die Synchronisierung. Dieser Wert wird manuell in den Eintrag aufgenommen.
- Version des Kundeneintrags: Neben der Client-ID bietet Health Connect eine Versionierung, mit der sich Änderungen bei der Datensynchronisierung besser nachvollziehen lassen. Dieser Wert wird manuell in den Eintrag aufgenommen.
- Aufzeichnungsmethode: Mit Health Connect kannst du nachvollziehen, wie Daten erfasst werden. Dazu gehören Apps, die Daten passiv (automatisch) erfassen, und Nutzer, die Daten aktiv oder manuell erfassen.
Health Connect-ID
Health Connect weist neu eingefügten Datenobjekten eindeutige Kennungen (UIDs) zu, die Datenobjekte identifizieren und von anderen unterscheiden. Health Connect-IDs sind bei Lese- oder Schreibanfragen nützlich. Health Connect-IDs sind nicht mit Client-IDs identisch. Eine Client-App weist Client-IDs zu, während Health Connect ausschließlich Health Connect-IDs zuweist.
Beachte bei der Arbeit mit Health Connect-IDs Folgendes:
- Sitzungen haben eine einzelne Health Connect-ID, aber Daten innerhalb von Sitzungen haben eigene Health Connect-IDs.
- Health Connect-IDs sind nicht mit Zeitstempeln verknüpft oder beziehen sich auf diese.
- Bei einigen Anwendungsfällen muss während eines Workflows möglicherweise eine bestimmte Health Connect-ID gespeichert werden. Beispielsweise ist eine bestimmte ID erforderlich, um die Dateneingabe, die ein Nutzer gerade protokolliert hat, abzurufen und sie dem Nutzer anzuzeigen.
Zeit in Health Connect
Alle Daten, die in Health Connect geschrieben werden, müssen Informationen zum Zeitzonenoffset enthalten. Wenn du den Zeitzonenoffset angibst, können Apps die Daten lesen und in gesetzlicher Zeit darstellen. Die gesetzliche oder auch bürgerliche Zeit ist die lokale und für den Nutzer relevante Zeit, aber nicht unbedingt die koordinierte Weltzeit (UTC).
In seltenen Fällen ist der Zonen-Offset möglicherweise nicht verfügbar. Wenn dies in Android 14 (API-Ebene 34) geschieht, legt Health Connect den Zonen-Offset basierend auf der standardmäßigen Zeitzone des Geräts fest. In Android 13 und niedrigeren Versionen (API-Level 33 und niedriger) ist es möglich, Daten in Health Connect zu schreiben, ohne Informationen zum Zeitzonenoffset anzugeben. Das sollte jedoch nach Möglichkeit vermieden werden.
Uhrzeit und Zone einstellen
Wenn du beim Schreiben von Daten Informationen zum Zeitzonenoffset angibst, werden beim Lesen von Daten in Health Connect Informationen zur Zeitzone bereitgestellt. In bestimmten Fällen funktioniert das jedoch nicht, z. B. wenn der Zeitzonenoffset nicht angegeben ist. Deine App muss mit beiden Arten von Daten umgehen können, und zwar auf eine Weise, die für deine spezifischen Umstände sinnvoll ist.