Android数据持久化--获取SharedPreferences三种方式


 SharedPreferences简介

    用于访问和修改getSharedPreferences(String, int)返回偏好设置数据(preference data)的一个接口。对于任何一组特殊的preferences,所有的客户端共享一个此类单独的实例。修改Preferences必须通过一个SharedPreferences.Editor对象,以确保当他们提交存储数据的操作时,preference值保持一致的状态。

示例代码

        译注:SharedPreferences保存位置:/data/data/app_name/shared_prefs/*.xml

private boolean flag = false;

 

//取得活动的Preferences对象

SharedPreferences settings = getPreferences(Activity.MODE_PRIVATE);

//取得值

flag = settings.getBoolean(“flag”,false);

 

//取得活动的Preferences对象

SharedPreferences settings = getPreferences(0);

//取得编辑对象

SharedPreferences.Editor editor = settings.edit();

//添加值

editor.putBoolean(“true”,flag);

//提交保存

editor.commit();

 

      Preferences在Android当中被用来记录应用,以及用户喜好等等,它可以用来保存简单的数据类型,如Int,Double,Boolean等。Preferences中保存的数据可以理解为Map型。

      Android数据持久化方法中最简单的一种,即使用Preferences的键值对存储方式。这种方式主要用来存储比较简单的一些数据, 

而且是标准的Boolean、Int、Float、Long、String等类型。

  android.content.SharedPreferences是一个接口,用来获取和修改持久化存储的数据。

有三种获取系统中保存的持久化数据的方式:

 1.this.getPreferences (int mode)

     通过Activity对象获取,获取的是本Activity私有的Preference,保存在系统中的xml形式的文件的名称为这个Activity的名字,因此一个Activity只能有一个,属于这个Activity。

2.this.getSharedPreferences (String name, int mode)

    因为Activity继承了ContextWrapper,因此也是通过Activity对象获取,但是属于整个应用程序,可以有多个,以第一参数的name为文件名保存在系统中。

3.PreferenceManager.getDefaultSharedPreferences(this);

    PreferenceManager的静态函数,保存PreferenceActivity中的设置,属于整个应用程序,但是只有一个,Android会根据包名和PreferenceActivity的布局文件来起一个名字保存。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM