QNA > C > Cosa Sono Le "Preferenze Condivise" In Android E Quando Si Usano?

Cosa sono le "preferenze condivise" in Android e quando si usano?

Android permette di memorizzare i dati in diversi formati. Ma, facciamo la gestione della sessione utente di Android usando le preferenze condivise, proprio perché le preferenze condivise funzionano sulla base di Key-Pair e rispondono velocemente.

main-qimg-05ef0fb29ed36ce6973b1e03e5d347af

La sessione è utile quando si desidera memorizzare i dati utente globalmente in tutta l'applicazione. Questo può essere fatto in due modi. Uno è la memorizzazione nelle variabili globali e il secondo è la memorizzazione dei dati nelle preferenze condivise.

Il problema con la memorizzazione dei dati nella variabile globale è che i dati saranno persi una volta che l'utente chiude l'applicazione. Ma la memorizzazione dei dati nelle preferenze condivise sarà persistente anche se l'utente chiude l'applicazione.

Android Shared Preferences Overview

Android memorizza le impostazioni Shared Preferences come un file XML nella cartella shared_prefs. SharedPreferences è specifico per l'applicazione. cioè i dati vengono persi quando si esegue una delle seguenti opzioni:

  • alla disinstallazione dell'applicazione
  • alla cancellazione dei dati dell'applicazione (attraverso Impostazioni>>>Applicazioni)

Seguono le modalità operative applicabili:

Nella sintassi sopra, il primo parametro è la chiave e il secondo parametro è il MODO. Oltre a private, ci sono altre modalità disponibili che sono elencate di seguito:

  • MODE_PRIVATE: la modalità predefinita, in cui il file creato può essere accessibile solo dall'applicazione chiamante.
  • MODE_WORLD_READABLE: questa modalità permette ad altre applicazioni di leggere le preferenze.
  • MODE_WORLD_WRITEABLE: creare file scrivibili a livello mondiale è molto pericoloso, e può causare falle nella sicurezza delle applicazioni.
  • MODE_MULTI_PROCESS: Questo metodo controllerà la modifica delle preferenze anche se l'istanza delle preferenze condivise è già stata caricata.
  • MODE_APPEND: Questo appenderà le nuove preferenze con quelle già esistenti.
  • MODE_ENABLE_WRITE_AHEAD_LOGGING: Flag di apertura del database. Quando è impostato, abilita il logging write-ahead per default.

Inizializzazione

  1. SharedPreferences pref = getApplicationContext().getSharedPreferences("MyPref", 0); 
  2. Editor editor = pref.edit(); 

Storing Data

All the primitive data types like booleans, floats, ints, longs, and strings are supported. Call editor.commit() in order to save changes to shared preferences…

  1. editor.putBoolean("key_name", true); // Storing boolean - true/false 
  2. editor.putString("key_name", "string value"); // Storing string 
  3. editor.putInt("key_name", "int value"); // Storing integer 
  4. editor.putFloat("key_name", "float value"); // Storing float 
  5. editor.putLong("key_name", "long value"); // Storing long 
  6.  
  7. editor.apply(); // commit changes 

Clearing or Deleting Data

If you want to delete from shared preferences you can call remove(“key_name”) to delete that particular value. If you want to delete all the data, call clear()...(more)

Di Kama

Perché Animal Crossing: New Horizons è così coinvolgente? :: Come macinare su Animal Crossing: New Horizons
Link utili