Shared Preferences
são arquivos XML para armazenar dados primitivos privados em pares de valor-chave. Os tipos de dados incluem booleanos , flutuadores , ints , longs e strings .
Quando queremos salvar alguns dados acessíveis em todo o aplicativo, uma maneira de fazer isso é salvá-los na variável global. Mas ele desaparecerá assim que o aplicativo for fechado. Outra maneira recomendada é economizar emSharedPreference
. Os dados salvos no arquivo SharedPreferences são acessíveis em todo o aplicativo e persistem mesmo depois que o aplicativo é fechado ou durante as reinicializações.
SharedPreferences salva os dados no par de chave-valor e pode ser acessado da mesma maneira.
Você pode criar um objeto SharedPreferences
usando dois métodos,
1) getSharedPreferences () : usando esses métodos, você pode criar Multiple SharedPreferences.and seus primeiros parâmetros em nome de SharedPreferences
.
2) getPreferences () : usando esse método, você pode criar Single SharedPreferences
.
Armazenando Dados
Adicionar uma declaração variável / Criar arquivo de preferência
public static final String PREFERENCES_FILE_NAME = "MyAppPreferences";
Recuperar um identificador para o nome do arquivo (usando getSharedPreferences)
SharedPreferences settingsfile= getSharedPreferences(PREFERENCES_FILE_NAME,0);
Abra o Editor e adicione pares de valores-chave
SharedPreferences.Editor myeditor = settingsfile.edit();
myeditor.putBoolean("IITAMIYO", true);
myeditor.putFloat("VOLUME", 0.7)
myeditor.putInt("BORDER", 2)
myeditor.putLong("SIZE", 12345678910L)
myeditor.putString("Name", "Amiyo")
myeditor.apply();
Não se esqueça de aplicar / salvar usando myeditor.apply()
como mostrado acima.
Recuperando dados
SharedPreferences mysettings= getSharedPreferences(PREFERENCES_FILE_NAME, 0);
IITAMIYO = mysettings.getBoolean("IITAMIYO", false);
//returns value for the given key.
//second parameter gives the default value if no user preference found
// (set to false in above case)
VOLUME = mysettings.getFloat("VOLUME", 0.5)
//0.5 being the default value if no volume preferences found
// and similarly there are get methods for other data types