Health Connect UI 指南

應用程式的使用者介面 (UI) 應專注於說明使用「健康資料同步」可帶來的好處,並說明重要概念,以此方式協助使用者增進瞭解與整合作業相關的知識。

使用者體驗 (UX) 必須符合下列三個指導原則:

  1. 一致性:確保在整個整合程序中保持一致流程。
  2. 透明度:事先說明「健康資料同步」與應用程式搭配運作的方式。
  3. 清晰度:協助使用者透過您的應用程式存取「健康資料同步」。

從高層次來看,使用者體驗流程可細分為下列階段:

健康資料同步使用者體驗流程

宣傳「健康資料同步」

在應用程式中宣傳健康資料同步,需視使用者介面採用的使用者體驗模式和慣例而定。

著重於使用者利益

第一次向使用者介紹健康資料同步時,目標應確定為向使用者提供一個運用該整合功能的充分理由。

不要介紹健康資料同步的功能,建議您制定訊息,著重介紹使用者如何從這些功能中獲得好處。

「健康資料同步」對使用者的好處

使用清晰明瞭的語言

不要對使用者說「連線至健康資料同步」。這是一種令人困惑的語句,還可能會讓使用者對 Health Connect 大環境中應用程式之間的關係感到錯亂。

使用者體驗應有助於使用者瞭解 Health Connect 與您的應用程式互動的方式,因此請務必思考哪些按鈕標籤最能有助於實現這一目標。

建議您使用「設定」或「開始使用」等動詞詞組,做為按鈕標籤。或者,當您啟動權限檢視畫面時,可以使用更明確的按鈕文字,例如「選擇要分享的資料」。

健康資料同步的用語

宣傳「健康資料同步」

以下幾種方式可在應用程式中宣傳「健康資料同步」:

  • 應用程式設定流程
  • 透過應用程式主畫面中的資訊卡
  • 透過「設定」畫面中的進入點
  • Android 13 以下版本專用的「下載 Android 13 APK」按鈕
  • 宣傳新資料類型
  • 更新應用程式時顯示的視窗或對話方塊,與應用程式的設定流程類似

應用程式設定和要求權限流程

設定應用程式並要求權限

主畫面宣傳資訊卡流程

主畫面宣傳流程

設定

有進入點的設定

下載 Android 13 APK

下載 Android 13 APK

開始使用新的資料類型並要求權限

已整合「健康資料同步」的應用程式,除了已獲准的資料類型外,還可以要求存取新的資料類型。

權限畫面應只顯示要求的新資料類型,以免使用者感到困惑。

以下列舉幾個宣傳新資料類型的方法:

重複使用現有慣例

如果應用程式已在其他生態系統中宣傳新資料,建議您在 Android 版「健康資料同步」中也這麼做,並視情況調整語言。

強調價值主張

使用者為什麼要在應用程式中使用這項資料?

  • 範例:讀取資料
    • 為使用者提供更準確的應用程式洞察資料
    • 使用者可以在應用程式中集中查看所有資料
  • 範例:寫入資料
    • 使用者可以透過手機上其他相容的健康與健身應用程式,存取您應用程式中的這項新資料

提供權限情境資訊

在使用者執行相關操作時提出權限要求,讓對方瞭解應用程式需要取得該權限的原因。

例如:

  • 在使用者於應用程式中完成運動後,要求運動路線權限。
  • 如果應用程式導入了新權限,請在主畫面以一個宣傳活動一併顯示這些權限。
  • 如果應用程式有專屬部分 (例如「睡眠」),請在該處宣傳相應權限。

要求新增資料類型

已撤銷並取消權限

應用程式的「設定」畫面應向使用者說明如何撤銷 Health Connect 資料類型的權限:

已撤銷並取消權限

存取權限不足

如果應用程式的 Health Connect 存取權不足,所有進入點都會向使用者顯示下列畫面:

存取權不足的應用程式

權限遭取消兩次

如果使用者在權限要求畫面中連續兩次選取「取消」,應用程式應向使用者顯示類似下方的畫面:

使用者取消權限兩次

讀取及顯示資料

為了建立信任感,並確保使用者資料讀取正確無誤,請務必向使用者顯示應用程式如何取得資料,也就是來自 DataOrigin 類別的 packageName 屬性

您可以採用以下兩種方法:

  1. 基本歸因
  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 範例中的實作方式。

讀取資料的基本歸因

教育歸因

應用程式應提供直接連結導向 Health Connect 中的「應用程式權限」畫面,方便使用者獲取有關資料來源的資訊。這種歸因類型適用於下列畫面: 活動詳細資料、報表和洞察。

資料同步

如果應用程式與「健康資料同步」的延遲時間夠長,建議應用程式在同步處理資料時顯示這則通知。藉此告知使用者系統正在執行作業,可能需要一段時間才能完成。如果您使用通知進行同步,系統預設會將通知設為低優先順序。

顯示資料同步狀態

素材資源

產品圖示應使用白色或極淺灰色背景。 如有需要,也可以使用黑色背景上的圖示。

圖示規範

下載下列圖示:

  • 「健康資料同步」標誌

    下載

  • 健康資料同步標誌 (白色)

    下載