2013-05-17 2 views
0

Я использую основные данные для хранения. Для второго выпуска моего приложения я создал новый объект в своих основных данных, поэтому я использовал легкую миграцию. По этой причине моя схема была изменена, но пользовательские данные потерялись. Как сохранить мои данные пользователя?легкая миграция данных ядра

ответ

0

Вы должны поместить некоторую логику в свой метод appdelegate didFinishLaunching для новой версии, чтобы он обнаружил, что это обновление, и приложение открывается в первый раз (вы можете сделать это, указав некоторое поле в userdefaults).

После этого вы считываете текущие данные из базы данных пользователя, используя SQL-запросы, и храните их временно.

Затем удалите db из местоположения файла и создайте экземпляр новой базы данных из основных данных, вам нужно скопировать существующие данные снова в новую БД по запросу sqlite, а затем ее готово к использованию со старыми резервными копиями.

Смежные вопросы