【发布时间】:2020-12-10 12:41:20
【问题描述】:
集成 NSPersistentCloudKitContainer 非常简单,并且在实现同步后用户添加数据时可以正常工作。 但是,如果用户已经在不同的设备上添加了相同的数据,并且在更新时会启用同步,则所有数据都会在所有设备上复制。
有没有办法为自己的数据类型设置自己的标识符以防止重复?
【问题讨论】:
标签: ios swift core-data cloudkit
集成 NSPersistentCloudKitContainer 非常简单,并且在实现同步后用户添加数据时可以正常工作。 但是,如果用户已经在不同的设备上添加了相同的数据,并且在更新时会启用同步,则所有数据都会在所有设备上复制。
有没有办法为自己的数据类型设置自己的标识符以防止重复?
【问题讨论】:
标签: ios swift core-data cloudkit
数据复制只是 NSPersistentCloudKitContainer 工作方式的“正常”方式。如果我们有一些规则想要应用于数据,我们必须手动执行。
假设我们在应用程序首次启动时添加了一些数据,使用 NSPersistentCloudKitContainer,很可能用户有不同的设备并且添加了相同的数据集,因此将 2 组相同的数据添加到存储中。
为避免这种情况,我们可以为每个预加载数据提供一个 UUID 字段,获取具有相同 UUID 的数据并删除重复的数据。
我最近回答了一个类似的问题,希望能给你一点帮助(希望我没有误解你的问题):
【讨论】: