SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置。
常常用来存储应用的运行状态,运行次数,用户登录状态,用户登录名等相关信息。
获取SharedPreferences的两种方式:
1 调用Context对象的getSharedPreferences()方法
2 调用Activity对象的getPreferences()方法
两种方式的区别:
调用Context对象的getSharedPreferences()方法获得的SharedPreferences对象可以被同一应用程序下的其他组件共享.
调用Activity对象的getPreferences()方法获得的SharedPreferences对象只能在该Activity中使用.
SharedPreferences的四种操作模式:
Context.MODE_PRIVATE
Context.MODE_APPEND
Context.MODE_WORLD_READABLE
Context.MODE_WORLD_WRITEABLE
Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容
Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件.
Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件.
MODE_WORLD_READABLE:表示当前文件可以被其他应用读取.
MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入.
参考:http://blog.csdn.net/zhang31jian/article/details/23258065
SharedPreferences的具体使用:
存储:
SharedPreferences.Editor prefs = context.getSharedPreferences(
USER_LOGIN_STATE, Activity.MODE_PRIVATE).edit();
prefs.putBoolean("login_state", state);
prefs.commit();
获取:
SharedPreferences mPref = context.getSharedPreferences(
USER_LOGIN_STATE, Activity.MODE_PRIVATE);
boolean login_state = mPref.getBoolean("login_state", false);
return login_state;