Catch up on highlights from Firebase at Google I/O 2023. Learn more

Zacznij korzystać ze zdalnej konfiguracji Firebase


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.

Biblioteka zdalnej konfiguracji służy do przechowywania domyślnych wartości parametrów w aplikacji, pobierania zaktualizowanych wartości parametrów z zaplecza zdalnej konfiguracji oraz kontrolowania, kiedy pobrane wartości są udostępniane Twojej aplikacji. Aby dowiedzieć się więcej, zobacz Strategie ładowania zdalnej konfiguracji .

Krok 1: Dodaj Firebase do swojej aplikacji

Aby móc korzystać ze Zdalnej konfiguracji , musisz:

  • Zarejestruj swój projekt C++ i skonfiguruj go do korzystania z Firebase.

    Jeśli Twój projekt C++ korzysta już z Firebase, oznacza to, że jest już zarejestrowany i skonfigurowany dla Firebase.

  • Dodaj zestaw Firebase C++ SDK do swojego projektu C++.

Pamiętaj, że dodanie Firebase do projektu C++ obejmuje zadania zarówno w konsoli Firebase , jak i w otwartym projekcie C++ (na przykład pobierasz pliki konfiguracyjne Firebase z konsoli, a następnie przenosisz je do projektu C++).

Krok 2: Dodaj Zdalną konfigurację do swojej aplikacji

Android

Po dodaniu Firebase do swojej aplikacji:

  1. Utwórz aplikację Firebase, przekazując środowisko JNI i aktywność:

    app = ::firebase::App::Create(::firebase::AppOptions(), jni_env, activity);

  2. Zainicjuj bibliotekę Remote Config, jak pokazano:

    ::firebase::remote_config::Initialize(app);

iOS+

Po dodaniu Firebase do swojej aplikacji:

  1. Utwórz aplikację Firebase:

    app = ::firebase::App::Create(::firebase::AppOptions());

  2. Zainicjuj bibliotekę Remote Config, jak pokazano:

    ::firebase::remote_config::Initialize(app);

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 przeznaczeniem, zanim połączy się z zapleczem Zdalnej konfiguracji, i aby wartości domyślne były dostępne, jeśli żadne nie zostaną ustawione na zapleczu.

  1. Zdefiniuj zestaw nazw parametrów i domyślne wartości parametrów, używając obiektu std::map<const char*, const char*> lub std::map<const char*, firebase::Variant> obiektu.

    Jeśli masz już skonfigurowane wartości parametrów zaplecza Remote Config, możesz pobrać plik zawierający te pary klucz/wartość i użyć go do skonstruowania obiektu map . Aby uzyskać więcej informacji, zobacz Pobieranie ustawień domyślnych szablonu zdalnej konfiguracji .

  2. Dodaj te wartości do obiektu Remote Config za pomocą SetDefaults() .

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 Remote Config, pobierzesz je, a następnie aktywujesz, te wartości 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:

Krok 5: Połącz swoją aplikację w konsoli Firebase

W konsoli Firebase dodaj swoją aplikację do projektu Firebase.

Krok 6: Ustaw wartości parametrów

  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 domyślną wartość w aplikacji) i wartości warunkowe. Aby dowiedzieć się więcej, zobacz Parametry i warunki zdalnej konfiguracji .

Krok 7: Pobierz i aktywuj wartości

  1. Aby pobrać wartości parametrów z zaplecza Remote Config, wywołaj metodę Fetch() . Wszelkie wartości ustawione na zapleczu są pobierane i zapisywane w pamięci podręcznej w obiekcie Zdalna konfiguracja.
  2. Aby udostępnić pobrane wartości parametrów swojej aplikacji, wywołaj metodę ActivateFetched()

Krok 8: Słuchaj aktualizacji w czasie rzeczywistym

Po pobraniu wartości parametrów możesz użyć zdalnej konfiguracji w czasie rzeczywistym do nasłuchiwania aktualizacji z zaplecza zdalnej konfiguracji. Zdalna konfiguracja w czasie rzeczywistym wysyła do podłączonych urządzeń informacje o dostępności aktualizacji i automatycznie pobiera zmiany po opublikowaniu nowej wersji Zdalnej konfiguracji.

Aktualizacje w czasie rzeczywistym są obsługiwane przez zestaw SDK Firebase C++ w wersji 11.0.0+ i nowszej na platformy Android i Apple.

  1. In your app, call AddOnConfigUpdateListener to start listening for updates and automatically fetch any new or updated parameter values. The following example listens for updates and, when Activate is called, uses the newly fetched values to display an updated welcome message.
remote_config->AddOnConfigUpdateListener(
    [](firebase::remote_config::ConfigUpdate&& config_update,
       firebase::remote_config::RemoteConfigError remote_config_error) {
      if (remote_config_error != firebase::remote_config::kRemoteConfigErrorNone) {
        printf("Error listening for config updates: %d", remote_config_error);
      }
      // Search the `updated_keys` set for the key "welcome_message."
      // `updated_keys` represents the keys that have changed since the last
      // fetch.
      if (std::find(config_update.updated_keys.begin(),
                    config_update.updated_keys.end(),
                    "welcome_message") != config_update.updated_keys.end()) {
        remote_config->Activate().OnCompletion(
            [&](const firebase::Future& completed_future,
               void* user_data) {
              // The key "welcome_message" was found within `updated_keys` and
              // can be activated.
              if (completed_future.error() == 0) {
                DisplayWelcomeMessage();
              } else {
                printf("Error activating config: %d", completed_future.error());
              }
            },
            nullptr);
      }
    });

The next time you publish a new version of your Remote Config, devices that are running your app and listening for changes will call the config update listener.

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: