Zacznij korzystać ze zdalnej konfiguracji Firebase


Za pomocą Firebase Remote Config możesz definiować parametry w swojej aplikacji i aktualizować ich wartości w chmurze, co pozwala modyfikować wygląd i zachowanie aplikacji bez rozpowszechniania aktualizacji aplikacji.

Biblioteka Remote Config służy do przechowywania domyślnych wartości parametrów w aplikacji, pobierania zaktualizowanych wartości parametrów z zaplecza Remote Config i 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

Zanim będziesz mógł skorzystać 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 pakiet SDK Firebase C++ 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 działanie:

    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 Remote Config, tak aby aplikacja zachowywała się zgodnie z oczekiwaniami przed połączeniem się z backendem Remote Config, a także aby były dostępne wartości domyślne, jeśli w backendie nie ustawiono żadnych wartości.

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

    Jeśli wartości parametrów zaplecza usługi Remote Config zostały już skonfigurowane, 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 domyślnych szablonów zdalnej konfiguracji .

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

Krok 4: Uzyskaj wartości parametrów do wykorzystania w swojej aplikacji

Teraz możesz uzyskać wartości parametrów z obiektu Remote Config. Jeśli ustawisz wartości w zapleczu zdalnej konfiguracji, pobierzesz je, a następnie aktywujesz, te wartości będą dostępne dla Twojej aplikacji. W przeciwnym razie wartości parametrów w aplikacji zostaną skonfigurowane za pomocą SetDefaults() .

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

Krok 5: 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 wartość domyślną w aplikacji) i 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 backendie są pobierane i buforowane w obiekcie Remote Config.
  2. Aby udostępnić aplikacji pobrane wartości parametrów, wywołaj metodę ActivateFetched()

Krok 7: Słuchaj aktualizacji w czasie rzeczywistym

Po pobraniu wartości parametrów można używać funkcji Remote Config w czasie rzeczywistym do nasłuchiwania aktualizacji z zaplecza Remote Config. Zdalna konfiguracja w czasie rzeczywistym sygnalizuje podłączonym urządzeniom dostępność aktualizacji i automatycznie pobiera zmiany po opublikowaniu nowej wersji Zdalnej konfiguracji.

Aktualizacje w czasie rzeczywistym są obsługiwane przez pakiet SDK Firebase C++ w wersji 11.0.0 lub nowszej dla platform Android i Apple.

  1. W aplikacji wywołaj AddOnConfigUpdateListener , aby rozpocząć nasłuchiwanie aktualizacji i automatycznie pobrać nowe lub zaktualizowane wartości parametrów. Poniższy przykład nasłuchuje aktualizacji i po wywołaniu Activate używa nowo pobranych wartości do wyświetlenia zaktualizowanej wiadomości powitalnej.
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);
      }
    });

Gdy następnym razem opublikujesz nową wersję Zdalnej konfiguracji, urządzenia, na których działa Twoja aplikacja i nasłuchują zmian, wywołają odbiornik aktualizacji konfiguracji.

Następne kroki

Jeśli jeszcze tego nie zrobiłeś, zbadaj zdalne przypadki użycia konfiguracji i spójrz na niektóre z kluczowych koncepcji i zaawansowanych dokumentacji strategii, w tym: