如果我制作两个iPhone应用程序,我怎么能/应该在其中共享自定义数据(不是联系人和类似的东西)?
谢谢!
你可以通过两种不同的方式来解决这个问题.
1)您需要共享的数据是非持久性的.换句话说,您需要使用一段可以执行某些操作的数据启动一个应用程序.在这种情况下,您将为每个应用程序注册特殊的URL方案.
您可以通过他的[编辑]博客文章中的 Craig Hockenberry找到有关URL方案的更多信息.
2)您需要共享的数据是持久的.换句话说,您需要类似于两个应用程序都可以读写的数据文件.据我所知,除了将数据存储在远程服务器上之外,没有一种安全的方法可以做到这一点.如果您需要在没有数据连接的情况下访问数据,那么您需要找到一种在各个应用程序和远程服务器之间同步数据的方法.
除了已经提到的内容之外,关于代码签名的iPhone文档似乎暗示使用相同标识签名的应用程序可以访问相同的Keychain项目.如果您需要存储相对少量的数据(密码等),这可能是一种有用的技术.
应用可以在iCloud上共享容器目录.
来自Apple有关配置iCloud权利的文档:
iCloud容器字段标识应用程序可以在用户的iCloud存储中访问的容器目录列表.(此字段对应于com.apple.developer.ubiquity-container-identifiers权利.)您添加到此列表的字符串必须与您的团队创建的应用程序的包标识符相对应.Xcode使用当前应用程序的包标识符来指定第一个字符串; 如果您希望多个应用程序共享主容器目录,则可以将其更改为其他捆绑包标识符.您还可以为团队的其他应用添加其他捆绑包标识符.