Wear OS 的健康照護服務

Wear OS 3 以上版本提供「健康照護服務」。健康照護服務是裝置上各種感應器和相關演算法的中介平台,為應用程式提供與活動、運動和健康相關的高品質資料。

Health Services API 為 Beta 版,可用於實際工作環境。

如需健身應用程式範例,請參閱 GitHub 上的健康照護服務範例存放區

健康照護服務如何協助應用程式開發人員

如果沒有健康照護服務,應用程式必須連結至一或多個感應器、對每個感應器進行適當設定、接收原始感應器資料,並使用自己的演算法取得有意義的資訊。舉例來說,應用程式可以註冊 Sensor.TYPE_PRESSURE 的更新內容來取得目前的氣壓,用於計算目前的海拔高度並隨時間匯總這些資料,顯示使用者活動時段的海拔高度變化。

健康照護服務會自動根據用途妥善設定所有運動和健康相關感應器、收集感應器資料,以及計算心率、距離、卡路里、海拔高度、樓層、速度、配速等指標。應用程式可以直接從健康照護服務註冊這項資料。

提供健康照護服務

使用健康照護服務的好處包括:

  • 善用平台上原生執行的強大演算法。
  • 使用健康照護服務中的感應器設定,對電池效能進行最佳化處理,節省電池電力。
  • 保障應用程式日後可用於搭載 Wear 3 以上版本的裝置。在所有搭載 Wear 3 以上版本的裝置上,Health Services API 的功能運作均保持一致,可讓應用程式輕鬆維持最新狀態。
  • 使用標準化平台運算,確保同一裝置上所有應用程式的資料一致性。
  • 啟用活動感知體驗,包括偵測從其他應用程式啟動的進行中運動。

這些優勢可讓開發人員專注於開發獨特的功能和使用者體驗,同時藉助平台以節能方式提供可靠且一致的指標。

健康照護服務概念

透過健康照護服務進行開發作業時,請留意下列概念。

資料類型

健康照護服務會提供多種資料,並透過裝置所有可用來源收集並持續更新這些資料。這些資料分為兩大類別:在單一時間點取樣的資料 (例如 HEART_RATE_BPM),以及每個時間間隔收集的資料 (例如 DISTANCE)。

詳情請參閱資料類型的完整清單。

活動

當使用者達成特定目標狀態或事件時,應用程式會收到事件。舉例來說,使用者可以在運動應用程式中登記距離目標,然後應用程式可在使用者跑了特定距離後通知他們。或者,在使用者達成特定步數或入睡等情況下使用被動目標。

詳情請參閱運動目標被動目標

運動類型

健康照護服務會將運動視為優先功能,並支援多種運動類型,例如跑步或滑雪。在運動期間,健康照護服務會收集所選資料類型的指標,並回報給管理運動的應用程式。

詳情請參閱運動類型的完整清單。

使用健康照護服務建立應用程式

請按照下列各節所述,使用健康照護服務建立應用程式。

被動體驗

應用程式可以使用 PassiveMonitoringClient 實作 PassiveListenerService,用來接收特定資料類型或事件的更新內容。這項功能適用於長期體驗,其資料更新頻率相對較低。

詳情請參閱「被動資料更新」一文。

使用中的體驗

應用程式可使用 MeasureClient 註冊事件監聽器,快速接收更新的資料。這項功能適用於短期體驗,例如當使用者查看應用程式 UI 時。嘗試盡量縮短應用程式在使用已註冊事件監聽器上花費的時間,因為事件監聽器會提高感應器取樣率,從而增加耗電量。這個 API 不適用於背景擷取或健身追蹤用途。

詳情請參閱「使用 MeasureClient 取得即時健康測量結果」一文。

透過 ExerciseClient,應用程式可以管理使用者的健身、設定運動目標,並監聽目前運動狀態的最新資訊。只要運動是由您的應用程式管理,應用程式也可以透過這個 API 快速接收更新的資料。ExerciseClient 可用於各種應用程式,例如跑步應用程式,可讓使用者記錄跑步情形、在裝置上顯示即時指標,以及記錄資料以供進一步分析。

詳情請參閱「使用 ExerciseClient 記錄運動情形」一文。

使用綜合資料進行測試

如要測試應用程式是否正在接收透過健康照護服務更新的資料,請手動設定裝置來發出資料,就像使用者從事運動時一樣。

詳情請參閱「搭配健康照護服務使用綜合資料」一文。