了解實時遠程配置


即時遠端配置讓您可以在伺服器上發布更新的參數鍵和值後立即接收它們。這使您可以快速更新使用遠端配置參數值控制的任何類型的應用程式屬性。透過即時遠端配置更新,您可以:

  • 透過向目標用戶逐步推出功能並在需要時執行緊急回溯來降低風險。
  • 透過在用戶使用應用程式時快速自訂用戶體驗來提高用戶參與度。例如,您可以更新橫幅並為符合特定 Google Analytics 使用者屬性的使用者提供獎勵,或動態調整玩家群體的遊戲難度。
  • 減少建置依賴性並提高開發人員工作效率:使用遠端配置參數作為功能標誌來向開發和測試團隊公開功能,同時在生產中對使用者隱藏。

要了解有關使用遠端配置的方法的更多信息,請參閱遠端配置可以做什麼?

在本指南中,您將:

  • 詳細了解支援即時更新的客戶端-伺服器關係。
  • 了解 SDK 中的即時功能如何運作。
  • 了解如何使用即時更新來保持您的應用程式配置最新。

即時客戶端-伺服器連接

當您在應用程式中實現即時遠端設定時,您將建立一個即時偵聽器,用於開啟與遠端設定後端的 HTTP 連線。該請求包括當前緩存在設備上的配置版本。當應取得較新版本的伺服器端配置時,即時遠端設定伺服器使用無效訊息向應用程式發出訊號。

如果伺服器有較新的版本,它會立即發送失效訊號。如果沒有更新的版本,它將保持連接開啟並等待,直到在伺服器上發布新版本。當用戶端 SDK 收到失效訊號時,它會自動取得該訊號,然後呼叫您開啟偵聽器連線時註冊的偵聽器回調。此提取類似於您可以使用 SDK 進行的提取調用,但會繞過任何快取或minimumFetchInterval設定。當應用程式位於前台時,客戶端-伺服器連線將保持不變。

即時遠端配置客戶端-伺服器工作流程

由於客戶端-伺服器連線是透過 HTTP 建立的,因此不需要對其他程式庫有任何依賴。

收聽更新

即時更新補充了遠端配置fetch呼叫。我們建議您在應用程式啟動時(或應用程式生命週期中的某個時間)呼叫 fetch,並在使用者會話期間偵聽即時遠端設定更新,以確保您在伺服器上發布最新值後立即獲得它們。

若要偵聽更新,請呼叫addOnConfigUpdateListener 、 l10n-placeholder33實作每當應用程式中有可用遠端配置更新時所呼叫的onConfigUpdated 。在幕後,此呼叫開始偵聽來自遠端設定伺服器的更新。要了解有關客戶端-伺服器關係的更多信息,請參閱上一節

回調通常是使用activate使更新的配置參數可供您的應用程式使用的好地方。請參閱Firebase 遠端配置載入策略,以了解使用即時遠端配置時啟動參數值的其他策略。

選擇性地啟動參數值

當您呼叫addOnConfigUpdateListener ,您可以等待更改並啟動它。

當自動取得範本的新版本以及該新版本對應用程式中目前啟動的參數值進行變更時,將呼叫onUpdate回調。

這些回調是使用參數configUpdate呼叫的。 configUpdate包含updatedKeys 、,這是啟動即時更新的一組已更改的參數鍵,包括以下內容:

  • 新增或刪除參數鍵
  • 值已更改的參數鍵
  • 元資料已更改的參數鍵(例如,遠端配置個人化資訊)
  • 值來源已變更的參數鍵(例如,應用程式內預設值更新為伺服器端值)

如果您在應用程式的特定視圖中使用即時偵聽器,則可以在啟動之前檢查與該視圖相關的參數是否已變更。

有時,提取(無論是在呼叫fetch方法時啟動,還是透過即時遠端配置啟動)不會導致客戶端更新。在這些情況下,不會呼叫onUpdate方法或完成。

新增和刪除監聽器

placeholder56 addOnConfigUpdateListener在應用程式生命週期中首次呼叫此偵聽器將開啟與後端的連線。後續呼叫重複使用相同連接,多路復用即時客戶端-伺服器連接中所述的失效訊息。

該呼叫傳回一個“偵聽器註冊”,其中有一個名為remove .

若要停止偵聽,請將引用儲存至偵聽器註冊。呼叫remove來停止監聽這個註冊。如果它是唯一註冊的偵聽器,則呼叫remove將關閉與伺服器的即時連線。

雖然您可以手動停止偵聽更新,但這通常是沒有必要的。當應用程式進入背景時,即時遠端設定會自動停止偵聽更新,並在應用程式進入前台時重新啟動。

下一步

查看Firebase 遠端配置入門來配置遠端配置並開始即時偵聽更新