public class SharedPreferencesHelper {
private SharedPreferences sharedPreferences;
/*
* 保存手机里面的名字
*/private SharedPreferences.Editor editor;
public SharedPreferencesHelper(Context context, String FILE_NAME) {
sharedPreferences = context.getSharedPreferences(FILE_NAME,
Context.MODE_PRIVATE);
editor = sharedPreferences.edit();
}
/**
* 存储
*/
public void put(String key, Object object) {
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();
}
/**
* 获取保存的数据
*/
public Object getValue(String key, Object defaultObject) {
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);
} else {
return sharedPreferences.getString(key, null);
}
}
/**
* 移除某个key值已经对应的值
*/
public void remove(String key) {
editor.remove(key);
editor.commit();
}
/**
* 清除所有数据
*/
public void clear() {
editor.clear();
editor.commit();
}
/**
* 查询某个key是否存在
*/
public Boolean contain(String key) {
return sharedPreferences.contains(key);
}
/**
* 返回所有的键值对
*/
public Map<String, ?> getAll() {
return sharedPreferences.getAll();
}
}
SharedPreferences 中键的集合封装
public class ConstantKeys {
public static final String userInfo = "userInfo";
public static final String uid = "uid";
}
保存到SharedPreferences中
private SharedPreferencesHelper sp = new SharedPreferencesHelper(this, ConstantKeys.userInfo);
sp.put(ConstantKeys.uid, user.getUid());
获取SharedPreferences中的值
SharedPreferencesHelper sp = new SharedPreferencesHelper(this, ConstantKeys.userInfo);
String uid = sp.getValue(ConstantKeys.uid, "").toString();