何时使用 NSPersistentCloudKitContainer.initializeCloudKitSchema?

Joã*_*aço 4 core-data cloudkit

我正在使用 NSPersistentCloudKitContainer 通过 CloudKit 和 CoreData 在用户之间同步和共享一些记录。在根据我的需要从Apple 网站调整示例代码后,工作得相对良好。

然而,NSPersistentCloudKitContainer 有一个名为initializeCloudKitSchema 的方法来初始化和验证CloudKit 架构。使用它的最佳实践是什么,因为它似乎没有有用的作用(Apple 示例文档和代码中没有使用它,并且无论如何创建方案时都没有它)?

Vik*_*lov 7

每次在核心数据模型中进行更改时,您都需要初始化架构,因此这些更改将同步到 iCloud,并且您将能够将架构/架构更改部署到生产环境。

之后,您可以注释掉与初始化相关的行 - 无需每次都初始化相同的架构。一旦您需要更新架构,只需重新注释这些行即可。

  • https://developer.apple.com/documentation/coredata/mirroring_a_core_data_store_with_cloudkit/creating_a_core_data_model_for_cloudkit (2认同)
  • 按照该页面上的说明,在初始化代码周围添加 #if DEBUG。 (2认同)