当 Health Connect 中添加新功能时,用户可能并不总是会更新其 Health Connect 版本。借助 Feature Availability API,您可以检查 Health Connect 中的某项功能是否可在用户的设备上使用,并决定要执行哪些操作。
开始使用
Feature Availability API 与 Health Connect SDK 共用相同的依赖项。首先,请确认您的 SDK 中是否至少包含 1.1.0-alpha08
版
build.gradle
文件:
dependencies {
implementation("androidx.health.connect:connect-client:1.1.0-alpha08")
}
执行检查
用于检查功能可用性的主要函数是 getFeatureStatus()
。这会返回整数常量 FEATURE_STATUS_AVAILABLE
或 FEATURE_STATUS_UNAVAILABLE
:
if (healthConnectClient
.features
.getFeatureStatus(
HealthConnectFeatures.FEATURE_HEALTH_DATA_BACKGROUND_READ
) == HealthConnectFeatures.FEATURE_STATUS_AVAILABLE) {
// Feature is available
...
} else {
// Feature is not available
...
}
处理没有可用功能的问题
如果用户的设备上无法使用某项功能,则可以通过更新来启用它。您 可以考虑引导用户更新 Health Connect(如果用户未 安装最新的受支持版本。不过,使用 APK(在 Android 13 及更低版本上)的用户无法使用仅适用于搭载 Android 14 或更高版本的设备的系统模块功能。