Firebase 遠端設定載入策略

Firebase Remote Config 提供多種彈性方式,讓您決定如何及何時從伺服器擷取新值,並在應用程式中啟用這些值,藉此控制任何可見設定變更的時機,確保提供優質的使用者體驗。您可以在應用程式啟動時使用 fetchAndActivate() 擷取新值,並使用即時 Remote Config 做為輔助方法,在發布新版 Remote Config 後自動擷取最新的參數值。

本指南會介紹幾項載入策略 探討挑選應用程式最佳方案時需考量的重點。

策略 1:在載入時擷取並啟用

採用這項策略時,應用程式會在首次推出時呼叫 fetchAndActivate() 便開始從 Remote Config 擷取新的值,並立刻啟用 載入完成這個方法十分適合用於設定 一些不會導致 任何大幅度的使用者介面變動這應該 避免 UI 在任何情況下 也能在使用者使用中間應用程式的時候

應用程式呼叫 fetchAndActivate() 後,即可開始監聽參數 呼叫 addOnConfigUpdateListener 即可即時更新值。這個方法 開始監聽任何伺服器端的參數值,並擷取 並呼叫事件監聽器。簡單的策略是在事件監聽器中啟用新值。不過,正如 fetchAndActivate() 所說, 如為敏感的 UI,應避免立即啟用。

策略 2:在載入畫面後方啟用

如要解決策略 1 中可能的使用者介面問題,您可以放心 載入畫面上。請勿立即啟動應用程式,而是在完成處理常式中顯示載入畫面並呼叫 fetchAndActivate。然後,使用回呼或通知再次提醒 - 關閉載入畫面並允許使用者開始互動

如果您採用這項策略,建議您延長載入作業的逾時時間 。遠端設定的一分鐘逾時時間可能太長,無法為使用者提供優質的應用程式啟動體驗。

透過呼叫來監聽Remote Config即時動態 「addOnConfigUpdateListener」與這項策略相輔相成。在顯示載入畫面時新增事件監聽器,然後在應用程式中一或多個 Remote Config 值不會造成明顯視覺變化的點使用 activate()

策略 3:為下一個啟動程序載入新值

有個有效的策略是 將新的設定值載入 啟用應用程式的下一個啟動程序。在這項策略中,您的應用程式 會在啟動時擷取的值, 假設該物件可能已擷取,但尚未啟用 :新的設定值。這項策略的運作順序為:

  1. 啟動時,立即啟用先前擷取的值。這適用於所有 您從伺服器下載的值 同步執行。
  2. 在使用者與應用程式互動時,啟動非同步呼叫, 依據預設的最小擷取間隔擷取新值,並新增 即時設定更新事件監聽器即時事件監聽器會自動 在應用程式執行期間,擷取在伺服器上發布的任何值。 即時更新會略過最小擷取間隔設定。
  3. 在擷取呼叫的完成處理常式或回呼中,不執行任何動作。 應用程式會保留下載的值,直到下次啟動應用程式時才會啟用。

採用這項策略後,使用者等待時間將大幅縮短。合併擷取 在應用程式生命週期中視需要使用 activate() 呼叫,採用即時事件監聽器策略,確保使用者 卻能提供 Remote Config 的最新值。

載入反策略

您可能已經從上述有關載入優缺點的討論中瞭解到 有幾個使用模式應該避免

  • 使用者正在瀏覽或查看使用者介面時,「請勿」更新或切換 UI 互動 — 除非您有充分的應用程式或業務理由 例如移除與搜尋關鍵字相關的選項 已結束。
  • 請勿傳送大量同時擷取要求,這可能會導致 能限制您的應用程式如果需要經常擷取更新 使用即時 Remote Config。雖然 在大多數生產情境中,節流的風險較低,這可能是問題 而即時 Remote Config 的設計 適合這個用途查看節流 指南
  • 請勿透過網路連線取得 Remote Config 值。 已在應用程式內設定 預設 參數值,應用程式才能如常運作。你可以 定期讓應用程式和 Remote Config 後端的預設值保持同步 使用下載的範本 預設值)。

後續步驟

這三項基本策略並非由任何方式構成的清單 載入設定值的方法。您可以根據自己的需求 更精細的策略

請參閱您平台的 API 參考資料,進一步瞭解 擷取及啟用設定值的呼叫。