当Activity中修改了shared的值,而Service中读到的还是原来的值,相当的头大。不过终于还是在网上找到了解决的办法。
向Google致敬,远离Baidu更健康,下面说正事。
我们在写程序的时候经常会这样写:
SharedPreferences userInfo = context.getSharedPreferences(SHARE_TAG,0);
或者
SharedPreferences userInfo = context.getSharedPreferences(SHARE_TAG,Context.MODE_PRIVATE);
我们只需要将模式改动一下就可以了。采用下面的方法:
SharedPreferences userInfo = context.getSharedPreferences(SHARE_TAG,Context.MODE_MULTI_PROCESS);
注意后面的模式变化。就这么简单,不管是service还是activity修改了shared都可以第一时间同步。
非自己发现的的,整出专门的文章也算是原创吧,
原帖子地址:http://bbs.csdn.net/topics/390608334?page=1#post-395726920
在最后11楼中。
(完)