При добавлении новых функций в Health Connect пользователи не всегда могут обновить свою версию Health Connect. API доступности функций — это способ проверить, доступна ли функция Health Connect на устройстве пользователя, и решить, какие действия следует предпринять.
Начать
API доступности функций имеет ту же зависимость, что и Health Connect SDK. Для начала убедитесь, что в вашем файле build.gradle
установлена версия не ниже 1.1.0-alpha08
:
dependencies {
implementation("androidx.health.connect:connect-client:1.1.0-alpha08")
}
Выполнить проверку
Основная функция для проверки доступности функции — getFeatureStatus()
. Она возвращает целочисленные константы FEATURE_STATUS_AVAILABLE
или FEATURE_STATUS_UNAVAILABLE
:
if (healthConnectClient
.features
.getFeatureStatus(
HealthConnectFeatures.FEATURE_READ_HEALTH_DATA_IN_BACKGROUND
) == HealthConnectFeatures.FEATURE_STATUS_AVAILABLE) {
// Feature is available
...
} else {
// Feature is not available
...
}
Список всех доступных флагов функций см. на справочной странице HealthConnectFeatures
.
Устранить нехватку доступных функций
Если функция недоступна на устройстве пользователя, обновление может её включить. Вы можете порекомендовать пользователю обновить Health Connect, если на его устройстве не установлена последняя поддерживаемая версия. Однако пользователи, использующие APK (на Android 13 и ниже), не смогут использовать функции системного модуля, доступные только на устройствах с Android 14 и выше.