機能の提供状況を確認する

ヘルスコネクトに新機能が追加されても、ユーザーがヘルスコネクトのバージョンを更新するとは限りません。Feature Availability API を使用すると、ヘルスコネクトの機能がユーザーのデバイスで利用可能かどうかを確認し、どのようなアクションを実行するかを決定できます。

始める

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_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 以降を搭載したデバイスでのみ利用可能なシステム モジュール機能を使用できません。