Я случайно перепутал настройки своих проектов при установке и удалении cocopods. Теперь я получаю сообщение об ошибке «не удалось импортировать заголовок моста». Я проверил свои настройки сборки, и путь к файлу в настройках сборки> генерация кода> заголовок моста target-c правильный. Я возился со своими путями поиска фреймворка (сейчас они пусты) в настройках сборки, пытаясь заставить кокоаподы работать. Был бы очень признателен за помощь в устранении этой проблемы с заголовком моста.
Не удалось импортировать ошибку заголовка моста
Ответы (4)
Похоже, причиной ваших проблем могут быть пустые пути поиска заголовков. Попробуйте добавить $(inherited)
в список путей поиска заголовков в настройках сборки. Это обеспечит использование путей поиска заголовков, установленных в файлах xcconfig модулей.
Выполните поиск в XCODE для заголовка, посмотрите, находится ли заголовок моста все еще «там», если это так, щелкните по нему, чтобы он отображался в кадре .... затем посмотрите, есть ли еще оператор facebook sdk #import, если не добавить.
если вы не найдете файл заголовка после поиска... щелкните файл и «Добавьте файлы и посмотрите, сможете ли вы найти там -Header.h, если да, добавьте его обратно в свой проект, если нет снова перейдите к настройкам сборки и "очистите" пути к заголовку, сохраните свой проект, закройте его, снова откройте, затем попробуйте добавить файл C и посмотрите, будет ли файл регенерироваться, а затем вы можете повторно добавить вызов #import facebookSDK
Еще одна вещь: вы можете проверить, чтобы убедиться, что FBSDKcoreKit.framework возвращен на этапы сборки вашей цели в бинарной ссылке с библиотеками.
РЕДАКТИРОВАТЬ из вашего ответа:
внутри ваших путей поиска вы также должны иметь следующий $(PROJECT_DIR)/yourprojectname чуть ниже $(inherited), если у вас НЕТ $(PROJECT_DIR)/yourprojectname, он БУДЕТ выдавать вам ту ошибку, которую вы упомянули, поскольку я продублировал ее, удалив это из Пути поиска фреймворков
Я пока не могу выложить изображение, или я бы для справки
Если вы добавите модуль, написанный на Swift, и не включите «use_frameworks!» в вашем подфайле ваши модули не будут установлены, и вы получите эту ошибку. Включить «use_frameworks!» в Podfile и снова установите pod.
Надеюсь, вам удалось найти решение самостоятельно. Сегодня я столкнулся с этой проблемой, пытаясь внедрить фреймворк в проект без использования кокоаподов. Фреймворк просто не будет распознан xcode. Как я решил это:
Я создал пустой проект в xCode 6.4 и выполнил шаги, чтобы добавить фреймворк в быстрый проект в обычном режиме. Как и ожидалось, фреймворк отлично работал в сочетании с заголовком моста Objective C, так как этот фреймворк есть в Objective-C.
Затем я сделал то же самое с xCode 7 beta 3. Это не сработало из-за этой ошибки.
Затем я зашел в проект xCode 6.4 и посмотрел Target -> Build Settings -> Search Paths и посмотрел, что там написано для Framework Path и Header path.
Потом зашел туда же и xCode 7 и обнаружил, что там совсем пусто.
Тогда мне просто нужно было скопировать путь, написанный на xCode 6.4, и адаптировать его к пути xCode-beta. Вы можете найти путь в Finder, набрав Command + Shift + G, когда Finder открыт для поиска пути. А затем протестируйте его для своего пути для бета-версии xCode и для xCode 6.4 и посмотрите, находитесь ли вы на правильном пути.
Очистите и соберите свой проект и проверьте, работает ли заголовок моста.