アプリのユーザー インターフェース(UI)は、ヘルスコネクトを利用するメリットを明確にすることに重点を置き、統合の意味についてユーザーの理解を深められるように、主な概念を説明する必要があります。
ユーザー エクスペリエンス(UX)は、次の 3 つの指針に準拠する必要があります。
- 一貫性: 統合プロセス全体を通してフローを一貫させます。
- 透明性: アプリとヘルスコネクトが連携する仕組みを率直に説明します。
- わかりやすさ: ユーザーがアプリからヘルスコネクトにアクセスできるようにします。
UX フローは、大まかに次のステージに分類できます。
ヘルスコネクトの利用促進
アプリ内でヘルスコネクトを紹介する方法は、UI で確立された UX パターンと規則によって異なります。
ユーザーにとってのメリットに重点を置く
ヘルスコネクトを初めてユーザーに紹介する際は、ユーザーがヘルスコネクトの統合を利用すべき理由について重点的に説明してください。
ヘルスコネクトの機能について説明するのではなく、それらの機能からどのようなメリットが得られるかが伝わるようメッセージを工夫する必要があります。
わかりやすい言葉を使う
「ヘルスコネクトに接続してください」のようにユーザーに要求するのは避けてください。ユーザーが不快に感じる可能性があり、ヘルスコネクト エコシステムでのアプリ間の関係についてユーザーを混乱させる恐れもあります。
ヘルスコネクトとアプリがどのように相互作用するかについて、ユーザーがイメージできるようにする必要があります。そのためには、どのようなボタンラベルが最も効果的かを検討することが重要です。
ボタンラベルに、「セットアップ」や「使ってみる」などのフレーズを表示することを検討してください。権限ビューを表示する際は、「共有するデータを選択してください」のようにより具体的なボタンテキストを使用します。
ヘルスコネクトの利用促進
アプリ内でヘルスコネクトの利用をおすすめする方法をいくつかご紹介します。
- アプリのセットアップ フローの中で表示する
- アプリのホーム画面にカードを表示する
- [設定] 画面内のエントリ ポイントから
- Android 13 以前のバージョン向けの Android 13 APK ダウンロード ボタン
- 新しいデータ型を昇格させる場合
- アプリの更新時にモーダルまたはダイアログを表示する(アプリのセットアップ フローと同様)
アプリのセットアップと権限のリクエスト フロー
ホーム画面のプロモーション カードのフロー
設定
Android 13 APK のダウンロード
新しいデータタイプをオンボーディングして権限をリクエストする
すでにヘルスコネクトとの統合が完了しているアプリは、すでに付与されているデータタイプに加えて、新しいデータタイプをリクエストできます。
ユーザーの混乱を避けるため、権限画面にはリクエストされた新しいデータ型のみを表示する必要があります。
新しいデータ型を昇格させる方法の例を次に示します。
既存の規則を再利用する
アプリがすでに他のエコシステムで新しいデータを宣伝している場合は、Android のヘルスコネクトでも同様の対応を行い、必要に応じて言語を調整することをおすすめします。
価値提案を強調する
ユーザーがアプリでこのデータを使用するメリットは何ですか?
- 例: データの読み取り
- アプリでより正確な分析情報をユーザーに提供する
- ユーザーはアプリ内の 1 か所で全データを確認できる
- 例: データの書き込み
- ユーザーは、アプリの新しいデータをスマートフォンの他の互換性のある健康とフィットネスのアプリと共有できます
権限をコンテキスト化する
ユーザーにとって理にかなうタイミングで新しい権限をリクエストし、ユーザーが何を求められているのかを理解できるようにします。
例:
- アプリでワークアウトを完了したユーザーに、エクササイズ ルートの権限をリクエストします。
- アプリで新しい権限を実装している場合は、ホーム画面の 1 つのプロモーションにまとめて表示します。
- アプリに専用のセクション([睡眠] など)がある場合は、そこで対応する権限を宣伝します。
権限の取り消しとキャンセル
アプリの [設定] 画面で、ヘルスコネクトのデータ型に対する権限を取り消す方法をユーザーに表示する必要があります。
アクセス権が不十分です
アプリのヘルスコネクトへのアクセスが不十分な場合は、すべてのエントリ ポイントで次の画面が表示されます。
権限が 2 回キャンセルされた場合
権限リクエストの画面で「キャンセル」が 2 回続けて選択されると、アプリは次のような画面をユーザーに表示する必要があります。
データの読み取りと表示
信頼を築き、ユーザーのデータが正しく読み取られていることを保証するには、アプリがデータをどのように取得するのかをユーザーに示すことが重要です。これは、DataOrigin
クラスの packageName
プロパティから取得できます。
方法は 2 つあります。
基本的な帰属表示
少なくとも、ユーザー インターフェース(UI)にアプリのソースアイコンと名前を表示する必要があります(アイコンを表示できない場合はアプリ名のみ)。基本的な帰属表示は、ホーム、アクティビティ ログ、アクティビティ詳細の画面に適しています。
適切なアトリビューションをサポートするため、アプリはデータを最初に記録したアプリの名前とアイコンを表示できます。これにより、ユーザーの信頼性が高まり、健康情報の出所が明確になります。
この情報を取得するために、QUERY_ALL_PACKAGES
などの機密情報にかかわる権限をリクエストする必要はありません。次の例は、指定されたパッケージのアプリラベルとアイコンを PackageManager
から取得する方法を示しています。
fun getAppLabelAndIcon(context: Context, packageName: String): Pair<CharSequence?, Drawable?>{
return try {
val pm = context.pacageManager
val appInfo = pm.getApplicationInfo(packageName, 0)
val label = pm.getApplicationLabel(appInfo)
val icon = pm.getApplicationIcon(appInfo)
label to icon
} catch (e: PackageManager.NameNotFoundException){
null to null
}
}
このユーティリティは、アプリ名とアイコンをデータとともに表示することで、適切なアトリビューションを保証します。実装については、HealthConnectManager.kt サンプルをご覧ください。
説明付きの帰属表示
ヘルスコネクトの [アプリの権限] 画面に直接リンクして、ユーザーがデータの出どころに関する情報を簡単に得られるようにする必要があります。この種の帰属表示は、アクティビティの詳細、レポートと分析情報の画面に適しています。
データの同期
アプリとヘルスコネクトとの同期に一定の時間がかかる場合は、データの同期中にアプリでこの通知を表示することを推奨します。これにより、処理が発生していることと、完了に時間がかかることをユーザーに通知します。同期に通知を使用する場合は、デフォルトで優先度が低く設定されている必要があります。
アセット
プロダクト アイコンは、白または非常に薄い灰色の背景で使用する必要があります。必要に応じて、黒い背景でアイコンを使用してもかまいません。
次のアイコンをダウンロードします。