Integrità
Aggiornamento più recente | Release stabile | Candidato per la release | Versione beta | Release alpha |
---|---|---|---|---|
14 maggio 2024 | - | 1.0.0-rc02 | - | 1.1.0-alpha03 |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza a Health, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle
per
l'app o il modulo:
Alla moda
dependencies { implementation "androidx.health:health-services-client:1.1.0-alpha03" }
Kotlin
dependencies { implementation("androidx.health:health-services-client:1.1.0-alpha03") }
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se rilevi nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne una nuova. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Health Connect Client versione 1.0
Versione 1.0.0-alpha04
24 agosto 2022
A partire dalla versione 1.0.0-alpha04, androidx.health:health-connect-client
è stata eseguita la migrazione a
androidx.health.connect:connect-client
. Per le release future, utilizza
androidx.health.connect:connect-client
e le note di rilascio associate sulla nostra pagina
Connessione Salute.
Per eseguire la migrazione, modifica semplicemente l'importazione delle dipendenze da
androidx.health:health-connect-client:1.0.0-alpha03
a
androidx.health.connect:connect-client:1.0.0-alpha04
.
Versione 1.0.0-alpha03
27 luglio 2022
androidx.health:health-connect-client:1.0.0-alpha03
viene rilasciato. La versione 1.0.0-alpha03 contiene questi commit.
Nuove funzionalità
- Riepilogo delle nuove modifiche all'API: è stato aggiunto un insieme di unità alle API di lettura, scrittura e aggregazione. Le app ora possono recuperare o scrivere record con l'unità che preferiscono, ad esempio grammi o milligrammi per le sostanze nutrienti
NutritionRecord
.
Modifiche alle API
- Correggi
List<DataOrigin>
in modo che siaSet<DataOrigin>
in vari oggetti di risposta alle richieste. (I42342) - Correggi l'unità di calorie totali basali da Energia - Energia. (I0b429)
- Classi di esempio delle serie spostate nei record di serie (Ica9bb):
CyclingPedalingCadence
->CyclingPedalingCadenceRecord.Sample
HeartRate
->HeartRateRecord.Sample
StepsCadence
->StepsCadenceRecord.Sample
- Ritirare la classe
HealthDataRequestPermission
, a favore diPermissionController.createRequestPermissionActivityContract
; ciò promuove una migliore rilevabilità e una parametrizzazione unificata. (I81e7f) - Sono state aggiunte le once liquide americane al volume. (I5f03d).
- Aggiunta del tipo di unità Velocità (I1d574)
- Tipo di unità Percentuale aggiunto (I08f23)
- Tipo di unità Pressione aggiunto (Ifb01f)
- Tipo di unità di massa aggiunto (Ifd81a)
- Tipo di unità volume aggiunto (I59ad1)
- Tipo di unità di alimentazione aggiunto. Classe di esempio della serie Power spostata all'interno della classe
PowerRecord
. (I5b1e5). - Tipo di unità Energia aggiunta (I983ae)
- Aggiunta del tipo di unità di temperatura (I4cdb5)
- Rinomina i riferimenti all'attività in modo che siano specifici per l'esercizio, incluso (I3f936):
ActivityLap
->ExerciseLapRecord
rinominateActivityEvent
->ExerciseEventRecord
rinominateRepetitions
->ExerciseRepetitionsRecord
rinominateActivitySession
->ExerciseSessionRecord
rinominate
- Metadati del pacchetto spostati nidificati sotto i record. (Ie0835)
- Unità Lunghezza utilizzata in tutti i record rimanenti (Ib10dd):
ActivityLapRecord
ElevationGainedRecord
HeightRecord
HipCircumferenceRecord
WaistCircumferenceRecord
- Tipo di unità Lunghezza aggiunto (Idae39)
- Aggiorna la terminologia descrittiva di
CervicalMucus
(I25a2b):CervicalMucus.Amount
->CervicalMucusRecord.Texture
CervicalMucus.Appearance
->CervicalMucusRecord.Sensation
- Aggiunto il suffisso "Record" a tutti i nomi delle classi di record (I1ffc2)
Correzioni di bug
- Risolvi i problemi relativi a ProGuard quando le lib sono create con la versione flavor e
minifyEnabled
si verifica. (I78933) - Nasconde la documentazione non destinata all'utilizzo pubblico. (I7a08f)
- Risolve il problema nei client che potrebbero avere le proprie dipendenze Protobuf (https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430)
Versione 1.0.0-alpha02
1° giugno 2022
androidx.health:health-connect-client:1.0.0-alpha02
viene rilasciato. La versione 1.0.0-alpha02 contiene questi commit.
Modifiche alle API
- Le versioni deprecate di
hasMetric
egetMetric
inAggregationResult
, sono stati aggiunti gli operatori "contains" e "get" (I7cc7c) - Aggiunge
OvulationTest.Result.HIGH
eOvulationTest.Result.INCONCLUSIVE
. (I9f9c4).
Correzioni di bug
- Riduci i requisiti dell'SDK a 26. (I6d201).
Versione 1.0.0-alpha01
11 maggio 2022
androidx.health:health-connect-client:1.0.0-alpha01
viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.
Nuove funzionalità
- API per la lettura dei record di fitness e salute condivisi da altre app.
- API per la scrittura di record di fitness e salute da condividere con altre app.
- API per recuperare metriche aggregate per i record accessibili.
- API per recuperare le modifiche incrementali (inserimento, aggiornamento o eliminazione) dei record da parte di altre app.
- per richiedere le autorizzazioni sanitarie.
- API per verificare le autorizzazioni o revocare le autorizzazioni di integrità concesse.
Health Services Client versione 1.1
Versione 1.1.0-alpha02
13 dicembre 2023
androidx.health:health-services-client:1.1.0-alpha02
viene rilasciato. La versione 1.1.0-alpha02 contiene questi commit.
Modifiche alle API
- Utilizza un'unica fonte attendibile per gli
ExerciseEvent
supportati. (I03308)
Correzioni di bug
- Correzioni di bug minori e miglioramenti alla documentazione.
Versione 1.1.0-alpha01
9 agosto 2023
androidx.health:health-services-client:1.1.0-alpha01
viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.
Nuove funzionalità
- Sono state aggiunte
ExerciseEvent
API insieme al primo evento concreto:GolfShotEvent
. Le primitiveExerciseEvent
consentono agli sviluppatori di richiedere assistenza e di richiedere di ricevere una notifica quando l'orologio rileva qualcosa. Ad esempio,GolfShotEvent
consente agli sviluppatori di ricevere una notifica quando l'utente effettua un tiro di golf, oltre a ricevere il tipo di swing riconosciuto.
Modifiche alle API
- Consenti ai client dell'SDK WHS di utilizzare le funzionalità di
GolfShotEvent
. (I76b03)
Correzioni di bug
- Invece di lanciare eccezioni in modo aggressivo per la visualizzazione delle funzionalità relative agli eventi di allenamento sconosciute, filtrale dall'elenco. (I06afc)
Health Services Client versione 1.0
Versione 1.1.0-alpha03
14 maggio 2024
androidx.health:health-services-client:1.1.0-alpha03
viene rilasciato. La versione 1.1.0-alpha03 contiene questi commit.
Nuove funzionalità
- Introduzione delle API di
DebouncedGoal
che consentono di monitorare un obiettivo per il tipo di dati di esempio o statistiche per il tipo di dati di esempio durante l'allenamento con funzionalità di debouncing(initialDelay
edurationAtThreshold
). (I09be9) - Sono stati aggiunti i seguenti esempi di metriche di esecuzione avanzate e
DataTypes
statistici. (I0b8b5):Ground Contact Time
Vertical Oscillation
Vertical Ratio
Stride Length
Modifiche alle API
ELEVATION_GAIN_DAILY
DataType
aggiunto. (I059d1)DataType
SWIM_LAP_COUNT_TOTAL
aggiunto comeDataType
aggregato perSWIM_LAP_COUNT
. (I0beeb)
Correzioni di bug
- Risolti vari problemi per migliorare l'affidabilità dell'IPC.
Versione 1.0.0-rc02
3 aprile 2024
androidx.health:health-services-client:1.0.0-rc02
viene rilasciato. La versione 1.0.0-rc02 contiene questi commit. Si tratta di una release disponibile solo per la correzione di bug e non contiene modifiche all'API.
Correzioni di bug
- Risolti vari problemi per migliorare l'affidabilità dell'IPC
- Risolto il problema per cui la chiamata a
startExercise
contemporaneamente aprepareExercise
poteva generare unConcurrentModificationException
(4e37773) - Documentazione migliorata
Versione 1.0.0-rc01
26 luglio 2023
androidx.health:health-services-client:1.0.0-rc01
viene rilasciato. La versione 1.0.0-rc01 contiene questi commit.
Nuove funzionalità
- Health Services è passato a 1.0.0-rc01 dopo essersi stabilizzato in versione beta.
Modifiche alle API
- Sono stati uniti file API pubblici e sperimentali per percorsi hthru m. (Ic4630, b/278769092)
- N/D, le modifiche ai file API sono solo metodi di riordinamento. (I5fa95)
Versione 1.0.0-beta03
5 aprile 2023
androidx.health:health-services-client:1.0.0-beta03
viene rilasciato. La versione 1.0.0-beta03 contiene questi commit.
Nuove funzionalità
Ora è possibile configurare BatchingMode
per inviare dati di allenamento raggruppati all'intervallo configurato anziché al valore predefinito durante un allenamento attivo, all'inizio dell'allenamento tramite ExerciseConfig
o durante con un metodo di override. Il supporto per questa funzionalità verrà attivato da un'imminente release di Health Services nel Google Play Store e può essere controllato tramite le funzionalità per l'allenamento. Nota: le modalità di raggruppamento hanno effetto quando il dispositivo è in uno stato di alimentazione non interattiva e causano un aumento del consumo di energia.
Modifiche alle API
- Generazione di
HealthServicesException
quando la funzione di sospensioneoverrideBatchingModesForActiveExercise
non va a buon fine (Ifd387) - Introduzione delle funzioni di sospensione per l'API di
overrideBatchingModesForActiveExercise
asincrona, che le rende più compatibili con kotlin (I7dd15) - L'override di
BatchingMode
è facoltativo inExerciseConfig
(Id22e9)
Correzioni di bug
DataType
eExerciseUpdate
piccole correzioni (5e185f)
Versione 1.0.0-beta02
11 gennaio 2023
androidx.health:health-services-client:1.0.0-beta02
viene rilasciato. La versione 1.0.0-beta02 contiene questi commit.
Nuove funzionalità
- Sono state aggiunte funzioni di estensione
suspend
per le APIListenableFuture
asincrone esistenti inExerciseClient
,PassiveMonitoringClient
eMeasureClient
per un migliore supporto di Kotlin. (Iadea4). - È stata aggiunta l'API
ExerciseTypeConfig
che consente gli aggiornamenti durante un allenamento in corso. È stato aggiuntoGolfExerciseTypeConfig
per supportare l'aggiornamento diExerciseTypeConfig
durante gli allenamenti di golf. (I4c539)
Modifiche alle API
- Applica
HealthServicesException
alle funzioni di sospensione (I5e509) - Aggiungi un altro costruttore per la compatibilità con le versioni precedenti (Iddeda)
- Attiva
RuntimeException
funzioni di sospensione (I53bca) - Rimuovi l'implementazione predefinita della generazione dell'eccezione (Id947f)
- Aggiunta dell'annotazione
@JvmDefaultWithCompatibility
(I8f206)
Correzioni di bug
- Aggiungi a Kdoc per maggiore chiarezza (Ide285)
- Consenti il monitoraggio passivo per gli obiettivi solo se vengono monitorati anche gli stessi tipi di dati (Ibed8d)
Versione 1.0.0-beta01
24 ottobre 2022
androidx.health:health-services-client:1.0.0-beta01
viene rilasciato. La versione 1.0.0-beta01 contiene questi commit.
Nuove funzionalità
È stata aggiunta la possibilità di ascoltare eventi sanitari fino al giorno
PassiveMonitoringClient
. Il primo evento èHealthEvent.FALL_DETECTED
.Nuovi ExerciseTypes:
ALPINE_SKIING
BACKPACKING
CROSS_COUNTRY_SKIING
HORSE_RIDING
INLINE_SKATING
MOUNTAIN_BIKING
ORIENTEERING
ROLLER_SKATING
YACHTING
Nuovi tipi di dati:
ELEVATION_LOSS
GOLF_SHOT_COUNT
Modifiche alle API
- Modalità di modellazione dei dati aggiornata: il modello dei dati e il modo in cui sono rappresentati i valori
DataType
,DataPoint
e i relativi valori sottostanti. L'impatto principale è che le API ora sono molto più esplicite e sicure di digitazione. - I
DataPoint
di località non sono più rappresentati comeDoubleArray
, ma come oggettiLocationData
con una forte digitazione. - Passaggio a un nuovo insieme di API listener passive:
- La trasmissione è stata sostituita da
PassiveListenerService
. - I listener esistenti sono stati sostituiti con un singolo listener:
PassiveListenerCallback
.
- La trasmissione è stata sostituita da
- È stato aggiunto il tag
<queries>
al file manifest di Health Services, in modo che le applicazioni non debbano più specificarlo nel proprio file manifest (a condizione che la fusione dei manifest sia attivata nel sistema di compilazione). - È stato spostato da molti
ExerciseState
per rappresentare l'allenamento sta terminando / terminato e sono stati aggiunti nuovi stati di allenamentoENDING
eENDED
. Ora questi vengono combinati conExerciseEndReason
per rappresentare l'intera gamma di stati precedenti. PassiveListenerConfig
setPassiveGoals
cambiato insetDailyGoals
per indicare meglio che supportiamo solo obiettivi passivi giornalieri.- I
PassiveGoal
ora sono sempreREPEATED
, il valore passivoTriggerFrequency
è stato rimosso. - Tutti i parametri
Long
eDouble
sono stati annotati con@FloatRange
. - È stata aggiunta la proprietà
swimmingPoolLengthMeters
aExerciseConfig
, che può essere specificata facoltativamente per migliorare i calcoli della distanza per il nuoto in piscina. - Deprecato
ExerciseUpdate.activeDuration
. Usa invece il criterioExerciseUpdate.activeDurationCheckpoint
. - L'API
flushExerciseAsync()
è stata rinominata influshAsync()
inExerciseClient
. Measure.registerCallback
rinominato inMeasure.registerMeasureCallback
.- Modifiche generali alla denominazione:
- Le proprietà della distanza ora hanno il suffisso
meters
. - I nomi dei metodi di callback ora sono passati al passato.
- La maggior parte delle abbreviazioni è stata rimossa (ora
HrAccuracy
èHeartRateAccuracy
). - Le proprietà che seguono il pattern
enableFoo
ora sono denominateisFooEnabled
.
- Le proprietà della distanza ora hanno il suffisso
- Migrazione eseguita da Enum.
- I tempi rappresentati da
Double
sono ora rappresentati daDuration
. - Le funzioni che restituiscono
ListenableFuture<Void?>
ora restituisconoListenableFuture<Void>
. - Le funzioni che accettano un callback ora presentano sempre il callback come ultimo parametro.
- Le classi con builder ora hanno sempre anche costruttori pubblici.
- Le funzioni di registrazione non restituiscono più un
ListenableFuture
, ma passano lo stato di registrazione al callback fornito. - Ora i documenti K sono stati migliorati.
- I corsi pubblici non estendono più
ProtoParcelable
.
Correzioni di bug
- Miglioramenti generali all'affidabilità dell'IPC (I3b1e2)
Versione 1.0.0-alpha03
3 novembre 2021
androidx.health:health-services-client:1.0.0-alpha03
viene rilasciato. La versione 1.0.0-alpha03 contiene questi commit.
Nuove funzionalità
- L'SDK registra automaticamente di nuovo le richieste di registrazione di misura, listener di esercizi e callback di monitoraggio passivo nel caso in cui la connessione IPC venga interrotta con l'APK di Health Services.
Modifiche alle API
- Il valore minSdkVersion della libreria SDK è passato al livello API 30, poiché il client Health Services è attualmente supportato solo su Wear3.
Versione 1.0.0-alpha02
29 settembre 2021
androidx.health:health-services-client:1.0.0-alpha02
viene rilasciato. La versione 1.0.0-alpha02 contiene questi commit.
Modifiche alle API
ExerciseClient
ora supporta la preparazione di un esercizio. In questo modo, i clienti possono riscaldare i sensori e attendere, ad esempio, un sistema GPS per iniziare l'allenamento.- Introduce le classi CumulativeDataPoints e StatisticalDataPoints AggregateDataPoint per modellare meglio le metriche aggregate rilevate durante un allenamento attivo. I valori CumulativeDataPoints contengono i valori cumulativi dei tipi di dati di intervallo aggregati (come la distanza totale durante l'allenamento), mentre il modello StatisticalDataPoints aggrega i punti dati campionati (come il valore minimo, massimo e medio del battito cardiaco B/m). Questo sostituisce i precedenti
AGGREGATE_*
DataType ed è accessibile in ExerciseUpdate tramitegetLatestAggregateMetrics()
.AGGREGATE_*
I tipi di dati non sono più supportati. PassiveMonitoring
Gli eventi sono stati rinominati inPassiveGoals
, che supporta l'impostazione degli obiettivi e la ricezione di notifiche quando questi vengono soddisfatti per tipi di dati quali le metriche giornaliere (ad es. DAILY_STEPS).- Miglioramento della modellazione della precisione e della disponibilità della frequenza cardiaca e della posizione grazie all'introduzione delle nuove classi HrAccuracy, LocationAccuracy e LocationAvailability.
- Miglioramento della denominazione dei campi
ExerciseConfig
e dei nuovi campiPassiveMonitoringConfig
e introduzione diExerciseConfig.shouldEnableGps
per la richiesta di dati supportati dal GPS
Correzioni di bug
- Esegue la migrazione al trasporto IPC basato su protocollo per una migliore compatibilità con le versioni precedenti
Versione 1.0.0-alpha01
18 maggio 2021
androidx.health:health-services-client:1.0.0-alpha01
viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.
Funzionalità della release iniziale
La libreria dei servizi sanitari fornisce per gli sviluppatori un set uniforme di API da integrare con implementazioni di sensori specifiche per i dispositivi. Funziona subito con gli emulatori di Wear OS 3 e con i dispositivi in arrivo, ma in futuro saranno supportate anche altre piattaforme. In questa release iniziale sono incluse tre piattaforme API di primo livello: ExerciseClient
, PassiveMonitoringClient
e MeasureClient
.
ExerciseClient
ExerciseClient
è progettato per le applicazioni che monitorano gli allenamenti attivi, con un massimo di 82 ExerciseType
diverse, dalla camminata alla corsa, alla danza e alla pallanuoto. Durante il rilevamento di questi allenamenti, è disponibile una selezione di 50 DataType
diversi a seconda del tipo di allenamento e dell'hardware disponibile sul dispositivo. Per iniziare, specifica le informazioni pertinenti nel tuo ExerciseConfig
, chiama il numero exerciseClient.startExercise
e ascolta l'avanzamento tramite il listener di aggiornamenti.
PassiveMonitoringClient
PassiveMonitoringClient
è un'ottima scelta se la tua applicazione monitora l'attività dell'utente nell'arco della giornata. Puoi registrare un PendingIntent
con un insieme di DataType
e svegliarti per gestire le modifiche collettive. In alternativa, puoi specificare un Event
, ad esempio il raggiungimento di un determinato numero di passaggi.
MeasureClient
A volte l'utente ha bisogno di misurare, ad esempio, il battito cardiaco nel momento, non durante un allenamento o nel corso della giornata. In questi momenti, MeasureClient
è la scelta perfetta.Devi solo registrare il tuo callback con DataType
supportati per ricevere uno stream di dati e annullare la registrazione del callback quando non è più necessario.