Catch up on everthing we announced at this year's Firebase Summit. Learn more

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 usata per archiviare i valori dei parametri predefiniti in-app, recuperare i valori dei parametri aggiornati dal back-end di Remote Config e controllare quando i valori recuperati sono resi disponibili per la tua app. Per ulteriori informazioni, vedere le strategie di carico Configurazione remota .

Questa guida ti guida attraverso i passi per iniziare e fornisce alcuni esempi di codice, ognuno dei quali è disponibile per clonare o il download dal Firebase / quickstart-unità repository GitHub.

Aggiungi Remote Config alla tua app

Prima di poter utilizzare Configurazione remota , è necessario:

  • Registra il tuo progetto Unity e configuralo per utilizzare Firebase.

    • Se il tuo progetto Unity utilizza già Firebase, è già registrato e configurato per Firebase.

    • Se non si dispone di un progetto Unity, è possibile scaricare un'applicazione di esempio .

  • Aggiungere la Firebase Unity SDK (in particolare, FirebaseRemoteConfig.unitypackage ) al progetto Unity.

Si noti che l'aggiunta di Firebase al progetto Unity comporta compiti sia nella console Firebase e nel progetto Unity aperta (ad esempio, si scaricano i file di configurazione Firebase dalla console, poi li sposta nel vostro progetto Unity).

Imposta i valori dei parametri predefiniti in-app

È possibile impostare i valori dei parametri predefiniti nell'oggetto Remote Config, da utilizzare se non sono stati recuperati altri valori dal back-end. Ciò consente alla tua app di comportarsi come previsto prima di connettersi al backend di Remote Config.

Per fare ciò, creare un dizionario di stringhe e popolarlo con coppie chiave/valore che rappresentano i valori predefiniti che si desidera aggiungere. (Proprietà non stringa verranno convertiti in tipo della proprietà quando SetDefaultsAsync() viene chiamato).

System.Collections.Generic.Dictionary<string, object> defaults =
  new System.Collections.Generic.Dictionary<string, object>();

// These are the values that are used if we haven't fetched data from the
// server
// yet, or if we ask for values that the server doesn't have:
defaults.Add("config_test_string", "default local string");
defaults.Add("config_test_int", 1);
defaults.Add("config_test_float", 1.0);
defaults.Add("config_test_bool", false);

Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.SetDefaultsAsync(defaults)
  .ContinueWithOnMainThread(task => {

Ottieni i valori dei parametri da utilizzare nella tua app

Ora puoi ottenere i valori dei parametri dall'oggetto Remote Config. Se imposti i valori nel backend di Remote Config, li prendi e poi li attivi, quei valori sono disponibili per la tua app. In caso contrario, si ottengono i valori dei parametri in-app configurati utilizzando SetDefaultsAsync() .

Per ottenere questi valori, utilizzare GetValue() , che fornisce il tasto del parametro come argomento. Questo restituisce un ConfigValue , che ha proprietà per convertire il valore in varie tipologie di base.

Collega la tua app alla console Firebase

Nella console Firebase , aggiungi la tua app per il vostro progetto Firebase.

Imposta i valori dei parametri

  1. Nella console Firebase , aprire il progetto.
  2. Selezionare Configurazione remota dal menu per visualizzare il cruscotto Configurazione remota.
  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 alla fine sovrascriverà il valore predefinito in-app) e valori condizionali. Per ulteriori informazioni, vedere i parametri Remote Config e condizioni .

Recupera e attiva i valori (se necessario)

Per recuperare i valori dei parametri dal backend Configurazione remota, chiamare il FetchAsync() metodo. Tutti i valori impostati sul back-end vengono recuperati e memorizzati nella cache nell'oggetto Remote Config.

// Start a fetch request.
// FetchAsync only fetches new data if the current data is older than the provided
// timespan.  Otherwise it assumes the data is "recent enough", and does nothing.
// By default the timespan is 12 hours, and for production apps, this is a good
// number. For this example though, it's set to a timespan of zero, so that
// changes in the console will always show up immediately.
public Task FetchDataAsync() {
  DebugLog("Fetching data...");
  System.Threading.Tasks.Task fetchTask =
  Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.FetchAsync(
      TimeSpan.Zero);
  return fetchTask.ContinueWithOnMainThread(FetchComplete);
}

I valori recuperati tramite FetchAsync() vengono memorizzati nella cache locale quando la Completa fetch ma non sono messi a disposizione fino ActivateFetched() viene richiamato. Dal momento che FetchAsync() viene eseguito in modo asincrono, questo consente di garantire che i nuovi valori non vengono applicati a metà di calcolo, o in altri momenti che potrebbero causare problemi o comportamenti strani.

(Facoltativo) Abilita la modalità sviluppatore

Per attivare la modalità sviluppatore, che può essere utilizzato per la limitazione disabilitare durante lo sviluppo, è possibile utilizzare la FirebaseRemoteConfig.Setting proprietà, stabilendo un nuovo ConfigSettings con IsDeveloperMode impostata su true.

Prossimi passi

Se non l'hai già, esplorare le Configurazione remota casi d'uso , e dare un'occhiata ad alcuni dei concetti chiave e avanzati documentazione strategie, tra cui: