Health Platform API to interfejs API na Androida, który zapewnia programistom jeden interfejs do odczytywania, zapisywania i udostępniania historycznych danych użytkownika dotyczących zdrowia, samopoczucia i aktywności fizycznej. Użytkownicy mają kontrolę nad swoimi danymi w ramach Platformy Zdrowia. Użytkownicy kontrolują, które aplikacje mają dostęp do odczytu i zapisu różnych typów danych. Typy danych interfejsu Health Platform API obejmują m.in. wzrost i tętno.
Interfejs Health Platform API zapewnia użytkownikom mechanizm przechowywania i udostępniania danych, który pozwala im wybierać, które aplikacje mogą uzyskiwać dostęp do ich osobistych danych dotyczących zdrowia, aktywności fizycznej i samopoczucia oraz je wyświetlać. Dzięki temu deweloperzy aplikacji mogą wyświetlać użytkownikom pełniejszy obraz ich stanu zdrowia, a użytkownicy mogą skuteczniej monitorować swoje dane.
Pakiet SDK interfejsu Health Platform API zapewnia deweloperom aplikacji na Androida wszystko, czego potrzebują, aby umożliwić dostęp do danych użytkownika dotyczących zdrowia i dobrego samopoczucia na wybranych urządzeniach Samsunga. Umożliwia on też aplikacjom wykonywanie operacji zbiorczych, takich jak wstawianie, usuwanie i odczytywanie danych.
Rozpocznij
Podczas korzystania z Platformy Zdrowia pamiętaj o tych kwestiach:
- Aplikacje klienckie muszą uzyskać od użytkownika szczegółowe uprawnienia do odczytu lub zapisu.
- Użytkownik może odmówić przyznania uprawnień lub cofnąć je w dowolnym momencie.
- Interfejs Health Platform API obsługuje tylko wybrane urządzenia Samsung.
HealthDataClientto klient Platformy Zdrowia i punkt wejścia na tę platformę.
Na ilustracji poniżej przedstawiono niezbędne kroki integracji, które deweloperzy muszą wykonać:
Pliki wersji
Wersja 1 platformy Health Platform zawiera:
- Pakiet SDK klienta: Dołącz ten pakiet SDK do aplikacji, aby korzystać z interfejsu Health Platform API. Pakiet SDK to repozytorium Maven, które możesz bezpośrednio uwzględnić w plikach kompilacji Gradle aplikacji.
Instalowanie platformy Zdrowie
Aby zainstalować Platformę Zdrowia, wykonaj te czynności:
W pliku głównym build.gradle aplikacji dodaj repozytorium, jak pokazano w przykładzie poniżej:
allprojects {
. . .
repositories {
. . .
google()
}
}
Dodaj zależność od pakietu SDK platformy Health do pliku build.gradle modułu, jak pokazano w przykładzie poniżej:
Kotlin
dependencies { . . . implementation("com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01") }
Groovy
dependencies { . . . implementation 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01' }
Dane
Platforma Zdrowie przechowuje i strukturyzuje dane o zdrowiu i aktywności fizycznej. Uwzględnia też podstawowe różnice w sposobie pomiaru różnych typów danych. Na przykład pomiar tętna jest wykonywany natychmiast, a liczba kroków jest mierzona w określonym czasie.
Oto główne obiekty na platformie Zdrowie i różnice między nimi:
RawData: pomiar i rekord danych.DataType: specyfikacja typowych rodzajów danych o zdrowiu i aktywności, takich jak tętno, poziom tkanki tłuszczowej czy temperatura ciała, oraz ich formatów, np. pól, tylko do odczytu lub opcjonalnych.SampleData: obiektRawData, który jest pomiarem chwilowym, np. tętna, ciśnienia krwi lub prędkości biegu.IntervalData: obiektRawData, który jest pomiarem skumulowanym wykonywanym w określonym czasie, np. liczba kroków, przebyta odległość lub spalone kalorie.SeriesData: obiektRawData, który zawiera sekwencję pomiarów w określonym czasie.SeriesDatajest szczególnie przydatny w przypadku danych z czujników o wysokiej częstotliwości, takich jak ciągłe próbki tętna podczas sesji aktywności.
Każda z 3 klas RawData odpowiada konkretnej podklasie DataType: SampleData, IntervalData i SeriesData odpowiadają odpowiednio klasom SampleDataType, IntervalDataType i SeriesDataType.
Każdemu obiektowi RawData platforma Health Platform przypisuje unikalny identyfikator (UID) w momencie wstawienia. Możesz użyć tego identyfikatora UID, aby odwołać się do konkretnego RawDataobiektu w żądaniach odczytu, aktualizacji lub usunięcia.
Typy danych
Platforma Zdrowie obejmuje szeroki zakres typów danych, które są powszechnie używane w aplikacjach do dbania o zdrowie i kondycję. Dane przechowywane w ramach dostępnych typów danych zapewniają użytkownikom kompleksowy wgląd w ich historyczne dane dotyczące zdrowia, kondycji i samopoczucia, co pozwala im lepiej zrozumieć swoje codzienne czynności.
Każdy typ danych jest definiowany przez format danych, który obejmuje:
- Pola: konkretne lub ogólne pola powiązane z typem danych. Na przykład typ danych nasycenie krwi tlenem (SpO2) ma pola takie jak Tytuł, Notatki i Procent.
- Typ: long, double, string lub enum.
- Atrybut: tylko do odczytu, wymagany, opcjonalny lub zakres weryfikacji.
Lista typów danych
Wykorzystaj w pełni potencjał Platformy Zdrowia, poznając dostępne typy danych. Platforma Zdrowie obsługuje typy danych podane w tej tabeli. Typy danych są uporządkowane według formatu: próbka, przedział lub seria.
SampleData typu:
DataType.BasalMetabolicRateDataType |
BASAL_METABOLIC_RATE |
Wymagane |
DataType.BloodGlucoseDataType |
BLOOD_GLUCOSE |
Wymagane i opcjonalne |
DataType.BloodPressureDataType |
BLOOD_PRESSURE |
Wymagane i opcjonalne |
DataType.BodyFatDataType |
BODY_FAT |
Wymagane |
DataType.BodyTemperatureDataType |
BODY_TEMPERATURE |
Wymagane i opcjonalne |
DataType.BoneMassDataType |
BONE_MASS |
Wymagane |
DataType.CervicalMucusDataType |
CERVICAL_MUCUS |
Opcjonalny |
DataType.CervicalPositionDataType |
CERVICAL_POSITION |
Opcjonalne |
DataType.CyclingPedalingCadenceDataType |
CYCLING_PEDALING_CADENCE |
Wymagane |
DataType.DateOfBirthDataType |
DATE_OF_BIRTH |
Tylko do odczytu |
DataType.GenderDataType |
GENDER |
Tylko do odczytu |
DataType.HeartRateDataType |
HEART_RATE |
Wymagane |
DataType.HeightDataType |
HEIGHT |
Wymagane |
DataType.HipCircumferenceDataType |
HIP_CIRCUMFERENCE |
Wymagane |
DataType.HrvDifferentialIndexDataType |
HRV_DIFFERENTIAL_INDEX |
Wymagane |
DataType.HrvRmssdDataType |
HRV_RMSSD |
Wymagane |
DataType.HrvSDataType |
HRV_S |
Wymagane |
DataType.HrvSd2DataType |
HRV_SD2 |
Wymagane |
DataType.HrvSdannDataType |
HRV_SDANN |
Wymagane |
DataType.HrvSdnnDataType |
HRV_SDNN |
Wymagane |
DataType.HrvSdnnIndexDataType |
HRV_SDNN_INDEX |
Wymagane |
DataType.HrvSdnnIndexDataType |
HRV_SDNN_INDEX |
Wymagane |
DataType.HrvSdsdDataType |
HRV_SDSD |
Wymagane |
DataType.HrvTinnDataType |
HRV_TINN |
Wymagane |
DataType.LeanBodyMassDataType |
LEAN_BODY_MASS |
Wymagane |
DataType.LocationDataType |
LOCATION |
Wymagane |
DataType.MenstruationDataType |
MENSTRUATION |
Opcjonalne |
DataType.OvulationTestDataType |
OVULATION_TEST |
Wymagane |
DataType.OxygenSaturationDataType |
OXYGEN_SATURATION |
Wymagane |
DataType.PaceDataType |
PACE |
Wymagane |
DataType.PowerDataType |
POWER |
Wymagane |
DataType.RespiratoryRateDataType |
RESPIRATORY_RATE |
Wymagane |
DataType.RestingHeartRateDataType |
RESTING_HEART_RATE |
Wymagane |
DataType.SexualActivityDataType |
SEXUAL_ACTIVITY |
Wymagane |
DataType.SpeedDataType |
SPEED |
Wymagane |
DataType.StepsCadenceDataType |
STEPS_CADENCE |
Wymagane |
DataType.Vo2MaxDataType |
VO2_MAX |
Wymagane i opcjonalne |
DataType.WaistCircumferenceDataType |
WAIST_CIRCUMFERENCE |
Wymagane |
DataType.WeightDataType |
WEIGHT |
Wymagane |
IntervalData typu:
DataType.ActiveEnergyDataType |
ACTIVE_ENERGY_BURNED |
Wymagane |
DataType.ActiveTimeDataType |
ACTIVE_TIME |
Tylko do odczytu |
DataType.ActivityEventDataType |
ACTIVITY_EVENT |
Wymagane |
DataType.ActivityLapDataType |
ACTIVITY_LAP |
Opcjonalne |
DataType.ActivitySessionDataType |
ACTIVITY_SESSION |
Wymagane |
DataType.BasalEnergyDataType |
BASAL_ENERGY_BURNED |
Tylko do odczytu |
DataType.DistanceDataType |
DISTANCE |
Wymagane |
DataType.ElevationGainedDataType |
ELEVATION_GAINED |
Wymagane |
DataType.FloorsClimbedDataType |
FLOORS_CLIMBED |
Wymagane |
DataType.HydrationDataType |
HYDRATION |
Wymagane |
DataType.NutritionDataType |
NUTRITION |
Opcjonalne |
DataType.RepetitionsDataType |
REPETITIONS |
Wymagane |
DataType.SleepSessionDataType |
SLEEP_SESSION |
Opcjonalne |
DataType.SleepStageDataType |
SLEEP_STAGE |
Wymagane |
DataType.StepsDataType |
STEPS |
Wymagane |
DataType.SwimmingStrokesDataType |
SWIMMING_STROKES |
Wymagane i opcjonalne |
DataType.TotalEnergyDataType |
TOTAL_ENERGY_BURNED |
Tylko do odczytu |
SeriesData typu:
DataType.CyclingPedalingCadenceSeriesDataType |
CYCLING_PEDALING_CADENCE |
Wymagane |
DataType.HeartRateSeriesDataType |
HEART_RATE |
Wymagane |
DataType.LocationSeriesDataType |
LOCATION |
Wymagane |
DataType.PaceSeriesDataType |
PACE |
Wymagane |
DataType.PowerSeriesDataType |
POWER |
Wymagane |
DataType.SpeedSeriesDataType |
SPEED |
Wymagane |
DataType.StepsCadenceSeriesDataType |
STEPS_CADENCE |
Wymagane |
Funkcje dla programistów
Poniżej znajdziesz opis standardowych funkcji danych dostępnych na platformie Health Platform. Platforma udostępnia standardowe funkcje wstawiania, aktualizowania i usuwania danych pierwotnych.
Odczytywanie obiektu AggregatedData
Platforma umożliwia klientom stosowanie funkcji agregacji do tych typów AggregatedData:
StatisticalData:średnie, minimalne lub maksymalne wartości w zbiorzeSampleDatalubSeriesData, np. minimalne i maksymalne tętno podczas sesji aktywności.CumulativeData: suma wartościIntervalData, np. łączna liczba kroków w ciągu dnia.CountData: prosta liczba obiektów bazowychRawData, np. liczba sesji aktywności w danym tygodniu. Dane liczbowe można obliczać dla typów danych próbki, przedziału i serii.
Łączenie z interfejsem Health Platform API
HealthDataClient to punkt wejścia do interfejsu Health Platform API.
Aby połączyć się z Platformą Zdrowia, wykonaj te czynności:
- Użyj kodu
HealthDataService.getClient, aby utworzyć nowe instancjeHealthDataClient. - Aplikacja kliencka musi następnie poprosić użytkownika o zezwolenie za pomocą metody
requestPermissions (Set).
HealthDataClient automatycznie zarządza połączeniem z warstwą pamięci i obsługuje całą komunikację międzyprocesową (IPC) oraz serializację żądań wychodzących i odpowiedzi przychodzących.
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy JavaScript jest wyłączony.
- Aktywne dane i ćwiczenia
- Aktualizacje danych pasywnych
- Korzystanie z Jetpack Compose na Wear OS