Firebase Remote Config bietet viel Flexibilität dafür, wie und wann neue Werte vom Server abgerufen und in Ihrer App aktiviert werden, sodass Sie eine qualitativ hochwertige Endbenutzererfahrung sicherstellen können, indem Sie das Timing aller sichtbaren Konfigurationsänderungen steuern. Dieser Leitfaden befasst sich mit einigen Ladestrategien und erläutert wichtige Überlegungen zur Auswahl der besten Option für Ihre App.
Strategie 1: Abrufen und beim Laden aktivieren
Bei dieser Strategie würde Ihre App fetchAndActivate()
aufrufen, wenn Ihre App zum ersten Mal gestartet wird, um neue Werte von Remote Config abzurufen und sie zu aktivieren, sobald sie fertig geladen sind. Dieser einfache Ansatz eignet sich gut für Konfigurationsänderungen, die keine dramatischen visuellen Änderungen in Ihrer Benutzeroberfläche verursachen. Es sollte in allen Situationen vermieden werden, in denen sich Ihre Benutzeroberfläche merklich ändern könnte, während Benutzer sie gerade verwenden.
Strategie 2: Aktivieren Sie hinter dem Ladebildschirm
Als Abhilfe für das potenzielle UI-Problem, das in Strategie 1 aufgetreten ist, könnten Sie sich auf einen Ladebildschirm verlassen. Anstatt Ihre App sofort zu starten, zeigen Sie einen Ladebildschirm an und rufen Sie fetchAndActivate
in Ihrem Abschluss-Handler auf. Schließen Sie dann direkt danach – wieder mit einem Rückruf oder einer Benachrichtigung – den Ladebildschirm und erlauben Sie dem Benutzer, mit der Interaktion mit Ihrer App zu beginnen.
Wenn Sie diese Strategie verwenden, wird empfohlen, dem Ladebildschirm ein Timeout hinzuzufügen. Das einminütige Timeout von Remote Config ist möglicherweise zu lang für ein qualitativ hochwertiges App-Starterlebnis für Benutzer.
Strategie 3: Neue Werte für den nächsten Start laden
Eine effektive Strategie besteht darin, neue Konfigurationswerte zu laden, um sie beim nächsten Start Ihrer App zu aktivieren. Bei dieser Strategie aktiviert Ihre App abgerufene Werte beim Start, bevor sie versucht, neue abzurufen, wobei sie davon ausgeht, dass sie möglicherweise bereits neue Konfigurationswerte abgerufen, aber noch nicht aktiviert hat. Die Reihenfolge der Operationen für diese Strategie ist:
- Aktivieren Sie beim Start sofort zuvor abgerufene Werte. Dies wendet alle Werte an, die Sie in einer vorherigen Sitzung vom Server heruntergeladen haben, und erfolgt nahezu augenblicklich.
- Während der Benutzer mit Ihrer App interagiert, starten Sie einen asynchronen Aufruf, um neue Werte gemäß dem standardmäßigen Mindestabrufintervall abzurufen.
- Führen Sie im Abschlusshandler oder Rückruf für den Abrufaufruf nichts aus. Ihre App behält die heruntergeladenen Werte, bis Sie sie beim nächsten Start der App aktivieren.
Mit dieser Strategie wird die Wartezeit der Benutzer stark minimiert. Der Benutzer muss Ihre App jedoch ein zweites Mal ausführen, um die neueste Konfiguration anzuzeigen. Sie müssen diese Überlegungen mit Ihrer Geschäfts- und Anwendungslogik abwägen.
Laden von Anti-Strategien
Wie Sie vielleicht aus der obigen Diskussion über die Vor- und Nachteile des Ladens verstanden haben, gibt es ein paar Nutzungsmuster, die Sie vermeiden sollten.
- Aktualisieren oder wechseln Sie keine Aspekte der Benutzeroberfläche, während der Benutzer sie ansieht oder damit interagiert – es sei denn, Sie haben starke App- oder geschäftliche Gründe dafür, z. B. das Entfernen von Optionen im Zusammenhang mit einer gerade beendeten Werbeaktion.
- Senden Sie keine Massenzahlen gleichzeitiger Abrufanforderungen, da dies dazu führen könnte, dass der Server Ihre App drosselt. Die Risiken dafür sind in den meisten Produktionsszenarien gering, aber es kann ein Problem während der aktiven Entwicklung sein. Sehen Sie sich die Anleitung zur Drosselung für Android- und Apple-Plattformen an.
- Verlassen Sie sich nicht auf die Netzwerkkonnektivität, um Remote Config-Werte zu erhalten. Legen Sie In-App-Standardparameterwerte fest, damit sich Ihre App immer wie erwartet verhält. Sie können die Standardwerte der Anwendung und des Remote Config-Backends regelmäßig synchron halten, indem Sie heruntergeladene Vorlagenstandards verwenden.
Nächste Schritte
Diese drei grundlegenden Strategien stellen keineswegs eine vollständige Liste der Möglichkeiten zum Laden von Konfigurationswerten dar. Abhängig von Ihren Anforderungen könnten Sie viel ausgefeiltere Strategien entwickeln, wie z. B. die funktionsgesteuerten Hintergrundaktualisierungen, die in Aktualisierungen in Echtzeit verbreiten beschrieben werden.
Sehen Sie sich die API-Referenz für Ihre Plattform an, um mehr über die spezifischen Aufrufe zum Abrufen und Aktivieren von Konfigurationswerten zu erfahren.