Shared Preferences
XML-файлы для хранения личных примитивных данных в парах ключ-значение Типы данных включают логические значения , числа с плавающей запятой , целые числа , длинные значения и строки. .
Когда мы хотим сохранить некоторые данные, которые доступны во всем приложении, один из способов - сохранить их в глобальной переменной. Но он исчезнет, как только приложение будет закрыто. Другой рекомендуемый способ - сохранить вSharedPreference
. Данные, сохраненные в файле SharedPreferences, доступны во всем приложении и сохраняются даже после закрытия приложения или после перезагрузок.
SharedPreferences сохраняет данные в паре ключ-значение, и к ним можно получить доступ тем же способом.
Вы можете создать объект, SharedPreferences
используя два метода,
1). getSharedPreferences () : С помощью этого метода вы можете создать Multiple SharedPreferences. и его первые параметры на имя SharedPreferences
.
2). getPreferences () : Используя этот метод, вы можете создать Single SharedPreferences
.
Хранение данных
Добавить объявление переменной / Создать файл настроек
public static final String PREFERENCES_FILE_NAME = "MyAppPreferences";
Получить дескриптор имени файла (используя getSharedPreferences)
SharedPreferences settingsfile= getSharedPreferences(PREFERENCES_FILE_NAME,0);
Откройте редактор и добавьте пары ключ-значение
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();
Не забудьте применить / сохранить, myeditor.apply()
как показано выше.
Извлечение данных
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