【工具类】Android数据存储sharedpreferences加密
2012-11-02 15:45
267 查看
import java.util.List; import java.util.Map; import android.content.Context; import android.content.SharedPreferences; /** * 存储配置信息的工具类 <br> * 注:可读取的数据类型有-<code>boolean、int、float、long、String.</code> */ public class SharePreferenceUtil { private final String MAK = "innoview"; private final int MODE = Context.MODE_WORLD_READABLE + Context.MODE_WORLD_WRITEABLE; private final SharedPreferences sharedpreferences; public SharePreferenceUtil(Context context, String fileName) { sharedpreferences = context.getSharedPreferences(fileName, MODE); } public boolean saveSharedPreferences(String key, String value) { SharedPreferences.Editor editor = sharedpreferences.edit(); try { editor.putString(key, AESEncryptor.encrypt(MAK, value)); } catch (Exception e) { editor.putString(key, value); e.printStackTrace(); } return editor.commit(); } public String loadStringSharedPreference(String key) { String str = null; try { str = sharedpreferences.getString(key, null); if (str != null && !"".equals(str)){ str = AESEncryptor.decrypt(MAK, str); } } catch (Exception e) { e.printStackTrace(); } return str; } public boolean saveSharedPreferences(String key, int value) { SharedPreferences.Editor editor = sharedpreferences.edit(); editor.putInt(key, value); return editor.commit(); } public int loadIntSharedPreference(String key) { return sharedpreferences.getInt(key, 0); } public boolean saveSharedPreferences(String key, float value) { SharedPreferences.Editor editor = sharedpreferences.edit(); editor.putFloat(key, value); return editor.commit(); } public float loadFloatSharedPreference(String key) { return sharedpreferences.getFloat(key, 0f); } public boolean saveSharedPreferences(String key, Long value) { SharedPreferences.Editor editor = sharedpreferences.edit(); editor.putLong(key, value); return editor.commit(); } public long loadLongSharedPreference(String key) { return sharedpreferences.getLong(key, 0l); } public boolean saveSharedPreferences(String key, Boolean value) { SharedPreferences.Editor editor = sharedpreferences.edit(); editor.putBoolean(key, value); return editor.commit(); } public boolean loadBooleanSharedPreference(String key) { return sharedpreferences.getBoolean(key, false); } public boolean saveAllSharePreference(String keyName, List<?> list) { int size = list.size(); if (size < 1) { return false; } SharedPreferences.Editor editor = sharedpreferences.edit(); if (list.get(0) instanceof String) { for (int i = 0; i < size; i++) { editor.putString(keyName + i, (String) list.get(i)); } } else if (list.get(0) instanceof Long) { for (int i = 0; i < size; i++) { editor.putLong(keyName + i, (Long) list.get(i)); } } else if (list.get(0) instanceof Float) { for (int i = 0; i < size; i++) { editor.putFloat(keyName + i, (Float) list.get(i)); } } else if (list.get(0) instanceof Integer) { for (int i = 0; i < size; i++) { editor.putLong(keyName + i, (Integer) list.get(i)); } } else if (list.get(0) instanceof Boolean) { for (int i = 0; i < size; i++) { editor.putBoolean(keyName + i, (Boolean) list.get(i)); } } return editor.commit(); } public Map<String, ?> loadAllSharePreference(String key) { return sharedpreferences.getAll(); } public boolean removeKey(String key) { SharedPreferences.Editor editor = sharedpreferences.edit(); editor.remove(key); return editor.commit(); } public boolean removeAllKey() { SharedPreferences.Editor editor = sharedpreferences.edit(); editor.clear(); return editor.commit(); } }
相关文章推荐
- 【工具类】Android数据存储sharedpreferences加密
- Android中的SharedPreferences存储数据方式(工具类)
- Android基础:数据存储(一):文件存储的工具类UtilsFile
- android WebService工具类,已做数据缓存加密处理
- Android 数据存储之 FileInputStream 工具类及FileInputStream类的使用
- Android开发-数据存储SharedPreferences工具类、Set<String>保存问题、源码分析
- Android内部存储外部存储进行数据缓存等工具类
- Android数据存储加密
- Android数据存储之Sqlite采用SQLCipher数据库加密实战
- Android_数据存储-SQLite
- Android数据的四种存储方式(三) —— SharePreferences
- android post数据到服务器端工具类(包括postjson字符串、键值对)
- Android数据的四种存储方式
- 处理Android SQLite -&n… 分类: Android数据存储 2014-05-30 10:58 95人阅读 评论(0) 收藏
- Android数据的四种存储方式之------SharedPreferences
- Android实现数据存储技术
- Android本地数据存储: Reservoir
- Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (一) —— 总览
- Android使用嵌入式关系型SQLite数据库存储数据
- android数据存储与访问之使用普通文件