遠端設定的用途

應用程式開發人員會根據自身需求,以各種方式使用 Remote Config,我們也鼓勵這麼做。為協助您瞭解 Remote Config 的用途,本頁面將說明幾個適用於行動應用程式開發人員的用途。

使用百分比推出機制發布新功能

您可以透過 Remote Config 執行百分比推出作業,逐步向使用者推出新功能。以這個用途為例,假設您有一個新的搜尋功能,可透過名為 new_search_feature_flagRemote Config 參數啟用和停用,而您想先向 10% 的已安裝使用者推出這項功能。

如要達成此目的,請編輯 new_search_feature_flag 參數、新增條件,然後選取「隨機百分比的使用者」。使用滑桿設定介於 0 到 10 之間的隨機百分比。

圖片:在 Firebase 控制台 GUI 中逐步操作,對現有參數執行百分比推出作業
新增參數,以指定功能發布百分比

現在,當系統從 Remote Config 擷取 new_search_feature_flag 值時,隨機選取的 10% 使用者會收到 true 值,其餘 90% 則會收到 false 值。

當您對功能在 10% 的使用者群組中穩定運作感到滿意時,可以將比例提高至 30%、50%,最後在對功能完全有信心時,將比例提高至 100%。

為應用程式定義平台和語言代碼專屬的宣傳橫幅

假設您即將舉辦電子商務特賣活動,並想在應用程式中啟用宣傳啟動畫面。此外,假設您想根據使用者在裝置上設定的語言代碼,自訂這個啟動畫面。您可以定義參數 promo_splash_graphic,並將其值設為靜態網址 (託管於 Firebase Storage 或其他位置),然後在應用程式中動態參照這些網址。

然後,您可以為宣傳行銷廣告活動中最重要的地區,分別為 Android 和 Apple 指派不同的價值。 如要在特定時間觸發促銷活動,可以使用 Remote Config 的時間條件,也可以使用即時 Remote Config,確保系統在範本發布後不久就會提取變更,然後您可以在應用程式中視需要啟用這些變更。

動畫:在 Firebase 控制台 GUI 中逐步操作,定義平台和語言代碼專屬的宣傳橫幅
新增本地化促銷橫幅的參數

您也可以使用Remote Config 後端 API,以程式輔助方式更新參數值,然後從 Cron 工作觸發功能。

根據使用者首次使用應用程式的情況,提供自訂體驗

您可以根據使用者首次開啟應用程式的日期和時間,使用 Remote Config 提供自訂體驗,包括下列用途:

  • 在使用者加入應用程式時,提供不同的新手上路流程。
  • 在特定日期後,向新使用者顯示隱藏在功能旗標或切換按鈕後方的獎勵或功能。
  • 為在特定時間範圍內加入的使用者提供專屬體驗。

假設您想向新使用者提供遊戲內禮物,藉此鼓勵他們參與互動並留存,向長期使用者提供不同獎勵。您可以建立名為 extra_coin_splash 的參數,控制彈出式視窗,提供免費遊戲內貨幣,並自訂訊息、獎勵金幣數量,以及使用者未接受優惠時,重新顯示優惠的次數上限。您可以將應用程式內預設值做為參數預設值,然後建立兩個條件。

首先,請將「條件值」新增至 extra_coins_splash Remote Config 參數,指定 Android 或 iOS 應用程式,然後將「首次開啟」設為未來的日期和時間,並將參數值設為:

{"banner_text": "Welcome! Enjoy some extra coins!", "bonus_coins": 15, "max_display_retries": 2}

接著,為要獎勵的現有使用者群組新增條件,例如 7 月加入且 10 月仍在使用遊戲的所有使用者。如要這麼做,請在 extra_coins_splash 參數中新增另一個條件值,並將「首次開啟」設為 7 月 1 日至 8 月 1 日之間,然後將參數值設為:

{"banner_text": "Thanks for being a loyal user!", "bonus_coins": 30, "max_display_retries": 2}:

最終的 extra_coins_splash 參數如下所示:

具有條件值的遠端設定參數

發布含有這項參數的設定後,兩組使用者在下次擷取時,都會收到您設定的額外金幣參數值。

接下來,請嘗試使用不同的橫幅訊息和獎勵金幣數量,對參數和指定目標條件進行A/B Testing實驗個人化調整。

在有限的測試群組中測試新功能

通常如要在有限的測試群組中測試新功能,您會在 Google Play 上使用 Alpha 版管道,或在 Apple 應用程式上使用 TestFlight。如果您想以與一般開發週期相同的頻率測試新功能,這些工具就非常適合。

不過,有時您可能想更快測試某項功能,並在一般開發週期中,無論下一個版本何時發布,都能輕鬆啟用或停用該功能。在這種情況下,Remote Config 就能派上用場。

假設您想在公司員工之間測試新圖片。 如何使用 Remote Config 啟用這項功能?

當使用者登入應用程式時,請檢查他們的電子郵件 ID,並設定僅在電子郵件屬於您網域時適用的使用者屬性 is_mydomain_employee=true。然後建立追蹤該使用者屬性的條件。 您可以在 Remote Config 中指定這項使用者屬性,並只為這些使用者啟用新功能。

動畫圖片:在 Firebase 控制台 GUI 中逐步操作,針對有限的測試群組測試新功能
根據條件指定測試群組

使用 JSON 在應用程式或遊戲中設定複雜實體

隨著應用程式日趨複雜,您需要更完善的方式為應用程式提供設定。舉例來說,如果您想設定新的登入系統,可以為要控管的每個動態值建立一個 Remote Config 參數。不過,以這種方式設定登入系統很麻煩,而且難以理解和維護。

如要為這類登入系統提供設定,較好的做法是使用 JSON,並將所有參數歸入單一參數。這樣日後就能更輕鬆地編輯及維護 login 參數。

Firebase 控制台提供 JSON 驗證器和美化列印工具,您可以在編輯 Remote Config 參數時使用。在控制台中作業時,按一下 {} 圖示即可開啟編輯器。

動畫圖片:在 Firebase 控制台 GUI 中逐步操作,使用 JSON 設定複雜實體
使用 JSON 編輯器將參數分組

發布 Remote Config 更新時傳送 Slack / 電子郵件訊息

如果您的團隊規模龐大,且使用 Remote Config,通常很難追蹤團隊中發布 Remote Config 的成員和時間。

為簡化協作工作流程,您可以透過偏好的機制 (Slack 或電子郵件) 接收近乎即時的警報。Remote Config REST API 搭配 Cloud Functions for Firebase 中的 Remote Config 背景觸發條件,可在 Remote Config 範本變更時傳送通知。

eBay 最近開放原始碼實作,說明他們如何使用 Cloud FunctionsRemote Config,將新舊 Remote Config 範本的差異發布到 Slack 頻道。