Health Platform API to interfejs API dla Androida, który zapewnia deweloperom interfejs do czytania, pisania i udostępniania historycznych informacji o stanie zdrowia, samopoczuciu i dane fitness. Dzięki Health Platform użytkownicy mają kontrolę nad swoimi danymi. Użytkownicy kontrolować, które aplikacje mają uprawnienia do odczytu i zapisu różnych typów danych. Stan Typy danych interfejsu Platform API obejmują wzrost, tętno i inne.
Health Platform API zapewnia użytkownikom mechanizm przechowywania i udostępniania, wybrać aplikacje, które będą mogły wyświetlać informacje o zdrowiu, aktywności fizycznej i danych o samopoczuciu. Dzięki temu deweloperzy aplikacji mogą wyświetlać użytkownikom pełniejszy obraz o użytkownikach i pozwala użytkownikom skuteczniej monitorować ich dane.
Zestaw dla programistów Health Platform API daje deweloperom aplikacji na Androida wszystko, czego potrzebują, aby zapewnić dostęp do danych o zdrowiu i samopoczuciu użytkownika wybranych urządzeniach Samsung, pozwala to aplikacjom wykonywać operacje zbiorcze na przykład wstawiania, usuwania i odczytywania danych.
Rozpocznij
Korzystając z Health Platform, pamiętaj o tych kwestiach:
- Aplikacje klienckie muszą uzyskać szczegółowe uprawnienia dostępu użytkownika do odczytu i zapisu.
- Użytkownik może w każdej chwili odmówić przyznania uprawnień lub je odebrać.
- Health Platform API obsługuje tylko wybrane urządzenia Samsung.
HealthDataClient
jest klientem platformy Health i punktem wejścia do tej platformy.
Ten obraz przedstawia niezbędne kroki integracji, które muszą wykonać deweloperzy:
Pliki wersji
Wersja 1 Health Platform zawiera te elementy:
- Pakiet SDK klienta: Aby korzystać z Interfejs Health Platform API. SDK to repozytorium Maven, które możesz bezpośrednio dołączyć plików kompilacji aplikacji za pomocą Gradle.
Zainstaluj platformę Health
Aby zainstalować Health Platform, wykonaj te czynności:
W pliku build.gradle
głównym aplikacji dodaj repozytorium w sposób opisany poniżej
przykład:
allprojects {
...
repositories {
...
google()
}
}
Dodaj zależność od pakietu SDK Health Platform w build.gradle
modułu.
zgodnie z poniższym przykładem:
dependencies {
…
implementation 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01'
}
Dane
Health Platform przechowuje i strukturuje dane o zdrowiu i aktywności fizycznej. Uwzględnia też podstawowe różnice w sposobie pomiaru danych różnych typów. Na przykład plik pomiar tętna jest wykonywany natychmiast, ale liczba kroków jest mierzona na okresu.
Oto główne obiekty na platformie Health Platform i różnice między nimi:
RawData
: zapis pomiarów i danych.DataType
: specyfikator popularnych typów danych o zdrowiu i aktywności fizycznej, takich jak tętno, tkankę tłuszczową, temperaturę ciała oraz ich formaty, takie jak tylko do odczytu lub opcjonalne.SampleData
: obiektRawData
, który umożliwia natychmiastowy pomiar, np. takie jak tętno, ciśnienie krwi czy prędkość biegu.IntervalData
: obiektRawData
, który jest skumulowanym pomiarem. w jakimś okresie, np. liczba zrobionych kroków, przebyta odległość spalone kalorie.SeriesData
: obiektRawData
zawierający sekwencję pomiarów w danym okresie. AplikacjaSeriesData
szczególnie nadaje się dla: danych z czujników o wysokiej częstotliwości, takich jak ciągłe próbki tętna, aktywności.
Każda z trzech klas RawData
odpowiada konkretnej podklasie
DataType
: SampleData
, IntervalData
i SeriesData
odpowiadają
SampleDataType
, IntervalDataType
i SeriesDataType
.
Każdy obiekt RawData
ma przypisany unikalny identyfikator (UID) przez Health
Platforma po włożeniu. Możesz użyć tego identyfikatora UID, aby odwołać się do konkretnego RawData
obiektem w żądaniach odczytu, aktualizacji lub usunięcia.
Typy danych
Health Platform obejmuje wiele typów danych często używanych aplikacje związane ze zdrowiem i aktywnością fizyczną. Dane przechowywane za pomocą dostępnych typów danych zapewniają użytkownikom z pełnym wglądem w dane historyczne dotyczące ich zdrowia, sprawności fizycznej i samopoczucia, dając im wgląd w codzienną aktywność.
Każdy typ danych jest definiowany przez jego format danych, który obejmuje te elementy:
- Pola: konkretne lub ogólne pola powiązane z typem danych. Dla: np. typ danych o nasyceniu krwi tlenem (SpO2) zawiera pola takie jak Tytuł, Uwagi i Procent.
- Typ: long, double, string lub enum.
- Atrybut:tylko do odczytu, wymagany, opcjonalny lub zakres weryfikacji.
Lista typów danych
Poznaj dostępne typy danych, aby w pełni wykorzystać możliwości platformy Health Platform. Health Platform obsługuje typy danych przedstawione w tabeli poniżej. Typy danych są uporządkowane według formatu: próbka, interwał lub serii.
SampleData
typów:
DataType.BasalMetabolicRateDataType |
BASAL_METABOLIC_RATE |
Wymagane |
DataType.BloodGlucoseDataType |
BLOOD_GLUCOSE |
Wymagany i opcjonalny |
DataType.BloodPressureDataType |
BLOOD_PRESSURE |
Wymagany i opcjonalny |
DataType.BodyFatDataType |
BODY_FAT |
Wymagane |
DataType.BodyTemperatureDataType |
BODY_TEMPERATURE |
Wymagany i opcjonalny |
DataType.BoneMassDataType |
BONE_MASS |
Wymagane |
DataType.CervicalMucusDataType |
CERVICAL_MUCUS |
Opcjonalny |
DataType.CervicalPositionDataType |
CERVICAL_POSITION |
Opcjonalnie |
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 |
Opcjonalnie |
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 |
Wymagany i opcjonalny |
DataType.WaistCircumferenceDataType |
WAIST_CIRCUMFERENCE |
Wymagane |
DataType.WeightDataType |
WEIGHT |
Wymagane |
IntervalData
typów:
DataType.ActiveEnergyDataType |
ACTIVE_ENERGY_BURNED |
Wymagane |
DataType.ActiveTimeDataType |
ACTIVE_TIME |
Tylko do odczytu |
DataType.ActivityEventDataType |
ACTIVITY_EVENT |
Wymagane |
DataType.ActivityLapDataType |
ACTIVITY_LAP |
Opcjonalnie |
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 |
Opcjonalnie |
DataType.RepetitionsDataType |
REPETITIONS |
Wymagane |
DataType.SleepSessionDataType |
SLEEP_SESSION |
Opcjonalnie |
DataType.SleepStageDataType |
SLEEP_STAGE |
Wymagane |
DataType.StepsDataType |
STEPS |
Wymagane |
DataType.SwimmingStrokesDataType |
SWIMMING_STROKES |
Wymagany i opcjonalny |
DataType.TotalEnergyDataType |
TOTAL_ENERGY_BURNED |
Tylko do odczytu |
SeriesData
typów:
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 programistyczne
Poniżej opisujemy zbiór standardowych funkcji danych dostępnych w ramach Health Platform. Platforma udostępnia standardowe funkcje wstawiania, aktualizowania i usuwania dla nieprzetworzonych danych.
Odczytywanie danych zagregowanych
Platforma pozwala klientom stosować funkcję agregacji w przypadku tych typów danych:
AggregatedData
:
StatisticalData
: wartość średnia, minimalna i maksymalna w zestaw wartościSampleData
lubSeriesData
takich jak minimalne i maksymalne tętno w trakcie sesji aktywności.CumulativeData
: suma wartościIntervalData
, takich jak łączną liczbę kroków w przedziale dziennym.CountData
: prosta liczba wartościRawData
. takie jak liczba sesji aktywności w danym tygodniu. Dane liczbowe można obliczyć dla typów danych próbek, przedziałów i serii.
Łączenie z interfejsem Health Platform API
HealthDataClient
to punkt wejścia do interfejsu Health Platform API.
Aby połączyć się z Health Platform, wykonaj te czynności:
- Użyj narzędzia
HealthDataService.getClient
, aby utworzyć nowe instancjeHealthDataClient
. - Aplikacja kliencka musi następnie poprosić użytkownika o przyznanie uprawnień za pomocą
Metoda
requestPermissions (Set)
.
HealthDataClient
automatycznie zarządza połączeniem z bazą danych
warstwa pamięci masowej i obsługuje całą komunikację międzyprocesową (IPC) oraz serializację żądań wychodzących.
odpowiedzi przychodzących.
Polecane dla Ciebie
- Uwaga: tekst linku wyświetla się, gdy JavaScript jest wyłączony
- Aktywne dane i ćwiczenia
- Pasywne aktualizacje danych
- Korzystanie z Jetpack Compose na Wear OS