После импорта Objective C Framework в мой проект Swift мой проект не распознает мой заголовочный файл в моем файле Bridging
Мне нужно импортировать Framework в мой проект Swift, написанный на Objective C. Итак, я создал файл Bridging, и после того, как я добавил в него файлы заголовков и скомпилировал их, мой проект говорит, что не может их найти. На рисунке ниже показан мой Framework, и вы можете ясно видеть AWController.h, но он выдает ошибку в моем файле Bridging при сборке.
Файл Bridging отображается в моих настройках, так что я делаю неправильно или что я пропустил? Я установил для модуля "Определения" значение "Да" в настройках сборки, и в имени моего модуля нет пробелов.
2 ответа
Я бы ознакомился с настройкой AWS на их веб-сайте. У них даже есть раздел, который подробно использует со Swift iOS9.
Среди прочего, если вы используете ручную интеграцию Frameworks, убедитесь, что шаг 4 завершен.
На вкладке "Фазы сборки" в своей цели нажмите кнопку "+" в левом верхнем углу и выберите "Новая фаза запуска сценария". Затем настройте этап сборки следующим образом. Убедитесь, что эта фаза находится ниже фазы Embed Frameworks.
Shell / bin / sh
bash "$ {BUILT_PRODUCTS_DIR} / $ {FRAMEWORKS_FOLDER_PATH} /AWSCore.framework/strip-frameworks.sh"
Показывать переменные среды в журнале сборки: проверено Запускать сценарий только при установке: не проверено
Входные файлы: пустые Выходные файлы: пустые
Возможно, вы захотите установить и использовать Carthage, чтобы сделать это проще. Перейдите на сайт Homebrew, затем после установки homebrew вы запустите brew install carthage из командной строки. После этого вернитесь по ссылке выше и следуйте инструкциям Карфагена.
Во-вторых, я хотел бы еще раз изучить документацию Apple по работе с заголовочными файлами моста, чтобы проверить, применимы ли какие-либо из крайних случаев, и просто проверить их работоспособность.
В-третьих, если это не сработает, я просто попробую создать пустой проект Swift и снова пройдусь по шагам, используя один из методов, описанных выше. Возможно, что-то не так с одной или несколькими настройками в файлах проекта или сам файл может быть поврежден.
Кстати, идентификатор пакета продуктов, вероятно, должен соответствовать соглашению com.yourdomain.YourProductName.
Вы не должны использовать заголовок моста. Просто используйте import AWSDK
в файле swift, где вы его используете.