概述
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;import java.util.ArrayList;
import java.util.List;
import java.util.Map;/**
* Created by LQD on 2018/3/12.
*/public class SPUtils {
public final static String FILLNAME = "config";/**
* 存入某个key对应的value值 * * @param context * @param key * @param value
*/
public static void put(String key, Object value) {
SharedPreferences sp = MainApp.getInstance().getSharedPreferences(FILLNAME, Context.MODE_PRIVATE);
SharedPreferences.Editor edit = sp.edit();
if (value instanceof String) {
edit.putString(key, (String) value);
} else if (value instanceof Integer) {
edit.putInt(key, (Integer) value);
} else if (value instanceof Boolean) {
edit.putBoolean(key, (Boolean) value);
} else if (value instanceof Float) {
edit.putFloat(key, (Float) value);
} else if (value instanceof Long) {
edit.putLong(key, (Long) value);
}
SharedPreferencesCompat.EditorCompat.getInstance().apply(edit);
}
public static <T> void setDataList(String tag, List<String> datalist) {
SharedPreferences sp = MainApp.getInstance().getSharedPreferences(FILLNAME, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
if (null == datalist || datalist.size() <= 0)
return;
Gson gson = new Gson();
//转换成json数据,再保存
String strJson = gson.toJson(datalist);
editor.putString(tag, strJson);
SharedPreferencesCompat.EditorCompat.getInstance().apply(editor);
}
/**
* 获取List
* @param tag
* @return
*/
public static <T> List<String> getDataList(String tag) {
List<String> datalist = new ArrayList<String>();
SharedPreferences sp = MainApp.getInstance().getSharedPreferences(FILLNAME, Context.MODE_PRIVATE);
String strJson = sp.getString(tag, null);
if (null == strJson) {
return datalist;
}
Gson gson = new Gson();
datalist = gson.fromJson(strJson, new TypeToken<List<T>>() {
}.getType());
return datalist;}
/**
* 得到某个key对应的值 * * @param context * @param key * @param defValue * @return
*/
public static Object get(String key, Object defValue) {
SharedPreferences sp = MainApp.getInstance().getSharedPreferences(FILLNAME, Context.MODE_PRIVATE);
if (defValue instanceof String) {
return sp.getString(key, (String) defValue);
} else if (defValue instanceof Integer) {
return sp.getInt(key, (Integer) defValue);
} else if (defValue instanceof Boolean) {
return sp.getBoolean(key, (Boolean) defValue);
} else if (defValue instanceof Float) {
return sp.getFloat(key, (Float) defValue);
} else if (defValue instanceof Long) {
return sp.getLong(key, (Long) defValue);
}
return null;
}/**
* 返回所有数据 * * @param context * @return
*/
public static Map<String, ?> getAll(Context context) {
SharedPreferences sp = context.getSharedPreferences(FILLNAME, Context.MODE_PRIVATE);
return sp.getAll();
}/**
* 移除某个key值已经对应的值 * * @param context * @param key
*/
public static void remove(Context context, String key) {
SharedPreferences sp = context.getSharedPreferences(FILLNAME, Context.MODE_PRIVATE);
SharedPreferences.Editor edit = sp.edit();
edit.remove(key);
SharedPreferencesCompat.EditorCompat.getInstance().apply(edit);
}/**
* 清除所有内容 * * @param context
*/
public static void clear(Context context) {
SharedPreferences sp = context.getSharedPreferences(FILLNAME, Context.MODE_PRIVATE);
SharedPreferences.Editor edit = sp.edit();
edit.clear();
SharedPreferencesCompat.EditorCompat.getInstance().apply(edit);
}}
最后
以上就是殷勤大白为你收集整理的Android SharedPreferences工具类的全部内容,希望文章能够帮你解决Android SharedPreferences工具类所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复