Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Inizia con Firebase Remote Config for Unity

Puoi utilizzare Firebase Remote Config per definire i parametri nella tua app e aggiornare i loro valori nel cloud, permettendoti 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 back-end di Remote Config e controllare quando i valori recuperati vengono resi disponibili per l'app. Per ulteriori informazioni, vedere Strategie di caricamento di Remote Config .

Questa guida ti guida attraverso i passaggi per iniziare e fornisce un codice di esempio, tutto disponibile per la clonazione o il download dal repository GitHub firebase / quickstart-unity .

Aggiungi Remote Config alla tua app

Prima di poter utilizzare Remote Config , è necessario:

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

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

    • Se non hai un progetto Unity, puoi scaricare un'app di esempio .

  • Aggiungi Firebase Unity SDK (in particolare, FirebaseRemoteConfig.unitypackage ) al tuo progetto Unity.

Tieni presente che l'aggiunta di Firebase al tuo progetto Unity implica attività sia nella console Firebase che nel tuo progetto Unity aperto (ad esempio, scarichi i file di configurazione di Firebase dalla console, quindi li sposti nel tuo 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 backend. Ciò consente alla tua app di comportarsi come previsto prima di connettersi al back-end di Remote Config.

Per fare ciò, crea un dizionario di stringhe e popolalo con coppie chiave / valore che rappresentano i valori predefiniti che desideri aggiungere. (Le proprietà non stringa verranno convertite nel tipo della proprietà quando viene chiamato SetDefaults .)

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.SetDefaults(defaults);

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 back-end di Remote Config, li recuperi e poi li attivi, quei valori sono disponibili per la tua app. Altrimenti, ottieni i valori dei parametri in-app configurati utilizzando SetDefaults () .

Per ottenere questi valori, utilizzare GetValue () , fornendo la chiave del parametro come argomento. Ciò restituisce un ConfigValue , che ha proprietà per convertire il valore in vari tipi di base.

Collega la tua app alla console Firebase

Nella console Firebase , aggiungi la tua app al tuo progetto Firebase.

Imposta i valori dei parametri

  1. Nella console Firebase , apri il tuo progetto.
  2. Selezionare Remote Config dal menu per visualizzare il dashboard di 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 alla fine sovrascriverà il valore predefinito in-app) e valori condizionali. Per saperne di più, vedi Parametri e condizioni di Remote Config .

Recupera e attiva i valori (se necessario)

Per recuperare i valori dei parametri dal backend di Remote Config, chiama il metodo FetchAsync() . Tutti i valori impostati nel 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.FetchAsync(
      TimeSpan.Zero);
  return fetchTask.ContinueWithOnMainThread(FetchComplete);
}

I valori recuperati tramite FetchAsync() vengono memorizzati nella cache locale al termine del recupero, ma non vengono resi disponibili fino a quando non viene richiamato ActivateFetched() . Poiché FetchAsync() viene eseguito in modo asincrono, ciò consente di garantire che i nuovi valori non vengano applicati durante il calcolo o in altri momenti che potrebbero causare problemi o comportamenti strani.

(Facoltativo) Abilita la modalità sviluppatore

Per abilitare la modalità sviluppatore, che può essere utilizzata per disabilitare la limitazione durante lo sviluppo, puoi utilizzare la proprietà FirebaseRemoteConfig.Setting , impostando un nuovo ConfigSettings con IsDeveloperMode impostato su true.

Prossimi passi

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