代码之家  ›  专栏  ›  技术社区  ›  Arash

iOS 13、CloudKit和CoreData与自定义区域同步

  •  0
  • Arash  · 技术社区  · 5 年前

    2019年WWDC期间,苹果公司 NSPersistentCloudKitContainer

    苹果创造 com.apple.coredata.cloudkit.zone 如果满足所有设置条件,则基本上会将所有数据同步到该区域中。但是,当用户希望共享数据时,没有指导原则。根据WWDC以前的一次谈话,共享将主要通过创建一个自定义区域来实现。然而新的 无法更改CoreData中每个实体的分区。

    我很高兴能找到这些

    open func record(for managedObjectID: NSManagedObjectID) -> CKRecord?
    
    open func records(for managedObjectIDs: [NSManagedObjectID]) -> [NSManagedObjectID : CKRecord]
    
    open func recordID(for managedObjectID: NSManagedObjectID) -> CKRecordID?
    
    open func recordIDs(for managedObjectIDs: [NSManagedObjectID]) -> [NSManagedObjectID : CKRecordID]
    

    因为他们给人的印象是容器调用这个方法来检索CKRecord,因此需要修改区域等信息。但是在设置之后,我意识到,当我向CoreData添加一个新实体时,即使没有调用覆盖,这些函数也会起作用。

    简言之,我的问题是:如何控制 NSpersistentCloudKit容器 com.apple.coredata公司.cloudkit.zone区

    0 回复  |  直到 5 年前