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 работает нормально, и никаких предупреждений не замечено.

Пробовал следующее:

  1. полная чистая сборка
  2. гарантировано, что omo существует в datamodel v6, ManagedObjectModel & PersistentStoreCoordinator не равны нулю. Все функции работают как положено.
  3. добавьте более новую версию datamodel v7, гарантируя, что omo v7 существует - чистая сборка & развертывание устройства
  4. снова добавили схему

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

Связанный:

  1. https://openradar.appspot.com/33212613
  2. https://openradar.appspot.com/33573724
  3. https://openradar.appspot.com/33773917
  4. https://issuetracker.google.com/issues/35827124
  5. https://issuetracker.google.com/issues/35827113

Аналогичные проблемы со старым Xcode 6/iOS 9 и Xcode 7/iOS 9

  1. Базовые данные - не удалось загрузить оптимизированную модель по пути
  2. CoreData: не удалось загрузить оптимизированную модель по пути
  3. Предупреждение 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