Mit Firebase Remote Config können Sie Parameter in Ihrer App definieren und ihre Werte in der Cloud aktualisieren. So können Sie das Erscheinungsbild und das Verhalten Ihrer App ändern, ohne ein App-Update bereitzustellen. In diesem Leitfaden erfahren Sie, die ersten Schritte durch und enthält Beispielcode. zum Klonen oder Herunterladen aus dem firebase/quickstart-js GitHub-Repository
Schritt 1: Remote Config SDK hinzufügen und initialisieren
Falls noch nicht geschehen, Installieren Sie das Firebase JS SDK und initialisieren Sie Firebase.
Fügen Sie das Remote Config JS SDK hinzu und initialisieren Sie Remote Config:
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();
Dieses Objekt wird zum Speichern von In-App-Standardparameterwerten verwendet. Aktualisierte Werte werden abgerufen. Parameterwerte aus dem Remote Config-Back-End steuern und steuern, wann sie abgerufen werden werden für Ihre App zur Verfügung gestellt.
Schritt 2: Mindestabrufintervall festlegen
Während der Entwicklung wird empfohlen, ein relativ niedriges Mindestabrufintervall festzulegen. Siehe Drosselung für erhalten Sie weitere Informationen.
Web
remoteConfig.settings.minimumFetchIntervalMillis = 3600000;
Web
remoteConfig.settings.minimumFetchIntervalMillis = 3600000;
Schritt 3: Standardparameterwerte in der App festlegen
Du kannst In-App-Standardparameterwerte in der Remote Config festlegen -Objekt, sodass sich Ihre App wie beabsichtigt verhält, bevor sie eine Verbindung zu dem Remote Config-Back-End, sodass Standardwerte verfügbar sind, wenn sind keine für das Back-End festgelegt.
Web
remoteConfig.defaultConfig = { "welcome_message": "Welcome" };
Web
remoteConfig.defaultConfig = { "welcome_message": "Welcome" };
Wenn Sie Remote Config-Backend-Parameterwerte bereits konfiguriert haben, können Sie eine generierte JSON-Datei herunterladen, die alle Standardwerte und Ihrem App Bundle hinzufügen:
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-Konsole
- Öffnen Sie auf dem Tab Parameter das Menü und wählen Sie Standardwerte herunterladen aus.
- Aktivieren Sie auf Aufforderung .json für das Web und klicken Sie dann auf Datei herunterladen.
Die folgenden Beispiele zeigen zwei verschiedene Möglichkeiten, wie Sie Standardwerte in Ihre App importieren und festlegen können. Im ersten Beispiel wird fetch
verwendet, wodurch eine HTTP-Anfrage an die Standarddatei im App-Bundle gesendet wird:
const rcDefaultsFile = await fetch('remote_config_defaults.json'); const rcDefaultsJson = await rcDefaultsFile.json(); remoteConfig.defaultConfig = rcDefaultsJson;
Im nächsten Beispiel wird require
verwendet, wodurch die Werte zum Zeitpunkt des Builds in Ihre App kompiliert werden:
let rcDefaults = require('./remote_config_defaults.json'); remoteConfig.defaultConfig = rcDefaults;
Schritt 4: Parameterwerte zur Verwendung in Ihrer App abrufen
Jetzt können Sie Parameterwerte aus dem Remote Config-Objekt abrufen. Wenn Sie später
Werte im Back-End festlegen, sie abrufen und dann aktivieren, werden diese Werte
die für Ihre App verfügbar sind.Um diese Werte zu erhalten, rufen Sie die Methode
getValue()
-Methode unter Angabe der
Parameterschlüssel als Argument.
Web
import { getValue } from "firebase/remote-config"; const val = getValue(remoteConfig, "welcome_messsage");
Web
const val = remoteConfig.getValue("welcome_messsage");
Schritt 5: Parameterwerte festlegen
Mit der Firebase Console oder den Remote Config Backend-APIs können Sie neue serverseitige Standardwerte erstellen, die die In-App-Werte gemäß der gewünschten bedingten Logik oder dem Nutzer-Targeting überschreiben. Dieser Abschnitt führt Sie durch die Schritte in der Firebase-Konsole zum Erstellen dieser Werte.
- Öffnen Sie Ihr Projekt in der Firebase-Konsole.
- Wähle Remote Config aus dem Menü aus, um die Remote Config aufzurufen Dashboard.
- Definieren Sie Parameter mit denselben Namen wie die Parameter, die Sie in für Ihre App. Für jeden Parameter können Sie einen Standardwert festlegen, der In-App-Standardwert überschreiben) und Sie können auch bedingten Werten. Weitere Informationen finden Sie unter Remote Config Parameter und Bedingungen.
Schritt 6: Werte abrufen und aktivieren
- Rufen Sie zum Abrufen von Parameterwerten aus dem Remote Config-Backend die Methode
fetchConfig()
. Alle Werte, die Sie im Back-End festlegen, werden abgerufen und im Remote Config-Objekt zwischengespeichert. - Um abgerufene Parameterwerte für Ihre App verfügbar zu machen, rufen Sie die Methode
activate()
.
Wenn Sie Werte in einem Aufruf abrufen und aktivieren möchten, verwenden Sie fetchAndActivate()
, wie in diesem Beispiel gezeigt:
Web
import { fetchAndActivate } from "firebase/remote-config"; fetchAndActivate(remoteConfig) .then(() => { // ... }) .catch((err) => { // ... });
Web
remoteConfig.fetchAndActivate() .then(() => { // ... }) .catch((err) => { // ... });
Weil sich diese aktualisierten Parameterwerte auf das Verhalten und die Darstellung auswirken. Ihrer App verwenden, sollten Sie die abgerufenen Werte zu einem Zeitpunkt aktivieren, wie z. B. wenn sie Ihre Website das nächste Mal öffnen, Siehe Remote Config-Ladestrategien finden Sie weitere Informationen und Beispiele.
Drosselung
Wenn eine App innerhalb eines kurzen Zeitraums zu oft Daten abruft, können Abrufaufrufe
gedrosselt wird. In solchen Fällen gibt das SDK den Fehler FETCH_THROTTLE
aus.
Es wird empfohlen, diesen Fehler zu
fangen und den Vorgang im exponentiellen Backoff-Modus zu wiederholen.
Wartezeiten für längere Intervalle zwischen nachfolgenden Abrufanfragen.
Bei der App-Entwicklung kann es sinnvoll sein, den Cache sehr häufig zu aktualisieren.
(viele Male pro Stunde), damit Sie bei der Entwicklung und beim Testen Ihrer
Um eine schnelle Iteration eines Projekts mit zahlreichen Entwickelnden zu ermöglichen,
kann vorübergehend eine Property mit einem niedrigen Mindestabrufintervall hinzufügen
(Settings.minimumFetchIntervalMillis
) in Ihrer App.
Das standardmäßige und empfohlene Abrufintervall in der Produktion für Remote Config beträgt 12 Stunden, was Das bedeutet, dass Konfigurationen nicht öfter als einmal innerhalb von zwölf Stunden vom Back-End abgerufen werden. unabhängig davon, wie viele Abrufaufrufe erfolgen. Konkret bedeutet das Das minimale Abrufintervall wird in der folgenden Reihenfolge bestimmt:
- Der Parameter in
Settings.minimumFetchIntervalMillis
. - Der Standardwert von 12 Stunden.
Nächste Schritte
Sehen Sie sich die Remote Config an, falls Sie dies noch nicht getan haben Anwendungsfälle und sehen uns einige der Schlüsselkonzepte und Dokumentation zu erweiterten Strategien, einschließlich: