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?
Themen in diesem Leitfaden:
- Weitere Informationen zur Client-Server-Beziehung, die Echtzeitaktualisierungen unterstützt
- Informationen zur Funktionsweise der Echtzeitfunktionen im SDK
- Hier erfahren Sie, wie Sie mithilfe von Echtzeitaktualisierungen Ihre Anwendungskonfiguration auf dem neuesten Stand halten.
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 Entwertungssignal empfängt, wird es automatisch abgerufen. Anschließend wird 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 erfolgt, sind keine Abhängigkeiten von anderen Bibliotheken erforderlich.
Auf Updates warten
Echtzeitaktualisierungen ergänzen Remote Config fetch
-Anrufe. Wir empfehlen, beim Start Ihrer App (oder irgendwann während des Lebenszyklus Ihrer App) den Abruf aufzurufen und während der Nutzersitzung auf Remote Config-Echtzeitaktualisierungen zu warten, damit Sie die neuesten Werte erhalten, 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 Callback ist oft eine gute Möglichkeit, activate
zu verwenden, um die aktualisierten Konfigurationsparameter für deine App zur Verfügung zu stellen. 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 den Aufruf der Methode fetch
oder durch Echtzeit-Remote Config) 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.
Nachfolgende Aufrufe wiederverwenden dieselbe Verbindung und Multiplexing der Entwertungsnachricht, wie in Echtzeit-Client-Server-Verbindung beschrieben.
Der Aufruf gibt eine Listener-Registrierung mit einer Methode namens
remove
.
Speichern Sie die Referenz in der Listener-Registrierung, um die Überwachung zu beenden. Rufen Sie remove
auf, um das Zuhö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
Unter Erste Schritte mit FirebaseRemote Config erfahren Sie, wie Sie Remote Config konfigurieren und in Echtzeit auf Updates warten.