Android|Android 数据存储之SharedPreferences的使用
【Android|Android 数据存储之SharedPreferences的使用】SharedPreferences介绍
SharedPreferences是android 的一种数据存储方式 以key-value的键值对的方式 xml的格式存储在内存当中 文件存放在/data/data//shared_prefs目录下。SharedPreferences
初始化
getSharedPreferences(name,mode)
name 和 mode 连个参数分别代表 内存空间命名 和 访问权限模式
name 内存空间命名 也就是在内存中开辟出属于你app 的存储空间
mode 访问权限
MODE_APPEND: 追加方式存储
MODE_PRIVATE: 私有方式存储
MODE_WORLD_READABLE开放存储方式 其他app可读
MODE_WORLD_WRITEABLE 开放存储方式 其他app可写获得编辑对象
常用方法
SharedPreferences.Editor edit = sp.edit();
edit.clear();
//清除数据
edit.putString();
//存入string
edit.putInt();
//存入 int
edit.putLong();
//存入 long
edit.putBoolean();
// 存入boolean
edit.putFloat();
//存入 float
edit.putStringSet();
// 存入集合
sp.getString();
// 取string
sp.getInt();
// 取int
sp.getBoolean();
//取boolean
sp.getLong();
//取long
sp.getAll();
// 取map
本人封装的sp 管理工具
public classSPUtils{
/** * sq 构造 持有context 对象
* @paramcontext
*/
public static SharedPreferences sp;
public static Context context;
publicSPUtils(Context context) {
this.context = context;
if (sp==null){
sp = context.getSharedPreferences(Constant.SPKEY, Context.MODE_PRIVATE);
}
}
/*** getString/char
* @paramkey 字段名
* @returnvalue 返回值
*/
public static String getString(String key){
String value = https://www.it610.com/article/sp.getString(key,"");
if (!TextUtils.isEmpty(value)){
return value;
}else {
return Constant.BACKERROR+"";
}
}
/***
getInt方法
* @paramkey 字段名*
* @returnvalue int返回值
*/
public static int getInt(String key){
int value = https://www.it610.com/article/sp.getInt(key, 0);
if (value!=0){
return value;
}else {
return Constant.BACKERROR;
}
}
/*** getLong 方法
** @paramkey 字段名
* @returnLong返回值
*/
public static Long getLong(String key){
Long value = https://www.it610.com/article/sp.getLong(key, 0);
if (value!=0){
return value;
}else {
return Long.valueOf(Constant.BACKERROR);
}
}
/***putString 方法
** @paramkey 字段名
* @paramvalue 字段值
*/
public static void putString(String key,String value){
sp.edit().putString(key,value).commit();
}
/***putInt 方法
** @paramkey 字段名
* @paramvalue 字段值
*/
public static void putInt(String key,int value){
sp.edit().putInt(key,value).commit();
}
/***putLong 方法
** @paramkey 字段名
* @paramvalue 字段值
*/
public static void putLong(String key,Long value){
sp.edit().putLong(key,value).commit();
}
// 清除数据public static void clearSpSpace(){
sp.edit().clear().commit();
}
}
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- android第三方框架(五)ButterKnife
- Android中的AES加密-下
- 带有Hilt的Android上的依赖注入
- android|android studio中ndk的使用
- 使用协程爬取网页,计算网页数据大小
- Android事件传递源码分析
- Java|Java基础——数组
- Python数据分析(一)(Matplotlib使用)
- Jsr303做前端数据校验