SharedPreferences踩坑(无法实时读取)

状况:##

存储一个键值对,值改变之后SharedPreferences读取的依然是之前的值,查看XML文件中的值发现改变成功了,但是就是只能读取一个值。

原因:##

我的SharedPreferences在服务中写的,服务中添加了android:process=":push"的声明,另开一个进程运行。而SharedPreferences的权限又是PRIVATE。只能在本进程访问。

解决:##

更改SharedPreferences的权限声明 Context.MODE_MULTI_PROCESS

参考:##

Android中Sharedpreferences牵涉到跨进程时不能实时读取的问题
了解Android API中的SharedPreferences

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容