Подтвердить что ты не робот

SDK Google Maps для iOS требует, чтобы GoogleMaps.bundle был частью вашей цели в разделе "Ресурсы копирования Bundle"

Когда я создаю SDK GoogleMaps для iOS, произошла эта ошибка.

*** Terminating app due to uncaught exception 'GMSException', reason: 'Google Maps SDK for iOS requires GoogleMaps.bundle to be part of your target under 'Copy Bundle Resources''

но GoogleMaps.framework находится в ресурсах копий. Также, я запутался. Сообщите мне причину этой проблемы.

4b9b3361

Ответ 1

Инструкции отсутствуют. Надеюсь, это поможет...

  • Запустить Xcode (легко)
  • Перетащите пакет GoogleMaps.framework в рамки группы вашего проекта. При появлении запроса выберите Копировать элементы в папка целевой группы.

  • Щелкните правой кнопкой мыши GoogleMaps.framework в вашем проекте и выберите "Показать в Finder. Что он не говорит... Затем перейдите в дочернюю папку Resources

  • Перетащите файл GoogleMaps.bundle из папки "Ресурсы" на ваш проект. Мы предлагаем поместить его в группу Frameworks. когда prompt, обеспечить копирование элементов в папку целевых групп не выбран.

Ответ 2

К 2017 людям, которые ищут SO, самый простой способ - действительно попробовать установить и обновить свой модуль, конечно, pod install и pod update. Затем, наконец, очистите проект и сборку этими двумя командами:

  • Очистить сборку: Command + alt option + Shift + K
  • Чистый проект: Command + Shift + K

Тогда вуаля! Сбой больше не повторится.

Ответ 3

Для тех из вас, кто пробовал это в 2017 году с Xcode 9 (первый выпуск) и новой системой сборки, следующее разрешило это для меня.

Примечание. Основная проблема заключается в том, что новая система сборки НЕ очищается должным образом, поэтому вам нужно вернуться к старой системе. Также по состоянию на 9/25/17 сборщик Google выбирает пользовательский интерфейс из основного потока и бросает ошибки в Xcode.

-Перейти к старой системе сборки

-книгайте свой файл проекта "Мое имя приложения"

-Подробнее "TARGETS" нажмите имя вашего приложения (не тесты или UITests!)

Фазы

-build

- [CP] Ресурсы копирования ресурсов

-Вы должны увидеть ${PODS_ROOT}/GoogleSomething, выбрать те и нажать -

-Закрыть Xcode, запустить pod install.

-Откройте Xcode, Command-Shift-K (очистите и УБЕДИТЕСЬ, ЧТО ВЫ НАХОДИТЕСЬ В СТАРШЕЙ СТРОИТЕЛЬНОЙ СИСТЕМЕ!)

-Build/Run, должен работать сейчас

Ответ 4

Если вы столкнулись с этой проблемой в более поздней версии этой структуры и используете развертывание CocoaPods, проверьте, что раздел "Копировать ресурсы Pods" в разделе "Сборка фаз":

введите описание изображения здесь

По-видимому, этот раздел, пропавший без вести, является делом и удаляет каталог Pods и повторное выполнение "pod install" недостаточно для его исправления. Вместо этого вам нужно будет захватить этот удобный инструмент:

https://github.com/CocoaPods/cocoapods-deintegrate

Запустите эту вещь, а затем повторно запустите программу установки pod, и ваш раздел "Ресурсы копий" должен вернуться, и вы не получите это исключение, когда вы создаете экземпляр своей карты.

Ответ 5

запуск "pod install" исправил эту проблему для меня.

Ответ 6

Как только я обновился до Xcode 9 Swift 3.2, я все время получал сбой внутри AppDelegate в этой строке:

GMSServices.openSourceLicenseInfo()

Я продолжал использовать ответ Гленна, чтобы очистить проект, который определенно работал, но в конечном итоге произошел сбой.

Чтобы решить эту проблему, мне пришлось следовать указаниям в Установка Google Maps API

Следуйте:

Шаг 2: установите SDK и Установить вручную

Ответ 7

Завершение приложения из-за неперехваченного исключения "GMSException", причина: "SDK Google Maps для iOS требует, чтобы GoogleMaps.bundle был частью вашей цели в разделе" Ресурсы копирования ресурсов "

  • найдите GoogleMaps.bundle в GoogleMap.frameword/Resources, вы увидите GoogleMap.bundle
  • Перетащите GoogleMaps.bundle в Base/Framework с помощью GoogleMapsBase.framework

надеюсь, что это может помочь. Благодаря

Ответ 8

Если вы установили карту через CocoaPods, выполните следующие шаги.

  • Перейдите к TARGETS > Фазы сборки
  • Отключить 'Run script только при установке' введите описание изображения здесь