Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Zacznij korzystać ze zdalnej konfiguracji Firebase

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.


Możesz użyć Firebase Remote Config do definiowania parametrów w swojej aplikacji i aktualizowania ich wartości w chmurze, co pozwala modyfikować wygląd i zachowanie aplikacji bez dystrybucji aktualizacji aplikacji. Ten przewodnik przeprowadzi Cię przez kroki, aby rozpocząć i zawiera przykładowy kod.

Krok 1: Dodaj Firebase i pakiet SDK Remote Config do swojej aplikacji

  1. Zainstaluj i zainicjuj zestawy SDK Firebase dla Flutter , jeśli jeszcze tego nie zrobiłeś.

  2. W przypadku zdalnej konfiguracji usługa Google Analytics jest wymagana do warunkowego kierowania instancji aplikacji na właściwości użytkowników i odbiorców. Upewnij się, że włączysz Google Analytics w swoim projekcie.

  3. W katalogu głównym projektu Flutter uruchom następujące polecenie, aby zainstalować wtyczkę Remote Config:

    flutter pub add firebase_remote_config
    

    Ponadto w ramach konfigurowania zdalnej konfiguracji musisz dodać do swojej aplikacji pakiet Firebase SDK dla Google Analytics:

    flutter pub add firebase_analytics
    
  4. Przebuduj swój projekt:

    flutter run
    

Krok 2: Pobierz pojedynczy obiekt Remote Config

Uzyskaj instancję obiektu Remote Config i ustaw minimalny interwał pobierania, aby umożliwić 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 zaktualizowanych wartości parametrów z zaplecza i kontrolowania, kiedy pobrane wartości są udostępniane Twojej aplikacji.

Podczas programowania zaleca się ustawienie stosunkowo niskiego minimalnego interwału pobierania. Zobacz Ograniczanie , aby uzyskać więcej informacji.

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

Możesz ustawić domyślne wartości parametrów w aplikacji w obiekcie Zdalna konfiguracja, aby Twoja aplikacja zachowywała się zgodnie z oczekiwaniami, zanim połączy się z zapleczem Zdalnej konfiguracji, i aby wartości domyślne były dostępne, jeśli żadne nie zostaną ustawione w zapleczu.

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 uzyskać wartości parametrów z obiektu Remote Config. Jeśli ustawisz wartości w zapleczu, pobierzesz je, a następnie aktywujesz, wartości te będą dostępne dla Twojej aplikacji. W przeciwnym razie otrzymasz wartości parametrów w aplikacji skonfigurowane za pomocą setDefaults() .

Aby uzyskać te wartości, wywołaj metodę wymienioną poniżej, która odwzorowuje typ danych oczekiwany przez aplikację, podając klucz parametru jako argument:

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

Krok 5: Ustaw wartości parametrów w zapleczu Remote Config

Korzystając z konsoli Firebase lub interfejsów API zaplecza Remote Config , możesz tworzyć nowe wartości domyślne po stronie serwera, które zastępują wartości w aplikacji zgodnie z wymaganą logiką warunkową lub kierowaniem na użytkownika. W tej sekcji opisano kroki konsoli Firebase, które należy wykonać, aby utworzyć te wartości.

  1. W konsoli Firebase otwórz swój projekt.
  2. Wybierz opcję Zdalna konfiguracja z menu, aby wyświetlić pulpit nawigacyjny Zdalnej konfiguracji.
  3. Zdefiniuj parametry o takich samych nazwach jak parametry zdefiniowane w aplikacji. Dla każdego parametru możesz ustawić wartość domyślną (która ostatecznie zastąpi odpowiednią wartość domyślną w aplikacji), a także możesz ustawić wartości warunkowe. Aby dowiedzieć się więcej, zobacz Parametry i warunki zdalnej konfiguracji .

Krok 6: Pobierz i aktywuj wartości

  1. Aby pobrać wartości parametrów z zaplecza Remote Config, wywołaj metodę fetch() . Wszelkie wartości ustawione w zapleczu są pobierane i przechowywane w obiekcie Zdalna konfiguracja.

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

    W przypadkach, w których chcesz pobrać i aktywować wartości w jednym wywołaniu, możesz użyć fetchAndActivate() w celu pobrania wartości z zaplecza Remote Config i udostępnienia ich aplikacji:

    await remoteConfig.fetchAndActivate();
    

Ponieważ te zaktualizowane wartości parametrów wpływają na zachowanie i wygląd Twojej aplikacji, należy aktywować pobrane wartości w czasie, który zapewni użytkownikowi bezproblemowe działanie, na przykład przy następnym otwarciu aplikacji przez użytkownika. Zobacz Strategie ładowania zdalnej konfiguracji, aby uzyskać więcej informacji i przykładów.

Ograniczanie

Jeśli aplikacja zostanie pobrana zbyt wiele razy w krótkim czasie, wywołania pobierania zostaną ograniczone, a wartość właściwości FirebaseRemoteConfig lastFetchStatus będzie miała wartość RemoteConfigFetchStatus.throttle .

Domyślny minimalny interwał pobierania dla Zdalnej konfiguracji wynosi 12 godzin, co oznacza, że ​​konfiguracje nie będą pobierane z zaplecza więcej niż raz w ciągu 12 godzin, niezależnie od liczby faktycznie wykonanych wywołań pobierania.

Podczas tworzenia aplikacji możesz chcieć bardzo często pobierać i aktywować konfiguracje (wiele razy na godzinę), aby umożliwić szybkie iteracje podczas opracowywania i testowania aplikacji. Aby dostosować się do szybkiej iteracji projektu z maksymalnie 10 programistami, możesz 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),
));

Next steps

If you haven't already, explore the Remote Config use cases , and take a look at some of the key concepts and advanced strategies documentation, including: