Za pomocą Zdalnej konfiguracji Firebase możesz definiować parametry w aplikacji i aktualizować ich wartości w chmurze. Pozwala to zmieniać wygląd i działanie aplikacji bez jej aktualizowania.
Biblioteka Zdalnej konfiguracji służy do przechowywania domyślnych wartości parametrów w aplikacji, pobierania zaktualizowanych wartości parametrów z backendu Zdalnej konfiguracji i kontrolowania, kiedy pobrane wartości mają być udostępniane aplikacji. Więcej informacji znajdziesz w artykule Strategie wczytywania Zdalnej konfiguracji.
Krok 1. Dodaj Firebase do swojej aplikacji
Zanim użyjesz Zdalnej konfiguracji, musisz:
Zarejestruj swój projekt C++ i skonfiguruj go pod kątem 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 projektu w C++.
Pamiętaj, że dodanie Firebase do projektu C++ wymaga wykonania zadań zarówno w konsoli Firebase, jak i w otwartym projekcie C++ (np. musisz pobrać pliki konfiguracyjne Firebase z konsoli, a następnie przenieść je do projektu C++).
Krok 2. Dodaj Zdalną konfigurację do swojej aplikacji
Android
Po dodaniu Firebase do aplikacji:
Utwórz aplikację Firebase, przekazując w środowisku JNI oraz Aktywność:
app = ::firebase::App::Create(::firebase::AppOptions(), jni_env, activity);
Zainicjuj bibliotekę Zdalnej konfiguracji:
::firebase::remote_config::Initialize(app);
iOS+
Po dodaniu Firebase do aplikacji:
Utwórz aplikację Firebase:
app = ::firebase::App::Create(::firebase::AppOptions());
Zainicjuj bibliotekę Zdalnej konfiguracji:
::firebase::remote_config::Initialize(app);
Krok 3. Ustaw domyślne wartości parametrów w aplikacji
W obiekcie Zdalnej konfiguracji możesz ustawić domyślne wartości parametrów aplikacji, aby aplikacja działała prawidłowo, zanim połączy się z backendem Zdalnej konfiguracji, a jeśli w backendzie nie zostaną ustawione żadne wartości domyślne, będą one dostępne.
Zdefiniuj zbiór nazw parametrów i domyślne wartości parametrów za pomocą obiektu
std::map<const char*, const char*>
lub obiektustd::map<const char*, firebase::Variant>
.- Dowiedz się więcej o
firebase::Variant
.
Jeśli masz już skonfigurowane pary parametrów backendu Zdalnej konfiguracji, możesz pobrać plik zawierający te pary klucz/wartość i użyć go do utworzenia obiektu
map
. Więcej informacji znajdziesz w artykule o pobieraniu wartości domyślnych szablonów Zdalnej konfiguracji.- Dowiedz się więcej o
Dodaj te wartości do obiektu Zdalnej konfiguracji za pomocą narzędzia
SetDefaults()
.
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 wartości w backendzie Zdalnej konfiguracji, pobierzesz je i aktywujesz, będą one dostępne dla Twojej aplikacji. W przeciwnym razie Twoje wartości parametrów w aplikacji zostaną skonfigurowane za pomocą parametru SetDefaults()
.
Aby uzyskać te wartości, wywołaj podaną poniżej metodę, która jest mapowana na typ danych spodziewany przez aplikację, podając klucz parametru jako argument:
Krok 5. Ustaw wartości parametrów
- W konsoli Firebase otwórz projekt.
- Aby wyświetlić panel Zdalnej konfiguracji, wybierz z menu Zdalna konfiguracja.
- 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. Więcej informacji znajdziesz w artykule Parametry i warunki Zdalnej konfiguracji.
Krok 6. Pobierz i aktywuj wartości
- Aby pobrać wartości parametrów z backendu Zdalnej konfiguracji, wywołaj metodę
Fetch()
. Wszystkie wartości ustawione w backendzie są pobierane i buforowane w obiekcie Zdalnej konfiguracji. - Aby udostępnić aplikacji pobrane wartości parametrów, wywołaj
ActivateFetched()
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 aktualizacji z backendu Zdalnej konfiguracji. Zdalna konfiguracja wysyła do połączonych urządzeń sygnały w czasie rzeczywistym o dostępności 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 na platformy Android i Apple.
- W swojej aplikacji wywołaj
AddOnConfigUpdateListener
, aby zacząć nasłuchiwać aktualizacji i automatycznie pobierać nowe lub zaktualizowane wartości parametrów. Poniższy przykład nasłuchuje aktualizacji, a po wywołaniu funkcjiActivate
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ą detektor aktualizacji konfiguracji.
Dalsze kroki
Zapoznaj się z przypadkami użycia Zdalnej konfiguracji i zapoznaniem się z niektórymi kluczowymi pojęciami i dokumentacją zaawansowanych strategii, w tym: