Проверьте доступность функции

При добавлении новых функций в 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 и выше.