Skip to content

Instantly share code, notes, and snippets.

@fryctze
Created February 3, 2019 08:15
Show Gist options
  • Save fryctze/c600c0ff0519171c2a43e2a51e3e0ec2 to your computer and use it in GitHub Desktop.
Save fryctze/c600c0ff0519171c2a43e2a51e3e0ec2 to your computer and use it in GitHub Desktop.
Contoh Shared Preferences untuk Tutorial Simple Login menggunakan Shared Preferences di https://medium.com/@vickyfarenza/tutorial-penggunaan-shared-preferences-pada-android-eddc300d7509
import android.content.Context;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
public class Preferences {
/** Pendeklarasian key-data berupa String, untuk sebagai wadah penyimpanan data.
* Jadi setiap data mempunyai key yang berbeda satu sama lain */
static final String KEY_USER_TEREGISTER ="user", KEY_PASS_TEREGISTER ="pass";
static final String KEY_USERNAME_SEDANG_LOGIN = "Username_logged_in";
static final String KEY_STATUS_SEDANG_LOGIN = "Status_logged_in";
/** Pendlakarasian Shared Preferences yang berdasarkan paramater context */
private static SharedPreferences getSharedPreference(Context context){
return PreferenceManager.getDefaultSharedPreferences(context);
}
/** Deklarasi Edit Preferences dan mengubah data
* yang memiliki key isi KEY_USER_TEREGISTER dengan parameter username */
public static void setRegisteredUser(Context context, String username){
SharedPreferences.Editor editor = getSharedPreference(context).edit();
editor.putString(KEY_USER_TEREGISTER, username);
editor.apply();
}
/** Mengembalikan nilai dari key KEY_USER_TEREGISTER berupa String */
public static String getRegisteredUser(Context context){
return getSharedPreference(context).getString(KEY_USER_TEREGISTER,"");
}
/** Deklarasi Edit Preferences dan mengubah data
* yang memiliki key KEY_PASS_TEREGISTER dengan parameter password */
public static void setRegisteredPass(Context context, String password){
SharedPreferences.Editor editor = getSharedPreference(context).edit();
editor.putString(KEY_PASS_TEREGISTER, password);
editor.apply();
}
/** Mengembalikan nilai dari key KEY_PASS_TEREGISTER berupa String */
public static String getRegisteredPass(Context context){
return getSharedPreference(context).getString(KEY_PASS_TEREGISTER,"");
}
/** Deklarasi Edit Preferences dan mengubah data
* yang memiliki key KEY_USERNAME_SEDANG_LOGIN dengan parameter username */
public static void setLoggedInUser(Context context, String username){
SharedPreferences.Editor editor = getSharedPreference(context).edit();
editor.putString(KEY_USERNAME_SEDANG_LOGIN, username);
editor.apply();
}
/** Mengembalikan nilai dari key KEY_USERNAME_SEDANG_LOGIN berupa String */
public static String getLoggedInUser(Context context){
return getSharedPreference(context).getString(KEY_USERNAME_SEDANG_LOGIN,"");
}
/** Deklarasi Edit Preferences dan mengubah data
* yang memiliki key KEY_STATUS_SEDANG_LOGIN dengan parameter status */
public static void setLoggedInStatus(Context context, boolean status){
SharedPreferences.Editor editor = getSharedPreference(context).edit();
editor.putBoolean(KEY_STATUS_SEDANG_LOGIN,status);
editor.apply();
}
/** Mengembalikan nilai dari key KEY_STATUS_SEDANG_LOGIN berupa boolean */
public static boolean getLoggedInStatus(Context context){
return getSharedPreference(context).getBoolean(KEY_STATUS_SEDANG_LOGIN,false);
}
/** Deklarasi Edit Preferences dan menghapus data, sehingga menjadikannya bernilai default
* khusus data yang memiliki key KEY_USERNAME_SEDANG_LOGIN dan KEY_STATUS_SEDANG_LOGIN */
public static void clearLoggedInUser (Context context){
SharedPreferences.Editor editor = getSharedPreference(context).edit();
editor.remove(KEY_USERNAME_SEDANG_LOGIN);
editor.remove(KEY_STATUS_SEDANG_LOGIN);
editor.apply();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment