package com.xxx.xxx.xxx.common;
import android.content.SharedPreferences;
import android.support.annotation.NonNull;
import com.tcl.hotel.vod.VodHotelApplication;
import static android.content.Context.MODE_PRIVATE;
/**
* desc: 创建轻量级数据存储库
*
* @author wangxb
* @since 2019-11-19 16:07
*/
public class SharedPref {
private static final String TAG = SharedPref.class.getName();
private static SharedPref sp;
private SharedPref(){}
public static SharedPref getInstance() {
if(sp == null){
sp = new SharedPref();
}
return sp;
}
private SharedPreferences getSharedPreferences(){
return VodHotelApplication.getApp().getSharedPreferences(TAG,MODE_PRIVATE);
}
/**
* 保存数据的方法,我们需要拿到保存数据的具体类型,然后根据类型调用不同的保存方法
* @param key
* @param object
*/
public void setSharedKey(@NonNull String key, Object object){
String type = object.getClass().getSimpleName();
SharedPreferences.Editor editor = getSharedPreferences().edit();
if("String".equals(type)){
editor.putString(key, (String)object);
}
else if("Integer".equals(type)){
editor.putInt(key, (Integer)object);
}
else if("Boolean".equals(type)){
editor.putBoolean(key, (Boolean)object);
}
else if("Float".equals(type)){
editor.putFloat(key, (Float)object);
}
else if("Long".equals(type)){
editor.putLong(key, (Long)object);
}
editor.commit();
}
/**
* 得到保存数据的方法,我们根据默认值得到保存的数据的具体类型,然后调用相对于的方法获取值
* @param key
* @param defaultObject
* @return
*/
public Object getSharedKey(@NonNull String key, Object defaultObject){
// 防止异常
if(defaultObject == null){
return null;
}
String type = defaultObject.getClass().getSimpleName();
SharedPreferences sp = getSharedPreferences();
if("String".equals(type)){
return sp.getString(key, (String)defaultObject);
}
else if("Integer".equals(type)){
return sp.getInt(key, (Integer)defaultObject);
}
else if("Boolean".equals(type)){
return sp.getBoolean(key, (Boolean)defaultObject);
}
else if("Float".equals(type)){
return sp.getFloat(key, (Float)defaultObject);
}
else if("Long".equals(type)){
return sp.getLong(key, (Long)defaultObject);
}
return null;
}
}
Android sharedPreferences util
最新推荐文章于 2022-07-10 15:37:00 发布