当健康数据共享添加新功能时,用户可能不会总是更新其健康数据共享版本。借助功能可用性 API,您可以检查健康数据共享中的某项功能是否在用户的设备上可用,并决定要采取的操作。
开始使用
功能可用性 API 与健康数据共享 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
参考页面。
处理功能不可用的情况
如果某项功能在用户的设备上不可用,更新可能会启用该功能。如果用户设备上安装的健康数据共享不是最新支持的版本,您可以考虑引导用户更新健康数据共享。不过,使用 APK(在 Android 13 及更低版本上)的用户无法使用仅在搭载 Android 14 或更高版本的设备上提供的系统模块功能。