我正在构建两个相关的iOS应用程序,比如com.foo.bar和com.foo.baz,我想保存数据(除了一个部分之外的所有部分都是NSString
;一个例外是{ {1}} NSArray
的{1}},以便com.foo.bar,com.foo.baz和(预期的未来扩展)其他com.foo。*应用程序可以以相同的方式工作。
如何保存和恢复NSString
/ NSString
NSArray
个值,以便全家人都能看到它?
答案 0 :(得分:2)
您的应用可以通过多种方式共享数据。最简单的可能是iCloud。所有应用都必须拥有相同的Ubiquity容器。
来自iCloud docs:
为多个应用配置通用无处不在容器
在Xcode目标编辑器的“摘要”选项卡中,您可以请求访问应用程序所需的任意数量的无处不在的容器。例如,假设您提供应用的免费和付费版本。您希望升级的用户保留对其iCloud文档的访问权限。或者,也许您提供了两个互操作且需要访问彼此文件的应用程序。在这两个示例中,您都可以通过指定一个普通的普遍容器,然后从每个应用程序请求访问它来获得所需的访问权限。
另一种方式(我认为)是使用Keychain数据在应用之间共享。我不确定它是如何工作的。
答案 1 :(得分:1)
不幸的是,不允许在文件系统上写入将在应用程序之间共享的数据。
使用iCloud在2个应用之间共享数据或实现自己的服务器以保留共享数据。