【发布时间】:2015-10-18 01:20:03
【问题描述】:
在我的应用程序中,我想通过 iCloud 与其他 iCloud 用户共享数据,但不是与全世界共享数据,而是与选定的其他 iCloud 用户共享。
我想过一种可行的方法,但我不确定它是否可行,以及我是否忘记或误解了一些事情。
假设用户 A 希望能够与其他 iCloud 用户共享字符串,但不能与所有人共享。所以用户 A 想将“Hello World”分享给用户 B,但不想分享给用户 C,也不想分享给用户 D。
所以我的应用程序有一个公共数据库和一个对每个人都相同的记录类型。在该记录类型中,有一个字符串类型的字段,对每个人来说都是相同的。
现在用户 A 将记录“Hello World”保存到 iCloud。诀窍来了:我会在字符串中添加一个像 UUID 这样的唯一标识符,以便将像“Hello World1230ABD6-3C61-1234-802E-D866F09AC012”这样的内容上传到 iCloud。
现在用户 A 需要告诉用户他想用他的 UUID 共享数据,所以用户 A 告诉用户 B。现在用户 A 的 UUID 将作为 Predicate 添加到用户 B 的 CKSubscription 中。
这将允许用户 B 从用户 A 获取字符串,但用户 C 或用户 D 不会收到 CKNotification,因为他们的 CKSubscription 中没有用户 A 的 UUID。
这行得通吗?或者是否有另一种设计模式允许通过 iCloud 与其他 iCloud 帐户共享/同步,但不能与所有人(公共)共享/同步?
附:我要共享的数据不敏感,因此不需要非常安全。这些数据对每个人(公共)都不感兴趣,因此只需要与选定的其他 iCloud 帐户共享...
我很感谢任何想法或提示如何实现这一点!
谢谢
【问题讨论】:
标签: ios objective-c icloud cloudkit