我现在在我的应用程序中使用Core Data和iCloud一段时间了。但它突然表现得像疯了似的。问题是设备应该从iCloud导入新的更改,即
- (void)persistentStoreDidImportUbiquitousContentChanges:(NSNotification *)notification
如果我在设备A 上添加1个新实体,则该实体将同步到设备B 。但是,如果我同时添加多个新实体,则只有一个或两个最终将同步到设备B 。这是我收到错误消息的时候:
Unable to find relationship destination object:
[_PFUbiquityRecordImportOperation processObjects:withState:andImportContext:outError:](1017): CoreData: Ubiquity: <_PFUbiquityRecordImportOperation: 0x14694540>{name = '(null)'}
我也在打印即将更改的内容([notification userInfo]),并且在关注该错误消息时看起来像这样。
{
deleted = "{(\n)}";
inserted = "{(\n)}";
updated = "{(\n)}";
}
我的模特:
我的公司有员工。其中没有人在.xcdatamodel中有任何删除规则。正在筹集Unable to find relationship destination object:
的员工
我似乎得到一些员工与公司“null / nil”
这是我检索我的MOC的方式:
if (managedObjectContext != nil) {
return managedObjectContext;
}
NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
if (coordinator != nil) {
managedObjectContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSMainQueueConcurrencyType];
[managedObjectContext setPersistentStoreCoordinator: coordinator];
// Could this result in stuff?
[managedObjectContext setMergePolicy:NSMergeByPropertyObjectTrumpMergePolicy];
[managedObjectContext setStalenessInterval:0.0];
}
return managedObjectContext;
这就是我保存到MOC的方式
[context performBlockAndWait:^{
success = [context save:&error];
}];
我的问题是,还有其他人遇到过这个问题吗?我该如何解决它?任何让我朝着正确方向前进的想法都非常感激。如果您希望我提供有关我的问题的更多信息,请发表评论。
更新 我提交了一个错误报告,这个问题似乎已在iOS9 b5中修复。