Erste Schritte mit Firebase Remote Config


Mit Firebase Remote Config können Sie Parameter in Ihrer App definieren und aktualisieren ihre Werte in der Cloud speichern, sodass Sie das Erscheinungsbild und Verhalten von ohne ein App-Update zu veröffentlichen. In diesem Leitfaden werden die ersten Schritte erläutert und Beispielcode bereitgestellt.

Schritt 1: Der App Firebase und das Remote Config SDK hinzufügen

  1. Installieren und initialisieren Sie die Firebase SDKs für Flutter, wenn Sie noch nicht getan haben.

  2. Für Remote Config ist Google Analytics für die bedingtes Targeting von App-Instanzen Nutzereigenschaften und Zielgruppen. Achten Sie darauf, dass Sie aktivieren Google Analytics in Ihrem Projekt.

  3. Führen Sie im Stammverzeichnis Ihres Flutter-Projekts folgenden Befehl aus: Befehl zum Installieren des Remote Config-Plug-ins:

    flutter pub add firebase_remote_config
    

    Außerdem müssen Sie bei der Einrichtung von Remote Config das Firebase SDK für Google Analytics in Ihre App einbinden:

    flutter pub add firebase_analytics
    
  4. Projekt neu erstellen:

    flutter run
    
  5. Wenn Sie Remote Config unter macOS verwenden, aktivieren Sie in Xcode die Schlüsselbundfreigabe.

Schritt 2: Remote Config-Singleton-Objekt abrufen

Rufen Sie eine Remote Config-Objektinstanz ab und legen Sie die minimales Abrufintervall, 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 In-App-Standardparameterwerte zu speichern, aktualisierte Parameterwerte aus dem Backend und steuern, wann abgerufene Werte die für Ihre App verfügbar sind.

Während der Entwicklung empfiehlt es sich, eine relativ niedrige Mindestabrufmenge festzulegen Intervall. Weitere Informationen finden Sie unter Drosselung.

Schritt 3: Standardparameterwerte in der App festlegen

Sie können im Remote Config-Objekt Standardparameterwerte für die App festlegen, damit sie sich wie vorgesehen verhält, bevor eine Verbindung zum Remote Config-Backend hergestellt wird. Außerdem sind dann Standardwerte verfügbar, falls 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

Sie können jetzt Parameterwerte aus dem Remote Config-Objekt abrufen. Wenn Sie Werte im Backend festlegen, abrufen und dann aktivieren, sind diese Werte für Ihre App verfügbar. Andernfalls werden die In-App-Parameterwerte zurückgegeben, die mit setDefaults() konfiguriert wurden.

Um diese Werte zu erhalten, rufen Sie die unten aufgeführte Methode auf, die dem Datentyp wird von Ihrer App erwartet. Geben Sie dabei den Parameterschlüssel als Argument an:

  • getBool()
  • getDouble()
  • getInt()
  • getString()

Schritt 5: Parameterwerte im Remote Config-Backend festlegen

Mit der Firebase Console oder der Remote Config-Back-End APIs können Sie neue serverseitige Standardwerte erstellen, die die In-App-Werte überschreiben, gemäß der gewünschten bedingten Logik oder dem Nutzer-Targeting aus. Dieser Abschnitt beschreibt die Schritte zum Erstellen dieser Werte in der Firebase Console.

  1. Öffnen Sie Ihr Projekt in der Firebase Console.
  2. Wählen Sie im Menü Remote Config aus, um das Remote Config-Dashboard aufzurufen.
  3. Definieren Sie Parameter mit denselben Namen wie die Parameter in Ihrer App. Sie können für jeden Parameter einen Standardwert festlegen, der den entsprechenden In-App-Standardwert ü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

  1. Rufen Sie die Methode fetch() auf, um Parameterwerte aus dem Remote Config-Backend abzurufen. Alle Werte, die Sie im Backend festlegen, werden abgerufen. und im Remote Config-Objekt gespeichert.

  2. 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 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 eine reibungslose Nutzung für Ihre Nutzer gewährleistet, z. B. wenn der Nutzer Ihre App das nächste Mal öffnet. Weitere Informationen und Beispiele finden Sie unter Ladestrategien für Remote Config.

Schritt 7: In Echtzeit nach Updates suchen

Nachdem Sie Parameterwerte abgerufen haben, können Sie mit Remote Config in Echtzeit auf Aktualisierungen des Remote Config-Backends warten. Echtzeit-Remote Config-Signale für verbundenen Geräten, wenn Updates verfügbar sind, und ruft automatisch die ändert sich nach der Veröffentlichung einer neuen Remote Config-Version.

Beachten Sie, dass Remote Config in Echtzeit für das Web nicht verfügbar ist.

  1. Verwenden Sie onConfigUpdated in Ihrer App, um auf Updates zu warten und ruft automatisch alle neuen Parameterwerte ab.

     remoteConfig.onConfigUpdated.listen((event) async {
       await remoteConfig.activate();
    
       // Use the new config values here.
     });
    
  2. Wenn Sie das nächste Mal eine neue Version Ihrer Remote Config veröffentlichen, werden Geräte, die Ihre App wird ausgeführt und durch das Warten auf Änderungen wird die neue Konfiguration aktiviert.

Drosselung

Wenn eine App innerhalb kurzer Zeit zu oft abgerufen wird, werden Abrufaufrufe 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 innerhalb eines Zeitraums von 12 Stunden nicht mehr als einmal aus dem Backend abgerufen werden, unabhängig davon, wie viele Abrufaufrufe tatsächlich ausgeführt werden.

Wenn Sie während der App-Entwicklung keine Remote Config in Echtzeit verwenden (was wir empfehlen), sollten Sie Konfigurationen sehr häufig (mehrmals pro Stunde) abrufen und aktivieren, damit Sie beim Entwickeln und Testen Ihrer App schnell durchlaufen können. Um die schnelle Iteration in einem Projekt mit bis zu 10 Entwicklern zu ermöglichen, können Sie vorübergehend ein niedriges Mindestabrufintervall mit setConfigSettings() festlegen.

final remoteConfig = FirebaseRemoteConfig.instance;
await remoteConfig.setConfigSettings(RemoteConfigSettings(
    fetchTimeout: const Duration(minutes: 1),
    minimumFetchInterval: const Duration(minutes: 5),
));

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: