CoreData: аннотация: Не удалось загрузить оптимизированную модель по пути с помощью Xcode 9 GM
Не удалось загрузить предупреждение OMO (возможный сбой):
Проект с xcode 9 после предупреждения наблюдается в консоли во время сборок отладки/выпуска (iOS 11 GM/beta и iOS 10):
CoreData: annotation: Failed to load optimized model at path "/Users/xyz.abc/Library/Developer/CoreSimulator/Devices/A-GUID/data/Containers/Bundle/Application/B-GUID/app-name.app/Frameworks/framework-name/mystorename.momd/mystorename 6.omo"
Любая пользовательская структура (например, GoogleMaps и т.д.), использующая CD, также приводит к этому предупреждению и потенциальным сбоям.
Обновление: при использовании Xcode11 обнаружена похожая проблема с DTDeviceKitBase.framework:
CoreData: annotation: Failed to load optimized model at path '/Applications/Xcode11.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/CrashDatabaseModel.momd/CrashDatabaseModel-5.0.1.omo'
Примечание:
- Также заметил это с модальным, используемым в приложении и других рамках. Для приложения очистите результаты сборки в этой ошибке. Путь в предупреждениях указывает на модель, используемую с приложением, а не с каркасом.
- Компиляция с предыдущим Xcode работает нормально, и никаких предупреждений не замечено.
Пробовал следующее:
- полная чистая сборка
- гарантировано, что omo существует в datamodel v6, ManagedObjectModel & PersistentStoreCoordinator не равны нулю. Все функции работают как положено.
- добавьте более новую версию datamodel v7, гарантируя, что omo v7 существует - чистая сборка & развертывание устройства
- снова добавили схему
Пожалуйста, добавьте предложения.
Каковы возможные последствия этого предупреждения?
Связанный:
- https://openradar.appspot.com/33212613
- https://openradar.appspot.com/33573724
- https://openradar.appspot.com/33773917
- https://issuetracker.google.com/issues/35827124
- https://issuetracker.google.com/issues/35827113
Аналогичные проблемы со старым Xcode 6/iOS 9 и Xcode 7/iOS 9
- Базовые данные - не удалось загрузить оптимизированную модель по пути
- CoreData: не удалось загрузить оптимизированную модель по пути
- Предупреждение Google Maps SDK для iOS во время выполнения - не удалось загрузить базовую дату по оптимизированному пути
Ответы
Ответ 1
Единственный способ справиться с этим (ios 11 = crash, а не только предупреждение) - это понизить ваш sdk!!
Внутри вашего подфайла измените следующие строки:
pod 'GoogleMaps', '2.2'
pod 'GooglePlaces', '2.2'
После этого запустите pod update
, чтобы библиотека обновилась.
любая версия над ней сработает.
Ответ 2
Обновление Xcode до версии 9.1 beta (9B46) не выводит это предупреждение в консоли. Попробовал воспроизвести консольное сообщение:
- Очистить контейнеры целиком и перестроить проект.
- Завершить очистку Xcode, включая полученные данные, очистку симулятора.
- Развертывание устройства, отсутствие сбоя.
Ответ 3
GoogleMaps 2.5.0 отсутствует, который должен решить проблему.
Вот трекер проблемы: Сбой в iOS 11
просто обновите свой подфайл
pod 'GoogleMaps'
pod 'GooglePlaces'
И обновление pod
Я получал эти предупреждения на симуляторе, после возврата моего модуля GoogleMaps в 2.2 API больше не показывал карту. Я обновил до 2.5, который только что получил релизы, теперь карта работает, но я все еще получаю эти журналы.
Также попробуйте чистую сборку! Мое приложение внезапно начало сбой, когда я открывал контроллер с импортированными в него GoogleMaps, и все было в порядке, поэтому я провел часы и, наконец, просто сделал чистую сборку, и проблема была решена!
command + shift + B