Pierwsze kroki ze Zdalnej konfiguracji Firebase


Za pomocą Zdalnej konfiguracji Firebase możesz zdefiniować parametry w aplikacji i aktualizować ich wartości w chmurze, co pozwala modyfikować wygląd i działanie aplikacji bez jej rozpowszechniania. W tym przewodniku opisujemy, od czego zacząć, i przedstawiamy przykładowego kodu.

Krok 1. Dodaj do aplikacji Firebase i pakiet SDK Zdalnej konfiguracji

  1. Zainstaluj i zainicjuj pakiety SDK Firebase na potrzeby Flutter, jeśli: jeszcze tego nie zrobiliśmy.

  2. W przypadku Zdalnej konfiguracji usługa Google Analytics jest wymagana do obsługi kierowanie warunkowe instancji aplikacji właściwości użytkowników i odbiorców. Upewnij się, że włącz Google Analytics w swoim projekcie.

  3. W katalogu głównym projektu Flutter uruchom to polecenie aby zainstalować wtyczkę Zdalnej konfiguracji:

    flutter pub add firebase_remote_config
    

    Podczas konfigurowania Zdalnej konfiguracji musisz też dodać pakiet SDK Firebase. dla Google Analytics do aplikacji:

    flutter pub add firebase_analytics
    
  4. Przebuduj projekt:

    flutter run
    
  5. Jeśli używasz Zdalnej konfiguracji w systemie macOS, włącz Udostępnianie pęku kluczy w Xcode.

.

Krok 2. Pobierz obiekt klasy typu singleton Zdalnej konfiguracji

Pobierz instancję obiektu Zdalnej konfiguracji i ustaw minimalny interwał pobierania umożliwiający częste odświeżanie:

final remoteConfig = FirebaseRemoteConfig.instance;
await remoteConfig.setConfigSettings(RemoteConfigSettings(
    fetchTimeout: const Duration(minutes: 1),
    minimumFetchInterval: const Duration(hours: 1),
));

Obiekt singleton służy do przechowywania domyślnych wartości parametrów w aplikacji, pobierania aktualizacji wartości parametrów z backendu i kontrolować, kiedy pobierane wartości dostępnych w Twojej aplikacji.

Podczas programowania zalecamy ustawienie stosunkowo niskiej minimalnej wartości pobierania interwału. Więcej informacji znajdziesz w sekcji Ograniczanie wykorzystania.

Krok 3. Ustaw domyślne wartości parametrów w aplikacji

Wartości domyślne parametrów w aplikacji możesz ustawić w Zdalnej konfiguracji. dzięki czemu aplikacja działa zgodnie z oczekiwaniami jeszcze przed nawiązaniem połączenia backend Zdalnej konfiguracji, dzięki czemu dostępne są wartości domyślne, jeśli nie są ustawionym w backendzie.

await remoteConfig.setDefaults(const {
    "example_param_1": 42,
    "example_param_2": 3.14159,
    "example_param_3": true,
    "example_param_4": "Hello, world!",
});

Krok 4. Pobierz wartości parametrów do wykorzystania w aplikacji

Teraz możesz pobierać wartości parametrów z obiektu Zdalnej konfiguracji. Jeśli ustawisz w backendzie, pobierz je, a następnie aktywuj, te wartości są dostępne dla aplikacji. W przeciwnym razie aplikacja wartości parametrów skonfigurowanych za pomocą funkcji setDefaults().

Aby uzyskać te wartości, wywołaj podaną poniżej metodę, która jest mapowana na typ danych oczekiwanych przez aplikację, podając klucz parametru jako argument:

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

Krok 5. Ustaw wartości parametrów w backendzie Zdalnej konfiguracji

Za pomocą konsoli Firebase lub interfejsy API backendu Zdalnej konfiguracji, możesz utworzyć nowe domyślne wartości po stronie serwera, które zastąpią wartości w aplikacji zgodnie z logiką warunkową lub kierowaniem na użytkowników. Ta sekcja i opis czynności tworzenia tych wartości w konsoli Firebase.

  1. W konsoli Firebase otwórz projekt.
  2. Aby ją wyświetlić, wybierz z menu Zdalna konfiguracja. panelu.
  3. Zdefiniuj parametry o takich samych nazwach jak parametry zdefiniowane w sekcji do aplikacji. Dla każdego parametru możesz ustawić wartość domyślną (która będzie ostatecznie zastąpić odpowiednią wartość domyślną w aplikacji). ustawić wartości warunkowe. Więcej informacji znajdziesz w sekcji Parametry Zdalnej konfiguracji i Warunki.

Krok 6. Pobierz i aktywuj wartości

  1. Aby pobrać wartości parametrów z backendu Zdalnej konfiguracji, wywołaj funkcję Metoda fetch(). Wszystkie wartości ustawione w backendzie są pobierane i przechowywane w obiekcie Zdalnej konfiguracji.

  2. Aby udostępnić aplikacji pobrane wartości parametrów, wywołaj metodę Metoda activate().

    W przypadku, gdy chcesz pobrać i aktywować wartości w jednym wywołaniu, może użyć żądania fetchAndActivate() do pobrania wartości z Backend Zdalnej konfiguracji i udostępnianie ich aplikacji:

    await remoteConfig.fetchAndActivate();
    

Te zaktualizowane wartości parametrów wpływają na działanie i wygląd Twojej aplikacji, musisz aktywować pobrane wartości w takim czasie, aby zapewnić dla użytkownika, np. gdy następnym razem otworzy . Zapoznaj się ze strategiami wczytywania Zdalnej konfiguracji. .

Krok 7. Nasłuchuj aktualizacji w czasie rzeczywistym

Po pobraniu wartości parametrów możesz używać Zdalnej konfiguracji w czasie rzeczywistym do nasłuchiwania do sprawdzania aktualizacji z backendu Zdalnej konfiguracji. Sygnały Zdalnej konfiguracji w czasie rzeczywistym do urządzeń, gdy dostępne są aktualizacje i automatycznie pobiera zmian po opublikowaniu nowej wersji Zdalnej konfiguracji.

Pamiętaj, że Zdalna konfiguracja w czasie rzeczywistym jest niedostępna w przeglądarkach.

  1. Użyj aplikacji onConfigUpdated, aby zacząć nasłuchiwać aktualizacji i automatycznego pobierania nowych wartości parametrów.

     remoteConfig.onConfigUpdated.listen((event) async {
       await remoteConfig.activate();
    
       // Use the new config values here.
     });
    
  2. Gdy następnym razem opublikujesz nową wersję Zdalnej konfiguracji, urządzenia, które Gdy aplikacja jest uruchomiona, nasłuchiwanie zmian spowoduje aktywowanie nowej konfiguracji.

.

Ograniczenia

Jeśli aplikacja pobierze zbyt wiele razy w krótkim okresie, i wartość parametru lastFetchStatus w elemencie FirebaseRemoteConfig będzie mieć wartość RemoteConfigFetchStatus.throttle.

Domyślny minimalny interwał pobierania dla Zdalnej konfiguracji to 12 godzin, co oznacza, że konfiguracje są pobierane z backendu nie częściej niż raz w ciągu 12 godzin niezależnie od tego, ile zostało w rzeczywistości wywołań pobierania.

Jeśli podczas tworzenia aplikacji nie używasz Zdalnej konfiguracji w czasie rzeczywistym (które zalecane), warto często pobierać i aktywować konfiguracje. (wiele razy na godzinę), co pozwala na szybkie iteracje w trakcie opracowywania i testowania . Aby zapewnić szybką iterację projektu z udziałem nawet 10 deweloperów: może tymczasowo ustawić niski minimalny interwał pobierania za pomocą funkcji setConfigSettings().

final remoteConfig = FirebaseRemoteConfig.instance;
await remoteConfig.setConfigSettings(RemoteConfigSettings(
    fetchTimeout: const Duration(minutes: 1),
    minimumFetchInterval: const Duration(minutes: 5),
));

Dalsze kroki

Jeśli jeszcze nie znasz Remote Config, przypadkach użycia i przyjrzyj się niektórym dokumentację kluczowych koncepcji i zaawansowanych strategii, w tym: