Сбой приложения CoreData для iPad - PullRequest
0 голосов
/ 27 ноября 2010

Я создал новое приложение iPad с разделенным видом, используя CoreData.Все, что я сделал, это добавил новый атрибут к объекту, который является строкой.(По умолчанию используется timeStamp, date).

Это приводит к сбою приложения при запуске, просто добавляя его.Как получилось?

Я, например, собирался поиграть с ним, чтобы отобразить текст, а не дату по умолчанию.Например, изменив эту строку: [newManagedObject setValue: [NSDate date] forKey: @ "timeStamp"];Использование другого значения, отличного от даты.

Надеюсь, вы можете помочь.

1 Ответ

1 голос
/ 27 ноября 2010

Это почти наверняка, потому что вы уже установили приложение на устройстве, и теперь, когда вы изменили модель базовых данных, существующая база данных имеет неправильную структуру.Вы можете убедиться в этом, посмотрев в окне консоли XCode после сбоя: вы должны увидеть трассировку стека исключений и, кроме того, сообщение в виде строки «Модель, используемая для открытия хранилища, несовместима с той, которая использовалась для созданияхранить."Когда XCode устанавливает вашу модифицированную версию приложения на устройство, он не перезаписывает существующую базу данных автоматически, что является проблемой и регулярно меня ловит; -)

Вы должны удалить приложение с устройствапосле внесения каких-либо изменений в модель базовых данных, чтобы она начиналась с чистой версии базы данных. Более подробную информацию об этом аспекте Core Data можно найти на сайте iPhone в действии Шеннона Аппельклина .

...