您的位置:首页 > Web前端

安卓--关于不同activity之间使用SharedPreferences

2016-07-20 23:36 232 查看
这几天初次学安卓,做了个记事本,想要存储当前账户以便在各个activity中使用, 当时试了下intent在不同activity之间传递数据,但是太麻烦,有时候非activity还不能用,尝试着用SharedPreferences。但是很快问题来了,有些activity中读取的值为空,并不能读取自己存进去的值,但是存取的时候已经commit了。

网上很多大神支了很多招,没成功。后来自己查看自己在不同的activity中对SharedPreferences的使用,发现权限设置为MODE_PRIVATE,其他activity不能用;还有,权限不同也即使非private不能用,例如:一个设置为MODE_MULTI_PROCESS ,另一个设置为MODE_WORLD_WRITEABLE,这样读取的值也为空。

建议,多加点权限并且不要使用private权限

例:
SharedPreferences UserSP = getSharedPreferences("userinfo",MODE_ENABLE_WRITE_AHEAD_LOGGING | MODE_WORLD_WRITEABLE | MODE_MULTI_PROCESS);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息