Beginnen Sie mit Firebase Remote Config


Sie können Firebase Remote Config verwenden, um Parameter in Ihrer App zu definieren und ihre Werte in der Cloud zu aktualisieren, sodass Sie das Erscheinungsbild und Verhalten Ihrer App ändern können, ohne ein App-Update zu verteilen. Dieser Leitfaden führt Sie durch die Schritte für den Einstieg und stellt einige Beispielcodes bereit.

Schritt 1: Fügen Sie Firebase und das Remote Config SDK zu Ihrer App hinzu

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

  2. Für Remote Config ist Google Analytics für die bedingte Ausrichtung von App-Instanzen auf Benutzereigenschaften und Zielgruppen erforderlich. Stellen Sie sicher, dass Sie Google Analytics in Ihrem Projekt aktivieren .

  3. Führen Sie im Stammverzeichnis Ihres Flutter-Projekts den folgenden Befehl aus, um das Remote Config-Plugin zu installieren:

    flutter pub add firebase_remote_config
    

    Außerdem müssen Sie im Rahmen der Einrichtung von Remote Config das Firebase SDK für Google Analytics zu Ihrer App hinzufügen:

    flutter pub add firebase_analytics
    
  4. Erstellen Sie Ihr Projekt neu:

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

Schritt 2: Rufen Sie das Remote Config-Singleton-Objekt ab

Rufen Sie eine Remote Config-Objektinstanz ab 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 In-App-Standardparameterwerte zu speichern, aktualisierte Parameterwerte vom Backend abzurufen und zu steuern, wann abgerufene Werte Ihrer App zur Verfügung gestellt werden.

Während der Entwicklung wird empfohlen, ein relativ niedriges Mindestabrufintervall festzulegen. Weitere Informationen finden Sie unter Drosselung .

Schritt 3: In-App-Standardparameterwerte festlegen

Sie können In-App-Standardparameterwerte im Remote Config-Objekt festlegen, sodass sich Ihre App wie vorgesehen verhält, bevor sie eine Verbindung zum Remote Config-Backend herstellt, und sodass Standardwerte verfügbar sind, 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: Rufen Sie Parameterwerte zur Verwendung in Ihrer App ab

Jetzt können Sie Parameterwerte vom Remote Config-Objekt abrufen. Wenn Sie im Backend Werte festlegen, diese abrufen und dann aktivieren, stehen diese Werte Ihrer App zur Verfügung. Andernfalls erhalten Sie die mit setDefaults() konfigurierten In-App-Parameterwerte.

Um diese Werte zu erhalten, rufen Sie die unten aufgeführte Methode auf, die dem von Ihrer App erwarteten Datentyp zuordnet, und geben Sie den Parameterschlüssel als Argument an:

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

Schritt 5: Parameterwerte im Remote Config-Backend festlegen

Mit der Firebase-Konsole oder den Remote Config-Backend-APIs können Sie neue serverseitige Standardwerte erstellen, die die In-App-Werte entsprechend Ihrer gewünschten bedingten Logik oder Benutzerausrichtung überschreiben. In diesem Abschnitt werden die Schritte der Firebase-Konsole zum Erstellen dieser Werte beschrieben.

  1. Öffnen Sie in der Firebase-Konsole Ihr Projekt.
  2. Wählen Sie „Remote-Konfiguration“ aus dem Menü, um das Remote-Konfigurations-Dashboard anzuzeigen.
  3. 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 letztendlich den entsprechenden In-App-Standardwert überschreibt) und Sie können auch bedingte Werte festlegen. Weitere Informationen finden Sie unter Remote-Konfigurationsparameter und -Bedingungen .

Schritt 6: Werte abrufen und aktivieren

  1. Um Parameterwerte vom Remote Config-Backend abzurufen, rufen Sie die Methode fetch() auf. Alle Werte, die Sie im Backend festlegen, werden abgerufen und im Remote Config-Objekt gespeichert.

  2. Um abgerufene Parameterwerte für Ihre App verfügbar zu machen, rufen Sie die Methode activate() auf.

    In Fällen, in denen 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 der App zur Verfügung zu stellen:

    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 ein reibungsloses Erlebnis für Ihren Benutzer gewährleistet, z. B. wenn der Benutzer Ihre App das nächste Mal öffnet. Weitere Informationen und Beispiele finden Sie unter Ladestrategien für Remote-Konfigurationen .

Schritt 7: Warten Sie in Echtzeit auf Aktualisierungen

Nachdem Sie Parameterwerte abgerufen haben, können Sie Remote Config in Echtzeit verwenden, um auf Aktualisierungen vom Remote Config-Backend zu warten. Echtzeit-Remote-Config signalisiert angeschlossenen Geräten, wenn Updates verfügbar sind, und ruft die Änderungen automatisch ab, nachdem Sie eine neue Remote-Config-Version veröffentlicht haben.

Beachten Sie, dass die Echtzeit-Remotekonfiguration für das Web nicht verfügbar ist.

  1. Verwenden Sie in Ihrer App onConfigUpdated , um auf Aktualisierungen zu warten und alle neuen Parameterwerte automatisch abzurufen.

     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-Konfiguration veröffentlichen, aktivieren Geräte, auf denen Ihre App ausgeführt wird und auf Änderungen wartet, die neue Konfiguration.

Drosselung

Wenn eine App in einem kurzen Zeitraum zu oft Abrufe durchführt, werden Abrufaufrufe gedrosselt und der Wert der lastFetchStatus Eigenschaft von FirebaseRemoteConfig lautet RemoteConfigFetchStatus.throttle .

Das standardmäßige Mindestabrufintervall für Remote Config beträgt 12 Stunden, was bedeutet, dass Konfigurationen nicht mehr als einmal in einem 12-Stunden-Fenster vom Backend abgerufen werden, unabhängig davon, wie viele Abrufaufrufe tatsächlich getätigt werden.

Wenn Sie während der App-Entwicklung nicht die Echtzeit-Remotekonfiguration verwenden (was wir empfehlen), möchten Sie Konfigurationen möglicherweise sehr häufig (mehrmals pro Stunde) abrufen und aktivieren, damit Sie beim Entwickeln und Testen Ihrer App schnell iterieren können. Um eine schnelle Iteration eines Projekts 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),
));

Nächste Schritte

Wenn Sie es noch nicht getan haben, erkunden Sie die Remote -Konfigurations -Anwendungsfälle und sehen Sie sich einige der wichtigsten Konzepte und erweiterten Strategien an, darunter: