Shared Preferences
son archivos XML para almacenar datos primitivos privados en pares clave-valor. Los tipos de datos incluyen booleanos , flotantes , entrantes , largos y cadenas .
Cuando deseamos guardar algunos datos accesibles a través de la aplicación, una forma de hacerlo es guardarlos en una variable global. Pero desaparecerá una vez que se cierre la aplicación. Otra forma recomendada es ahorrar SharedPreference
. Se puede acceder a los datos guardados en el archivo SharedPreferences en toda la aplicación y persisten incluso después de que la aplicación se cierra o se reinicia.
SharedPreferences guarda los datos en pares clave-valor y se puede acceder de la misma manera.
Puedes crear objetos SharedPreferences
usando dos métodos,
1) getSharedPreferences () : con este método puede crear Multiple SharedPreferences. y sus primeros parámetros en nombre de SharedPreferences
.
2) getPreferences () : con este método puede crear Single SharedPreferences
.
Almacenamiento de datos
Agregar una declaración de variables / Crear archivo de preferencias
public static final String PREFERENCES_FILE_NAME = "MyAppPreferences";
Recupere un identificador para el nombre de archivo (usando getSharedPreferences)
SharedPreferences settingsfile= getSharedPreferences(PREFERENCES_FILE_NAME,0);
Abrir Editor y Agregar pares clave-valor
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();
No olvides aplicar / guardar usando myeditor.apply()
como se muestra arriba.
Recuperando datos
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