UIManagedDocument不会导入iCloud更改

时间:2016-05-21 08:23:45

标签: ios core-data icloud uimanageddocument

当我在设备A上打开UIManagedDocument(在无处不在的容器内)时,在设备B上对该文档进行更改时,更改不会导入到设备A上的CoreData堆栈中。

我看到更改到达设备A,因为在文档上调用了方法presentedSubitemDidChangeAtURL()。 如果我关闭并重新打开文档,我会看到这些更改。

但我希望UIManagedDocument在文档打开时自动将这些更改合并到托管对象上下文中。这不是这种情况吗?文档并没有说我必须自己做。

我用

创建我的文档
let document = UIManagedDocument(fileURL:...)
document.persistentStoreOptions = [NSMigratePersistentStoresAutomaticallyOption: true, NSInferMappingModelAutomaticallyOption: true]

并使用

将其移至iCloud
let fileManager = NSFileManager()
fileManager.setUbiquitous(true, itemAtURL: documentURL, destinationURL: url)

1 个答案:

答案 0 :(得分:0)

在获得Apple Developer Technical Support的帮助后,发现在设置持久存储时必须包含NSPersistentStoreUbiquitousContentNameKey