總覽

Google Health API 是從頭開始建構的全面解決方案,可讓開發人員安全存取各種使用者健康資料和資料類型。Google Health API 採用新版控制台註冊應用程式、Google OAuth 2.0、新資料類型、新端點結構定義和新回應格式。

本指南旨在協助開發人員將現有的 Fitbit Web API 應用程式遷移至新的 Google Health API。並提供建議,確保遷移作業順利進行,同時留住使用者。

為什麼要遷移?

這項異動不僅是更新,更是策略性措施,可確保您的應用程式安全無虞,並為未來健康技術的進展做好準備。使用 Google Health API 的好處包括:

  • 存取完整資料:取得使用者同意提供的各種健康資料和資料類型,存取權限十分完善。
  • 安全再升級:遵守 Google 的安全性最佳做法,符合 Google 的安全性、隱私權和身分識別標準。
  • 一致性:消除資料格式、時區、測量單位和錯誤處理方面的舊有不一致問題,提供更直覺的開發人員體驗。
  • 擴充性與前瞻性:可因應未來需求擴充,並支援 gRPC 等現代通訊協定。

從 Fitbit Web API 遷移至 Google Health API 不只是技術上的修改,由於我們改用新的 OAuth 程式庫,現有的存取和更新權杖無法轉移,因此使用者必須重新同意更新後的整合服務。

支援兩種登入方法

Fitbit Web API 和 Google Health API 使用不同的系統處理使用者登入作業,因此在 Fitbit Web API 仍處於啟用狀態時,您的應用程式暫時需要同時支援這兩種方法。

請實作一個層,決定要與 Fitbit Web API 或 Google Health API 進行特定使用者的通訊,而不是讓應用程式直接要求資料,這樣應用程式的其餘部分就不必擔心詳細資料。

更新使用者資料庫,加入標記 (例如 oauth_type),識別使用者採用的登入系統。

  • 新使用者:系統會自動為新使用者設定新的 Google Health API (oauth_type: google)。
  • 現有使用者:請繼續使用 Fitbit Web API,直到使用者更新同意聲明 (oauth_type: fitbit)。

為避免影響使用者體驗,建議您不要強制所有使用者登出並重新登入。請改採以下做法:

  1. 如果使用者仍連線至 Fitbit Web API,且與您的應用程式互動,請向他們顯示友善的通知,鼓勵他們更新連線。
  2. 使用者接受更新動作後,請立即觸發 Google Health 登入流程。
  3. Google 登入成功後,請將新的 Google 憑證儲存至使用者的設定檔,並將 oauth_type 旗標從 fitbit 切換為 google。如果設定允許,請以程式輔助方式撤銷權杖,將使用者登出舊版 Fitbit 系統,確保系統安全無虞。

確保資料持續性

將整合功能從舊版 Fitbit Web API 轉換為 Google Health API 時,開發人員應用程式必須考量使用者識別結構的變更。

舊版 Fitbit Web API 會使用 6 個字元的英數字串 (例如 A1B2C3) 識別帳戶,而 Google Health API 則會使用 healthUserId,格式為最多 63 個數字和字元的字串。

為彌補這項落差,同時保留使用者情境,開發人員可以查詢 getIdentity 端點,取得 Fitbit 和 Google 健身使用者 ID。這個端點會傳回包含 legacyUserId 和新 healthUserId 的酬載,讓應用程式動態建立現有記錄和新帳戶系統之間的對應。

補充歷來資料

如果使用者未在舊版端點停用前,透過新的 Google 健康資料 API 端點進行驗證,只要繼續將裝置與 Google Health 應用程式同步,就能存取資料。不過,這類使用者可能會遇到資料缺漏的情況。

如要回填資料,使用者重新向新端點驗證後,您可以使用 Google Health API 回填歷來資料。如需相關指南,請參閱「查詢歷來資料」一節。

溝通和時間

如要協助使用者從現有的 Fitbit OAuth 遷移至新的 Google OAuth,請遵循下列最佳做法。

以價值為優先的溝通

請不要以「我們更新了 API」開頭,而是以將 Google 健身資料整合至應用程式的優點開頭,但請確保使用者知道如要同步處理資料,必須重新驗證:

  • 清楚說明應用程式中哪些功能是由整合功能提供支援,並根據使用者可從這些功能獲得的好處調整訊息。
  • 請著重於說明功能和提供使用情境,而非技術實作細節。
  • 請勿說:「你將無法連線至 Fitbit API。」
  • 請說:「如要繼續查看詳細的運動資料和心率資料,請重新同意使用 Google Health API。」

通知使用者的時機

在所有使用者通訊中,請遵守 Google Health 品牌宣傳規範,並使用可關閉的橫幅、資訊卡或快訊。

  • 使用者正在運動或手動記錄某些事項時,請勿觸發重新同意畫面。
  • 在發出警告數週後,再強制要求重新取得同意聲明,這時 Fitbit Web API 也會正式淘汰。
  • 如果使用者在硬性截止日期後未重新同意,請提供順暢的復原路徑。在橫幅資訊卡工具提示中提供說明訊息,協助使用者瞭解資料遺失的原因和修正方式。