SharedPreferences简介

1、SharedPreferences用键值对的方式将简单数据类型(boolean、int、float、long和String)存储在应用程序的私有目录下的xml文件中,可通过DDMS的File Explore在data/data/<package_name>/share_prefs下找到该文件。

2、SharedPreferences存储的数据只能在同一个包中使用。

3、SharedPreferences存储的文件不能储存到SD卡上,所以使用SharedPreferences存储数据不需要android.permission.WRITE_EXTERNAL_STORAGE权限

4、SharedPreferences的操作模式:

①Context.MODE_PRIVATE:新数据将会覆盖原数据;

②Context.MODE_APPEND:新数据将会追加到原数据后;

③Context.MODE_WORLD_READABLE:允许其他程序读取;

④Context.MODE_WRITEABLE:允许其他程序写入,新数据将会覆盖原数据。

⑤Context.MODE_MULTI_PROCESS:允许跨进程读写

5、SharedPreferences的使用:

①获取SharedPreferences对象,通过Context.getSharedPreferences(String name,int mode)方法获取,第一个参数name为存储的xml文件名,mode为操作模式;

②获取SharedPreferences.Editor对象,调用SharedPreferences的edit()方法获取;

③存储数据,通过SharedPreferences.Editor的putXXX方法以键值对的形式存储数据,其中XXX为数据类型,最后调用该接口的commit()方法提交数据,如果不需要获取commit返回值,可以使用apply()方法提交数据;

④读取数据,调用SharedPreferences的getXXX()方法取得。

6、apply()方法与commit()方法的区别:

从Android v9版本开始,SharedPreferences.Editor提供了apply()方法用于替代commit()方法。commit()方法会同步地将修改直接写入持久化存储设备。apply()方法会立即把修改内容提交到SharedPreferences内存缓存中,然后开始异步地将修改提交到存储设备上,在这个过程中,开发者不会察觉到任何错误问题。所以,如果不需要用到提交操作的返回值,就应该用apply()方法代替commit()方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值