美文网首页
SharedPreference使用

SharedPreference使用

作者: 淡定丶说的是 | 来源:发表于2018-07-09 10:01 被阅读57次

首先介绍一下SharedPreference。
SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置,比如Activity状态,Activity暂停时,将此activity的状态保存到SharedPereferences中;当Activity重载,系统回调方法onSaveInstanceState时,再从SharedPreferences中将值取出。
其中的原理是通过Android系统生成一个xml文件保到:/data/data/包名/shared_prefs目录下,类似键值对的方式来存储数据。
Sharedpreferences提供了常规的数据类型保存接口比如:int、long、boolean、String、Float、Set和Map这些数据类型。

SharedPreference存储形式为键值对形式,下面为存储和获取的代码示例:

存储示例

/**
参数有两个,第一个表示Share文件的名称,不同的名称对应这不同的Share文件,其中的内容也是不同;
第二个参数表示操作模式,操作模式有两种:MODE_PRIVATE和MODE_MULTI_PRIVATE
MODE_PRIVATE:默认操作模式,直接在把第二个参数写0就是默认使用这种操作模式,
这种模式表示只有当前的应用程序才可以对当前这个SharedPreferences文件进行读写。
MODE_MULTI_PRIVATE:用于多个进程共同操作一个SharedPreferences文件。
*/
SharedPreferences sp = context.getSharedPreferences(PREFERENCES_NAME,Context.MODE_PRIVATE);
//获取Editor对象,这个对象用于写入,可理解为编辑
SharedPreferences.Editor editor = sp.edit();
//Editor对象有几个方法需要注:clear(),commit(),putXXX(),clear()为清空Share文件中的内容,
//commit()为提交,editor在put值以后,需要调用commit方法才能被真正写入到Share文件中
editor.putString("uid", "22222").commit();

读取示例

//先获取对应的Share
SharedPreferences sp=context.getSharedPreferences(PREFERENCES_NAME,Context.MODE_PRIVATE);
//根据key取出对应的值
sp.getString("uid", "");//第二个参数为默认值,即当从Share中取不到时,返回这个值

我们可以使用Share存储一些较轻量的信息,比如我们可以使用Share存储一个值,使用这个值可以判断APP是不是第一次打开。

相关文章

网友评论

      本文标题:SharedPreference使用

      本文链接:https://www.haomeiwen.com/subject/hcrzuftx.html