アプリにユーザーをオンボーディングするには、次のガイダンスをおすすめします。
アプリのオンボーディング
多くのアプリには機能の説明やユーザーの同意の確認など、カスタムのオンボーディング フローがあります。ユーザーが初めてアプリを使用したときにヘルスコネクトが起動するオンボーディング アクティビティをエクスポートすることを強くおすすめします。そのためにはマニフェストに次の行を追加します。
<!-- Required to support pre-Android 14 devices with APK Health Connect -->
<activity
android:name=".OnboardingActivity"
android:exported="true"
android:permission="com.google.android.apps.healthdata.permission.START_ONBOARDING"
<intent-filter>
<action android:name="androidx.health.ACTION_SHOW_ONBOARDING"/>
</intent-filter>
</activity>
<!-- Required to support Android 14+ devices with platform Health Connect -->
<activity-alias
android:name="UAndAboveOnboardingActivity"
android:exported="true"
android:targetActivity=".OnboardingActivity"
android:permission="android.permission.health.START_ONBOARDING">
<intent-filter>
<action android:name="android.health.connect.action.ACTION_SHOW_ONBOARDING" />
</intent-filter>
</activity-alias>
この機能は Android 14 ではまだ利用できませんが、近日中にリリースされる予定です。
ユーザーがアプリをヘルスコネクトに接続しようとすると、エクスポートされたアクティビティが起動されます。このアクティビティで次のことを行う必要があります。
- 書き込みまたは読み取り対象のデータに関する説明など、関連するユーザー向け情報を表示します。
- 必要な場合はユーザーに同意を求めます。
- ヘルスコネクトへの権限のリクエストを行います。
- 定期的なワーカーのスケジュール設定など、その他のアプリ固有のロジックを実行します。
- 完了後、ユーザーがアクティビティを閉じられるようにします。
オンボーディング アクティビティをエクスポートしていないアプリの場合、ユーザーがアプリを接続しようとするとヘルスコネクトが [権限の管理] 画面を表示します。アプリの前提条件として、権限さえ付与されていれば統合が機能する場合には、これで問題ありません。
オンボーディング アクティビティは、複数回起動される場合があります。後でユーザーがアプリの権限を取り消して、再度接続した場合などが該当します。