【问题标题】:CloudKit: Is it possible to have a custom zone in a public database?CloudKit:是否可以在公共数据库中拥有自定义区域?
【发布时间】:2015-01-19 13:03:11
【问题描述】:

如果订阅服务在公共领域可用,我可能会参与构建支持 Cloud Kit 的应用程序。

在私有数据库中订阅自定义区域肯定只会让您注册您在其他地方所做的更改?

【问题讨论】:

    标签: icloud cloudkit


    【解决方案1】:

    apple docs 中所述,您只能在私有数据库中创建额外的自定义区域,

    但就像Erik 正确所说的那样,您可以将自定义区域中包含的私人记录共享到共享数据库中,因为他链接的video 从分钟20:00 开始显示。

    【讨论】:

      【解决方案2】:

      从 iOS10 开始,这种情况发生了变化。现在,当另一个用户的私有数据库中的数据发生更改时,可以通过创建 CKShare 与参与者共享它来接收更新。目前还没有很多文档,但我预计很快就会出现教程。

      WWDC 2016 CloudKit

      【讨论】:

      • 您可以接收更新,但关键是您只能在私有数据库中创建自定义区域,不能在公共数据库中创建,也不能在共享数据库中创建
      【解决方案3】:

      从您的问题标题中回答问题: CKRecordZone 的文档说:

      CKRecordZone 对象定义了一个用于组织数据库中相关记录的区域。区域是组织数据的重要组成部分。公共和私有数据库有一个默认区域,在私有数据库中,您可以根据需要创建额外的自定义区域。使用自定义区域来排列和封装私有数据库中的相关记录组。自定义区域也支持其他功能,例如将多条记录写入单个原子事务的能力

      所以你不能在公共数据库中创建区域

      你是对的。私人数据库始终只链接到 1 个 Apple ID。如果您想在私有数据库中接收更改通知,则进行更改的用户/设备和必须接收通知的用户/设备都必须使用相同的 Apple ID 登录。

      【讨论】:

        猜你喜欢
        • 2021-12-06
        • 2021-12-04
        • 2023-03-07
        • 1970-01-01
        • 2014-10-25
        • 1970-01-01
        • 2021-02-23
        • 1970-01-01
        相关资源
        最近更新 更多