Erste Schritte mit Remote Config in C++

Plattform auswählen : iOS+ Android Web Flutter Unity C++


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

Die Remote Config Bibliothek wird verwendet, um Standardparameterwerte in der App zu speichern, aktualisierte Parameterwerte aus dem Remote Config Backend abzurufen und zu steuern, wann abgerufene Werte für Ihre App verfügbar gemacht werden. Weitere Informationen finden Sie unter Remote Config-Ladestrategien.

Schritt 1: Firebase zu Ihrer App hinzufügen

Bevor Sie Remote Config, verwenden können, müssen Sie Folgendes tun:

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

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

  • Fügen Sie Ihrem C++-Projekt das Firebase C++ SDK hinzu.

Das Hinzufügen von Firebase zu Ihrem C++-Projekt umfasst Aufgaben in der Firebase Console und in Ihrem geöffneten C++-Projekt. Sie laden beispielsweise Firebase-Konfigurationsdateien aus der Console herunter und verschieben sie dann in Ihr C++-Projekt.

Schritt 2: Remote Config zu Ihrer App hinzufügen

Android

Nachdem Sie Firebase zu Ihrer App hinzugefügt haben, gehen Sie so vor:

  1. Erstellen Sie eine Firebase-App und übergeben Sie die JNI-Umgebung und die Aktivität:

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

  2. Initialisieren Sie die Remote Config Bibliothek wie unten gezeigt:

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

iOS+

Nachdem Sie Firebase zu Ihrer App hinzugefügt haben, gehen Sie so vor:

  1. Erstellen Sie eine Firebase-App:

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

  2. Initialisieren Sie die Remote Config Bibliothek wie unten gezeigt:

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

Schritt 3: Standardparameterwerte in der App festlegen

Sie können Standardparameterwerte in der App im Remote Config Objekt festlegen, damit sich Ihre App wie gewünscht verhält, bevor sie eine Verbindung zum Remote Config Backend herstellt. Außerdem sind so Standardwerte verfügbar, wenn im Backend keine festgelegt sind.

  1. Definieren Sie eine Reihe von Parameternamen und Standardparameterwerten mit einem ConfigKeyValue* Objekt oder einem ConfigKeyValueVariant* Objekt mit der Größe des Arrays.

    Wenn Sie bereits Remote Config Backend-Parameter Werte konfiguriert haben, können Sie eine Datei mit diesen Schlüssel/Wert-Paaren herunterladen und damit Ihr map Objekt erstellen. Weitere Informationen finden Sie unter Standardwerte für Remote Config Vorlagen herunterladen.

  2. Fügen Sie diese Werte dem Remote Config Objekt mit SetDefaults() hinzu.

Schritt 4: Parameterwerte zur Verwendung in Ihrer App abrufen

Jetzt können Sie Parameterwerte aus dem Remote Config Objekt abrufen. Wenn Sie Werte im Remote Config Backend festgelegt, abgerufen und dann aktiviert haben, sind diese Werte für Ihre App verfügbar. Andernfalls erhalten Sie die Parameterwerte in der App, die mit SetDefaults()konfiguriert wurden.

Rufen Sie eine der folgenden Methoden auf, die dem von Ihrer App erwarteten Datentyp entsprechen, und geben Sie den Parameterschlüssel als Argument an, um diese Werte abzurufen:

Schritt 5: Parameterwerte festlegen

  1. Öffnen Sie in der Firebase Console Ihr Projekt.
  2. Wählen Sie im Menü Remote Config aus, um das Remote Config Dashboard aufzurufen.
  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 den Standardwert in der App überschreibt) und bedingte Werte festlegen. Weitere Informationen finden Sie unter Remote Config Parameter und Bedingungen.

Schritt 6: Werte abrufen und aktivieren

  1. Rufen Sie die Fetch() Methode auf, um Parameterwerte aus dem Remote Config Backend abzurufen. Alle Werte, die Sie im Backend festgelegt haben, werden abgerufen und im Remote Config Objekt im Cache gespeichert.
  2. Rufen Sie die ActivateFetched() auf, um abgerufene Parameterwerte für Ihre App verfügbar zu machen.

Schritt 7: In Echtzeit auf Updates warten

Nachdem Sie Parameterwerte abgerufen haben, können Sie mit Remote Config in Echtzeit auf Updates aus dem Remote Config-Backend warten.Remote ConfigRemote Config Echtzeit Remote Config signalisiert verbundenen Geräten, wenn Updates verfügbar sind, und ruft die Änderungen automatisch ab, nachdem Sie eine neue Remote Config Version veröffentlicht haben.

Updates in Echtzeit werden vom Firebase C++ SDK ab Version 11.0.0 für Android- und Apple-Plattformen unterstützt.

  1. Rufen Sie in Ihrer App AddOnConfigUpdateListener auf, um auf Updates zu warten und automatisch neue oder aktualisierte Parameterwerte abzurufen. Im folgenden Beispiel wird auf Updates gewartet und wenn Activate aufgerufen wird, werden die neu abgerufenen Werte verwendet, um eine aktualisierte Willkommensnachricht anzuzeigen.
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);
      }
    });

Wenn Sie das nächste Mal eine neue Version von Remote Config veröffentlichen, rufen Geräte , auf denen Ihre App ausgeführt wird und die auf Änderungen warten, den Konfig urationsupdate-Listener auf.