Проблема:Несовместимое хранилище CoreData всегда вызывает сбои?
Недавно мы ввели CoreData в наше приложение, и ранее выпустила версию с неполной модели CoreData. В этой отгруженной версии мы никогда не реализовали код для записи данных в базу данных sqlite, только модель была реализована.
В нашем внутреннем тестировании мы вернем наши устройства к ранее отгруженной неполной модели, а затем обновим ее до новой модели и никогда не должны были выполнять миграцию, а также не сталкивались с несовместимым исключением магазина.
Однако в нашем бета-тестировании мы выявили существующих пользователей, которые испытывают сбои из-за несовместимого хранилища, в то время как у некоторых существующих пользователей нет.
Вопрос:
ли несовместимый магазин всегда вызывает сбой, и если да, то почему бы нам не испытывать сбой при обновлении к другой модели CoreData от старой версии?
Следует отметить, что когда мы вносим изменения в самую последнюю модель CoreData, мы получаем брошенные несовместимые ошибки в хранилищах, но когда мы возвращаемся к очень примитивной версии нашей основной модели данных, мы не видим этого выброшенного исключения.
, когда вы вносите какие-либо изменения в coredata, тогда вам нужно удалить старую сборку и использовать новую сборку, если u по-прежнему использует старую сборку, чтобы она привела к сбою. –
взгляните на: https://www.raywenderlich.com/27657/how-to-perform-a-lightweight-core-data-migration – raki
Если вы удалите приложение своего устройства перед установкой, то его нет Конфликты схемы CoreData не приводят к сбою. Если ваши тестовые пользователи не удалили приложение с своего устройства, прежде чем использовать новую версию приложения, которая имеет другую схему CoreData, конфликт в схеме приведет к сбою. – Zhang