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 dell'app senza distribuire un aggiornamento dell'app.

La libreria Remote Config viene utilizzata per archiviare i valori dei parametri predefiniti in-app, recuperare i valori dei parametri aggiornati dal backend Remote Config e controllare quando i valori recuperati vengono resi disponibili per l'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:

  • Registrare il progetto C++ e configurarlo per l'utilizzo di Firebase.

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

  • Aggiungere l'Firebase C++ SDK 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 di Firebase dalla console, quindi 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 dei parametri predefiniti in-app

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

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

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

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

Passaggio 4: ottieni valori parametro da usare nell'app

Ora puoi ottenere i valori dei parametri dall'oggetto Remote Config. Se hai impostato i valori nel backend Remote Config, li hai recuperati e poi li hai attivati, questi valori sono disponibili per la tua app. In caso contrario, ottieni i valori dei parametri 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 di un parametro

  1. Nella Firebase console, apri il progetto.
  2. Seleziona Remote Config dal menu per visualizzare la dashboard Remote Config.
  3. Definisci i parametri con gli stessi nomi dei parametri definiti in nell'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 Remote Config parametri e condizioni.

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 per ascoltare gli aggiornamenti dal backend Remote Config. Real-time Remote Config segnala ai dispositivi connessi quando sono disponibili aggiornamenti e recupera automaticamente le modifiche dopo la pubblicazione di una nuova Remote Config versione.

Gli aggiornamenti in tempo reale sono supportati dall'Firebase C++ SDK v11.0.0 e 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 ascoltano le modifiche chiameranno il listener di aggiornamento della configurazione.