Inizia con Firebase Remote Config


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 dei parametri predefiniti in-app, recuperare i valori dei parametri aggiornati dal backend Remote Config e controllare quando i valori recuperati vengono resi disponibili alla tua app. Per ulteriori informazioni, consulta Strategie di caricamento di Remote Config .

Passaggio 1: aggiungi Firebase alla tua app

Prima di poter utilizzare Remote Config , è necessario:

  • Registra il tuo progetto C++ e configuralo per utilizzare Firebase.

    Se il tuo progetto C++ utilizza già Firebase, significa che è 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 console Firebase che nel tuo progetto C++ aperto (ad esempio, scarichi i file di configurazione Firebase dalla console, quindi li sposti nel tuo progetto C++).

Passaggio 2: aggiungi Remote Config alla tua app

Androide

Dopo aver aggiunto Firebase alla tua app:

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

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

  2. Inizializza la libreria Remote Config, come mostrato:

    ::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:

    ::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'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 sono impostati nessuno sul backend.

  1. Definire un set di nomi di parametri e valori di parametro predefiniti utilizzando un oggetto std::map<const char*, const char*> o un oggetto std::map<const char*, firebase::Variant> .

    Se hai già configurato i valori dei parametri backend di Remote Config, puoi scaricare un file che contiene queste coppie chiave/valore e utilizzarlo per costruire l'oggetto della map . Per ulteriori informazioni, consulta Scaricare le impostazioni predefinite del modello Remote Config .

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

Passaggio 4: ottieni i valori dei parametri da utilizzare nella tua app

Ora puoi ottenere i valori dei parametri dall'oggetto Remote Config. Se imposti valori nel backend Remote Config, li recuperi e quindi li attivi, tali valori saranno disponibili per la tua app. Altrimenti, ottieni i valori dei parametri in-app configurati utilizzando SetDefaults() .

Per ottenere questi valori, chiama il metodo elencato di seguito che mappa il tipo di dati previsto dalla tua app, fornendo la chiave del parametro come argomento:

Passaggio 5: impostare i valori dei parametri

  1. Nella console Firebase , apri il tuo progetto.
  2. Selezionare Remote Config dal menu per visualizzare il dashboard Remote Config.
  3. Definisci i parametri con gli stessi nomi dei parametri che hai definito nella tua app. Per ogni parametro, puoi impostare un valore predefinito (che eventualmente sovrascriverà il valore predefinito in-app) e valori condizionali. Per ulteriori informazioni, 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, chiamare il metodo Fetch() . Tutti i valori impostati sul backend vengono recuperati e memorizzati nella cache nell'oggetto Remote Config.
  2. Per rendere disponibili per la tua app i valori dei parametri recuperati, chiama 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. Remote Config in tempo reale segnala ai dispositivi collegati quando sono disponibili aggiornamenti e recupera automaticamente le modifiche dopo aver pubblicato una nuova versione di Remote Config.

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

  1. Nella tua app, chiama AddOnConfigUpdateListener per iniziare ad ascoltare gli aggiornamenti e recuperare automaticamente tutti i valori dei parametri nuovi o aggiornati. L'esempio seguente ascolta gli aggiornamenti e, quando viene chiamato Activate , usa 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 sono in ascolto delle modifiche chiameranno il listener di aggiornamento della configurazione.

Prossimi passi

Se non l'hai già fatto, esplora i casi d'uso di configurazione remota e dai un'occhiata ad alcuni dei concetti chiave e alla documentazione di strategie avanzate, tra cui: