Quando vengono aggiunte nuove funzionalità a Health Connect, gli utenti potrebbero non aggiornare sempre la propria versione di Health Connect. L'API Feature Availability è un modo per verificare se una funzionalità di Health Connect è disponibile sul dispositivo dell'utente e decidere quale azione intraprendere.
Inizia
L'API Feature Availability condivide la stessa dipendenza dell'SDK Health Connect. Per iniziare, verifica che nel file build.gradle sia presente almeno la versione 1.1.0-alpha08:
dependencies {
implementation("androidx.health.connect:connect-client:1.2.0-alpha06")
}
Flag funzionalità
I flag di funzionalità disponibili per Health Connect sono elencati nella tabella seguente. La funzionalità dietro un flag di funzionalità non sarà disponibile per l'utilizzo se il dispositivo dell'utente non supporta la funzionalità.
| Flag funzionalità | Tipo di dati | Guide correlate |
|---|---|---|
FEATURE_ACTIVITY_INTENSITY |
Intensità dell'attività |
Allenamenti |
FEATURE_EXTENDED_DEVICE_TYPES |
Tipi di dispositivi estesi |
Requisiti dei metadati |
FEATURE_MATCHMAKING |
Matchmaking | |
FEATURE_PERSONAL_HEALTH_RECORD |
Documenti sanitari |
Formato dei dati della storia clinica Scrivi dati medici Leggi dati medici |
FEATURE_MINDFULNESS_SESSION |
Mindfulness |
Monitora la mindfulness |
FEATURE_PLANNED_EXERCISE |
Allenamento pianificato |
Allenamenti Programmi di allenamento |
FEATURE_READ_HEALTH_DATA_IN_BACKGROUND |
Lettura di dati in background |
Esempio di lettura in background |
FEATURE_READ_HEALTH_DATA_HISTORY |
Leggi i dati storici |
Leggere i dati più vecchi di 30 giorni |
FEATURE_SKIN_TEMPERATURE |
Temperatura cutanea |
Parametri vitali Misura la temperatura cutanea |
Esegui il controllo
La funzione principale per verificare la disponibilità delle funzionalità è getFeatureStatus().
Restituisce le costanti intere FEATURE_STATUS_AVAILABLE o
FEATURE_STATUS_UNAVAILABLE:
FEATURE_READ_HEALTH_DATA_IN_BACKGROUND sul client:
if (healthConnectClient
.features
.getFeatureStatus(
HealthConnectFeatures.FEATURE_READ_HEALTH_DATA_IN_BACKGROUND
) == HealthConnectFeatures.FEATURE_STATUS_AVAILABLE) {
// Feature is available
} else {
// Feature isn't available
}
Per un elenco di tutti i flag di funzionalità disponibili, consulta la pagina di riferimento di HealthConnectFeatures.
Gestisci la mancanza di disponibilità delle funzionalità
Se una funzionalità non è disponibile sul dispositivo di un utente, un aggiornamento potrebbe attivarla. Puoi valutare di indirizzare l'utente ad aggiornare Health Connect se non ha l'ultima versione supportata sul suo dispositivo. Tuttavia, gli utenti che utilizzano l'APK (su Android 13 e versioni precedenti) non possono utilizzare le funzionalità del modulo di sistema disponibili solo sui dispositivi con Android 14 o versioni successive.
Per i tipi di dispositivi estesi, se FEATURE_EXTENDED_DEVICE_TYPES non è disponibile sul dispositivo dell'utente, questi valori vengono trattati come Device.TYPE_UNKNOWN. Fornisci un comportamento di riserva ragionevole nella logica di scrittura e della UI.