Uygulamanızda parametreleri tanımlamak ve bulutta değerlerini güncellemek için Firebase Remote Config'ü kullanabilirsiniz. Böylece uygulama güncellemesi dağıtmadan uygulamanızın görünümünü ve davranışını değiştirebilirsiniz. Bu kılavuzda adımları uygulayın ve size birkaç örnek kod sağlayın. Bu kodun şuradan klonlayabilir veya indirilebilir: firebase/quickstart-js GitHub deposu.
1. Adım: Remote Config SDK'sını ekleyip başlatın
Henüz yapmadıysanız Firebase JS SDK'sını yükleyin ve Firebase'i başlatın.
Remote Config JS SDK'sını ekleyin ve Remote Config uygulamasını başlatın:
Web
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
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 için kullanılır, getirme güncellendi Remote Config arka ucundan parametre değerleri ve getirildiğinde kontrol değerleri, uygulamanız için kullanılabilir hale gelir.
2. adım: Minimum getirme aralığını ayarlayın
Geliştirme sırasında, minimum getirme aralığını nispeten düşük bir değere ayarlamak önerilir. Daha fazla bilgi için Düşük hızlandırma bölümüne bakın.
Web
remoteConfig.settings.minimumFetchIntervalMillis = 3600000;
Web
remoteConfig.settings.minimumFetchIntervalMillis = 3600000;
3. Adım: Uygulama içi varsayılan parametre değerlerini ayarlayın
Uygulama içi varsayılan parametre değerlerini Remote Config Böylece, uygulamanız başka bir cihaza bağlanmadan önce beklendiği gibi Remote Config arka ucuna erişebilir, böylece arka uçta hiçbiri ayarlanmadı.
Web
remoteConfig.defaultConfig = { "welcome_message": "Welcome" };
Web
remoteConfig.defaultConfig = { "welcome_message": "Welcome" };
Remote Config arka uç parametre değerlerini daha önce yapılandırdıysanız tüm varsayılan değerleri içeren oluşturulmuş bir JSON dosyasını indirip uygulama paketinize ekleyebilirsiniz:
REST
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
- Parametreler sekmesinde Menü'yü açın ve Varsayılan değerleri indir'i seçin.
- İstendiğinde Web için .json'i etkinleştirin ve ardından Dosyayı indir'i tıklayın.
Aşağıdaki örneklerde, uygulamanızda varsayılan değerleri içe aktarıp ayarlayabileceğiniz iki farklı yöntem gösterilmektedir. İlk örnekte, uygulama paketinize dahil edilen varsayılanlar dosyasına HTTP isteği gönderen fetch
işlevi kullanılmaktadır:
const rcDefaultsFile = await fetch('remote_config_defaults.json'); const rcDefaultsJson = await rcDefaultsFile.json(); remoteConfig.defaultConfig = rcDefaultsJson;
Sonraki örnekte, değerleri uygulamanızda derleyen require
kullanılır.
derleme sırasında:
let rcDefaults = require('./remote_config_defaults.json'); remoteConfig.defaultConfig = rcDefaults;
4. adım: Uygulamanızda kullanacağınız parametre değerlerini alın
Artık Remote Config nesnesinden parametre değerleri alabilirsiniz. Daha sonra arka uçta değerler ayarlar, getirir ve etkinleştirirseniz bu değerler uygulamanız tarafından 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
import { getValue } from "firebase/remote-config"; const val = getValue(remoteConfig, "welcome_messsage");
Web
const val = remoteConfig.getValue("welcome_messsage");
5. Adım: Parametre değerlerini ayarlayın
Firebase konsolunu veya Remote Config arka uç API'lerini kullanarak, istediğiniz koşullu mantığa veya kullanıcı hedeflemesine göre uygulama içi değerleri geçersiz kılan yeni sunucu tarafı varsayılan değerleri oluşturabilirsiniz. Bu bölüm Firebase konsolunda bu değerleri oluşturma adımlarında size yol gösterir.
- Firebase konsolunda projenizi açın.
- Remote Config öğesini görüntülemek için menüden Remote Config öğesini seçin. kontrol paneli
- Uygulamanızda tanımladığınız parametrelerle aynı ada sahip parametreler tanımlayın. Her parametre için bir varsayılan değer (bu değer, uygulama içi varsayılan değeri geçersiz kılar) ve koşullu değerler de ayarlayabilirsiniz. Daha fazla bilgi için Remote Config Parametreleri ve Koşulları başlıklı makaleyi inceleyin.
6. Adım: Değerleri getirin ve etkinleştirin
- Remote Config arka ucundan parametre değerlerini getirmek için şunu çağırın:
fetchConfig()
yöntemidir. Arka uçta ayarladığınız tüm değerler getirilir ve Remote Config nesnesinde önbelleğe alınır. - 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 almak ve etkinleştirmek istediğiniz durumlarda bu örnekte gösterildiği gibi fetchAndActivate()
değerini kullanın:
Web
import { fetchAndActivate } from "firebase/remote-config"; fetchAndActivate(remoteConfig) .then(() => { // ... }) .catch((err) => { // ... });
Web
remoteConfig.fetchAndActivate() .then(() => { // ... }) .catch((err) => { // ... });
Bu güncellenen parametre değerleri davranışı ve görünümü etkilediği için getirmeyi seçerseniz, getirilen değerleri uygulamanın sağlandığından sorunsuz bir deneyim sunmasını sağlar (örneğin, kullanıcı uygulamasını indirin. Remote Config yükleme stratejilerine bakın daha fazla bilgi ve örnek bulabilirsiniz.
Kısıtlama
Bir uygulama kısa süre içinde çok fazla getirme işlemi yaparsa getirme çağrıları sınırlanabilir. Bu gibi durumlarda SDK bir FETCH_THROTTLE
hatası oluşturur.
Bu hatayı yakalayıp sonraki getirme istekleri arasında daha uzun aralıklar bekleyerek eksponansiyel geri yükleme modunda yeniden denemeniz önerilir.
Uygulama geliştirme sürecinde önbelleği sık sık yenilemek isteyebilirsiniz.
(saatte birçok kez) bu özellik, geliştirme ve test etme sürecinde hızla yineleme
uygulamasını indirin. Çok sayıda geliştiricinin bulunduğu bir projede hızlı iterasyon yapabilmek için
geçici olarak, düşük minimum getirme aralığına sahip bir mülk ekleyebilir
(Settings.minimumFetchIntervalMillis
) inceleyebilirsiniz.
Remote Config için varsayılan ve önerilen üretim getirme aralığı 12 saattir. Bu, aslında kaç getirme çağrısı yapıldığından bağımsız olarak yapılandırmaların 12 saatlik bir zaman aralığında arka uçtan bir defadan fazla getirilmeyeceği anlamına gelir. Daha açık belirtmek gerekirse, minimum getirme aralığı aşağıdaki sırayla belirlenir:
Settings.minimumFetchIntervalMillis
hücresindeki parametre.- Varsayılan değer olan 12 saat.
Sonraki adımlar
Henüz yapmadıysanız Remote Configkullanım alanlarını inceleyin ve aşağıdakiler gibi temel kavramlar ve gelişmiş strateji dokümanlarından bazılarına göz atın: