| Plattform auswählen : | iOS+ Android Web Flutter Unity C++ |
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 zu verteilen. In dieser Anleitung werden die ersten Schritte beschrieben und Beispielcode bereitgestellt.
Schritt 1: Firebase und das Remote Config SDK in der App implementieren
Installieren und initialisieren Sie die Firebase SDKs für Flutter falls noch nicht geschehen.
Für Remote Config benötigen Sie Google Analytics, um das bedingte Targeting von App-Instanzen auf Nutzereigenschaften und Zielgruppen zu ermöglichen. Achten Sie also darauf, dass Sie Google Analytics aktivieren in Ihrem Projekt.
Führen Sie im Stammverzeichnis Ihres Flutter-Projekts den folgenden Befehl aus, um das Remote Config-Plug-in zu installieren:
flutter pub add firebase_remote_configAußerdem müssen Sie im Rahmen der Einrichtung von Remote Config das Firebase SDK für Google Analytics in Ihrer App implementieren:
flutter pub add firebase_analyticsErstellen Sie Ihr Projekt neu:
flutter runWenn Sie Remote Config unter macOS verwenden, aktivieren Sie die Keychain-Freigabe in Xcode.
Schritt 2: Remote Config Singleton-Objekt erstellen
Erstellen Sie eine Remote Config-Objektinstanz und legen Sie das Mindestabrufintervall fest, um häufige Aktualisierungen zu ermöglichen:
final remoteConfig = FirebaseRemoteConfig.instance;
await remoteConfig.setConfigSettings(RemoteConfigSettings(
fetchTimeout: const Duration(minutes: 1),
minimumFetchInterval: const Duration(hours: 1),
));
Das Singleton-Objekt wird verwendet, um Standardparameterwerte in der App zu speichern, aktualisierte Parameterwerte aus dem Backend abzurufen und zu steuern, wann abgerufene Werte für Ihre App verfügbar gemacht werden.
Während der Entwicklung empfiehlt es sich, ein relativ niedriges Mindestabrufintervall festzulegen. Weitere Informationen finden Sie unter Drosselung.
Schritt 3: Standardparameterwerte in der App festlegen
Sie können Standardparameterwerte in der App im Remote Config-Objekt festlegen, damit sich Ihre App wie gewünscht verhält, bevor sie eine Verbindung zum Remote Config-Backend herstellt. Außerdem sind so Standardwerte verfügbar, wenn im Backend keine festgelegt sind.
await remoteConfig.setDefaults(const {
"example_param_1": 42,
"example_param_2": 3.14159,
"example_param_3": true,
"example_param_4": "Hello, world!",
});
Schritt 4: Parameterwerte zur Verwendung in Ihrer App abrufen
Jetzt können Sie Parameterwerte aus dem Remote Config-Objekt abrufen. Wenn Sie Werte im Backend festlegen, sie abrufen und dann aktivieren, sind diese Werte für Ihre App verfügbar. Andernfalls erhalten Sie die Parameterwerte in der App, die mit setDefaults() konfiguriert wurden.
Rufen Sie eine der folgenden Methoden auf, die dem von Ihrer App erwarteten Datentyp entsprechen, und geben Sie den Parameterschlüssel als Argument an:
getBool()getDouble()getInt()getString()
Schritt 5: Parameterwerte im Remote Config-Backend festlegen
Über die Firebase Console oder die APIs des Remote Config-Backends, können Sie neue serverseitige Standardwerte erstellen, die die Werte in der App gemäß Ihrer gewünschten bedingten Logik oder Nutzerausrichtung überschreiben. In diesem Abschnitt werden die Schritte in der Firebase Console beschrieben, mit denen Sie diese Werte erstellen.
- Öffnen Sie in der Firebase Console Ihr Projekt.
- Wählen Sie im Menü Remote Config aus, um das Remote Config-Dashboard aufzurufen.
- Definieren Sie Parameter mit denselben Namen wie die Parameter, die Sie in Ihrer App definiert haben. Für jeden Parameter können Sie einen Standardwert festlegen, der den entsprechenden Standardwert in der App überschreibt. Außerdem können Sie bedingte Werte festlegen. Weitere Informationen finden Sie unter Remote Config-Parameter und ‑Bedingungen.
Schritt 6: Werte abrufen und aktivieren
Rufen Sie die Methode
fetch()auf, um Parameterwerte aus dem Remote Config-Backend abzurufen. Alle Werte, die Sie im Backend festgelegt haben, werden abgerufen und im Remote Config-Objekt gespeichert.Rufen Sie die Methode
activate()auf, um abgerufene Parameterwerte für Ihre App verfügbar zu machen.Wenn Sie Werte in einem Aufruf abrufen und aktivieren möchten, können Sie eine
fetchAndActivate()-Anfrage verwenden, um Werte aus dem Remote Config-Backend abzurufen und sie für die App verfügbar zu machen:await remoteConfig.fetchAndActivate();
Da sich diese aktualisierten Parameterwerte auf das Verhalten und das Erscheinungsbild Ihrer App auswirken, sollten Sie die abgerufenen Werte zu einem Zeitpunkt aktivieren, der für Ihre Nutzer ein reibungsloses Erlebnis gewährleistet, z. B. beim nächsten Öffnen der App. Weitere Informationen und Beispiele finden Sie unter Remote Config-Ladestrategien .
Schritt 7: In Echtzeit auf Aktualisierungen warten
Nachdem Sie Parameterwerte abgerufen haben, können Sie mit Remote Config in Echtzeit auf Aktualisierungen aus dem Remote Config-Backend warten. Remote Config in Echtzeit signalisiert verbundenen Geräten, wenn Aktualisierungen verfügbar sind, und ruft die Änderungen automatisch ab, nachdem Sie eine neue Remote Config-Version veröffentlicht haben.
Remote Config in Echtzeit ist nicht für das Web verfügbar.
Verwenden Sie in Ihrer App
onConfigUpdated, um auf Aktualisierungen zu warten und automatisch neue Parameterwerte abzurufen.remoteConfig.onConfigUpdated.listen((event) async { await remoteConfig.activate(); // Use the new config values here. });Wenn Sie das nächste Mal eine neue Version von Remote Config veröffentlichen, aktivieren Geräte, auf denen Ihre App ausgeführt wird und die auf Änderungen warten, die neue Konfiguration.
Drosselung
Wenn eine App zu viele Abrufe in einem kurzen Zeitraum ausführt, werden Abrufe gedrosselt und der Wert der lastFetchStatus-Eigenschaft von FirebaseRemoteConfig ist RemoteConfigFetchStatus.throttle.
Das standardmäßige Mindestabrufintervall für Remote Config beträgt 12 Stunden. Das bedeutet, dass Konfigurationen unabhängig von der Anzahl der tatsächlich ausgeführten Abrufe nicht mehr als einmal innerhalb von 12 Stunden aus dem Backend abgerufen werden.
Wenn Sie während der App-Entwicklung Remote Config in Echtzeit nicht verwenden (was wir empfehlen), sollten Sie Konfigurationen möglicherweise sehr häufig abrufen und aktivieren (mehrmals pro Stunde), um schnell iterieren zu können, während Sie Ihre App entwickeln und testen. Um eine schnelle Iteration an einem Projekt mit bis zu 10 Entwicklern zu ermöglichen, können Sie mit setConfigSettings() vorübergehend ein niedriges Mindestabrufintervall festlegen.
final remoteConfig = FirebaseRemoteConfig.instance;
await remoteConfig.setConfigSettings(RemoteConfigSettings(
fetchTimeout: const Duration(minutes: 1),
minimumFetchInterval: const Duration(minutes: 5),
));