简介Android应用中sharedPreferences类存储数据的用法

2019-12-10 19:07:00于海丽

执行以上代码,SharedPreferences将会把这些数据保存在test.xml文件中,可以在File Explorer的data/data/相应的包名/test.xml 下导出该文件,并查看。
2、使用SharedPreferences读取数据方法如下:

//同样,在读取SharedPreferences数据前要实例化出一个SharedPreferences对象 
SharedPreferencessharedPreferences= getSharedPreferences("test", 
Activity.MODE_PRIVATE); 
// 使用getString方法获得value,注意第2个参数是value的默认值 
String name =sharedPreferences.getString("name", ""); 
String habit =sharedPreferences.getString("habit", ""); 
//使用toast信息提示框显示信息 
Toast.makeText(this, "读取数据如下:"+"n"+"name:" + name + "n" + "habit:" + habit, 
Toast.LENGTH_LONG).show(); 

三、理解
我们可以简单的理解为:在手机本地某个地方会存放我们自定义的xml文件,每个文件用来存放相关的键值对数据。比如我们希望存储用户的偏好设置,即可创建一个名为UserPref的SharedPreferences并读写即可。

四、比较getSharedPreferenced和getPreference
getSharedPreferenced获取的文件是在package内都可以使用context对象获取到的,只需要指定name就可以获取到特定的xml文件。
但是,getPreference方法是专门用在Activity内部的,创建的xml文件只能在该Activity上下文内获取,而且不需要指定名字,这个xml文件只属于这个Activity。
其它就没有区别了。唯一区别就是一个权限域的区别。
示例:

 Context context = getActivity();
 SharedPreferences sharedPref = context.getSharedPreferences("userPref", MODE_PRIVATE);
 SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);


注:相关教程知识阅读请移步到Android开发频道。