Android 封装工具类之共享参数
2017-12-23 17:07
399 查看
/** * 共享参数工具类 */ public class S { public static void put(Context context, String fileName, String key, Object object) { SharedPreferences sharedPreferences = context.getApplicationContext().getSharedPreferences(fileName, Context.MODE_PRIVATE); SharedPreferences.Editor editor = sharedPreferences.edit(); 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); } SharedPreferencesCompat.apply(editor); } public static Object get(Context context, String fileName, String key, Object defaultObject) { SharedPreferences sharedPreferences = context.getApplicationContext().getSharedPreferences(fileName, Context.MODE_PRIVATE); if (defaultObject instanceof String) { return sharedPreferences.getString(key, (String) defaultObject); } else if (defaultObject instanceof Integer) { return sharedPreferences.getInt(key, (Integer) defaultObject); } else if (defaultObject instanceof Boolean) { return sharedPreferences.getBoolean(key, (Boolean) defaultObject); } else if (defaultObject instanceof Float) { return sharedPreferences.getFloat(key, (Float) defaultObject); } else if (defaultObject instanceof Long) { return sharedPreferences.getLong(key, (Long) defaultObject); } return null; < 4000 span style="color:#cc7832;"> } public static Map<String, ?> getAll(Context context, String fileName) { SharedPreferences sharedPreferences = context.getApplicationContext().getSharedPreferences(fileName, Context.MODE_PRIVATE); return sharedPreferences.getAll(); } public static boolean contain(Context context, String fileName, String key) { SharedPreferences sharedPreferences = context.getApplicationContext().getSharedPreferences(fileName, Context.MODE_PRIVATE); return sharedPreferences.contains(key); } public static void remove(Context context, String fileName, String key) { SharedPreferences sharedPreferences = context.getApplicationContext().getSharedPreferences(fileName, Context.MODE_PRIVATE); SharedPreferences.Editor editor = sharedPreferences.edit(); editor.remove(key); SharedPreferencesCompat.apply(editor); } public static void clear(Context context, String fileName) { SharedPreferences sharedPreferences = context.getApplicationContext().getSharedPreferences(fileName, Context.MODE_PRIVATE); SharedPreferences.Editor editor = sharedPreferences.edit(); editor.clear(); SharedPreferencesCompat.apply(editor); } private static class SharedPreferencesCompat { private static final Method sApplyMethod = findApplyMethod(); @SuppressWarnings({"unchecked", "rawtypes"}) private static Method findApplyMethod() { try { Class cls = SharedPreferences.Editor.class; return cls.getMethod("apply"); } catch (Exception e) { e.printStackTrace(); } return null; } public static void apply(SharedPreferences.Editor editor) { try { if (sApplyMethod != null) { sApplyMethod.invoke(editor); } return; } catch (Exception e) { e.printStackTrace(); } editor.commit(); } } }
相关文章推荐
- Android中SharedPreferences共享参数的封装
- Android常用SharedPrefenences工具类的封装
- android参数共享
- Android常用工具类封装---SharedPreferencesUtil
- Android之工具类封装
- Android:Volley的使用及其工具类的封装
- 使用getParameterMap()方法实现对请求参数的封装的工具类
- get post 封装公共参数工具类
- Android实用的Toast工具类封装
- MPAndroidChart之辅助工具类封装
- Android 中常用工具类封装
- Android OkHttp网络连接封装工具类
- Android之用HttpURLConnection参数以XML形式封装的部分关键代码
- Android第二十五天数据存储(共享参数,内部存储,外部存储)
- Android 封装http请求的工具类
- Android常用工具类封装---SharedPreferencesUtil
- Android获取手机经纬度(GPS、NetWork)封装工具类
- Android中SharedPreferences(共享参数)用法
- Android volley(5)MultipartEntity 封装 volley上传 —— 一个参数多张图、多张图片多张图
- Android 封装http请求的工具类