Inizia a utilizzare Remote Config in C++

Seleziona la piattaforma: iOS+ Android Web Flutter Unity C++


Puoi utilizzare Firebase Remote Config per definire i parametri nella tua app e aggiornarne i valori nel cloud, consentendoti di modificare l'aspetto e il comportamento della tua app senza distribuire un aggiornamento dell'app.

La libreria Remote Config viene utilizzata per archiviare i valori parametro predefiniti in-app, recuperare i valori parametro aggiornati dal backend Remote Config e controllare quando i valori recuperati vengono resi disponibili per la tua app. Per saperne di più, consulta Strategie di caricamento di Remote Config.

Passaggio 1: aggiungi Firebase alla tua app

Prima di poter utilizzare Remote Config, devi:

  • Registra il tuo progetto C++ e configuralo in modo che utilizzi Firebase.

    Se il tuo progetto C++ utilizza già Firebase, è già registrato e configurato per Firebase.

  • Aggiungi l'SDK Firebase C++ al tuo progetto C++.

Tieni presente che l'aggiunta di Firebase al tuo progetto C++ comporta attività sia nella Firebase console sia nel progetto C++ aperto (ad esempio, scarichi i file di configurazione Firebase dalla console, poi li sposti nel progetto C++).

Passaggio 2: aggiungi Remote Config alla tua app

Android

Dopo aver aggiunto Firebase alla tua app:

  1. Crea un'app Firebase, passando l'ambiente JNI e l'attività:

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

  2. Inizializza la libreria Remote Config, come mostrato di seguito:

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

iOS+

Dopo aver aggiunto Firebase alla tua app:

  1. Crea un'app Firebase:

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

  2. Inizializza la libreria Remote Config, come mostrato di seguito:

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

Passaggio 3: imposta i valori predefiniti dei parametri in-app

Puoi impostare i valori dei parametri predefiniti in-app nell'oggetto Remote Config, in modo che la tua app si comporti come previsto prima di connettersi al backend Remote Config e in modo che i valori predefiniti siano disponibili se non ne è impostato nessuno nel backend.

  1. Definisci un insieme di nomi di parametri e valori predefiniti dei parametri utilizzando un oggetto ConfigKeyValue* o un oggetto ConfigKeyValueVariant* con la dimensione dell'array.

    Se hai già configurato i valori dei parametri di backend Remote Config, puoi scaricare un file che contiene queste coppie chiave-valore e utilizzarlo per creare l'oggetto map. Per saperne di più, consulta Scarica i valori predefiniti del modello Remote Config.

  2. Aggiungi questi valori all'oggetto Remote Config utilizzando SetDefaults().

Passaggio 4: ottieni i valori dei parametri da utilizzare nell'app

Ora puoi ottenere i valori dei parametri dall'oggetto Remote Config. Se imposti i valori nel backend Remote Config, li recuperi e poi li attivi, questi valori sono disponibili per la tua app. In caso contrario, ottieni i valori parametro in-app configurati utilizzando SetDefaults().

Per ottenere questi valori, chiama uno dei seguenti metodi che mappano il tipo di dati previsto dalla tua app, fornendo la chiave del parametro come argomento:

Passaggio 5: imposta i valori dei parametri

  1. Nella console Firebase, vai a DevOps e coinvolgimento > Remote Config.

  2. Definisci i parametri con gli stessi nomi di quelli definiti nella tua app. Per ogni parametro, puoi impostare un valore predefinito (che alla fine sostituirà il valore predefinito in-app) e valori condizionali. Per saperne di più, consulta Parametri e condizioni di Remote Config.

Passaggio 6: recupera e attiva i valori

  1. Per recuperare i valori dei parametri dal backend Remote Config, chiama il metodo Fetch(). Tutti i valori impostati nel backend vengono recuperati e memorizzati nella cache nell'oggetto Remote Config.
  2. Per rendere disponibili i valori dei parametri recuperati per la tua app, chiama il ActivateFetched()

Passaggio 7: ascolta gli aggiornamenti in tempo reale

Dopo aver recuperato i valori dei parametri, puoi utilizzare Remote Config in tempo reale per ascoltare gli aggiornamenti dal backend Remote Config. Indicatori in tempo reale Remote Config per i dispositivi connessi quando sono disponibili aggiornamenti e recupera automaticamente le modifiche dopo la pubblicazione di una nuova versione di Remote Config.

Gli aggiornamenti in tempo reale sono supportati dall'SDK Firebase C++ v11.0.0 e versioni successive per le piattaforme Android e Apple.

  1. Nella tua app, chiama AddOnConfigUpdateListener per iniziare ad ascoltare gli aggiornamenti e recuperare automaticamente i valori dei parametri nuovi o aggiornati. L'esempio seguente ascolta gli aggiornamenti e, quando viene chiamato Activate, utilizza i valori appena recuperati per visualizzare un messaggio di benvenuto aggiornato.
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);
      }
    });

La prossima volta che pubblichi una nuova versione di Remote Config, i dispositivi che eseguono la tua app e rilevano le modifiche chiameranno il listener di aggiornamento della configurazione.