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

Erste Schritte mit Firebase Remote Config

Sie können Firebase Remote Config verwenden, um Parameter in Ihrer App zu definieren und ihre Werte in der Cloud zu aktualisieren, sodass Sie das Aussehen und Verhalten Ihrer App ändern können, ohne ein App-Update zu verteilen.

Die Remote Config-Bibliothek wird verwendet, um In-App-Standardparameterwerte zu speichern, aktualisierte Parameterwerte aus dem Remote Config-Back-End abzurufen und zu steuern, wann abgerufene Werte für Ihre App verfügbar gemacht werden. Um mehr zu erfahren, siehe Remote - Config Ladestrategien .

Dieser Leitfaden führt Sie durch die einzelnen Schritte , um loszulegen und bietet einige Beispiel - Code, die alle zu klonen oder Download von der zur Verfügung Feuerbasis / quickstart-Einheit GitHub - Repository.

Füge Remote Config zu deiner App hinzu

Bevor Sie können Remote - Config , müssen Sie:

  • Registrieren Sie Ihr Unity-Projekt und konfigurieren Sie es für die Verwendung von Firebase.

    • Wenn Ihr Unity-Projekt bereits Firebase verwendet, ist es bereits für Firebase registriert und konfiguriert.

    • Wenn Sie nicht über ein Unity - Projekt haben, können Sie eine Download - Beispielanwendung .

  • Fügen Sie die Firebase Unity SDK (genauer gesagt, FirebaseRemoteConfig.unitypackage ) , um Ihre Unity - Projekt.

Beachten Sie, dass das Hinzufügen Firebase zu Ihrer Unity Projektaufgabe beinhaltet sowohl in der Firebase - Konsole und in Ihrem geöffneten Projekt Unity (zum Beispiel downloaden Sie Config - Dateien Firebase aus der Konsole, dann in der Unity - Projekt bewegen).

In-App-Standardparameterwerte festlegen

Sie können im Remote Config-Objekt Standardparameterwerte festlegen, die verwendet werden sollen, wenn keine anderen Werte vom Backend abgerufen wurden. Dadurch kann sich Ihre App wie beabsichtigt verhalten, bevor sie sich mit dem Remote Config-Back-End verbindet.

Erstellen Sie dazu ein Zeichenfolgenwörterbuch und füllen Sie es mit Schlüssel/Wert-Paaren, die die Standardwerte darstellen, die Sie hinzufügen möchten. (Non-String - Eigenschaften werden die Typen der Eigenschaft umgewandelt werden , wenn SetDefaultsAsync() aufgerufen wird ).

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 => {

Abrufen von Parameterwerten zur Verwendung in Ihrer App

Jetzt können Sie Parameterwerte aus dem Remote Config-Objekt abrufen. Wenn Sie im Remote Config-Back-End Werte festlegen, diese abrufen und dann aktivieren, stehen diese Werte Ihrer App zur Verfügung. Andernfalls erhalten Sie die In-App - Parameterwerte konfiguriert mit SetDefaultsAsync() .

Um diese Werte zu erhalten, verwenden Sie GetValue() , um den Parameter Schlüssel als Argument bereitgestellt wird . Dies gibt eine ConfigValue , die Eigenschaften hat , den Wert in verschiedenen Basistypen zu konvertieren.

Verbinden Sie Ihre App in der Firebase-Konsole

In der Firebase Konsole , fügen Sie Ihre App auf Ihr Projekt Firebase.

Parameterwerte einstellen

  1. In der Firebase Konsole , öffnen Sie Ihr Projekt.
  2. Wählen Sie Remote Config aus dem Menü die Remote Config - Dashboard anzuzeigen.
  3. Definieren Sie Parameter mit denselben Namen wie die Parameter, die Sie in Ihrer App definiert haben. Für jeden Parameter können Sie einen Standardwert (der schließlich den In-App-Standardwert überschreibt) und bedingte Werte festlegen. Um mehr zu erfahren, siehe Remote - Config - Parameter und Bedingungen .

Werte abrufen und aktivieren (nach Bedarf)

Um Parameterwerte aus dem Remote - Config - Backend, rufen Sie das Fetch FetchAsync() Methode. Alle Werte, die Sie im Back-End festlegen, werden abgerufen und im Remote Config-Objekt zwischengespeichert.

// 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);
}

Werte geholt über FetchAsync() werden lokal zwischengespeichert , wenn das abgeschlossen ist holen, sind aber nicht zur Verfügung gestellt , bis ActivateFetched() aufgerufen wird . Da FetchAsync() asynchron ausgeführt wird , dies ermöglicht es Ihnen , um sicherzustellen , dass die neuen Werte nicht angewendet Mitte Berechnung oder zu anderen Zeiten , die Probleme oder seltsame Verhalten verursachen könnten.

(Optional) Entwicklermodus aktivieren

So aktivieren Sie Entwicklermodus, die zu deaktivieren Drosselung während der Entwicklung verwendet werden kann, können Sie die Verwendung FirebaseRemoteConfig.Setting Eigenschaft, eine neue Einstellung ConfigSettings mit IsDeveloperMode Satz auf true.

Nächste Schritte

Wenn Sie nicht bereits haben, erkunden Sie die Remote - Config Use Cases , und werfen Sie einen Blick auf einige der wichtigsten Konzepte und fortgeschrittene Strategien Dokumentation, einschließlich: