Ela é uma API do Android que oferece aos desenvolvedores uma única interface para ler, gravar e compartilhar dados de saúde, bem-estar e condicionamento físico de um usuário. Com a Health Platform, os usuários têm controle sobre os próprios dados. Eles controlam quais apps têm acesso de leitura ou gravação a diferentes tipos de dados. Os tipos de dados da API Health Platform incluem altura, frequência cardíaca e muitos outros.
A API Health Platform oferece aos usuários um mecanismo de armazenamento e compartilhamento que permite selecionar quais apps podem acessar e mostrar dados pessoais de saúde, condicionamento físico e bem-estar. Assim, os desenvolvedores de apps podem mostrar um panorama mais completo da saúde do usuário, e os usuários podem monitorar os próprios dados de maneira mais eficaz.
O kit de desenvolvimento de software da API Health Platform inclui tudo o que os desenvolvedores de apps Android precisam para acessar os dados de saúde e bem-estar de um usuário em alguns dispositivos Samsung, além de permitir que os apps executem operações em massa, como inserção, exclusão e leitura dados.
Primeiros passos
Ao usar a Health Platform, lembre-se do seguinte:
- Os apps clientes precisam de permissões granulares do usuário para ter acesso de leitura ou gravação.
- O usuário pode negar ou revogar permissões quando quiser.
- A API Health Platform oferece suporte apenas para alguns dispositivos Samsung.
HealthDataClient
é o cliente da Health Platform e um ponto de entrada para essa API.
A imagem abaixo mostra as etapas de integração que os desenvolvedores precisam seguir:
Arquivos da versão
A versão V1 da Health Platform contém o seguinte:
- SDK do cliente: inclua esse SDK no seu aplicativo para usar a API Health Platform. O SDK é um repositório Maven que pode ser incluído diretamente nos arquivos de build do Gradle do seu app.
Instalar a Health Platform
Para instalar a Health Platform, siga estas etapas:
No arquivo raiz build.gradle
do app, adicione o repositório, conforme mostrado no exemplo
a seguir:
allprojects {
...
repositories {
...
google()
}
}
Adicione uma dependência ao SDK da Health Platform no arquivo build.gradle
do módulo, como mostrado no exemplo a seguir:
dependencies {
…
implementation 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01'
}
Dados
A Health Platform armazena e estrutura dados de saúde e condicionamento físico. Ela também considera as principais diferenças entre as formas de medir alguns tipos de dados. Por exemplo, a medição de frequência cardíaca é imediata, enquanto a contagem de passos é realizada ao longo de um período.
Confira abaixo os principais objetos da Health Platform e as diferenças entre eles:
RawData
: registro de dados e medições.DataType
: especificador de tipos comuns de dados de saúde e condicionamento físico, como frequência cardíaca, gordura corporal ou temperatura corporal, e de formatos de dados, como campos, somente leitura ou opcionais.SampleData
: objetoRawData
que equivale a uma medida instantânea, como frequência cardíaca, pressão arterial ou velocidade de corrida.IntervalData
: objetoRawData
que equivale a uma medida cumulativa ao longo de um período, como número de passos, distância percorrida ou calorias queimadas.SeriesData
: objetoRawData
que encapsula uma sequência de medidas ao longo de um período. OSeriesData
serve principalmente para dados de sensores de alta frequência, como medições contínuas de frequência cardíaca durante uma sessão de atividade.
Cada uma das três classes RawData
corresponde a uma subclasse específica de
DataType
, ou seja, SampleData
, IntervalData
e SeriesData
correspondem a
SampleDataType
, IntervalDataType
e SeriesDataType
, respectivamente.
Quando inserido, cada objeto
RawData
recebe um identificador exclusivo (UID, na sigla em inglês) da Health
Platform. Esse UID pode ser usado para mencionar um objeto RawData
específico em solicitações de leitura, atualização ou exclusão.
Tipos de dados
A API Health Platform inclui um amplo conjunto de tipos de dados usados com frequência em apps de saúde e condicionamento físico. Os dados armazenados nos tipos disponíveis fornecem ao usuário um panorama abrangente dos próprios dados de saúde, condicionamento físico e bem-estar, proporcionando um entendimento melhor das atividades diárias dele.
Cada tipo de dado é definido pelo formato de dados, que inclui:
- Campos: associados ao tipo de dados, podem ser específicos ou genéricos. Por exemplo, dados de saturação de oxigênio no sangue (SpO2) têm campos como "Título", "Observações" e "Porcentagem".
- Tipo: long, double, string ou enumeração.
- Atributo: somente leitura, obrigatório, opcional ou intervalo de validação.
Lista de tipos de dados
É importante compreender os tipos de dados disponíveis para conseguir aproveitar ao máximo a Health Platform. A Health Platform oferece suporte aos tipos de dados apresentados na tabela abaixo. Eles são organizados de acordo com o formato: amostra, intervalo ou série.
Tipos SampleData
:
DataType.BasalMetabolicRateDataType |
BASAL_METABOLIC_RATE |
Obrigatório |
DataType.BloodGlucoseDataType |
BLOOD_GLUCOSE |
Obrigatório e opcional |
DataType.BloodPressureDataType |
BLOOD_PRESSURE |
Obrigatório e opcional |
DataType.BodyFatDataType |
BODY_FAT |
Obrigatório |
DataType.BodyTemperatureDataType |
BODY_TEMPERATURE |
Obrigatório e opcional |
DataType.BoneMassDataType |
BONE_MASS |
Obrigatório |
DataType.CervicalMucusDataType |
CERVICAL_MUCUS |
Opcional |
DataType.CervicalPositionDataType |
CERVICAL_POSITION |
Opcional |
DataType.CyclingPedalingCadenceDataType |
CYCLING_PEDALING_CADENCE |
Obrigatório |
DataType.DateOfBirthDataType |
DATE_OF_BIRTH |
Somente leitura |
DataType.GenderDataType |
GENDER |
Somente leitura |
DataType.HeartRateDataType |
HEART_RATE |
Obrigatório |
DataType.HeightDataType |
HEIGHT |
Obrigatório |
DataType.HipCircumferenceDataType |
HIP_CIRCUMFERENCE |
Obrigatório |
DataType.HrvDifferentialIndexDataType |
HRV_DIFFERENTIAL_INDEX |
Obrigatório |
DataType.HrvRmssdDataType |
HRV_RMSSD |
Obrigatório |
DataType.HrvSDataType |
HRV_S |
Obrigatório |
DataType.HrvSd2DataType |
HRV_SD2 |
Obrigatório |
DataType.HrvSdannDataType |
HRV_SDANN |
Obrigatório |
DataType.HrvSdnnDataType |
HRV_SDNN |
Obrigatório |
DataType.HrvSdnnIndexDataType |
HRV_SDNN_INDEX |
Obrigatório |
DataType.HrvSdnnIndexDataType |
HRV_SDNN_INDEX |
Obrigatório |
DataType.HrvSdsdDataType |
HRV_SDSD |
Obrigatório |
DataType.HrvTinnDataType |
HRV_TINN |
Obrigatório |
DataType.LeanBodyMassDataType |
LEAN_BODY_MASS |
Obrigatório |
DataType.LocationDataType |
LOCATION |
Obrigatório |
DataType.MenstruationDataType |
MENSTRUATION |
Opcional |
DataType.OvulationTestDataType |
OVULATION_TEST |
Obrigatório |
DataType.OxygenSaturationDataType |
OXYGEN_SATURATION |
Obrigatório |
DataType.PaceDataType |
PACE |
Obrigatório |
DataType.PowerDataType |
POWER |
Obrigatório |
DataType.RespiratoryRateDataType |
RESPIRATORY_RATE |
Obrigatório |
DataType.RestingHeartRateDataType |
RESTING_HEART_RATE |
Obrigatório |
DataType.SexualActivityDataType |
SEXUAL_ACTIVITY |
Obrigatório |
DataType.SpeedDataType |
SPEED |
Obrigatório |
DataType.StepsCadenceDataType |
STEPS_CADENCE |
Obrigatório |
DataType.Vo2MaxDataType |
VO2_MAX |
Obrigatório e opcional |
DataType.WaistCircumferenceDataType |
WAIST_CIRCUMFERENCE |
Obrigatório |
DataType.WeightDataType |
WEIGHT |
Obrigatório |
Tipos IntervalData
:
DataType.ActiveEnergyDataType |
ACTIVE_ENERGY_BURNED |
Obrigatório |
DataType.ActiveTimeDataType |
ACTIVE_TIME |
Somente leitura |
DataType.ActivityEventDataType |
ACTIVITY_EVENT |
Obrigatório |
DataType.ActivityLapDataType |
ACTIVITY_LAP |
Opcional |
DataType.ActivitySessionDataType |
ACTIVITY_SESSION |
Obrigatório |
DataType.BasalEnergyDataType |
BASAL_ENERGY_BURNED |
Somente leitura |
DataType.DistanceDataType |
DISTANCE |
Obrigatório |
DataType.ElevationGainedDataType |
ELEVATION_GAINED |
Obrigatório |
DataType.FloorsClimbedDataType |
FLOORS_CLIMBED |
Obrigatório |
DataType.HydrationDataType |
HYDRATION |
Obrigatório |
DataType.NutritionDataType |
NUTRITION |
Opcional |
DataType.RepetitionsDataType |
REPETITIONS |
Obrigatório |
DataType.SleepSessionDataType |
SLEEP_SESSION |
Opcional |
DataType.SleepStageDataType |
SLEEP_STAGE |
Obrigatório |
DataType.StepsDataType |
STEPS |
Obrigatório |
DataType.SwimmingStrokesDataType |
SWIMMING_STROKES |
Obrigatório e opcional |
DataType.TotalEnergyDataType |
TOTAL_ENERGY_BURNED |
Somente leitura |
Tipos SeriesData
:
DataType.CyclingPedalingCadenceSeriesDataType |
CYCLING_PEDALING_CADENCE |
Obrigatório |
DataType.HeartRateSeriesDataType |
HEART_RATE |
Obrigatório |
DataType.LocationSeriesDataType |
LOCATION |
Obrigatório |
DataType.PaceSeriesDataType |
PACE |
Obrigatório |
DataType.PowerSeriesDataType |
POWER |
Obrigatório |
DataType.SpeedSeriesDataType |
SPEED |
Obrigatório |
DataType.StepsCadenceSeriesDataType |
STEPS_CADENCE |
Obrigatório |
Funções do desenvolvedor
Apresentamos a seguir o conjunto de funções de dados padrão disponíveis na Health Platform. A plataforma oferece funções padrão para inserir, atualizar e excluir dados brutos.
Ler AggregatedData
A plataforma permite que os clientes apliquem uma função de agregação aos tipos de
AggregatedData
abaixo:
StatisticalData
: mostra o valor médio, mínimo ou máximo em um conjunto deSampleData
ouSeriesData
, como a frequência cardíaca mínima e máxima durante uma sessão de atividade.CumulativeData
: informa a soma dos valores deIntervalData
, como a contagem total de passos em um dia.CountData
: mostra uma contagem simples do número de objetosRawData
, como o número de sessões de atividade em uma determinada semana. Os dados de contagem podem ser computados como dados de amostra, intervalo e série.
Conectar o app à API Health Platform
O HealthDataClient
é o ponto de entrada para a API Health Platform.
As etapas a seguir descrevem como se conectar à Health Platform:
- Use
HealthDataService.getClient
para criar novas instâncias deHealthDataClient
. - O app cliente precisa usar o método
requestPermissions (Set)
para pedir a permissão do usuário.
O HealthDataClient
gerencia automaticamente a conexão com a camada de
armazenamento e executa toda a comunicação entre processos (IPC) e a serialização das solicitações enviadas e
das respostas recebidas.
Recomendados para você
- Observação: o texto do link aparece quando o JavaScript está desativado.
- Exercícios e dados de atividade
- Atualizações de dados passivos
- Usar o Jetpack Compose no Wear OS