Shared Preferences
adalah file XML untuk menyimpan data primitif pribadi dalam pasangan nilai kunci. Tipe Data termasuk Booleans , float , ints , longs , dan string .
Ketika kami ingin menyimpan beberapa data yang dapat diakses di seluruh aplikasi, salah satu cara untuk melakukannya adalah menyimpannya dalam variabel global. Tapi itu akan hilang begitu aplikasi ditutup. Cara lain dan yang disarankan adalah menyimpan SharedPreference
. Data yang disimpan dalam file SharedPreferences dapat diakses di seluruh aplikasi dan tetap ada bahkan setelah aplikasi ditutup atau saat reboot.
SharedPreferences menyimpan data dalam pasangan nilai kunci dan dapat diakses dengan cara yang sama.
Anda dapat membuat Obyek SharedPreferences
menggunakan dua metode,
1). getSharedPreferences () : Dengan menggunakan metode ini Anda dapat membuat Multiple SharedPreferences.dan parameter pertamanya atas nama SharedPreferences
.
2). getPreferences () : Menggunakan metode ini Anda dapat membuat Single SharedPreferences
.
Menyimpan Data
Tambahkan deklarasi Variabel / Buat File Preferensi
public static final String PREFERENCES_FILE_NAME = "MyAppPreferences";
Ambil pegangan untuk nama file (menggunakan getSharedPreferences)
SharedPreferences settingsfile= getSharedPreferences(PREFERENCES_FILE_NAME,0);
Buka Editor dan Tambahkan pasangan nilai kunci
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();
Jangan lupa untuk menerapkan / menyimpan menggunakan myeditor.apply()
seperti yang ditunjukkan di atas.
Mengambil Data
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