如何告诉Core Data Lightweight迁移已经成功

时间:2012-06-02 21:23:06

标签: iphone ios ipad core-data icloud

背景:

我目前在appstore中有一个使用核心数据数据存储的应用程序 - 使用iCloud。

我已将字段添加到实体和新实体。

我已设置自动迁移,我认为一切正常。 (什么都没有崩溃)

有没有办法告诉它100%有效?我认为这是进行这种微小变化的最佳方法吗?我不想有机会释放一些用户会崩溃。

实现自动迁移的代码如下:

NSURL *storeUrl = [NSURL fileURLWithPath:storePath];
// this needs to match the entitlements and provisioning profile
NSURL *cloudURL = [fileManager URLForUbiquityContainerIdentifier:nil];
NSString* coreDataCloudContent = [[cloudURL path] stringByAppendingPathComponent:@"iLearn_LessonPlans"];
cloudURL = [NSURL fileURLWithPath:coreDataCloudContent];

//  The API to turn on Core Data iCloud support here.
NSDictionary* options = [NSDictionary dictionaryWithObjectsAndKeys:@"com.danielanderton.iLearn_LessonPlans.1",    NSPersistentStoreUbiquitousContentNameKey, cloudURL, NSPersistentStoreUbiquitousContentURLKey, [NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption, [NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption,nil];

NSError *error = nil;

[psc lock];
if (![psc addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeUrl options:options error:&error]) {
              NSLog(@"error");
}
[psc unlock];

0 个答案:

没有答案