Integridade
Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
14 de maio de 2024 | - | 1.0.0-rc02 | - | 1.1.0-alpha03 |
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.1.0-alpha03" }
Kotlin
dependencies { implementation("androidx.health:health-services-client:1.1.0-alpha03") }
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.1
Versão 1.1.0-alpha02
13 de dezembro de 2023
Lançamento de androidx.health:health-services-client:1.1.0-alpha02
. A versão 1.1.0-alpha02 contém estas confirmações.
Mudanças na API
- Use uma única fonte de verdade para
ExerciseEvent
s com suporte. (I03308).
Correções de bugs
- Pequenas correções de bugs e melhorias na documentação.
Versão 1.1.0-alpha01
9 de agosto de 2023
Lançamento de androidx.health:health-services-client:1.1.0-alpha01
. A versão 1.1.0-alpha01 contém estas confirmações.
Novos recursos
- As APIs
ExerciseEvent
foram adicionadas ao primeiro evento concreto:GolfShotEvent
. Os primitivosExerciseEvent
permitem que os desenvolvedores consultem o suporte e solicitem uma notificação quando o relógio detecta que algo ocorreu.GolfShotEvent
, como exemplo, permite que os desenvolvedores sejam notificados quando o usuário dá uma tacada de golfe, além de receber o tipo de swing reconhecido.
Mudanças na API
- Permitir que os clientes do SDK do WHS usem as funcionalidades do
GolfShotEvent
. (I76b03).
Correções de bugs
- Em vez de gerar exceções sobre recursos desconhecidos de eventos de exercício, filtre-os da lista. (I06afc).
Cliente de Recursos de saúde versão 1.0
Versão 1.1.0-alpha03
14 de maio de 2024
Lançamento de androidx.health:health-services-client:1.1.0-alpha03
. A versão 1.1.0-alpha03 contém these commits.
Novos recursos
- Introdução das APIs
DebouncedGoal
, que permitem monitorar uma meta para o tipo de dados de amostra ou de estatísticas durante o exercício com recursos de rejeição(initialDelay
edurationAtThreshold
). (I09be9). - Adicionamos a amostra de métricas avançadas de execução e a
DataTypes
estatística. (I0b8b5):Ground Contact Time
Vertical Oscillation
Vertical Ratio
Stride Length
Mudanças na API
ELEVATION_GAIN_DAILY
DataType
foi adicionado. (I059d1).- Adição do
DataType
deSWIM_LAP_COUNT_TOTAL
como oDataType
agregado paraSWIM_LAP_COUNT
(I0beeb).
Correções de bugs
- Correção de vários problemas para melhorar a confiabilidade da IPC.
Versão 1.0.0-rc02
3 de abril de 2024
Lançamento de androidx.health:health-services-client:1.0.0-rc02
. A versão 1.0.0-rc02 contém estas confirmações. Esta é uma versão exclusiva para correção de bug e não contém mudanças na API.
Correções de bugs
- Correção de vários problemas para melhorar a confiabilidade da IPC
- Foi corrigido um problema em que chamar
startExercise
ao mesmo tempo queprepareExercise
poderia levar a umaConcurrentModificationException
(4e37773). - Documentação aprimorada
Versão 1.0.0-rc01
26 de julho de 2023
Lançamento de androidx.health:health-services-client:1.0.0-rc01
. A versão 1.1.0-rc01 contém estas confirmações.
Novos recursos
- Os Recursos de saúde foram movidos para a versão 1.0.0-rc01 após se estabilizar na versão Beta.
Mudanças na API
- Arquivos de API públicos e experimentais foram mesclados para h- thru m-paths. (Ic4630, b/278769092).
- N/A. As alterações no arquivo de API são apenas métodos de reordenação. (I5fa95).
Versão 1.0.0-beta03
5 de abril de 2023
Lançamento de androidx.health:health-services-client:1.0.0-beta03
. A versão 1.0.0-beta03 contém estas confirmações.
Novos recursos
O BatchingMode
agora pode ser configurado para enviar dados de exercícios em lote no intervalo configurado, em vez do padrão durante um exercício ativo, seja no início do exercício usando ExerciseConfig
ou durante um método de substituição O suporte a esse recurso será ativado em uma próxima versão dos Recursos de saúde na Google Play Store e poderá ser conferido com as funcionalidades de exercício. Observação: os modos de lote funcionam quando o dispositivo está em um estado de energia não interativo e aumentam o consumo de energia.
Mudanças na API
- Geração de
HealthServicesException
quando a função de suspensãooverrideBatchingModesForActiveExercise
falha (Ifd387). - Introdução de funções de suspensão para a API
overrideBatchingModesForActiveExercise
assíncrona, tornando-as mais compatíveis com o Kotlin (I7dd15). - Substituições de
BatchingMode
são opcionais emExerciseConfig
(Id22e9).
Correções de bugs
- Pequenas correções de
DataType
eExerciseUpdate
(5e185f).
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.