W czasie rzeczywistym Remote Config możesz otrzymywać zaktualizowane klucze i wartości parametrów, gdy tylko zostaną opublikowane na serwerze. Dzięki temu możesz szybko aktualizować dowolny typ atrybutu aplikacji kontrolowany za pomocą wartości parametru Remote Config. Dzięki aktualizacjom Remote Config w czasie rzeczywistym możesz:
- Zmniejsz ryzyko, wprowadzając funkcje stopniowo u wybranych użytkowników i w razie potrzeby wykonując awaryjne wycofanie.
- Zwiększ zaangażowanie użytkowników, szybko dostosowując ich wrażenia podczas korzystania z aplikacji. Możesz na przykład aktualizować banery i oferować zachęty użytkownikom, którzy spełniają określone Google Analyticskryteria, lub dynamicznie dostosowywać poziom trudności gry do grup graczy.
- Zmniejsz zależności kompilacji i zwiększ produktywność programistów: używaj Remote Config parametrów jako flag funkcji, aby udostępniać funkcje zespołom programistów i testerów, a ukrywaj je przed użytkownikami w wersji produkcyjnej.
Więcej informacji o możliwościach wykorzystania Remote Config znajdziesz w artykule Co możesz robić za pomocą Remote Config?
Z tego przewodnika dowiesz się, jak:
- Dowiedz się więcej o relacji klient–serwer, która obsługuje aktualizacje w czasie rzeczywistym.
- Dowiedz się, jak działa funkcja w czasie rzeczywistym w pakiecie SDK.
- Dowiedz się, jak korzystać z aktualizacji w czasie rzeczywistym, aby utrzymywać konfigurację aplikacji w aktualnym stanie.
Połączenie klienta z serwerem w czasie rzeczywistym
Gdy w aplikacji wdrożesz usługę Remote Config w czasie rzeczywistym, tworzysz odbiorcę w czasie rzeczywistym, który otwiera połączenie HTTP z backendem usługi Remote Config. Żądanie zawiera wersję konfiguracji, która jest obecnie przechowywana w pamięci podręcznej na urządzeniu. Serwer Remote Config w czasie rzeczywistym używa wiadomości unieważnienia, aby poinformować aplikację, że należy pobrać nowszą wersję konfiguracji po stronie serwera.
Jeśli serwer ma nowszą wersję, natychmiast wysyła sygnał o unieważnieniu.
Jeśli nie ma nowszej wersji, utrzymuje połączenie otwarte i czeka, aż zostanie ono opublikowane na serwerze. Gdy klient SDK otrzyma sygnał unieważnienia, automatycznie go pobiera, a następnie wywołuje funkcję wywołania zwrotnego listenera zarejestrowaną podczas otwierania połączenia listenera. Ta metoda pobierania jest podobna do wywołania metody fetch w pakiecie SDK, ale pomija wszelkie ustawienia buforowania i minimumFetchInterval
. Połączenie klienta z serwerem jest utrzymywane, gdy aplikacja działa na pierwszym planie.

Ponieważ połączenie klient-serwer jest nawiązywane przez HTTP, nie wymaga żadnych zależności od innych bibliotek.
Słuchaj aktualizacji
Aktualizacje w czasie rzeczywistym uzupełniają wywołania Remote Config fetch
. Zalecamy wywołanie funkcji pobierania podczas uruchamiania aplikacji (lub w jakimś momencie w trakcie jej cyklu życia) oraz słuchanie w czasie sesji użytkownika aktualizacji funkcji Remote Config w czasie rzeczywistym, aby mieć najnowsze wartości, gdy tylko zostaną opublikowane na serwerze.
Aby sprawdzać aktualizacje, wywołaj funkcję
addOnConfigUpdateListener
,
implementując funkcję wywołania zwrotnego, która jest wywoływana, gdy w aplikacji jest dostępna aktualizacja Remote Config. W tle to wywołanie zaczyna sprawdzać aktualizacje na serwerze Remote Config. Więcej informacji o relacji klient–serwer znajdziesz w poprzedniej sekcji.
Funkcja wywołania zwrotnego jest często odpowiednim miejscem do użycia funkcji activate
, aby udostępnić zaktualizowane parametry konfiguracji aplikacji. Więcej informacji o dodatkowych strategiach aktywowania wartości parametrów podczas korzystania z funkcji Remote Config w czasie rzeczywistym znajdziesz w artykule Strategie ładowania Remote Config w Firebase.
Selektywne aktywowanie wartości parametrów
Gdy zadzwonisz do
addOnConfigUpdateListener
,
możesz poczekać na zmianę i ją aktywować.
onUpdate
jest wywoływana, gdy automatycznie pobierana jest nowa wersja szablonu i w tej nowej wersji występują zmiany w wartościach obecnie aktywnych parametrów w aplikacji.
Te funkcje wywołuje się za pomocą parametru configUpdate
. configUpdate
zawiera
updatedKeys
,
,
co jest zbiorem zmienionych kluczy parametrów, które zapoczątkowały aktualizację w czasie rzeczywistym, i zawiera:
- dodanie lub usunięcie kluczy parametrów.
- klucze parametrów, których wartości uległy zmianie;
- klucze parametrów, których metadane uległy zmianie (np. Remote Configinformacje o personalizacji);
- Klucze parametrów, których źródło wartości uległo zmianie (np. domyślna wartość w aplikacji została zastąpiona wartością po stronie serwera).
Jeśli w określonym widoku w aplikacji używasz odsłuchiwania w czasie rzeczywistym, przed aktywacją możesz sprawdzić, czy parametry związane z tym widokiem uległy zmianie.
Czasami pobranie (inicjowane przez wywołanie metody fetch
lub przez Remote Config w czasie rzeczywistym) nie powoduje aktualizacji klienta. W takich przypadkach metody
onUpdate
metody ani completion nie zostaną wywołane.
Dodawanie i usuwanie słuchaczy
addOnConfigUpdateListener
to główny punkt wejścia do Remote Config w czasie rzeczywistym. Wywołanie tego detektora po raz pierwszy w cyklu życia aplikacji otwiera połączenie z backendem.
Kolejne wywołania używają tego samego połączenia, multipleksując wiadomość o unieważnieniu opisaną w sekcji dotyczącej połączenia klienta z serwerem w czasie rzeczywistym.
Wywołanie zwraca „rejestrację słuchacza”, która ma metodę
remove
.
Aby przestać słuchać, zapisz odwołanie do rejestracji słuchacza. Aby przestać słuchać, zadzwoń do remove
. Jeśli jest to jedyny zarejestrowany odbiorca, wywołanie remove
powoduje zamknięcie połączenia w czasie rzeczywistym z serwerem.
Dalsze kroki
Zapoznaj się z artykułem Rozpoczynanie korzystania z Firebase Remote Config, aby skonfigurować Remote Config i rozpocząć odbieranie aktualizacji w czasie rzeczywistym.