SharedPreferences介绍

SharedPreferences是android 的一种数据存储方式 以key-value的键值对的方式 xml的格式存储在内存当中 文件存放在/data/data//shared_prefs目录下。SharedPreferences 

初始化

getSharedPreferences(name,mode) 

name 和 mode 连个参数分别代表 内存空间命名 和 访问权限模式 

name 内存空间命名 也就是在内存中开辟出属于你app 的存储空间 

mode 访问权限 

MODE_APPEND: 追加方式存储 

MODE_PRIVATE: 私有方式存储 

MODE_WORLD_READABLE开放存储方式 其他app可读 

MODE_WORLD_WRITEABLE 开放存储方式 其他app可写获得编辑对象

常用方法 

SharedPreferences.Editor edit = sp.edit(); 

edit.clear();//清除数据 

edit.putString();//存入string 

edit.putInt(); //存入 int 

edit.putLong(); //存入 long 

edit.putBoolean(); // 存入boolean 

edit.putFloat(); //存入 float 

edit.putStringSet();// 存入集合 

sp.getString(); // 取string 

sp.getInt(); // 取int 

sp.getBoolean();//取boolean 

sp.getLong(); //取long 

sp.getAll(); // 取map

本人封装的sp 管理工具

public classSPUtils{

 /** * sq 构造 持有context 对象

 * @paramcontext

 */ 

 public static SharedPreferences sp;

    public static Context context;

    public  SPUtils(Context context) {

        this.context = context;

        if (sp==null){

            sp = context.getSharedPreferences(Constant.SPKEY, Context.MODE_PRIVATE);

        }

    }

    /**    * getString/char      

* @paramkey 字段名   

 * @returnvalue 返回值    

 */   

 public static String getString(String key){

        String value = sp.getString(key, "");

        if (!TextUtils.isEmpty(value)){

            return value;

        }else {

            return Constant.BACKERROR+"";

        }

    }

    /**    * 

getInt方法    

 * @paramkey 字段名    *   

 * @returnvalue int返回值   

 */  

  public static int getInt(String key){

        int value = sp.getInt(key, 0);

        if (value!=0){

            return value;

        }else {

            return Constant.BACKERROR;

        }

    }

    /**    * getLong 方法   

 *    * @paramkey 字段名    

 * @returnLong返回值   

 */    

public static Long getLong(String key){

        Long value = sp.getLong(key, 0);

        if (value!=0){

            return value;

        }else {

            return Long.valueOf(Constant.BACKERROR);

        }

    }

    /**    *  putString 方法   

 *    * @paramkey 字段名   

 * @paramvalue 字段值   

 */    

public static void putString(String key,String value){

        sp.edit().putString(key,value).commit();

    }

    /**    *  putInt 方法   

 *    * @paramkey 字段名   

 * @paramvalue 字段值   

 */   

 public static void putInt(String key,int value){

        sp.edit().putInt(key,value).commit();

    }

    /**    *  putLong 方法    

 *    * @paramkey 字段名    

 * @paramvalue 字段值   

 */  

  public static void putLong(String key,Long value){

        sp.edit().putLong(key,value).commit();

    }

        // 清除数据    public static void clearSpSpace(){

        sp.edit().clear().commit();

    }

}

更多相关文章

  1. Android中JavaScript和Native之间的Bridge
  2. android 实现分享功能两种方法
  3. 再也不信网上流传的方法了!!android创建组件的真正写法!
  4. 转:Parcle
  5. Android(安卓)ApiDemo 笔记(二)Graphics和View
  6. Android中如何使用Intent传递对象
  7. Android(安卓)MultiDex 解析与使用
  8. Android(安卓)APP 把view试图显示在顶层
  9. Android缓存机制&一个缓存框架推荐

随机推荐

  1. android yuv摄像
  2. Service and Broadcast
  3. GIS的学习(二十四)android异步调用geoserve
  4. Android(安卓)ConstraintLayout详解
  5. android应用集成google登录
  6. Android(安卓)SQLite 错误 SQLiteExcepti
  7. 最全面的安卓ANR
  8. Android(安卓)NDK网络通信篇(五)之UDP通信
  9. Content Provider使用方法以及Android运
  10. 一行代码完成Android(安卓)7 FileProvide