應用程式的使用者介面 (UI) 應專注於說明使用「健康資料同步」可帶來的好處,並說明重要概念,以此方式協助使用者增進瞭解與整合作業相關的知識。
使用者體驗 (UX) 必須符合下列三個指導原則:
- 一致性:確保在整個整合程序中保持一致流程。
- 透明度:事先說明「健康資料同步」與應用程式搭配運作的方式。
- 清晰度:協助使用者透過您的應用程式存取「健康資料同步」。
從高層次來看,使用者體驗流程可細分為下列階段:
宣傳「健康資料同步」
在應用程式中宣傳健康資料同步,需視使用者介面採用的使用者體驗模式和慣例而定。
著重於使用者利益
第一次向使用者介紹健康資料同步時,目標應確定為向使用者提供一個運用該整合功能的充分理由。
不要介紹健康資料同步的功能,建議您制定訊息,著重介紹使用者如何從這些功能中獲得好處。
使用清晰明瞭的語言
不要對使用者說「連線至健康資料同步」。這是一種令人困惑的語句,還可能會讓使用者對 Health Connect 大環境中應用程式之間的關係感到錯亂。
使用者體驗應有助於使用者瞭解 Health Connect 與您的應用程式互動的方式,因此請務必思考哪些按鈕標籤最能有助於實現這一目標。
建議您使用「設定」或「開始使用」等動詞詞組,做為按鈕標籤。或者,當您啟動權限檢視畫面時,可以使用更明確的按鈕文字,例如「選擇要分享的資料」。
宣傳「健康資料同步」
以下幾種方式可在應用程式中宣傳「健康資料同步」:
- 在應用程式設定流程中
- 透過應用程式主畫面中的資訊卡
- 透過「設定」畫面中的進入點
- Android 13 以下版本專用的「下載 Android 13 APK」按鈕
- 宣傳新資料類型時
- 更新應用程式時顯示的視窗或對話方塊,與應用程式的設定流程類似
應用程式設定和要求權限流程
主畫面宣傳資訊卡流程
設定
下載 Android 13 APK
開始使用新的資料類型並要求權限
已整合「健康資料同步」的應用程式,除了已獲准的資料類型外,還可以要求存取新的資料類型。
權限畫面應只顯示要求的新資料類型,以免使用者感到困惑。
以下列舉幾個宣傳新資料類型的方法:
重複使用現有慣例
如果應用程式已在其他生態系統中宣傳新資料,建議您在 Android 版「健康資料同步」中也這麼做,並視情況調整語言。
強調價值主張
使用者為什麼要在應用程式中使用這項資料?
- 範例:讀取資料
- 為使用者提供更準確的應用程式洞察資料
- 使用者可以在應用程式中集中查看所有資料
- 範例:寫入資料
- 使用者可以透過手機上其他相容的健康與健身應用程式,存取您應用程式中的這項新資料
提供權限情境資訊
在使用者執行相關操作時提出權限要求,讓對方瞭解應用程式需要取得該權限的原因。
例如:
- 在使用者於應用程式中完成運動後,要求運動路線權限。
- 如果應用程式導入了新權限,請在主畫面以一個宣傳活動一併顯示這些權限。
- 如果應用程式有專屬部分 (例如「睡眠」),請在該處宣傳相應權限。
已撤銷並取消權限
應用程式的「設定」畫面應向使用者說明如何撤銷 Health Connect 資料類型的權限:
存取權限不足
如果應用程式的 Health Connect 存取權不足,所有進入點都會向使用者顯示下列畫面:
權限遭取消兩次
如果使用者在權限要求畫面中連續兩次選取「取消」,應用程式應向使用者顯示類似下方的畫面:
讀取及顯示資料
為了建立信任感,並確保使用者資料讀取正確無誤,請務必向使用者顯示應用程式如何取得資料,也就是來自 DataOrigin
類別的 packageName
屬性。
您可以採用以下兩種方法:
基本歸因
使用者介面 (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 範例中的實作方式。
教育歸因
應用程式應提供直接連結導向 Health Connect 中的「應用程式權限」畫面,方便使用者獲取有關資料來源的資訊。這種歸因類型適用於下列畫面: 活動詳細資料、報表和洞察。
資料同步
如果應用程式與「健康資料同步」的延遲時間夠長,建議應用程式在同步處理資料時顯示這則通知。藉此告知使用者系統正在執行作業,可能需要一段時間才能完成。如果您使用通知進行同步,系統預設會將通知設為低優先順序。
素材資源
產品圖示應使用白色或極淺灰色背景。 如有需要,也可以使用黑色背景上的圖示。
下載下列圖示: