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 eseguono il mapping al 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 dei parametri definiti 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 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 aver pubblicato 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.