Проблемы с интеграцией со смешанной средой Swift и Objective-C

Я создаю фреймворк, который планирую экспортировать через cocoapods. Каркас был написан как на быстром, так и на объективном C. Я создал карту модуля, чтобы помочь мне с тем же.

Ниже приведены соответствующие вещи в подспец:

s.user_target_xcconfig = { 
    'FRAMEWORK_SEARCH_PATHS' => '$(inherited)'
  }
s.modulemap = "path to modulemap"

Ниже моя карта модуля:

framework module test {
    umbrella header "test-umbrella.h"
}


module test.Swift {
    header "test-Swift.h"
    requires objc
}

При интеграции фреймворка в файл Objective-C все работает как положено. Я импортирую фреймворк и использую его без проблем

Но когда я импортирую его в файл swift в том же приложении, у меня возникают проблемы. Автозаполнение не работает, и кажется, что sourceKit аварийно завершает работу "Произошла внутренняя ошибка. Функциональность SourceEditor ограничена. Файл ошибки". Это также блокирует автозаполнение для других функций. Но как только я напишу правильную строку кода, его сборка будет в порядке.

Я попытался изменить параметры сборки, чтобы включить пути поиска заголовка и изменить карту модуля. Но я заблудился о том, в чем может быть проблема.

Есть два связанных вопроса. Но они не решены.

1) Неспособность интегрировать среду Swift и Objective-C. 2) Интеграция инфраструктуры Swift и Objective-C с закрытым исходным кодом в приложение Swift.

0 ответов

Другие вопросы по тегам