android中的SharePreference工具类

最近在整理和记录个人的学习心得和框架结构,回不定期更新在框架和项目中用到的工具和三方库的用法,废话不多说,直接上代码

package shens.android.lib_base.utils;

import android.content.Context;
import android.content.SharedPreferences;

/**
 * @ProjectName: ShensTest
 * @Package: shens.android.lib_base.utils
 * @ClassName: SharePreferenceUtils
 * @Description: SharePreference 的工具 使用获取不同数据类型的基础数据
 * @Author: 申世雷
 * @CreateDate: 2019/6/12 9:42 AM
 * @UpdateUser: 更新者:
 * @UpdateDate: 2019/6/12 9:42 AM
 * @UpdateRemark: 更新说明:
 * @Version: 1.0
 * @website: http://www.hitucao.com
 */
public class SharePreferenceUtils {

    public static final String FILE_NAME = "data";

    /**
     * 保存数据
     * @param context
     * @param key
     * @param object
     */

    public static void put(Context context, String key, Object object) {
        SharedPreferences.Editor editor = getEditor(context);

        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();

    }

    /**
     * 获取数据
     * @param context
     * @param key
     * @param defaultValue
     * @return
     */

    public static Object get(Context context, String key, Object defaultValue) {
        SharedPreferences sp = context.getSharedPreferences(FILE_NAME,
                Context.MODE_PRIVATE);

        if (defaultValue instanceof String) {
            return sp.getString(key, (String) defaultValue);
        } else if (defaultValue instanceof Integer) {
            return sp.getInt(key, (Integer) defaultValue);
        } else if (defaultValue instanceof Boolean) {
            return sp.getBoolean(key, (Boolean) defaultValue);
        } else if (defaultValue instanceof Float) {
            return sp.getFloat(key, (Float) defaultValue);
        } else if (defaultValue instanceof Long) {
            return sp.getLong(key, (Long) defaultValue);
        }

        return null;
    }

    /**
     * remove key
     * @param context
     * @param key
     */
    public static void remove(Context context,String key){
        SharedPreferences.Editor editor = getEditor(context);
        editor.remove(key);
        editor.commit();
    }

    /**
     * 判断是否包含key
     * @param context
     * @param key
     * @return
     */
    public static boolean contains(Context context,String key){
        SharedPreferences sp = context.getSharedPreferences(FILE_NAME,
                Context.MODE_PRIVATE);
        return  sp.contains(key);
    }

    /**
     * 清空数据
     * @param context
     */
    public static void clear(Context context){
        SharedPreferences.Editor editor  = getEditor(context);
        editor.clear();
        editor.commit();

    }



    public static SharedPreferences.Editor getEditor(Context context){
        SharedPreferences sp = context.getSharedPreferences(FILE_NAME,
                Context.MODE_PRIVATE);
        return sp.edit();
    }


}

你可能感兴趣的:(android中的SharePreference工具类)