Saúde
Atualização mais recente | Versão estável | Candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
11 de janeiro de 2023 | - | - | 1.0.0-beta02 | - |
Declarar dependências
Para adicionar uma dependência da Health, é preciso adicionar o repositório Maven do Google ao seu projeto. Consulte Repositório Maven do Google para ver mais informações.
Adicione as dependências dos artefatos necessários no arquivo build.gradle
para seu
app ou módulo:
Groovy
dependencies { implementation "androidx.health:health-services-client:1.0.0-beta02" }
Kotlin
dependencies { implementation("androidx.health:health-services-client:1.0.0-beta02") }
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
Cliente da Conexão Saúde: versão 1.0
Versão 1.0.0-alpha04
24 de agosto de 2022
A partir da versão 1.0.0-alpha04, androidx.health:health-connect-client
foi migrado para
androidx.health.connect:connect-client
. Para versões futuras, use o
androidx.health.connect:connect-client
e as notas da versão associadas na nossa
página Conexão Saúde.
Para migrar, basta mudar a importação da dependência de
androidx.health:health-connect-client:1.0.0-alpha03
para
androidx.health.connect:connect-client:1.0.0-alpha04
.
Versão 1.0.0-alpha03
27 de julho de 2022
Lançamento de androidx.health:health-connect-client:1.0.0-alpha03
. A versão 1.0.0-alpha03 contém estas confirmações.
Novos recursos
- Resumo das novas mudanças na API: um conjunto de unidades foi adicionado às APIs agregadas e de leitura e gravação. Os apps agora podem extrair ou gravar registros com a unidade que preferirem, como gramas ou miligramas para nutrientes do
NutritionRecord
.
Mudanças na API
List<DataOrigin>
foi corrigido para serSet<DataOrigin>
em vários objetos de resposta de solicitação (I42342).- A unidade do total de calorias basais de Power->Energy foi corrigida (I0b429).
- As classes de exemplo de séries foram movidas para os registros de série (Ica9bb):
CyclingPedalingCadence
->CyclingPedalingCadenceRecord.Sample
HeartRate
->HeartRateRecord.Sample
StepsCadence
->StepsCadenceRecord.Sample
- A classe
HealthDataRequestPermission
foi descontinuada em favor dePermissionController.createRequestPermissionActivityContract
. Isso melhora a possibilidade de descoberta e parametrização unificada (I81e7f). - A unidade de onças líquidas dos EUA foi adicionada a Volume (I5f03d).
- O tipo de unidade Velocidade foi adicionado (I1d574).
- O tipo de unidade Porcentagem foi adicionado (I08f23).
- O tipo de unidade Pressão foi adicionado (Ifb01f).
- O tipo de unidade Massa foi adicionado (Ifd81a).
- O tipo de unidade Volume foi adicionado (I59ad1).
- O tipo de unidade Potência foi adicionado. A classe de exemplo de séries de Potência foi movida para a classe
PowerRecord
(I5b1e5). - O tipo de unidade Energia foi adicionado (I983ae).
- O tipo de unidade Temperatura foi adicionado (I4cdb5).
- As referências de Atividade foram renomeadas para serem específicas por Exercício, incluindo (I3f936):
- O elemento
ActivityLap
foi renomeado comoExerciseLapRecord
. - O elemento
ActivityEvent
foi renomeado comoExerciseEventRecord
. - O elemento
Repetitions
foi renomeado comoExerciseRepetitionsRecord
. - O elemento
ActivitySession
foi renomeado comoExerciseSessionRecord
.
- O elemento
- Os metadados de pacotes foram aninhados em registros (Ie0835).
- A unidade Comprimento foi usada em todos os registros restantes (Ib10dd):
ActivityLapRecord
ElevationGainedRecord
HeightRecord
HipCircumferenceRecord
WaistCircumferenceRecord
- O tipo de unidade Comprimento foi adicionado (Idae39).
- A terminologia de descrição de
CervicalMucus
foi atualizada (I25a2b):CervicalMucus.Amount
->CervicalMucusRecord.Texture
CervicalMucus.Appearance
->CervicalMucusRecord.Sensation
- O sufixo "Record" foi adicionado a todos os nomes de classe de registro (I1ffc2).
Correções de bugs
- Foram corrigidos problemas do ProGuard em que lib é criado com uma variação de lançamento e
minifyEnabled
está marcado como verdadeiro (I78933). - A documentação não destinada ao uso público foi ocultada (I7a08f).
- O problema de clientes que podem ter as próprias dependências protobuf foi corrigido (https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430).
Versão 1.0.0-alpha02
1º de junho de 2022
Lançamento de androidx.health:health-connect-client:1.0.0-alpha02
. A versão 1.0.0-alpha02 contém estas confirmações.
Mudanças na API
- Os métodos
hasMetric
egetMetric
foram descontinuados emAggregationResult
e os operadores "contains" e "get" foram adicionados (I7cc7c). OvulationTest.Result.HIGH
eOvulationTest.Result.INCONCLUSIVE
foram adicionados (I9f9c4).
Correções de bugs
- Redução dos requisitos do SDK para 26 (I6d201).
Versão 1.0.0-alpha01
11 de maio de 2022
Lançamento de androidx.health:health-connect-client:1.0.0-alpha01
. A versão 1.0.0-alpha01 contém estas confirmações.
Novos recursos
- API para ler registros de saúde e de condicionamento físico compartilhados por outros apps.
- API para gravar registros de saúde e condicionamento físico para compartilhar com outros apps.
- API para recuperar métricas agregadas de registros acessíveis.
- API para recuperar mudanças incrementais (inserir, atualizar ou excluir) de registros por outros apps.
- API para solicitar permissões de saúde aos usuários.
- API para verificar permissões ou revogar permissões concedidas de saúde.
Health Services Client: versão 1.0
Versão 1.0.0-beta02
11 de janeiro de 2023
Lançamento de androidx.health:health-services-client:1.0.0-beta02
. A versão 1.0.0-beta02 contém estas confirmações.
Novos recursos
- Adição de funções de extensão
suspend
para as APIsListenableFuture
assíncronas existentes emExerciseClient
,PassiveMonitoringClient
eMeasureClient
com o objetivo de melhorar o suporte para o Kotlin (Iadea4). - Adição da API
ExerciseTypeConfig
, que permite atualizações durante um exercício. Adição deGolfExerciseTypeConfig
para oferecer suporte à atualização deExerciseTypeConfig
durante exercícios de golfe (I4c539).
Mudanças na API
- Geração de uma
HealthServicesException
em funções de suspensão (I5e509). - Adição de outro construtor para compatibilidade com versões anteriores (Iddeda).
- Geração de uma
RuntimeException
em funções de suspensão (I53bca). - A implementação padrão para gerar exceções foi removida (Id947f).
- A anotação
@JvmDefaultWithCompatibility
foi adicionada (I8f206).
Correções de bugs
- Adição de kdoc para maior clareza (Ide285).
- O rastreamento de monitoramento passivo só vai ser permitido para metas se os mesmos tipos de dados também forem rastreados (Ibed8d).
Versão 1.0.0-beta01
24 de outubro de 2022
Lançamento de androidx.health:health-services-client:1.0.0-beta01
. A versão 1.0.0-beta01 contém estas confirmações.
Novos recursos
Foi adicionada a capacidade de detectar eventos de saúde usando
PassiveMonitoringClient
, com o primeiro evento sendo:HealthEvent.FALL_DETECTED
.Novos ExerciseTypes:
ALPINE_SKIING
BACKPACKING
CROSS_COUNTRY_SKIING
HORSE_RIDING
INLINE_SKATING
MOUNTAIN_BIKING
ORIENTEERING
ROLLER_SKATING
YACHTING
Novos DataTypes:
ELEVATION_LOSS
GOLF_SHOT_COUNT
Mudanças na API
- Atualização da modelagem dos dados: reformulação do modelo de dados e de como
DataType
s,DataPoint
s e os valores subjacentes deles são representados. O impacto de nível mais alto é que as APIs agora são muito mais explícitas e têm segurança de tipo. - Os
DataPoint
s de local não são mais representados como umDoubleArray
, mas como um objetoLocationData
altamente tipado. - Mudança para um novo conjunto de APIs de listener passivo:
- A transmissão foi substituída pelo
PassiveListenerService
. - Os listeners atuais foram substituídos por um único:
PassiveListenerCallback
.
- A transmissão foi substituída pelo
- Foi adicionada a tag
<queries>
ao manifesto dos Recursos de saúde para que os aplicativos não precisem mais especificar isso no próprio manifesto. Isso é possível desde que a fusão do manifesto esteja ativada no sistema de compilação. - Mudança de muitos
ExerciseState
s para representar que o exercício está terminando / terminou e adicionou novos estados de exercícioENDING
eENDED
. Agora, eles são combinados comExerciseEndReason
para representar toda a gama de estados anteriores. - O
PassiveListenerConfig
setPassiveGoals
foi renomeado comosetDailyGoals
para refletir melhor o suporte para as metas passivas diárias. PassiveGoal
s agora são sempreREPEATED
, o passivoTriggerFrequency
foi removido.- Todos os parâmetros
Long
eDouble
foram anotados com@FloatRange
. - A propriedade
swimmingPoolLengthMeters
foi adicionada aExerciseConfig
, que pode ser especificada para calcular melhor a distância de braçadas em piscinas. ExerciseUpdate.activeDuration
foi descontinuada. UseExerciseUpdate.activeDurationCheckpoint
.- A API
flushExerciseAsync()
foi renomeada comoflushAsync()
noExerciseClient
. - O elemento
Measure.registerCallback
foi renomeado comoMeasure.registerMeasureCallback
. - Mudanças gerais de nomenclatura:
- As propriedades de distância agora têm o sufixo
meters
. - Os nomes de métodos de callback agora estão no passado.
- A maioria das abreviações foi removida:
HrAccuracy
agora éHeartRateAccuracy
. - As propriedades que seguem o padrão
enableFoo
agora são chamadas deisFooEnabled
.
- As propriedades de distância agora têm o sufixo
- Migração de tipos enumerados.
- Os horários representados por
Double
agora são representados porDuration
. - As funções que retornavam um
ListenableFuture<Void?>
agora retornam umListenableFuture<Void>
. - Agora, as funções que aceitam um callback sempre têm o callback que aparece como último parâmetro.
- As classes com builders agora sempre têm construtores públicos.
- As funções de registro não retornam mais um
ListenableFuture
e, em vez disso, transmitem o status de registro para o callback fornecido. - Melhorias no KDocs.
- As classes públicas não estendem mais o
ProtoParcelable
.
Correções de bugs
- Melhorias gerais na confiabilidade da IPC (I3b1e2).
Versão 1.0.0-alpha03
3 novembro de 2021
Lançamento de androidx.health:health-services-client:1.0.0-alpha03
. A versão 1.0.0-alpha03 contém estas confirmações.
Novos recursos
- O SDK vai registrar novamente os pedidos de registro de callbacks para monitoramento passivo, listener de exercício e medidas caso a conexão IPC seja interrompida com o APK dos Recursos de saúde.
Mudanças na API
- A minSdkVersion da biblioteca do SDK mudou para a API de nível 30, já que o cliente dos Recursos de saúde só tem suporte no Wear3.
Versão 1.0.0-alpha02
29 de setembro de 2021
Lançamento de androidx.health:health-services-client:1.0.0-alpha02
. A versão 1.0.0-alpha02 contém estas confirmações.
Mudanças na API
- Agora,
ExerciseClient
oferece suporte para a preparação de um exercício. Isso permite que os clientes aqueçam os sensores e aguardem a conclusão de processos como a correção do ponto GPS antes de começarem o exercício. - As classes CumulativeDataPoints, StatisticalDataPoints e AggregateDataPoint foram introduzidas para melhor modelar as métricas agregadas que são monitoradas durante um exercício ativo. A classe CumulativeDataPoints armazena valores cumulativos de tipos de dados de intervalo agregados, como distância total percorrida durante o exercício, ao passo que o modelo de StatisticalDataPoints agrega pontos de dados de amostragem, como HeartRateBpm mínimo, máximo e médio. Isso substitui os DataTypes
AGGREGATE_*
anteriores e pode ser acessado na ExerciseUpdate usando o métodogetLatestAggregateMetrics()
. Não há mais suporte para DataTypesAGGREGATE_*
. - Os eventos
PassiveMonitoring
foram renomeados comoPassiveGoals
, permitindo definir metas e receber notificações quando elas forem cumpridas para alguns tipos dados, como métricas do tipo "Daily" (diárias) (por exemplo, DAILY_STEPS). - A modelagem de precisão e disponibilidade da frequência cardíaca e da localização foi melhorada usando as novas classes HrAccuracy, LocationAccuracy e LocationAvailability.
- Melhoria nos nomes de
ExerciseConfig
, novos camposPassiveMonitoringConfig
e introdução deExerciseConfig.shouldEnableGps
para solicitar dados de GPS.
Correções de bugs
- Migração para o transporte IPC apoiado por proto para oferecer melhor suporte à compatibilidade com versões anteriores.
Versão 1.0.0-alpha01
18 de maio de 2021
Lançamento de androidx.health:health-services-client:1.0.0-alpha01
. A versão 1.0.0-alpha01 contém estas confirmações.
Recursos da versão inicial
A biblioteca Health Services oferece um conjunto uniforme de APIs para que os desenvolvedores se integrem a implementações de sensores específicos do dispositivo. Ela pode ser usada imediatamente com emuladores do Wear OS 3 e dispositivos futuros. Outras plataformas vão receber suporte no futuro. Três superfícies da API de nível superior estão incluídas nesta versão inicial: ExerciseClient
, PassiveMonitoringClient
e MeasureClient
.
ExerciseClient
O ExerciseClient
foi feito para aplicativos que monitoram treinos ativos com até 82 ExerciseType
s diferentes, desde treinos de caminhada e corrida até dança e polo aquático. Ao monitorar esses exercícios, há uma seleção de 50 DataType
s disponíveis, dependendo do tipo de exercício e do hardware disponível no dispositivo. Para começar, especifique as informações relevantes em ExerciseConfig
, chame exerciseClient.startExercise
e detecte o progresso no listener de atualização.
PassiveMonitoringClient
O PassiveMonitoringClient
é uma ótima escolha se o aplicativo monitorar a atividade do usuário ao longo do dia. É possível registrar um PendingIntent
com um conjunto de DataType
s para ser ativado e processar mudanças em lote. Como alternativa, especifique um Event
, como alcançar um determinado número de passos.
MeasureClient
Às vezes, o usuário precisa medir a frequência cardíaca em um determinado momento, não durante um exercício ou ao longo do dia. Nesses momentos, o MeasureClient
é a escolha perfeita. Basta registrar um callback com os DataType
s com suporte para receber um stream de dados e cancelar o callback quando ele não for mais necessário.