首页 > 解决方案 > CoreData + CloudKit 但不共享

问题描述

CoreData 非常棒。它使使用 SQLite DB 编码持久存储变得非常可预测。

CloudKit 非常棒。它使在 iCloud 中编写持久存储变得容易,并且可以在用户的​​设备之间共享。

CoreData + CloudKit 非常棒,因为它带来了本地数据存储和设备之间共享的优势。

现在, Apple 在使用 CoreData + CloudKit 时不支持用户之间的 CloudKit 共享这一事实让我感到完全愚蠢和惊讶。 每次我提出这个问题,人们都会看着我,为什么有人要这个?我很困惑。有没有理由不想利用本地+云同步的可共享存储组合?

如果有人可以帮助我理解为什么这不存在或者为什么我不想设计将本地持久性与云同步以及在用户之间共享这些对象的能力相结合的存储,那将是非常有用的?

标签: iosswiftcore-datanspersistentcloudkitcontainercloudkit-sharing

解决方案


贾斯汀,如果我理解你的观点,你是 100% 正确的,

“现在,Apple 在使用 CoreData + CloudKit 时不支持用户之间共享 CloudKit 的事实让我完全傻眼了……”

同步非常困难

我们生活的时代的“主要技术基石”是 Parse(编程它的人当之无愧地赚了数万亿美元)、Firebase 以及 AWS 和 Goog-services 提供的同步服务。

还有许多其他同步竞争对手,如 Couchbase、ably.io、realm.io 和类似的骨干网,如 pubnub。

同步实际上是当今主要的互联网骨干网。

(最大的服务——TikTok、Twitter——只不过是你所要求的,同步服务,顶部添加了一些按钮和徽标。)

作为计算机科学问题,CFRD 和其他方法确实非常非常非常困难 ( https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type ),而且从硬件和大规模布线上来说,这非常困难。

所以你基本上是在说“苹果什么时候能快点建立一个同步主干,这样我就可以最终停止使用 {Firebase、AWS 或任何你的毒药}......”

你是对的。

(而且不要忘记,一个问题是,我们生活在 droid-iphone 的二元世界中。没有客户会雇用你为狗构建下一个 tiktok,为狗构建下一个 facebook,这将是“只是 iOS”。如果 Apple制作自己的同步服务,它一到就死,创造中最无意义的白象,除非它是ios,droid,www以及像unity等次要专业。)

如果我理解你的问题,是的,我想这只是时间问题。但是(就像任何同步主干一样)它必须是全平台的。

甚至不要提及物联网,苹果眼镜等。


推荐阅读