在項目中經常會用到SharedPreferences儲存一些臨時文件,如登錄賬號.密碼 ,ip等 ,有時候想起來就寫一個,弄的項目很亂,在此封裝好了一個類,代碼如下:
public class mySharePreferences { public static final String SERVER_IP = "mServerIP"; public static final String SERVER_PORT = "mServerPort"; public static final String SERVER_NAME = "mServerName"; SharedPreferences sharedPreferences; Editor editor; private mySharePreferences() { }; public static mySharePreferences getIntanse() { return Nested.mV2SharePreferences; } static class Nested { private static mySharePreferences mV2SharePreferences = new mySharePreferences(); } public SharedPreferences.Editor getEditor() { if (editor == null || sharedPreferences == null) { editor = getSharePreferences().edit(); } return editor; } public SharedPreferences getSharePreferences() { if (sharedPreferences == null) { sharedPreferences = PreferenceManager .getDefaultSharedPreferences(V2Application.getContext()); } return sharedPreferences; } public void putStringValue(String key, String value) { getEditor().putString(key, value); getEditor().commit(); } public String getStringValue(String key, String defaultValue) { return getSharePreferences().getString(key, defaultValue); } public void putBooleanValue(String key, boolean value) { getEditor().putBoolean(key, value); getEditor().commit(); } public boolean getBooleanValue(String key, boolean defaultValue) { return getSharePreferences().getBoolean(key, defaultValue); }
調用的時候非常方便 如果要儲存數據直接調用
mySharePreferences.getintanse().putStringValue(string key,string value);
獲取數據的時候用
mySharePreferences.getintanse().getStringValue(string key,string defaultValue);
是不是感覺非常的方便