检查功能可用性

当 Health Connect 中添加新功能时,用户可能并不总是会更新其 Health Connect 版本。借助 Feature Availability API,您可以检查 Health Connect 中的功能是否可在用户的设备上使用,并决定要执行哪些操作。

开始使用

Feature Availability API 与 Health Connect SDK 共用相同的依赖项。首先,请验证您的 build.gradle 文件中是否至少包含版本 1.1.0-alpha08

dependencies {
  implementation("androidx.health.connect:connect-client:1.1.0-alpha08")
}

执行检查

用于检查功能可用性的主要函数是 getFeatureStatus()。这会返回整数常量 FEATURE_STATUS_AVAILABLEFEATURE_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
  ...
}

处理功能不可用的情况

如果某项功能在用户的设备上不可用,更新可能会启用该功能。如果用户设备上未安装最新的受支持版本,您可以考虑指引用户更新“健康数据共享”。不过,使用 APK(在 Android 13 及更低版本上)的用户无法使用仅适用于搭载 Android 14 或更高版本的设备的系统模块功能。