Catch up on everthing we announced at this year's Firebase Summit. Learn more

Zacznij korzystać ze zdalnej konfiguracji Firebase

Za pomocą zdalnej konfiguracji Firebase 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 Zdalna konfiguracja służy do przechowywania domyślnych wartości parametrów w aplikacji, pobierania zaktualizowanych wartości parametrów z zaplecza Zdalnej konfiguracji i kontrolowania, kiedy pobrane wartości są udostępniane Twojej aplikacji. Aby dowiedzieć się więcej, zobacz Remote Config strategie ładowania .

Ten poradnik przeprowadzi Cię przez kolejne etapy zacząć i zapewnia pewne przykładowy kod, z których wszystkie są dostępne dla klonu lub pobrać z Firebase / szybkiego startu-jedności GitHub repozytorium.

Dodaj zdalną konfigurację do swojej aplikacji

Zanim będzie można użyć Remote Config , trzeba:

  • Zarejestruj swój projekt w Unity i skonfiguruj go do korzystania z Firebase.

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

    • Jeśli nie masz projektu Unity, można pobrać aplikację próbki .

  • Dodaj Firebase Unity SDK (konkretnie FirebaseRemoteConfig.unitypackage ) do projektu Unity.

Należy pamiętać, że dodanie Firebase do projektu Unity obejmuje zadania zarówno w konsoli Firebase iw otwartej projektu Unity (na przykład, można pobrać pliki konfiguracyjne Firebase z konsoli, a następnie przenieść je do swojego projektu Unity).

Ustaw domyślne wartości parametrów w aplikacji

Możesz ustawić domyślne wartości parametrów w obiekcie Remote Config, które będą używane, jeśli żadne inne wartości nie zostały pobrane z zaplecza. Dzięki temu aplikacja będzie zachowywać się zgodnie z przeznaczeniem, zanim połączy się z zapleczem zdalnej konfiguracji.

Aby to zrobić, utwórz słownik ciągów i wypełnij go parami klucz/wartość reprezentującymi wartości domyślne, które chcesz dodać. (Właściwości dla STRING zostanie przekształcony do typu w tym miejscu zakwaterowania podczas SetDefaultsAsync() jest wywoływana).

System.Collections.Generic.Dictionary<string, object> defaults =
  new System.Collections.Generic.Dictionary<string, object>();

// These are the values that are used if we haven't fetched data from the
// server
// yet, or if we ask for values that the server doesn't have:
defaults.Add("config_test_string", "default local string");
defaults.Add("config_test_int", 1);
defaults.Add("config_test_float", 1.0);
defaults.Add("config_test_bool", false);

Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.SetDefaultsAsync(defaults)
  .ContinueWithOnMainThread(task => {

Pobierz wartości parametrów do użycia w swojej aplikacji

Teraz możesz pobrać wartości parametrów z obiektu Remote Config. Jeśli ustawisz wartości w zapleczu Zdalnej konfiguracji, pobrałeś je, a następnie aktywujesz, te wartości będą dostępne dla Twojej aplikacji. W przeciwnym razie, można uzyskać wartości parametrów w aplikacji konfigurowany za pomocą SetDefaultsAsync() .

Aby uzyskać te wartości, należy GetValue() , zapewniając Kluczowym parametrem jako argument. Zwraca ConfigValue , który ma właściwości do konwersji wartości do różnych typów bazowych.

Połącz swoją aplikację w konsoli Firebase

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

Ustaw wartości parametrów

  1. W konsoli Firebase otwórz projekt.
  2. Wybierz Remote Config z menu, aby zobaczyć pulpit zdalnego Config.
  3. Zdefiniuj parametry o takich samych nazwach, jak parametry zdefiniowane w Twojej 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 Remote parametry konfiguracyjne i warunków .

Pobierz i aktywuj wartości (w razie potrzeby)

Aby sprowadzić wartości parametrów ze zdalnego konf backend wywołać FetchAsync() sposobu. Wszelkie wartości ustawione w zapleczu są pobierane i buforowane w obiekcie Remote Config.

// Start a fetch request.
// FetchAsync only fetches new data if the current data is older than the provided
// timespan.  Otherwise it assumes the data is "recent enough", and does nothing.
// By default the timespan is 12 hours, and for production apps, this is a good
// number. For this example though, it's set to a timespan of zero, so that
// changes in the console will always show up immediately.
public Task FetchDataAsync() {
  DebugLog("Fetching data...");
  System.Threading.Tasks.Task fetchTask =
  Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.FetchAsync(
      TimeSpan.Zero);
  return fetchTask.ContinueWithOnMainThread(FetchComplete);
}

Wartości pobrane poprzez FetchAsync() są buforowane lokalnie, gdy pobrać zakończeniem, ale nie są udostępniane aż ActivateFetched() jest wywoływana. Od FetchAsync() wykonuje asynchronicznie, to pozwala upewnić się, że nowe wartości nie są stosowane w połowie obliczenia lub w innych terminach, które mogą spowodować problemy lub dziwne zachowanie.

(Opcjonalnie) Włącz tryb programisty

Aby włączyć tryb programisty, który może być używany do wyłączania dławienie podczas rozwoju, można użyć FirebaseRemoteConfig.Setting własności, ustanawiając nowy ConfigSettings z IsDeveloperMode wartość true.

Następne kroki

Jeśli nie masz już, odkrywania Remote Config przypadków użycia , i spojrzeć na niektóre z kluczowych pojęć i zaawansowanej dokumentacji strategii, w tym: