そのため、Core Data を UIManagedDocument に移行していました。
iPhone シミュレーターで openWithCompletionHandler を呼び出すと正常に動作しますが、実際のデバイスでプロジェクトを実行しようとすると、常に NO が返されます。handleError をオーバーライドすると、次のようになります。
Error Domain=NSCocoaErrorDomain Code=260
"The operation couldn’t be completed. (Cocoa error 260.)"
UserInfo=0x1edafa90 {path=file://localhost/var/mobile/Applications/D57D7EAC-6E92-4CAD-97E7-179010CB6738/Project%20APP.app/DataModel.momd/StoreContent.nosync, NSUnderlyingError=0x1ed8e160
"The operation couldn’t be completed. (Cocoa error 513.)", reason=Unable to restore path to store content}
そして、それが私がそれを呼ぶ方法です:
NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys: PrivateName, NSPersistentStoreUbiquitousContentNameKey, // cloudURL, NSPersistentStoreUbiquitousContentURLKey, [NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption, [NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption, nil]; [self setPersistentStoreOptions:options]; [self openWithCompletionHandler:^(BOOL success) { if (success) NSLog(@"opened"); else { NSLog(@"Not opened"); } }];