Firebase 遠端配置載入策略

Firebase 遠端配置為如何以及何時從伺服器獲取新值並在應用程式中啟動它們提供了很大的靈活性,使您可以透過控制任何可見配置更改的時間來確保優質的最終用戶體驗。您可以使用fetchAndActivate()在應用程式啟動時取得新值,並使用即時遠端配置作為補充方法,在發布新版本的遠端配置後自動取得最新參數值。

本指南著眼於一些載入策略,並討論為您的應用程式選擇最佳選項的關鍵考慮因素。

策略 1:載入時獲取並激活

在此策略中,您的應用程式將在您的應用程式首次啟動時呼叫fetchAndActivate() ,以從遠端設定中取得新值,並在載入完成後立即啟動它們。這種簡單的方法非常適合配置更改,不會導致 UI 中出現任何顯著的視覺變化。在使用者使用過程中使用者介面可能發生明顯變化的任何情況下都應該避免這種情況。

您的應用程式呼叫fetchAndActivate()後,可以透過呼叫addOnConfigUpdateListener開始即時監聽參數值更新。此方法開始偵聽對參數值的任何伺服器端更新,自動取得它們,然後呼叫偵聽器。一個簡單的策略是啟動偵聽器中的新值。但是,如fetchAndActivate()中所提到的,對於敏感 UI,應避免立即啟動。

策略 2:在載入畫面後激活

作為對策略 1 中遇到的潛在 UI 問題的補救措施,您可以依靠加載畫面。不要立即啟動應用程序,而是顯示載入畫面並在完成處理程序中呼叫fetchAndActivate 。然後,再次使用回調或通知,關閉載入畫面並允許用戶開始與您的應用程式互動。

如果您使用此策略,建議在載入畫面上新增逾時。 Remote Config 的一分鐘超時對於用戶的優質應用程式啟動體驗來說可能太長。

透過呼叫addOnConfigUpdateListener偵聽即時遠端設定更新非常適合此策略。顯示載入畫面時新增偵聽器,然後在應用程式中的一個或多個位置使用activate() ,其中遠端配置值不會導致顯著的視覺變化。

策略 3:為下次啟動載入新值

有效的策略是載入新的配置值以在應用程式下次啟動時啟動。在此策略中,您的應用程式在嘗試獲取新值之前在啟動時啟動獲取的值,並假設它可能已經獲取(但尚未啟動)新配置值。此策略的操作順序是:

  1. 啟動時,立即啟動先前取得的值。這將應用您在先前會話中從伺服器下載的任何值,並且幾乎是即時的。
  2. 當使用者與您的應用程式互動時,啟動非同步呼叫以根據預設的最小獲取間隔獲取新值,並新增即時配置更新偵聽器。當您的應用程式運行時,即時偵聽器將自動取得伺服器上發布的任何值。即時更新繞過最小獲取間隔設定。
  3. 在 fetch 呼叫的完成處理程序或回呼中,不執行任何操作。您的應用程式將保留下載的值,直到下次應用程式啟動時啟動它們。

透過這種策略,用戶等待時間大大縮短。根據應用程式生命週期中的需要,將獲取和即時偵聽器策略與activate()呼叫結合,可確保使用者在與應用程式互動時從遠端配置獲得最新值。

載入反策略

正如您可能從上面關於加載優缺點的討論中了解到的,有一些使用模式需要避免。

  • 當用戶查看 UI 或與之互動時,請勿更新或切換 UI 的各個方面 -除非您有充分的應用程式或業務原因這樣做,例如刪除與剛結束的促銷相關的選項。
  • 不要同時發送大量提取請求,這可能會導致伺服器限制您的應用程式。如果您需要頻繁取得更新,請使用即時遠端配置。雖然在大多數生產場景中限制的風險較低,但在主動開發過程中這可能會成為一個問題,而即時遠端配置就是針對此用例而設計的。查看節流指南
  • 不要依賴網路連線來獲取遠端配置值。設定應用程式內預設參數值,以便您的應用程式始終如預期運作。您可以使用下載的範本預設值定期保持應用程式和遠端配置後端預設值同步。

下一步

這三種基本策略無論如何都不包含載入配置值的方法的完整清單。根據您的需求,您可以設計更複雜的策略。

查看適用於您的平台的 API 參考,以了解有關取得和啟動配置值的特定呼叫的更多資訊。