| 選取平台: | iOS+ Android Web Flutter Unity C++ |
即時Remote Config可讓您在伺服器發布更新的參數鍵和值時,立即收到這些資訊。這樣一來,您就能快速更新由 Remote Config 參數值控制的任何應用程式屬性類型。有了即時 Remote Config 更新,您可以:
- 逐步向目標使用者推出功能,並在必要時執行緊急復原,降低風險。
- 在使用者使用應用程式時,快速自訂使用者體驗,提高使用者參與度。舉例來說,您可以更新橫幅,並為符合特定Google Analytics使用者屬性的使用者提供獎勵,或動態調整玩家群組的遊戲難度。
- 減少建構依附元件並提高開發人員工作效率:使用 Remote Config 參數做為功能旗標,向開發和測試團隊公開功能,同時對正式環境中的使用者隱藏功能。
如要進一步瞭解 Remote Config 的用途,請參閱「Remote Config 的用途」。
本指南涵蓋下列主題:
- 支援即時更新的用戶端與伺服器關係。
- SDK 即時功能的運作方式。
- 如何使用即時更新功能,確保應用程式設定保持最新狀態。
- 即時Remote Config最佳做法。
即時用戶端與伺服器連線
在應用程式中導入即時 Remote Config 時,您會建立即時事件監聽器,開啟與 Remote Config 後端的 HTTP 連線。要求包含裝置上快取的設定版本。即時 Remote Config 伺服器會使用撤銷訊息,在應擷取較新版本的伺服器端設定時,向應用程式發出信號。
如果伺服器有較新的版本,就會立即傳送撤銷信號。如果沒有新版本,則會保持連線開啟,直到伺服器發布新版本為止。用戶端 SDK 收到撤銷信號時,會自動擷取該信號,然後呼叫您在開啟事件監聽器連線時註冊的事件監聽器回呼。這項擷取作業與您透過 SDK 執行的擷取呼叫類似,但會略過任何快取或minimumFetchInterval設定。應用程式在前景運作時,用戶端與伺服器會保持連線。
由於用戶端與伺服器之間的連線是透過 HTTP 建立,因此不需要依附其他程式庫。
聽取最新消息
即時更新可補足 Remote Config fetch 呼叫。建議您在應用程式啟動時 (或應用程式生命週期中的某個時間點) 呼叫 fetch,並在使用者工作階段期間監聽即時 Remote Config 更新,確保在伺服器發布最新值時,您能立即取得。
如要監聽更新,請呼叫 onConfigUpdate,並實作回呼,以便在應用程式有 Remote Config 更新時叫用。在背景中,這項呼叫會開始監聽 Remote Config 伺服器的更新。如要進一步瞭解用戶端與伺服器之間的關係,請參閱上一節。
回呼通常適合使用 activate,讓應用程式能使用更新後的設定參數。如要瞭解使用即時 Remote Config 時啟用參數值的其他策略,請參閱「Firebase Remote Config 載入策略」。
選擇性啟用參數值
呼叫 onConfigUpdate 時,您可以等待變更並啟用。
系統自動擷取新版範本,且新版範本變更了應用程式中的有效參數值時,就會呼叫 next 回呼。
這些回呼會使用 configUpdate 參數叫用。configUpdate 包含 updated_keys,這是啟動即時更新的已變更參數鍵組合,包含下列項目:
- 新增或移除的參數鍵
- 值已變更的參數鍵
- 中繼資料已變更的參數鍵 (例如 Remote Config 個人化資訊)
- 值來源已變更的參數鍵 (例如,應用程式內預設值更新為伺服器端值)
如果您在應用程式的特定檢視畫面中使用即時事件監聽器,可以在啟用前檢查與該檢視畫面相關的參數是否已變更。
有時,擷取作業 (無論是在呼叫 fetch 方法時啟動,還是由即時 Remote Config 啟動) 不會更新用戶端。在這種情況下,系統不會呼叫 next 方法或完成處理常式。
新增及移除事件監聽器
onConfigUpdate 是即時 Remote Config 的主要進入點。在應用程式生命週期中首次呼叫這個事件監聽器,會開啟與後端的連線。後續呼叫會重複使用相同連線,多工處理即時用戶端-伺服器連線中描述的撤銷訊息。
呼叫會傳回「事件監聽器註冊」,其中包含名為 Unsubscribe 的方法。如要停止監聽更新,請呼叫最初註冊觀察器時傳回的 Unsubscribe 函式。如果這是唯一有效的事件監聽器,呼叫 Unsubscribe 會關閉與伺服器的即時連線。
雖然您可以手動停止監聽更新,但通常不需要這麼做。當應用程式進入背景時,即時 Remote Config 會自動停止監聽更新,並在應用程式進入前景時重新啟動。
後續步驟
請參閱「開始使用 Firebase Remote Config」一文,瞭解如何設定 Remote Config 並開始即時監聽更新。