School of Information Systems

SharedPreferences pada Android Development

SharedPreferences adalah sebuah class yang memiliki kemampuan ataupun fungsi untuk menampung data dalam key/value yang berpasangan. Data dalam SharedPreferences nantinya dapat digunakan dalam aktivitas apa saja dalam android studio.

Key or Value pair digunakan untuk melihat suatu informasi. Key lebih condong ke string sedangkan value lebih condong kepada integer, Boolean, string, ataupun tipe lainnya.

Tipe data dan Metode dalam SharedPreferences dibagi menjadi beberapa tipe data dan metode, yaitu:

  • getBoolean()
  • getFloat()
  • getInt()
  • getLong()
  • getString()
  • getStringSet()
  • dan tambahan untuk mendapatkan semua key/value berpasangan yaitu dengan getAll()

Metode contains() menggunakan string sebagai parameter yang nantinya string merupakan kunci untuk pengecekan. Lalu metode contains() memberikan value returns true jika key (string) tersebut tidak kosong dalam SharedPreferences.

Pada penyimpanan menggunakan SharedPreferences, Android menggunakan preferences APIs untuk menyediakan jalan yang baik bagi pengguna dalam menggunakan ataupun mengubah pengaturan mereka. Sebagai contoh, user interface untuk pengaturan dapat menggunakan PreferenceActivity ataupun PreferenceFragment, lalu jika pengguna mengubah pengaturan maka data yang terdapat didalam SharedPreferences akan berubah ataupun terupdate.

(Gambar 1. Contoh penggunaan SharedPreferences)

Jika dalam suatu aplikasi kita memasukan username Carl, maka aplikasi akan (ask) ataupun berkomunikasi dengan SharedPreferences bahwa ada eksistensi username dengan nama Carl atau tidak. Jika iya maka sistem akan mengkofirmasi dan data dikembalikan ke aplikasi tersebut dan user dapat login.

Penggunaan SharedPreferences untuk interface dapat gunakan sebagai berikut:

  • Untuk interface yang dapat kita gunakan mengubah value dalam SharedPreferences dapat kita gunakan SharedPreferences.Editor
  • Untuk callback yang akan di invoke saat shared preferences terubah ataupun diupdate maka dapat kita gunakan SharedPreferences.OnSharedPreferenceChangeListener

Berikut merupakan gambaran tabel dari reference type beserta stored value dan sebagainya:

Untuk menggunakan shared preferences dapat kita koding sebagai berikut:

SharedPreferences prefs = this.getSharedPreferences(

      “com.example.app”, Context.MODE_PRIVATE);

Lalu untuk membaca preferences dapat kita gunakan

String dateTimeKey = “com.example.app.datetime”; // use a default value using new Date()long l = prefs.getLong(dateTimeKey, new Date().getTime());

Untuk mengubah ataupun menyimpan preferences dapat kita gunakan

Date dt = getSomeDate();prefs.edit().putLong(dateTimeKey, dt.getTime()).apply();

Referensi :

https://www.wildantechnoart.net/2018/01/cara-menyimpan-data-menggunakan-sharedpreferences.html

https://stackoverflow.com/questions/3624280/how-to-use-sharedpreferences-in-android-to-store-fetch-and-edit-values

Daniel Henry Eleesha, Ferdianto