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.
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
- SharedPreferences pref = getApplicationContext().getSharedPreferences("MyPref", 0);
- 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…
- editor.putBoolean("key_name", true); // Storing boolean - true/false
- editor.putString("key_name", "string value"); // Storing string
- editor.putInt("key_name", "int value"); // Storing integer
- editor.putFloat("key_name", "float value"); // Storing float
- editor.putLong("key_name", "long value"); // Storing long
- 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)
Articoli simili
- Ogni fornitore di telefoni cellulari ha effettivamente la propria rete, o sono condivise in qualche modo?
- Come possono i turisti stranieri usare le biciclette condivise a Pechino, Cina?
- I caricabatterie del telefono usano energia quando non sono in carica?
- Quando la Chiesa cattolica usa l'incenso? Lo usano mai a novembre?