即時 Remote Config 可讓您在伺服器上發布更新後立即收到參數鍵和值。這可讓您快速更新使用 Remote Config 參數值控管的任何類型應用程式屬性。透過即時 Remote Config 更新,您可以:
- 為指定使用者逐步推出功能,並視需要執行緊急回溯作業,藉此降低風險。
- 在使用者使用應用程式時,快速自訂使用者體驗,藉此提升使用者參與度。舉例來說,您可以為符合特定 Google Analytics 使用者屬性的使用者更新橫幅廣告,並提供獎勵,或是為特定玩家群組動態調整遊戲難度。
- 減少建構依附元件並提高開發人員的工作效率:使用 Remote Config 參數做為功能旗標,為開發和測試團隊揭露功能,同時隱藏實際工作環境中的使用者。
如要進一步瞭解 Remote Config 的使用方式,請參閱「您可以使用 Remote Config 做什麼?」
本指南將說明:
- 進一步瞭解支援即時更新的用戶端-伺服器關係。
- 瞭解 SDK 中的即時功能如何運作。
- 瞭解如何使用即時更新功能,讓應用程式設定保持最新狀態。
即時用戶端-伺服器連線
在應用程式中實作即時 Remote Config 時,您會建立即時事件監聽器,開啟與 Remote Config 後端的 HTTP 連線。這項要求包含目前在裝置上快取的設定版本。當需要擷取較新版本的伺服器端設定時,即時 Remote Config 伺服器會使用無效訊息向應用程式發出訊號。
如果伺服器有較新的版本,就會立即傳送無效信號。如果沒有較新的版本,則會保持連線,並等待伺服器發布新版本。當用戶端 SDK 收到無效信號時,會自動擷取信號,然後呼叫您開啟監聽器連線時註冊的監聽器回呼。這項擷取作業與您可透過 SDK 執行的擷取呼叫類似,但會略過任何快取或 minimumFetchInterval
設定。在應用程式於前景運作期間,用戶端-伺服器連線會維持不變。
由於用戶端-伺服器連線是透過 HTTP 建立,因此不需要依附其他程式庫。
監聽更新
即時更新功能可補足 Remote Config fetch
呼叫,建議您在應用程式啟動 (或應用程式生命週期中的某個時間點) 時呼叫 fetch,並在使用者工作階段期間監聽即時 Remote Config 更新,確保您在最新值發布至伺服器後立即取得。
如要監聽更新,請呼叫
addOnConfigUpdateListener
和,實作回呼,只要應用程式提供 Remote Config 更新,就會叫用回呼。在幕後,這個呼叫會開始監聽 Remote Config 伺服器的更新。如要進一步瞭解用戶端與伺服器的關係,請參閱上一節。
回呼通常是使用 activate
的好地方,可讓應用程式使用更新的設定參數。如要瞭解在使用即時 Remote Config 時,如何啟用參數值的其他策略,請參閱 Firebase Remote Config 載入策略。
選擇性啟用參數值
當您呼叫
addOnConfigUpdateListener
時,
您可以等待變更並啟用。
onUpdate
回呼。
這些回呼會透過參數 configUpdate
叫用。configUpdate
包含
updatedKeys
、,這是啟動即時更新的變更參數鍵組合,包括:
- 新增或移除參數鍵
- 值已變更的參數鍵
- 中繼資料已變更的參數鍵 (例如 Remote Config 個人化資訊)
- 值來源已變更的參數鍵 (例如,應用程式內的預設值更新為伺服器端值)
如果您在應用程式中的特定檢視畫面中使用即時事件監聽器,可以在啟用前檢查與該檢視畫面相關的參數是否已變更。
有時,擷取 (在呼叫 fetch
方法時或透過即時 Remote Config 啟動) 不會導致用戶端更新。在這些情況下,系統不會呼叫
onUpdate
方法或完成作業。
新增及移除事件監聽器
addOnConfigUpdateListener
是即時 Remote Config 的主要進入點。在應用程式生命週期中首次呼叫這個事件監聽器,就會開啟與後端的連線。後續的呼叫會重複使用相同的連線,並多路復用即時用戶端-伺服器連線中所述的無效訊息。
這個呼叫會傳回「事件監聽器註冊」,該註冊具有名為
remove
。
如要停止收聽,請儲存事件監聽器註冊的參照。呼叫 remove
即可停止在這個註冊處收聽。如果這是唯一註冊的事件監聽器,呼叫 remove
會關閉與伺服器的即時連線。
後續步驟
請參閱「開始使用 Firebase Remote Config」,瞭解如何設定 Remote Config,並開始監聽即時更新。