小编Sil*_*van的帖子

iOS:将现有Core Data数据库迁移到iCloud

我在现有应用程序中使用Core Data.现在我想集成iCloud,以便用户可以在他们的iOS设备之间同步他们的内容.为此,我为我的NSPersistentStoreCoordinator编写了以下代码(当然占位符在我的代码中填写):

- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {

if (persistentStoreCoordinator_ != nil) {
    return persistentStoreCoordinator_;
}

NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"<DB_Name>.sqlite"];

persistentStoreCoordinator_ = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];

NSPersistentStoreCoordinator* psc = persistentStoreCoordinator_;

if (IOS_VERSION_GREATER_THAN_OR_EQUAL_TO(@"5.0")) {
    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
        NSFileManager *fileManager = [NSFileManager defaultManager];

        // Migrate datamodel
        NSDictionary *options = nil;

        // this needs to match the entitlements and provisioning profile
        NSURL *cloudURL = [fileManager URLForUbiquityContainerIdentifier:@"<App_Identifier>"];
        NSString* coreDataCloudContent = [[cloudURL path] stringByAppendingPathComponent:@"data"];
        if ([coreDataCloudContent length] != 0) {
            // iCloud is available
            cloudURL …
Run Code Online (Sandbox Code Playgroud)

migration core-data ios icloud

6
推荐指数
1
解决办法
2885
查看次数

标签 统计

core-data ×1

icloud ×1

ios ×1

migration ×1