Health Platform API — это Android API, предоставляющий разработчикам единый интерфейс для чтения, записи и обмена историческими данными о здоровье, самочувствии и физической активности пользователей. С помощью Health Platform пользователи контролируют свои данные. Пользователи определяют, какие приложения имеют доступ на чтение или запись к различным типам данных. Типы данных Health Platform API включают рост, частоту сердечных сокращений и многое другое.
API платформы здоровья предоставляет пользователям механизм хранения и обмена данными, позволяющий выбирать, какие приложения могут получать доступ к их личным данным о здоровье, физической активности и самочувствии и отображать их. Это, в свою очередь, позволяет разработчикам приложений показывать пользователям более полную картину их здоровья и более эффективно отслеживать свои данные.
Комплект разработчика программного обеспечения Health Platform API предоставляет разработчикам приложений для Android все необходимое для обеспечения доступа к данным о здоровье и самочувствии пользователя на некоторых устройствах Samsung, а также позволяет приложениям выполнять пакетные операции, такие как добавление, удаление и чтение данных.
Начните
При использовании платформы Health Platform следует учитывать следующие моменты:
- Клиентские приложения должны получать от пользователя детальные разрешения на чтение и запись.
- Пользователь может запретить или отозвать разрешения в любой момент после этого.
- API платформы здравоохранения поддерживает только некоторые устройства Samsung.
-
HealthDataClient— это клиентское приложение для платформы Health Platform и точка входа в эту платформу.
На следующем изображении показаны необходимые шаги интеграции, которые должны выполнить разработчики:

Файлы выпуска
В релиз Health Platform V1 входят следующие компоненты:
- Клиентский SDK : Включите этот SDK в свое приложение, чтобы использовать API платформы здравоохранения. SDK представляет собой репозиторий Maven, который вы можете напрямую включить в файлы сборки Gradle вашего приложения.
Установите платформу здравоохранения
Установите платформу Health Platform, выполнив следующие шаги:
В корневой файл build.gradle приложения добавьте репозиторий, как показано в следующем примере:
allprojects {
. . .
repositories {
. . .
google()
}
}
Добавьте зависимость от Health Platform SDK в файл build.gradle вашего модуля, как показано в следующем примере:
Котлин
зависимости { . . . реализация("com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01") }
Классный
зависимости { . . . реализация 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01' }
Данные
Платформа Health Platform хранит и структурирует данные о здоровье и физической активности. Она также учитывает основные различия в способах измерения данных разных типов. Например, измерение частоты сердечных сокращений производится немедленно, а подсчет шагов — в течение определенного периода времени.
Вот основные объекты платформы Health Platform и их различия:
-
RawData: запись измерений и данных. -
DataType: спецификатор для распространенных типов данных о здоровье и физической форме, таких как частота сердечных сокращений, процент жира в организме или температура тела, а также их форматов, например, поля, только для чтения или необязательные поля. -
SampleData: объектRawData, представляющий собой мгновенное измерение, такое как частота сердечных сокращений, артериальное давление или скорость бега. -
IntervalData: объектRawData, представляющий собой кумулятивное измерение, проведенное за определенный период времени, например, количество пройденных шагов, пройденное расстояние или сожженные калории. -
SeriesData: объектRawData, который инкапсулирует последовательность измерений за определенный период времени.SeriesDataособенно подходит для высокочастотных данных с датчиков, таких как непрерывные измерения частоты сердечных сокращений во время тренировки.
Каждый из трех классов RawData соответствует определенному подклассу DataType : SampleData , IntervalData и SeriesData соответствуют классам SampleDataType , IntervalDataType и SeriesDataType соответственно.
При добавлении каждого объекта RawData платформа Health Platform присваивает ему уникальный идентификатор (UID). Этот UID можно использовать для ссылки на конкретный объект RawData в запросах на чтение, обновление или удаление.
Типы данных
Платформа Health Platform включает в себя широкий набор типов данных, широко используемых в приложениях для здоровья и фитнеса. Данные, хранящиеся в доступных типах данных, предоставляют пользователям исчерпывающую информацию об их истории здоровья, физической активности и самочувствия, позволяя получить представление об их повседневной деятельности.
Каждый тип данных определяется своим форматом, который включает в себя следующее:
- Поля: специфические или общие поля, связанные с типом данных. Например, тип данных «Насыщение крови кислородом (SpO2)» включает такие поля, как «Заголовок», «Примечания» и «Процент».
- Тип: long, double, string или enum.
- Атрибут: только для чтения, обязательный, необязательный или диапазон проверки.
Список типов данных
Чтобы максимально эффективно использовать платформу Health Platform, ознакомьтесь с доступными типами данных. Health Platform поддерживает типы данных, представленные в следующей таблице. Типы данных организованы в соответствии с их форматом: выборочные, интервальные или рядные.
Типы SampleData :
DataType.BasalMetabolicRateDataType | BASAL_METABOLIC_RATE | Необходимый |
DataType.BloodGlucoseDataType | BLOOD_GLUCOSE | Обязательные и необязательные |
DataType.BloodPressureDataType | BLOOD_PRESSURE | Обязательные и необязательные |
DataType.BodyFatDataType | BODY_FAT | Необходимый |
DataType.BodyTemperatureDataType | BODY_TEMPERATURE | Обязательные и необязательные |
DataType.BoneMassDataType | BONE_MASS | Необходимый |
DataType.CervicalMucusDataType | CERVICAL_MUCUS | Необязательный |
DataType.CervicalPositionDataType | CERVICAL_POSITION | Необязательный |
DataType.CyclingPedalingCadenceDataType | CYCLING_PEDALING_CADENCE | Необходимый |
DataType.DateOfBirthDataType | DATE_OF_BIRTH | Только для чтения |
DataType.GenderDataType | GENDER | Только для чтения |
DataType.HeartRateDataType | HEART_RATE | Необходимый |
DataType.HeightDataType | HEIGHT | Необходимый |
DataType.HipCircumferenceDataType | HIP_CIRCUMFERENCE | Необходимый |
DataType.HrvDifferentialIndexDataType | HRV_DIFFERENTIAL_INDEX | Необходимый |
DataType.HrvRmssdDataType | HRV_RMSSD | Необходимый |
DataType.HrvSDataType | HRV_S | Необходимый |
DataType.HrvSd2DataType | HRV_SD2 | Необходимый |
DataType.HrvSdannDataType | HRV_SDANN | Необходимый |
DataType.HrvSdnnDataType | HRV_SDNN | Необходимый |
DataType.HrvSdnnIndexDataType | HRV_SDNN_INDEX | Необходимый |
DataType.HrvSdnnIndexDataType | HRV_SDNN_INDEX | Необходимый |
DataType.HrvSdsdDataType | HRV_SDSD | Необходимый |
DataType.HrvTinnDataType | HRV_TINN | Необходимый |
DataType.LeanBodyMassDataType | LEAN_BODY_MASS | Необходимый |
DataType.LocationDataType | LOCATION | Необходимый |
DataType.MenstruationDataType | MENSTRUATION | Необязательный |
DataType.OvulationTestDataType | OVULATION_TEST | Необходимый |
DataType.OxygenSaturationDataType | OXYGEN_SATURATION | Необходимый |
DataType.PaceDataType | PACE | Необходимый |
DataType.PowerDataType | POWER | Необходимый |
DataType.RespiratoryRateDataType | RESPIRATORY_RATE | Необходимый |
DataType.RestingHeartRateDataType | RESTING_HEART_RATE | Необходимый |
DataType.SexualActivityDataType | SEXUAL_ACTIVITY | Необходимый |
DataType.SpeedDataType | SPEED | Необходимый |
DataType.StepsCadenceDataType | STEPS_CADENCE | Необходимый |
DataType.Vo2MaxDataType | VO2_MAX | Обязательные и необязательные |
DataType.WaistCircumferenceDataType | WAIST_CIRCUMFERENCE | Необходимый |
DataType.WeightDataType | WEIGHT | Необходимый |
Типы IntervalData :
DataType.ActiveEnergyDataType | ACTIVE_ENERGY_BURNED | Необходимый |
DataType.ActiveTimeDataType | ACTIVE_TIME | Только для чтения |
DataType.ActivityEventDataType | ACTIVITY_EVENT | Необходимый |
DataType.ActivityLapDataType | ACTIVITY_LAP | Необязательный |
DataType.ActivitySessionDataType | ACTIVITY_SESSION | Необходимый |
DataType.BasalEnergyDataType | BASAL_ENERGY_BURNED | Только для чтения |
DataType.DistanceDataType | DISTANCE | Необходимый |
DataType.ElevationGainedDataType | ELEVATION_GAINED | Необходимый |
DataType.FloorsClimbedDataType | FLOORS_CLIMBED | Необходимый |
DataType.HydrationDataType | HYDRATION | Необходимый |
DataType.NutritionDataType | NUTRITION | Необязательный |
DataType.RepetitionsDataType | REPETITIONS | Необходимый |
DataType.SleepSessionDataType | SLEEP_SESSION | Необязательный |
DataType.SleepStageDataType | SLEEP_STAGE | Необходимый |
DataType.StepsDataType | STEPS | Необходимый |
DataType.SwimmingStrokesDataType | SWIMMING_STROKES | Обязательные и необязательные |
DataType.TotalEnergyDataType | TOTAL_ENERGY_BURNED | Только для чтения |
Типы SeriesData :
DataType.CyclingPedalingCadenceSeriesDataType | CYCLING_PEDALING_CADENCE | Необходимый |
DataType.HeartRateSeriesDataType | HEART_RATE | Необходимый |
DataType.LocationSeriesDataType | LOCATION | Необходимый |
DataType.PaceSeriesDataType | PACE | Необходимый |
DataType.PowerSeriesDataType | POWER | Необходимый |
DataType.SpeedSeriesDataType | SPEED | Необходимый |
DataType.StepsCadenceSeriesDataType | STEPS_CADENCE | Необходимый |
Функции разработчика
Ниже описан набор стандартных функций работы с данными, доступных в рамках платформы Health Platform. Платформа предоставляет стандартные функции вставки, обновления и удаления исходных данных.
Прочитать агрегированные данные
Платформа позволяет клиентам применять функцию агрегирования к следующим типам AggregatedData :
-
StatisticalData: средние, минимальные или максимальные значения в набореSampleDataилиSeriesData, например, минимальная и максимальная частота сердечных сокращений во время тренировки. -
CumulativeData: сумма значенийIntervalData, например, общее количество шагов за суточный интервал. -
CountData: подсчет количества базовых объектовRawData, например, количества сессий активности за данную неделю. Данные Count могут быть вычислены для типов данных sample, interval и series.
Подключитесь к API платформы здравоохранения
HealthDataClient — это точка входа в API платформы здравоохранения.
Следующие шаги описывают, как подключиться к платформе здравоохранения:
- Используйте
HealthDataService.getClientдля создания новых экземпляровHealthDataClient. - Затем клиентское приложение должно запросить у пользователя разрешение, используя метод
requestPermissions (Set).
HealthDataClient автоматически управляет своим соединением с нижележащим уровнем хранения данных и обрабатывает все межпроцессные взаимодействия (IPC), а также сериализацию исходящих запросов и входящих ответов.
Рекомендуем вам
- Примечание: текст ссылки отображается, когда JavaScript отключен.
- Активные данные и упражнения
- Пассивные обновления данных
- Используйте Jetpack Compose на Wear OS