Created
September 20, 2015 21:38
-
-
Save mhdatie/0e76e77b41edce30891d to your computer and use it in GitHub Desktop.
Shared preference manager
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.matie.redgram.data.managers.preferences.main; | |
import android.content.Context; | |
import android.content.SharedPreferences; | |
/** | |
* Created by matie on 20/09/15. | |
* | |
* Singleton manager | |
*/ | |
public class PreferenceManager { | |
private static Context mContext; | |
public PreferenceManager(Context context){ | |
mContext = context; | |
} | |
/** | |
* Obtains a specified preference by passing a key. | |
* @param key | |
* @return The specified preference | |
*/ | |
public SharedPreferences getSharedPreferences(String key){ | |
return mContext.getSharedPreferences(key, mContext.MODE_PRIVATE); | |
} | |
/** | |
* | |
* @param prefs | |
* @param key | |
* @param value | |
*/ | |
public void setString(SharedPreferences prefs, String key, String value){ | |
prefs.edit().putString(key, value).commit(); | |
} | |
/** | |
* | |
* @param prefs | |
* @param key | |
* @param defaultValue | |
* @return Returns the string paired with the key, or the defaultValue if nothing is returned. | |
*/ | |
public String getString(SharedPreferences prefs, String key, String defaultValue){ | |
return prefs.getString(key, defaultValue); | |
} | |
/** | |
* | |
* @param prefs | |
* @param key | |
*/ | |
public void remove(SharedPreferences prefs, String key){ | |
prefs.edit().remove(key).commit(); | |
} | |
/** | |
* | |
* @param prefs | |
* @return | |
*/ | |
public boolean clear(SharedPreferences prefs){ | |
return prefs.edit().clear().commit(); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
If you're caching a Context in a static field, at least make sure to cache the application Context.
mContext = context.getApplicationContext();