coredata 可以允许某些字段在应用程序用户之间共享吗?
Can coredata allow certain fields to be shared across users of app?
应用程序允许个人用户输入字段并保存在他们的设备上
Name of hotel
Location of hotel
Type of Hotel
还有一些附加功能,例如,如果他们发现酒店服务好坏。
现在我的问题出现了,因为我希望某些信息(例如酒店名称及其位置)对所有在最喜欢的酒店部分安装该应用程序的用户可见
核心数据中是否有任何允许我这样做的选项,或者我需要在 cloudkit 上工作,问题是,如果我在 cloudkit 上工作,这是否会使 coredata 不适用还要投影吗?
Core Data 根本不会在设备之间自动同步数据。为此,您需要将 CloudKit 与 Core Data 一起使用。 Core Data 可以在内部使用 CloudKit 来同步数据。有很多东西需要解释,所以我建议从 Apple's documentation on the topic. Using this to sync data between different users is only supported for iOS 14 right now (still in beta). Apple covered this in a session at this year's developer conference.
获取详细信息
首先,让我们弄清楚 CoreData 和 CloudKit 之间的关系,因为这对您的问题和答案很重要。
CoreData 是一个持久性框架(工具!),允许您在设备本地保存数据。 CoreData,不适合共享数据。它旨在供用户保存数据,并配备了 Apple 为保护隐私而设计的所有安全性。
CloudKit 是一个持久性框架(工具!),它允许您将数据远程保存在 Apple 的云端。因为是远程保存,所以有能力让不同的设备和用户访问数据。
CoreData 可以在 Xcode 中自动设置为 CloudKit,这允许用户将数据保存到本地设备存储,并自动备份到云端。这允许用户在一台设备上保存数据,如果他们在另一台设备上使用该应用程序,则可以访问保存的数据。
但是,CoreData 在与 CloudKit 一起使用时,至少在您需要自动同步时,实现了一个特殊的 'zone',在 iOS14 之前是不可共享的。这很好,但实际上,您需要清楚地概述私有数据库中有哪些数据,以及您想要共享的数据。您需要在应用中解决其他注意事项和复杂问题,例如配置编辑控件,这样您就不会让用户尝试编辑他们无权访问的内容。
您的问题听起来像是您只想与其他人共享用户存储的部分数据。此外,共享数据听起来像是许多用户数据(如评级)的集合。在这种情况下,最好使用一些后端程序处理该数据并将其作为单独的 CloudKit 共享提供。理由是,您不希望要求用户每次都下载数百、数千、数万条用户评论并为每个需要它的人处理它们。
应用程序允许个人用户输入字段并保存在他们的设备上
Name of hotel
Location of hotel
Type of Hotel
还有一些附加功能,例如,如果他们发现酒店服务好坏。
现在我的问题出现了,因为我希望某些信息(例如酒店名称及其位置)对所有在最喜欢的酒店部分安装该应用程序的用户可见
核心数据中是否有任何允许我这样做的选项,或者我需要在 cloudkit 上工作,问题是,如果我在 cloudkit 上工作,这是否会使 coredata 不适用还要投影吗?
Core Data 根本不会在设备之间自动同步数据。为此,您需要将 CloudKit 与 Core Data 一起使用。 Core Data 可以在内部使用 CloudKit 来同步数据。有很多东西需要解释,所以我建议从 Apple's documentation on the topic. Using this to sync data between different users is only supported for iOS 14 right now (still in beta). Apple covered this in a session at this year's developer conference.
获取详细信息首先,让我们弄清楚 CoreData 和 CloudKit 之间的关系,因为这对您的问题和答案很重要。
CoreData 是一个持久性框架(工具!),允许您在设备本地保存数据。 CoreData,不适合共享数据。它旨在供用户保存数据,并配备了 Apple 为保护隐私而设计的所有安全性。
CloudKit 是一个持久性框架(工具!),它允许您将数据远程保存在 Apple 的云端。因为是远程保存,所以有能力让不同的设备和用户访问数据。
CoreData 可以在 Xcode 中自动设置为 CloudKit,这允许用户将数据保存到本地设备存储,并自动备份到云端。这允许用户在一台设备上保存数据,如果他们在另一台设备上使用该应用程序,则可以访问保存的数据。
但是,CoreData 在与 CloudKit 一起使用时,至少在您需要自动同步时,实现了一个特殊的 'zone',在 iOS14 之前是不可共享的。这很好,但实际上,您需要清楚地概述私有数据库中有哪些数据,以及您想要共享的数据。您需要在应用中解决其他注意事项和复杂问题,例如配置编辑控件,这样您就不会让用户尝试编辑他们无权访问的内容。
您的问题听起来像是您只想与其他人共享用户存储的部分数据。此外,共享数据听起来像是许多用户数据(如评级)的集合。在这种情况下,最好使用一些后端程序处理该数据并将其作为单独的 CloudKit 共享提供。理由是,您不希望要求用户每次都下载数百、数千、数万条用户评论并为每个需要它的人处理它们。