Firebase Remote Config'i kullanmaya başlayın


Uygulamanızdaki parametreleri tanımlamak ve bunların değerlerini bulutta güncellemek için Firebase Remote Config'i kullanabilirsiniz; böylece 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 tümü firebase/quickstart-js GitHub deposundan kopyalanabilen veya indirilebilen bazı örnek kodlar sağlar.

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

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

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

Web modüler API'si

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, güncellenmiş parametre değerlerini Remote Config arka ucundan getirmek ve getirilen değerlerin ne zaman uygulamanız için 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 Kısıtlama konusuna bakın.

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 amaçlandığı gibi davranır ve arka uçta ayarlanmadığı takdirde varsayılan değerler kullanılabilir olur.

Web modular API

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

Web namespaced API

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

Remote Config arka uç parametre değerlerini önceden 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 seçeneğini seçin.
  2. İstendiğinde web için .json'u etkinleştirin ve ardından Dosyayı indir'i tıklayın.

Aşağıdaki örneklerde, uygulamanızda varsayılan değerleri içe aktarmanın ve ayarlamanın iki farklı yolu gösterilmektedir. İ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 örnekte, derleme sırasında değerleri uygulamanıza derleyen require kullanılmaktadı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ğerlerini alabilirsiniz. Daha sonra arka uçta değerler ayarlarsanız, bunları getirir ve etkinleştirirseniz, bu değerler uygulamanızda kullanılabilir. Bu değerleri almak için parametre anahtarını bağımsız değişken 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ğerleri oluşturabilirsiniz. Bu bölüm, bu değerleri oluşturmaya yönelik Firebase konsolu adımlarında size yol gösterir.

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

6. Adım: Değerleri getir ve etkinleştir

  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 Remote Config nesnesine getirilir ve önbelleğe alınır.
  2. Getirilen parametre değerlerini uygulamanızda kullanılabilir hale getirmek için activate() yöntemini çağırın.

Değerleri tek bir çağrıda alıp etkinleştirmek istediğiniz durumlarda, 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) => {
    // ...
  });

Güncellenen bu 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ğlayacak bir zamanda (örneğin, kullanıcının uygulamanızı bir sonraki açılışı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 kez getirilirse getirme çağrıları kısıtlanabilir. Bu gibi durumlarda SDK, FETCH_THROTTLE hatası verir. Bu hatayı yakalamanız ve sonraki getirme istekleri arasında daha uzun aralıklar bekleyerek üstel geri çekilme modunda yeniden denemeniz önerilir.

Uygulama geliştirme sırasında, uygulamanızı geliştirirken ve test ederken hızlı bir şekilde yineleme yapabilmeniz için önbelleği çok sık (saatte birçok kez) yenilemek isteyebilirsiniz. Çok sayıda geliştiricinin bulunduğu 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ç tane getirme çağrısı yapıldığına bakılmaksızın, yapılandırmaların 12 saatlik bir pencerede arka uçtan birden fazla getirilmeyeceği anlamına gelir. Özellikle minimum getirme aralığı aşağıdaki sıraya göre belirlenir:

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

Sonraki adımlar

Henüz yapmadıysanız, uzaktan yapılandırma kullanım durumlarını keşfedin ve bazı temel kavramlara ve gelişmiş stratejiler belgelerini aşağıdakilere inceleyin: