Integrità

  
Crea applicazioni di integrità ad alte prestazioni in modo indipendente dalla piattaforma.
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.

Crea un nuovo problema

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 sia Set<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 di PermissionController.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 rinominate
    • ActivityEvent -> ExerciseEventRecord rinominate
    • Repetitions -> ExerciseRepetitionsRecord rinominate
    • ActivitySession -> 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 e getMetric in AggregationResult, sono stati aggiunti gli operatori "contains" e "get" (I7cc7c)
  • Aggiunge OvulationTest.Result.HIGH e OvulationTest.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 primitive ExerciseEvent 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 e durationAtThreshold). (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 come DataType aggregato per SWIM_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 a prepareExercise poteva generare un ConcurrentModificationException (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 sospensione overrideBatchingModesForActiveExercise 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 in ExerciseConfig (Id22e9)

Correzioni di bug

  • DataType e ExerciseUpdate 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 API ListenableFuture asincrone esistenti in ExerciseClient, PassiveMonitoringClient e MeasureClient per un migliore supporto di Kotlin. (Iadea4).
  • È stata aggiunta l'API ExerciseTypeConfig che consente gli aggiornamenti durante un allenamento in corso. È stato aggiunto GolfExerciseTypeConfig per supportare l'aggiornamento di ExerciseTypeConfig 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 come DoubleArray, ma come oggetti LocationData 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.
  • È 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 allenamento ENDING e ENDED. Ora questi vengono combinati con ExerciseEndReason per rappresentare l'intera gamma di stati precedenti.
  • PassiveListenerConfig setPassiveGoals cambiato in setDailyGoals per indicare meglio che supportiamo solo obiettivi passivi giornalieri.
  • I PassiveGoal ora sono sempre REPEATED, il valore passivo TriggerFrequency è stato rimosso.
  • Tutti i parametri Long e Double sono stati annotati con @FloatRange.
  • È stata aggiunta la proprietà swimmingPoolLengthMeters a ExerciseConfig, che può essere specificata facoltativamente per migliorare i calcoli della distanza per il nuoto in piscina.
  • Deprecato ExerciseUpdate.activeDuration. Usa invece il criterio ExerciseUpdate.activeDurationCheckpoint.
  • L'API flushExerciseAsync() è stata rinominata in flushAsync() in ExerciseClient.
  • Measure.registerCallback rinominato in Measure.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 denominate isFooEnabled.
  • Migrazione eseguita da Enum.
  • I tempi rappresentati da Double sono ora rappresentati da Duration.
  • Le funzioni che restituiscono ListenableFuture<Void?> ora restituiscono ListenableFuture<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 tramite getLatestAggregateMetrics(). AGGREGATE_* I tipi di dati non sono più supportati.
  • PassiveMonitoring Gli eventi sono stati rinominati in PassiveGoals, 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 campi PassiveMonitoringConfig e introduzione di ExerciseConfig.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.