Android(安卓)封装SharedPreference工具类
16lz
2021-12-04
/** * @anthor GrainRain * @funcation SharedPreference工具类 * @date 2019/9/5 */public class SharedPreferenceUtils { private static SharedPreferences preferences; private static SharedPreferences.Editor editor; private static final String TAG = "SharedPreference"; /** * 储存数据 * @param key * @param object */ public static void put(Context context, String key, Object object) { preferences = PreferenceManager.getDefaultSharedPreferences(context); editor = preferences.edit(); if(editor != null) { if (object instanceof String) { editor.putString(key, (String) object); } else if (object instanceof Integer) { editor.putInt(key, (Integer) object); } else if (object instanceof Boolean) { editor.putBoolean(key, (Boolean) object); } else if (object instanceof Float) { editor.putFloat(key, (Float) object); } else if (object instanceof Long) { editor.putLong(key, (Long) object); } else { editor.putString(key, object.toString()); } editor.commit(); } else { Log.e(TAG, "请重试"); } } /** * 获取数据 * @param key * @param defaultObject * @return Object */ public static Object get(Context context, String key, Object defaultObject) { preferences = PreferenceManager.getDefaultSharedPreferences(context); editor = preferences.edit(); if(preferences != null) { if (defaultObject instanceof String) { return preferences.getString(key, (String) defaultObject); } else if (defaultObject instanceof Integer) { return preferences.getInt(key, (Integer) defaultObject); } else if (defaultObject instanceof Boolean) { return preferences.getBoolean(key, (Boolean) defaultObject); } else if (defaultObject instanceof Float) { return preferences.getFloat(key, (Float) defaultObject); } else if (defaultObject instanceof Long) { return preferences.getLong(key, (Long) defaultObject); } else { return preferences.getString(key, null); } } else { Log.e(TAG, "请重试"); return null; } } /** * 移除key对应的值 * @param key */ public static void remove(Context context, String key) { preferences = PreferenceManager.getDefaultSharedPreferences(context); editor = preferences.edit(); if(editor != null) { editor.remove(key); editor.commit(); } else { Log.e(TAG, "请重试"); } } /** * 清除所有数据 */ public static void clear(Context context) { preferences = PreferenceManager.getDefaultSharedPreferences(context); editor = preferences.edit(); if(editor != null) { editor.clear(); editor.commit(); } else { Log.e(TAG, "请重试"); } } /** * 查询key是否存在 */ public static Boolean contain(Context context, String key) { preferences = PreferenceManager.getDefaultSharedPreferences(context); editor = preferences.edit(); if(preferences != null) { return preferences.contains(key); } else { Log.e(TAG, "请重试"); return false; } } /** * 返回所有键值对 * @return */ public static Map getAll(Context context) { preferences = PreferenceManager.getDefaultSharedPreferences(context); editor = preferences.edit(); if(preferences != null) { return preferences.getAll(); } else { Log.e(TAG, "请重试"); return null; } }}
更多相关文章
- mybatisplus的坑 insert标签insert into select无参数问题的解决
- python起点网月票榜字体反爬案例
- I2C-Tools 4.0使用说明及android平台移植,提供源码下载路径
- Android(安卓)Architecture Components
- android json
- android:allowBackup="true"
- android升级数据库(Sqlite)简单示例
- android通用JSON解析
- Android(安卓)MediaMuxer混合音频和视频