了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

Firebase Remote Config'i kullanmaya başlayın


Uygulamanızdaki parametreleri tanımlamak ve buluttaki değerlerini güncellemek için Firebase Remote Config'i kullanabilirsiniz, böylece bir uygulama güncellemesi dağıtmadan uygulamanızın görünümünü ve davranışını değiştirebilirsiniz. Bu kılavuz, başlangıç ​​adımlarında size yol gösterir ve bazı örnek kodlar sağlar; bunların tümü , firebase/quickstart-js GitHub deposundan kopyalanabilir veya indirilebilir.

1. Adım: Remote Config SDK'yı ekleyin ve başlatın

  1. Henüz yapmadıysanız, Firebase JS SDK'yı kurun ve Firebase'i başlatın .

  2. Remote Config JS SDK'yı ekleyin ve Remote Config'i başlatın:

Web modüler API

import { initializeApp } from "firebase/app";
import { getRemoteConfig } from "firebase/remote-config";

// TODO: Replace the following with your app's Firebase project configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize Firebase
const app = initializeApp(firebaseConfig);


// Initialize Remote Config and get a reference to the service
const remoteConfig = getRemoteConfig(app);

Web ad alanlı API

import firebase from "firebase/compat/app";
import "firebase/compat/remote-config";

// TODO: Replace the following with your app's Firebase project configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize Firebase
firebase.initializeApp(firebaseConfig);


// Initialize Remote Config and get a reference to the service
const remoteConfig = firebase.remoteConfig();

Bu nesne, uygulama içi varsayılan parametre değerlerini depolamak, Remote Config arka ucundan güncellenmiş parametre değerlerini almak ve getirilen değerlerin uygulamanız tarafından ne zaman kullanılabilir hale getirileceğini kontrol etmek için kullanılır.

2. Adım: Minimum getirme aralığını ayarlayın

Geliştirme sırasında nispeten düşük bir minimum getirme aralığı ayarlamanız önerilir. Daha fazla bilgi için bkz .

Web modular API

remoteConfig.settings.minimumFetchIntervalMillis = 3600000;

Web namespaced API

remoteConfig.settings.minimumFetchIntervalMillis = 3600000;

3. Adım: Uygulama içi varsayılan parametre değerlerini ayarlayın

Remote Config nesnesinde uygulama içi varsayılan parametre değerlerini ayarlayabilirsiniz, böylece uygulamanız Remote Config arka ucuna bağlanmadan önce istendiği gibi davranır ve böylece arka uçta hiçbiri ayarlanmazsa varsayılan değerler kullanılabilir.

Web modular API

remoteConfig.defaultConfig = {
  "welcome_message": "Welcome"
};

Web namespaced API

remoteConfig.defaultConfig = {
  "welcome_message": "Welcome"
};

Remote Config arka uç parametre değerlerini zaten yapılandırdıysanız, tüm varsayılan değerleri içeren oluşturulmuş bir JSON dosyasını indirebilir ve bunu uygulama paketinize dahil edebilirsiniz:

DİNLENMEK

curl --compressed -D headers -H "Authorization: Bearer token" -X GET https://firebaseremoteconfig.googleapis.com/v1/projects/my-project-id/remoteConfig:downloadDefaults?format=JSON -o remote_config_defaults.json

Firebase konsolu

  1. Parametreler sekmesinde Menüsünü açın ve Varsayılan değerleri indir öğesini seçin.
  2. İstendiğinde, web için .json'u etkinleştirin ve ardından Dosyayı indir'i tıklayın.

Aşağıdaki örnekler, uygulamanızda varsayılan değerleri içe aktarabileceğiniz ve ayarlayabileceğiniz iki farklı yolu göstermektedir. İlk örnek, uygulama paketinizde bulunan varsayılanlar dosyasına bir HTTP isteği yapacak olan fetch kullanır:


  const rcDefaultsFile = await fetch('remote_config_defaults.json');
  const rcDefaultsJson = await rcDefaultsFile.json();
  remoteConfig.defaultConfig = rcDefaultsJson;
  

Sonraki örnek, oluşturma zamanında değerleri uygulamanıza derleyen require kullanır:

  let rcDefaults = require('./remote_config_defaults.json');
  remoteConfig.defaultConfig = rcDefaults;

4. Adım: Uygulamanızda kullanılacak parametre değerlerini alın

Artık Remote Config nesnesinden parametre değerleri alabilirsiniz. Daha sonra değerleri arka uçta ayarlar, getirir ve ardından etkinleştirirseniz, bu değerler uygulamanız tarafından kullanılabilir. Bu değerleri almak için, parametre anahtarını argüman olarak sağlayarak getValue() yöntemini çağırın.

Web modular API

import { getValue } from "firebase/remote-config";

const val = getValue(remoteConfig, "welcome_messsage");

Web namespaced API

const val = remoteConfig.getValue("welcome_messsage");

Adım 5: Parametre değerlerini ayarlayın

Firebase konsolunu veya Remote Config arka uç API'lerini kullanarak, istediğiniz koşullu mantığa veya kullanıcı hedeflemeye göre uygulama içi değerleri geçersiz kılan yeni sunucu tarafı varsayılan değerler oluşturabilirsiniz. Bu bölüm, bu değerleri oluşturmak için Firebase konsolu adımlarında size yol gösterir.

  1. Firebase konsolunda projenizi açın.
  2. Remote Config panosunu görüntülemek için menüden Remote Config'i seçin.
  3. Uygulamanızda tanımladığınız parametrelerle aynı ada sahip parametreleri tanımlayın. Her parametre için bir varsayılan değer ayarlayabilir (bu, sonunda uygulama içi varsayılan değeri geçersiz kılar) ve koşullu değerler de ayarlayabilirsiniz. Daha fazla bilgi edinmek için bkz. Uzak Yapılandırma Parametreleri ve Koşulları .

6. Adım: Değerleri getirin ve etkinleştirin

  1. Remote Config arka ucundan parametre değerlerini almak için fetchConfig() yöntemini çağırın. Arka uçta ayarladığınız tüm değerler alınır ve Remote Config nesnesinde önbelleğe alınır.
  2. Getirilen parametre değerlerini uygulamanız için kullanılabilir hale getirmek için activate() yöntemini çağırın.

Değerleri tek bir çağrıda getirmek ve etkinleştirmek istediğiniz durumlar için, bu örnekte gösterildiği gibi fetchAndActivate() kullanın:

Web modular API

import { fetchAndActivate } from "firebase/remote-config";

fetchAndActivate(remoteConfig)
  .then(() => {
    // ...
  })
  .catch((err) => {
    // ...
  });

Web namespaced API

remoteConfig.fetchAndActivate()
  .then(() => {
    // ...
  })
  .catch((err) => {
    // ...
  });

Bu güncellenen parametre değerleri, uygulamanızın davranışını ve görünümünü etkilediğinden, getirilen değerleri kullanıcınız için sorunsuz bir deneyim sağlayan bir zamanda (ör. kullanıcının uygulamanızı bir sonraki açışında) etkinleştirmeniz gerekir. Daha fazla bilgi ve örnek için Remote Config yükleme stratejilerine bakın.

kısma

Bir uygulama kısa bir süre içinde çok fazla getirirse getirme çağrıları kısılabilir. Bu gibi durumlarda, SDK bir FETCH_THROTTLE hatası verir. Bu hatayı yakalamanız ve üstel geri alma modunda yeniden denemeniz ve sonraki getirme istekleri arasında daha uzun aralıklar beklemeniz önerilir.

Uygulama geliştirme sırasında, uygulamanızı geliştirirken ve test ederken hızla yineleme yapabilmeniz için önbelleği çok sık (saatte birçok kez) yenilemek isteyebilirsiniz. Çok sayıda geliştiriciye sahip bir projede hızlı yinelemeye uyum sağlamak için, uygulamanıza geçici olarak düşük minimum getirme aralığına ( Settings.minimumFetchIntervalMillis ) sahip bir özellik ekleyebilirsiniz.

Remote Config için varsayılan ve önerilen üretim getirme aralığı 12 saattir; bu, gerçekte kaç getirme çağrısı yapıldığına bakılmaksızın, yapılandırmaların arka uçtan 12 saatlik bir pencerede birden fazla getirilmeyeceği anlamına gelir. Spesifik olarak, minimum getirme aralığı aşağıdaki sırayla belirlenir:

  1. Settings.minimumFetchIntervalMillis içindeki parametre.
  2. Varsayılan değer 12 saattir.

Next steps

If you haven't already, explore the Remote Config use cases , and take a look at some of the key concepts and advanced strategies documentation, including: