Обновление iOS приложения с обновленной моделью данных ядра

Я почти закончил работу над релизом 1.1 моего первого приложения для iOS, в нем я внес два небольших изменения в основную модель данных. Точнее, я добавил два атрибута в одну из моих таблиц. Это мое первое приложение с базовыми данными и, следовательно, первое обновление базовых данных в живом приложении, и я немного нервничаю по поводу отправки кода, который может не работать для моих текущих пользователей. Поскольку это небольшое обновление, я предполагаю, что метод автоматической миграции Apples подойдет, но я не хочу гадать.

Соответствующий код выглядит так:

NSError *error = nil;
__persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
                        [NSNumber numberWithBool:YES],   NSMigratePersistentStoresAutomaticallyOption,
                        [NSNumber numberWithBool:YES],  NSInferMappingModelAutomaticallyOption, nil];
if (![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error])
{

    //NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
    abort();
}    

В 1.1 я добавил NSDictionary *options.

В контроллере представления я убеждаюсь, что нужные строки не nil, вот так:

if (currentPage.inputType == @"drawing") {
    [pageView changeToDrawing];
} else if (currentPage.inputType == @"text") {
    [pageView changeToText];
} else {
    currentPage.inputType = @"text";
    [pageView changeToDrawing];
}

В общем, достаточно ли этих изменений или мне нужно сделать что-то еще?

20
задан Anders 2 January 2012 в 17:08
поделиться