Прогрессивная миграция с зашифрованными основными данными
Ссылка на источник: пользовательские миграции основных данных
Я использовал модуль github (Encrypted Core Data от Gavin Black), и до меня дошло, что автоматическая облегченная миграция имеет ограничение, если:
1) Если устройство имеет модель данных, которая более чем на одну версию отстает от самой современной модели ИЛИ
2) Модель данных не создается для текущей версии до последней версии
Автоматическая облегченная миграция не будет успешно выполнена, как ожидалось. Я закончил поиск в Google и обнаружил, что ресурс вставлен в верхней части страницы, подтверждая мои подозрения.
Было предложено решение, называемое прогрессивной миграцией, и оно успешно работало для обычного SQLite. Однако когда я попытался перенести эту реализацию в ECD, у меня возникли проблемы. Исключением является следующее:
Завершение работы приложения из-за невыполненной исключительной ситуации NSInternalInconsistencyException, причина: ': -observeValueForKeyPath:ofObject:change:context: сообщение было получено, но не обработано. Путь к ключу:igrationProgress Наблюдаемый объект: Изменение: { kind = 1; новый = "0.02083333"; }
Кто-нибудь испытывал это раньше?