Xamarin.EssentialsPreferenze:

La classe Preferences consente di archiviare le preferenze dell'applicazione in un archivio chiave/valore.

Operazioni preliminari

Per iniziare a usare questa API, leggere la guida introduttiva per Xamarin.Essentials assicurarsi che la libreria sia installata e configurata correttamente nei progetti.

Uso di Preferences

Aggiungere un riferimento a Xamarin.Essentials nella classe :

using Xamarin.Essentials;

Per salvare un valore per una determinata chiave nelle preferenze:

Preferences.Set("my_key", "my_value");

Per recuperare un valore dalle preferenze o un'impostazione predefinita se non impostata:

var myValue = Preferences.Get("my_key", "default_value");

Per verificare se una determinata chiave esiste nelle preferenze:

bool hasKey = Preferences.ContainsKey("my_key");

Per rimuovere la chiave dalle preferenze:

Preferences.Remove("my_key");

Per rimuovere tutte le preferenze:

Preferences.Clear();

Suggerimento

I metodi precedenti accettano un parametro facoltativo string denominato sharedName. Questo parametro viene usato per creare contenitori aggiuntivi per le preferenze utili in alcuni casi d'uso. Un caso d'uso è quando l'applicazione deve condividere le preferenze tra le estensioni o per un'applicazione watch. Leggere le specifiche dell'implementazione della piattaforma di seguito.

Tipi di dati supportati

In Preferences sono supportati i tipi di dati seguenti:

  • bool
  • double
  • int
  • float
  • long
  • string
  • DateTime

Integrazione con System Impostazioni

Le preferenze vengono archiviate in modo nativo, che consente di integrare le impostazioni nelle impostazioni di sistema native. Seguire la documentazione e gli esempi della piattaforma per l'integrazione con la piattaforma:

Dettagli dell'implementazione

I valori di DateTime vengono archiviati in un formato binario a 64 bit (long integer) usando due metodi definiti dalla classe DateTime: il metodo ToBinary viene usato per codificare il valore DateTime e il metodo FromBinary decodifica il valore. Vedere la documentazione di questi metodi per le modifiche che potrebbero essere apportate ai valori decodificati quando viene archiviato un valore DateTime non UTC (Coordinated Universal Time).

Informazioni di implementazione specifiche della piattaforma

Tutti i dati vengono archiviati nelle preferenze condivise. Se non viene specificato alcun valore sharedName , vengono utilizzate le preferenze condivise predefinite. In caso contrario, il nome viene usato per ottenere preferenze condivise private con il nome specificato.

Persistenza

La disinstallazione dell'applicazione comporta la rimozione di tutte le preferenze, ad eccezione delle app destinate ed eseguite in Android 6.0 (livello API 23) o versioni successive che usano il backup automatico. Questa funzionalità è attivata per impostazione predefinita e conserva i dati dell'app che includono le preferenze condivise, utilizzate dall'API Preferences. Per disabilitarla, seguire la documentazione di Google.

Limiti

Quando si archivia una stringa, questa API è progettata per l'archiviazione di piccole quantità di testo. Le prestazioni potrebbero risultare basse se si prova a usarla per archiviare grandi quantità di testo.

API

Altri video di Xamarin sono disponibili su Channel 9 e YouTube.