Mit Remote Config in Echtzeit erhalten Sie aktualisierte Parameterschlüssel und ‑werte, sobald sie auf dem Server veröffentlicht werden. So können Sie alle Arten von App-Attributen, die mit einem Remote Config-Parameterwert gesteuert werden, schnell aktualisieren. Mit Echtzeit-Remote Config-Updates haben Sie folgende Möglichkeiten:
- Sie können das Risiko verringern, indem Sie Funktionen schrittweise für die gewünschten Nutzer einführen und bei Bedarf einen Notfall-Rollback ausführen.
- Sie können die Nutzerinteraktion steigern, indem Sie die Nutzererfahrung während der Nutzung der App schnell anpassen. So können Sie beispielsweise Banner aktualisieren und Anreize für Nutzer anbieten, die bestimmten Google Analytics-Nutzereigenschaften entsprechen, oder die Spielschwierigkeit für Kohorten von Spielern dynamisch anpassen.
- Buildabhängigkeiten reduzieren und Entwicklerproduktivität steigern: Verwenden Sie Remote Config-Parameter als Feature-Flags, um Funktionen für Ihre Entwicklungs- und Testteams freizugeben und sie für Nutzer in der Produktion auszublenden.
Weitere Informationen zu den Möglichkeiten der Verwendung von Remote Config finden Sie unter Was kann ich mit Remote Config tun?
In diesem Leitfaden erfahren Sie Folgendes:
- Weitere Informationen zur Client-Server-Beziehung, die Echtzeitaktualisierungen unterstützt
- Informationen zur Funktionsweise der Echtzeitfunktionen im SDK
- Informationen zum Aktualisieren der App-Konfiguration mithilfe von Echtzeitaktualisierungen
Die Echtzeit-Client-Server-Verbindung
Wenn Sie Remote Config in Echtzeit in Ihrer App implementieren, erstellen Sie einen Echtzeit-Listener, der eine HTTP-Verbindung zum Remote Config-Backend öffnet. Die Anfrage enthält die Konfigurationsversion, die derzeit auf dem Gerät im Cache gespeichert ist. Der Echtzeit-Remote Config-Server verwendet eine Invalidation-Nachricht, um der App zu signalisieren, wann eine neuere Version einer serverseitigen Konfiguration abgerufen werden soll.
Wenn der Server eine neuere Version hat, sendet er das Invalidation-Signal sofort.
Wenn keine neuere Version vorhanden ist, hält er die Verbindung offen und wartet, bis eine auf dem Server veröffentlicht wird. Wenn das Client-SDK ein Invalidation-Signal empfängt, wird es automatisch abgerufen und der Listener-Callback aufgerufen, der beim Öffnen der Listener-Verbindung registriert wurde. Dieser Abruf ähnelt dem Abrufaufruf, den Sie mit dem SDK ausführen können, er überspringt jedoch alle Caching- oder minimumFetchInterval
-Einstellungen. Die Client-Server-Verbindung wird aufrechterhalten, solange die App im Vordergrund ausgeführt wird.
Da die Client-Server-Verbindung über HTTP hergestellt wird, sind keine Abhängigkeiten von anderen Bibliotheken erforderlich.
Auf Updates achten
Echtzeitaktualisierungen ergänzen Remote Config fetch
-Anrufe. Wir empfehlen, die Funktion „fetch“ beim Starten der App (oder irgendwann während des App-Lebenszyklus) aufzurufen und während der Nutzersitzung auf Remote Config-Aktualisierungen in Echtzeit zu warten, damit Sie die neuesten Werte haben, sobald sie auf dem Server veröffentlicht werden.
Rufe
addOnConfigUpdateListener
undauf, um nach Updates zu suchen. Im Hintergrund wird damit der Empfang von Updates vom Remote Config-Server gestartet.Remote Config Weitere Informationen zur Client-Server-Beziehung finden Sie im vorherigen Abschnitt.
Der Rückruf ist oft ein guter Ort, um activate
zu verwenden, um die aktualisierten Konfigurationsparameter für Ihre App verfügbar zu machen. Weitere Strategien zum Aktivieren von Parameterwerten bei Verwendung von Remote Config in Echtzeit finden Sie unter Firebase-Remote Config-Ladestrategien.
Parameterwerte selektiv aktivieren
Wenn Sie
addOnConfigUpdateListener
oderaufrufen, können Sie auf die Änderung warten und sie aktivieren.
onUpdate
-Callback wird aufgerufen, wenn sowohl eine neue Version der Vorlage automatisch abgerufen wurde als auch diese neue Version Änderungen an den derzeit aktivierten Parameterwerten in der App enthält.
Diese Callbacks werden mit dem Parameter configUpdate
aufgerufen. configUpdate
enthält,, updatedKeys
und. Das sind die geänderten Parameterschlüssel, die die Echtzeitaktualisierung initiiert haben. Dazu gehören:
- Parameterschlüssel hinzugefügt oder entfernt
- Parameterschlüssel, deren Werte sich geändert haben
- Parameterschlüssel, deren Metadaten sich geändert haben (z. B. Remote Config-Personalisierungsinformationen)
- Parameterschlüssel, deren Wertquelle sich geändert hat (z. B. ein In-App-Standardwert, der in einen serverseitigen Wert aktualisiert wird)
Wenn Sie einen Echtzeit-Listener in einer bestimmten Ansicht in Ihrer App verwenden, können Sie vor der Aktivierung prüfen, ob sich die für diese Ansicht relevanten Parameter geändert haben.
Gelegentlich führt ein Abruf (entweder durch Aufrufen der fetch
-Methode oder durch Remote Config in Echtzeit) nicht zu einer Aktualisierung für den Client. In diesen Fällen werden die Methode oder der Abschluss von
onUpdate
nicht aufgerufen.
Listener hinzufügen und entfernen
addOnConfigUpdateListener
ist der Haupteinstiegspunkt für Echtzeit-Remote Config. Wenn Sie diesen Listener zum ersten Mal im Lebenszyklus Ihrer App aufrufen, wird die Verbindung zum Backend hergestellt.
Bei nachfolgenden Aufrufen wird dieselbe Verbindung wiederverwendet und die Invalidation-Nachricht, die in der Echtzeit-Client-Server-Verbindung beschrieben wurde, wird multiplext.
Der Aufruf gibt eine „Listener-Registrierung“ zurück, die eine Methode namens
remove
.
Wenn Sie das Zuhören beenden möchten, speichern Sie die Referenz auf die Registrierung des Listeners. Rufen Sie remove
auf, um das Abhören an dieser Registrierung zu beenden. Wenn es sich um den einzigen registrierten Listener handelt, wird durch den Aufruf von remove
die Echtzeitverbindung zum Server geschlossen.
Nächste Schritte
Weitere Informationen finden Sie unter Erste Schritte mit Firebase Remote Config. Dort erfahren Sie, wie Sie Remote Config konfigurieren und in Echtzeit nach Updates suchen.