使用CloudKit进行私有数据共享

has*_*emi 16 macos cocoa ios icloud cloudkit

有没有一种直接的方法来使用CloudKit在两个或多个用户之间共享私人数据?

公共和私人日期显而易见,但似乎没有办法允许一组用户组织自己的孤岛来在他们自己之间共享数据,而不会让系统的所有其他用户和应用程序开发人员都可以使用它.

我有一个学术协作应用程序,但最简单的例子是两个用户之间的私人消息传递.

我想有人可以尝试在CloudKit之上构建一个公钥加密系统来实现这一目标,但这不是我想要的,并且每个组的扩展能力超过两个用户.

has*_*emi 5

在WWDC 2016上,Apple推出了针对此用例的CKShare.截至2016年6月13日,beta API已公开但未记录.共享API在WWDC 2016视频中演示了CloudKit的新功能,从19:57开始.


bit*_*and 0

从技术上讲,是的,您可以使用 CloudKit 在我们的两个以上用户之间共享私人数据。虽然数据存储是公共的,但这并不意味着每个用户都可以访问整个公共存储。您的设计可以控制对每个应用程序实例中公共数据库部分的访问。

通过开发一个应用程序,该应用程序使用具有用户组唯一标识符的公共数据库,以及使用 CKRecordZoneNotification 的区域来管理通知,您应该能够创建一个相当安全的解决方案。您可以决定合理安全的含义。

这是 Apple CKRecordZoneNotification文档的链接