Die Health Platform API ist eine Android API, die Entwicklern eine einzige Schnittstelle zum Lesen, Schreiben und Freigeben der bisherigen Gesundheits-, Wellness- und Fitnessdaten eines Nutzers bietet. Mit der Health Platform haben Nutzer die Kontrolle über ihre Daten. Nutzer steuern, welche Apps Lese- oder Schreibzugriff auf verschiedene Datentypen haben. Health Platform API-Datentypen umfassen Größe, Herzfrequenz und mehr.
Die Health Platform API bietet Nutzern einen Speicher- und Freigabemechanismus, mit dem sie auswählen können, welche Apps auf ihre persönlichen Gesundheits-, Fitness- und Fitnessdaten zugreifen und diese anzeigen dürfen. So können App-Entwickler Nutzern einen umfassenderen Überblick über den Gesundheitszustand der Nutzer bieten und ihre Daten effektiver überwachen.
Das Health Platform API-Software-Entwicklerkit bietet Android-App-Entwicklern alles, was sie benötigen, um auf ausgewählten Samsung-Geräten Zugriff auf die Gesundheits- und Fitnessdaten eines Nutzers zu ermöglichen. Außerdem können Apps Bulk-Vorgänge ausführen, wie z. B. das Einfügen, Löschen und Lesen von Daten.
Erste Schritte
Beachten Sie bei der Verwendung der Health Platform Folgendes:
- Client-Apps müssen detaillierte Berechtigungen für den Lese- oder Schreibzugriff vom Nutzer einholen.
- Der Nutzer kann die Berechtigungen anschließend jederzeit verweigern oder widerrufen.
- Die Health Platform API unterstützt nur ausgewählte Samsung-Geräte.
HealthDataClient
ist der Client für die Health Platform und ein Einstiegspunkt für die Health Platform.
Die folgende Abbildung zeigt die erforderlichen Integrationsschritte, die Entwickler ausführen müssen:
Dateien freigeben
Die Health Platform V1-Version enthält Folgendes:
- Client SDK: Binden Sie dieses SDK in Ihre Anwendung ein, um die Health Platform API zu verwenden. Das SDK ist ein Maven-Repository, das Sie direkt in die Gradle-Build-Dateien Ihrer Anwendung einbinden können.
Health Platform installieren
So installieren Sie Health Platform:
Fügen Sie das Repository in die Stammdatei build.gradle
der App ein, wie im folgenden Beispiel gezeigt:
allprojects {
...
repositories {
...
google()
}
}
Fügen Sie der Datei build.gradle
Ihres Moduls eine Abhängigkeit vom Health Platform SDK hinzu, wie im folgenden Beispiel gezeigt:
dependencies {
…
implementation 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01'
}
Daten
Die Health Platform speichert und strukturiert Gesundheits- und Fitnessdaten. Außerdem werden wichtige Unterschiede zwischen der Messung von Daten verschiedener Typen berücksichtigt. Zum Beispiel wird eine Herzfrequenzmessung sofort durchgeführt, aber eine Schrittzahl über einen bestimmten Zeitraum hinweg erfasst.
Hier finden Sie einen Blick auf die zentralen Objekte in Health Platform und ihre Unterschiede:
RawData
: Mess- und Datensatz.DataType
: Ein Spezifizierer für gängige Arten von Gesundheits- und Fitnessdaten wie Herzfrequenz, Körperfettanteil oder Körpertemperatur und ihre Formate, z. B. Felder, schreibgeschützt oder optional.SampleData
: einRawData
-Objekt, das eine sofortige Messung ist, z. B. die Herzfrequenz, der Blutdruck oder die Laufgeschwindigkeit.IntervalData
: EinRawData
-Objekt, das eine kumulative Messung über einen bestimmten Zeitraum ist, z. B. die Anzahl der Schritte, die zurückgelegte Strecke oder die verbrannten Kalorien.SeriesData
: EinRawData
-Objekt, das eine Folge von Messungen über einen bestimmten Zeitraum einschließt.SeriesData
eignet sich besonders für Hochfrequenzsensordaten, wie z. B. kontinuierliche Herzfrequenzmessungen während einer Aktivitätssitzung.
Jede der drei RawData
-Klassen entspricht einer bestimmten abgeleiteten Klasse von DataType
: SampleData
, IntervalData
und SeriesData
entsprechen SampleDataType
, IntervalDataType
bzw. SeriesDataType
.
Jedem RawData
-Objekt wird beim Einfügen von Health Platform eine eindeutige Kennung (UID) zugewiesen. Sie können diese UID verwenden, um in Lese-, Aktualisierungs- oder Löschanfragen auf ein bestimmtes RawData
-Objekt zu verweisen.
Datentypen
Die Health Platform umfasst eine breite Palette von Datentypen, die häufig in Gesundheits- und Fitness-Apps verwendet werden. Daten, die mit den verfügbaren Datentypen gespeichert werden, bieten Nutzern einen umfassenden Überblick über ihre bisherigen Gesundheits-, Fitness- und Fitnessdaten und geben einen Einblick in ihre täglichen Aktivitäten.
Jeder Datentyp wird durch sein Datenformat definiert, das Folgendes umfasst:
- Felder:spezifische oder allgemeine Felder für den Datentyp. Der Datentyp der Sauerstoffsättigung des Blutes (SpO2) hat beispielsweise Felder wie „Titel“, „Notizen“ und „Prozentsatz“.
- Typ:long, double, String oder enum
- Attribut:schreibgeschützter, erforderlicher, optionaler oder Validierungsbereich.
Liste der Datentypen
Nutze die Health Platform optimal, indem du die verfügbaren Datentypen verstehst. Health Platform unterstützt die Datentypen, die in der folgenden Tabelle aufgeführt sind. Die Datentypen sind nach ihrem Format organisiert: Stichprobe, Intervall oder Serie.
SampleData
Typen:
DataType.BasalMetabolicRateDataType |
BASAL_METABOLIC_RATE |
Erforderlich |
DataType.BloodGlucoseDataType |
BLOOD_GLUCOSE |
Erforderlich und optional |
DataType.BloodPressureDataType |
BLOOD_PRESSURE |
Erforderlich und optional |
DataType.BodyFatDataType |
BODY_FAT |
Erforderlich |
DataType.BodyTemperatureDataType |
BODY_TEMPERATURE |
Erforderlich und optional |
DataType.BoneMassDataType |
BONE_MASS |
Erforderlich |
DataType.CervicalMucusDataType |
CERVICAL_MUCUS |
Optional |
DataType.CervicalPositionDataType |
CERVICAL_POSITION |
Optional |
DataType.CyclingPedalingCadenceDataType |
CYCLING_PEDALING_CADENCE |
Erforderlich |
DataType.DateOfBirthDataType |
DATE_OF_BIRTH |
Schreibgeschützt |
DataType.GenderDataType |
GENDER |
Schreibgeschützt |
DataType.HeartRateDataType |
HEART_RATE |
Erforderlich |
DataType.HeightDataType |
HEIGHT |
Erforderlich |
DataType.HipCircumferenceDataType |
HIP_CIRCUMFERENCE |
Erforderlich |
DataType.HrvDifferentialIndexDataType |
HRV_DIFFERENTIAL_INDEX |
Erforderlich |
DataType.HrvRmssdDataType |
HRV_RMSSD |
Erforderlich |
DataType.HrvSDataType |
HRV_S |
Erforderlich |
DataType.HrvSd2DataType |
HRV_SD2 |
Erforderlich |
DataType.HrvSdannDataType |
HRV_SDANN |
Erforderlich |
DataType.HrvSdnnDataType |
HRV_SDNN |
Erforderlich |
DataType.HrvSdnnIndexDataType |
HRV_SDNN_INDEX |
Erforderlich |
DataType.HrvSdnnIndexDataType |
HRV_SDNN_INDEX |
Erforderlich |
DataType.HrvSdsdDataType |
HRV_SDSD |
Erforderlich |
DataType.HrvTinnDataType |
HRV_TINN |
Erforderlich |
DataType.LeanBodyMassDataType |
LEAN_BODY_MASS |
Erforderlich |
DataType.LocationDataType |
LOCATION |
Erforderlich |
DataType.MenstruationDataType |
MENSTRUATION |
Optional |
DataType.OvulationTestDataType |
OVULATION_TEST |
Erforderlich |
DataType.OxygenSaturationDataType |
OXYGEN_SATURATION |
Erforderlich |
DataType.PaceDataType |
PACE |
Erforderlich |
DataType.PowerDataType |
POWER |
Erforderlich |
DataType.RespiratoryRateDataType |
RESPIRATORY_RATE |
Erforderlich |
DataType.RestingHeartRateDataType |
RESTING_HEART_RATE |
Erforderlich |
DataType.SexualActivityDataType |
SEXUAL_ACTIVITY |
Erforderlich |
DataType.SpeedDataType |
SPEED |
Erforderlich |
DataType.StepsCadenceDataType |
STEPS_CADENCE |
Erforderlich |
DataType.Vo2MaxDataType |
VO2_MAX |
Erforderlich und optional |
DataType.WaistCircumferenceDataType |
WAIST_CIRCUMFERENCE |
Erforderlich |
DataType.WeightDataType |
WEIGHT |
Erforderlich |
IntervalData
Typen:
DataType.ActiveEnergyDataType |
ACTIVE_ENERGY_BURNED |
Erforderlich |
DataType.ActiveTimeDataType |
ACTIVE_TIME |
Schreibgeschützt |
DataType.ActivityEventDataType |
ACTIVITY_EVENT |
Erforderlich |
DataType.ActivityLapDataType |
ACTIVITY_LAP |
Optional |
DataType.ActivitySessionDataType |
ACTIVITY_SESSION |
Erforderlich |
DataType.BasalEnergyDataType |
BASAL_ENERGY_BURNED |
Schreibgeschützt |
DataType.DistanceDataType |
DISTANCE |
Erforderlich |
DataType.ElevationGainedDataType |
ELEVATION_GAINED |
Erforderlich |
DataType.FloorsClimbedDataType |
FLOORS_CLIMBED |
Erforderlich |
DataType.HydrationDataType |
HYDRATION |
Erforderlich |
DataType.NutritionDataType |
NUTRITION |
Optional |
DataType.RepetitionsDataType |
REPETITIONS |
Erforderlich |
DataType.SleepSessionDataType |
SLEEP_SESSION |
Optional |
DataType.SleepStageDataType |
SLEEP_STAGE |
Erforderlich |
DataType.StepsDataType |
STEPS |
Erforderlich |
DataType.SwimmingStrokesDataType |
SWIMMING_STROKES |
Erforderlich und optional |
DataType.TotalEnergyDataType |
TOTAL_ENERGY_BURNED |
Schreibgeschützt |
SeriesData
Typen:
DataType.CyclingPedalingCadenceSeriesDataType |
CYCLING_PEDALING_CADENCE |
Erforderlich |
DataType.HeartRateSeriesDataType |
HEART_RATE |
Erforderlich |
DataType.LocationSeriesDataType |
LOCATION |
Erforderlich |
DataType.PaceSeriesDataType |
PACE |
Erforderlich |
DataType.PowerSeriesDataType |
POWER |
Erforderlich |
DataType.SpeedSeriesDataType |
SPEED |
Erforderlich |
DataType.StepsCadenceSeriesDataType |
STEPS_CADENCE |
Erforderlich |
Entwicklerfunktionen
Im Folgenden werden die Standarddatenfunktionen der Health Platform beschrieben. Die Plattform bietet Standardfunktionen zum Einfügen, Aktualisieren und Löschen für Rohdaten.
Aggregierte Daten lesen
Auf der Plattform können Clients eine Aggregationsfunktion auf die folgenden AggregatedData
-Typen anwenden:
StatisticalData
: die Durchschnitts-, Mindest- oder Höchstwerte in einem Satz vonSampleData
oderSeriesData
, z. B. die minimale und maximale Herzfrequenz während einer Aktivitätssitzung.CumulativeData
: die Summe derIntervalData
-Werte, z. B. die Gesamtschrittzahl innerhalb eines täglichen Intervalls.CountData
: eine einfache Zählung der zugrunde liegendenRawData
-Objekte, z. B. die Anzahl der Aktivitätssitzungen in einer bestimmten Woche. Zähldaten können für Stichproben-, Intervall- und Reihendatentypen berechnet werden.
Verbindung zur Health Platform API herstellen
HealthDataClient
ist der Einstiegspunkt zur Health Platform API.
In den folgenden Schritten wird beschrieben, wie Sie eine Verbindung zur Health Platform herstellen:
- Verwenden Sie
HealthDataService.getClient
, um neueHealthDataClient
-Instanzen zu erstellen. - Die Client-App muss dann mit der Methode
requestPermissions (Set)
die Berechtigung vom Nutzer anfordern.
HealthDataClient
verwaltet automatisch die Verbindung zur zugrunde liegenden Speicherebene und verarbeitet die gesamte Inter-Process Communication (IPC) und die Serialisierung ausgehender Anfragen und eingehender Antworten.
Empfehlungen für dich
- Hinweis: Der Linktext wird angezeigt, wenn JavaScript deaktiviert ist.
- Aktive Daten und Trainings
- Passive Datenaktualisierungen
- Jetpack Compose unter Wear OS verwenden