当我在API描述中检查getSharedPreferences(String,int)时,Second属性定义了可访问性模式,默认操作可以采用0或MODE_PRIVATE,MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE可以控制权限。
但是在API描述中有这个小注释:
注意:目前这个班级 (android.content.SharedPreferences) 不支持跨多个使用 流程。这将在稍后添加。
此外,在Mark L. Murphy的书“开始Android 2”中他提到:
我很困惑!这是否意味着getSharedPrefrences的MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE存在,但在最新的API级别中没有支持YET ???(最终,偏好可能是 可以跨应用程序共享,但是 从那时起就不支持了 这篇文章)
谢谢! 米泔
答案 0 :(得分:7)
我的书籍参考是基于该评论。
此外,制作任何文件MODE_WORLD_READABLE
或(更糟)MODE_WORLD_WRITEABLE
都是个坏主意。你失去了安全的希望。
如果您希望在两个应用程序之间共享数据,则有无数的解决方案,例如:
startService()
发送的命令公开API的服务以及通过Messenger
或createPendingResult()
PendingIntent
或Intents
所有这些都允许您定义集成权限,并允许您控制访问的粒度。