import android.preference.PreferenceManager;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
// then you use
prefs.getBoolean("keystring", true);
Aggiornamento
Secondo Shared Preferences | Android Developer Tutorial (Part 13) da Sai Geetha M N,
Molte applicazioni possono fornire un modo per catturare le preferenze degli utenti sui impostazioni di una specifica applicazione o un'attività. Per supportare lo , Android fornisce un semplice set di API.
Le preferenze sono in genere coppie di valori nominali. Possono essere memorizzati come "Preferenze condivise" attraverso varie attività in un'applicazione (nota attualmente non può essere condivisa tra i processi). Oppure può essere qualcosa che deve essere memorizzato specifico per un'attività.
Preferenze condivise: Le preferenze condivisi possono essere utilizzati da tutti i componenti (attività, servizi, ecc) delle applicazioni.
Preferenze di gestione attività: queste preferenze possono essere utilizzate solo all'interno di una determinata attività e non possono essere utilizzate da altri componenti dell'applicazione.
Preferenze condivise:
Le preferenze condivise sono gestite con l'aiuto di getSharedPreferences
metodo della classe Context
. Le preferenze sono memorizzate in un file predefinito (1) oppure è possibile specificare un nome file (2) da utilizzare per fare riferimento alle preferenze.
(1) Il metodo consigliato è quello di utilizzare la modalità di default, senza specificare il nome del file
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
(2) Ecco come si ottiene l'istanza quando si specifica il nome del file
public static final String PREF_FILE_NAME = "PrefFile";
SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);
MODE_PRIVATE
è la modalità operativa per le preferenze. È la modalità predefinita e significa che il file creato sarà accessibile solo dall'applicazione chiamante. Altre due modalità supportate sono MODE_WORLD_READABLE
e MODE_WORLD_WRITEABLE
. Nell'applicazione MODE_WORLD_READABLE
un'altra applicazione può leggere il file creato ma non può modificarlo. Nel caso di MODE_WORLD_WRITEABLE
, anche altre applicazioni dispongono di autorizzazioni di scrittura per il file creato.
Infine, una volta che hai l'istanza preferenze, ecco come si può recuperare i valori memorizzati dalle preferenze:
int storedPreference = preferences.getInt("storedInt", 0);
Per memorizzare i valori nel file di preferenze SharedPreference.Editor
oggetto deve essere usato . Editor
è un'interfaccia nidificata nella classe SharedPreference
.
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();
Editor supporta anche metodi come remove()
e clear()
per eliminare i valori di preferenza dal file.
Preferenze
attività:
Le preferenze condivise possono essere utilizzati da altri componenti dell'applicazione. Ma se non hai bisogno di condividere le preferenze con altri componenti e vuoi avere preferenze private di attività, puoi farlo con l'aiuto del metodo getPreferences()
dell'attività. Il metodo getPreference
utilizza il metodo getSharedPreferences()
con il nome della classe di attività per il nome file di preferenza.
seguito è il codice per ottenere preferenze
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
int storedPreference = preferences.getInt("storedInt", 0);
Il codice per memorizzare valori è anche lo stesso come nel caso delle preferenze condivise.
SharedPreferences preferences = getPreference(MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();
È inoltre possibile utilizzare altri metodi come la memorizzazione dello stato di attività nel database. Nota Android contiene anche un pacchetto chiamato android.preference
. Il pacchetto definisce le classi per implementare l'interfaccia utente delle preferenze dell'applicazione.
Per vedere altri esempi, controllare il post di Android Data Storage sul sito degli sviluppatori.
+1: u salvato il mio giorno .. nessuno dei tutorial/esempi su Internet parla di questo. parlano solo di funzionalità e personalizzazioni, ma non di come leggerlo. – ankitjaininfo
btw, qual è il nome del file in questo caso? – ankitjaininfo
Vedere il mio aggiornamento della risposta, e il nome del file è qualcosa come 'pacchetto.prefs', ma non sono sicuro. – Pentium10