public class SharedPreferencesUtil
{
/**
* 通用分享文件名
*/
private final String commonShareName = "Test";
private Context ctx;
private SharedPreferences sharedPreferences;
/**
* 关键字
*/
public interface Key
{
/**
* Key
*/
public final static String TESTKEY = "key";
}
/**
* 默认构造函数
*/
public SharedPreferencesUtil()
{
}
/**
* <默认构造函数>
*/
public SharedPreferencesUtil(final Context ctx)
{
this.ctx = ctx;
if (ctx == null)
{
Log.e("SharedPreferencesUtil", "Context is null");
return;
}
sharedPreferences = this.ctx.getSharedPreferences(commonShareName, Activity.MODE_PRIVATE);
}
/**
* 保存键值 包含事务,如果一次要保存多值不建议使用,性能有损耗
*
* @param key
* 保存的键
* @param value
* 保存的值
* @see [类、类#方法、类#成员]
*/
public void saveStringValue(String key, String value)
{
if (sharedPreferences == null) { return; }
Editor edit = sharedPreferences.edit();
edit.putString(key, value);
edit.commit();
}
/**
* 获取String值
*
* @param key
* 保存的键
* @param defaultValue
* 默认的值
* @return 键对应的值
*/
public String readStringValue(String key, String defaultValue)
{
if (sharedPreferences == null) { return defaultValue; }
return sharedPreferences.getString(key, defaultValue);
}
/**
* 保存键值 包含事务,如果一次要保存多值不建议使用,性能有损耗
*
* @param key
* 保存的键
* @param value
* 保存的值
* @see [类、类#方法、类#成员]
*/
public void saveBooleanValue(String key, boolean value)
{
if (sharedPreferences == null) { return; }
Editor edit = sharedPreferences.edit();
edit.putBoolean(key, value);
edit.commit();
}
/**
* 获取String值
*
* @param key
* 保存的键
* @param defaultValue
* 默认的值
* @return 键对应的值
*/
public boolean readBooleanValue(String key, boolean defaultValue)
{
if (sharedPreferences == null) { return defaultValue; }
return sharedPreferences.getBoolean(key, defaultValue);
}
/**
* 保存键值 包含事务,如果一次要保存多值不建议使用,性能有损耗
*
* @param key
* 保存的键
* @param value
* 保存的值
* @see [类、类#方法、类#成员]
*/
public void saveIntValue(String key, int value)
{
if (sharedPreferences == null) { return; }
Editor edit = sharedPreferences.edit();
edit.putInt(key, value);
edit.commit();
}
/**
* 获取String值
*
* @param key
* 保存的键
* @param defaultValue
* 默认的值
* @return 键对应的值
*/
public int readIntValue(String key, int defaultValue)
{
if (sharedPreferences == null) { return defaultValue; }
return sharedPreferences.getInt(key, defaultValue);
}
/**
*
* 保存内容到SharedPreferences
*
* @param context
* @param map
* 保存的内容,键值对的形式
*/
public void saveSharedPreferences(Context context, Map<String, Object> map)
{
Editor editor = sharedPreferences.edit();
Set<String> set = map.keySet();
for (String key : set)
{
editor.putString(key, (String) map.get(key));
}
editor.commit();
}
/**
*
* 删除某条SharedPreferences
*
* @param context
* @param map
* 保存的内容,键值对的形式
*/
public void removeSharedPreferences(Context context, String key)
{
Editor editor = sharedPreferences.edit();
editor.remove(key);
editor.commit();
}
}
SharePreferences 工具类
最新推荐文章于 2024-03-19 19:40:39 发布