iOS - Пользовательская конфигурация - "Нет такого модуля"
В моем приложении IOS я пытаюсь различать среды, чтобы сделать вызовы веб-API в надлежащую среду (Development
, Staging
а также Production
).
Для этого я создал configuration.plist
файл с различными конечными точками для каждой среды и:
- Дублируется
Debug
Конфигурация и называется этоDevelopment Build
, - Создана новая схема под названием
Development
(продублировалDebug
схема) и на вкладке Информация (Run
раздел) выбралDevelopment Build
конфигурации.
Когда я работаю в режиме отладки, все работает нормально.
Я использую какао.
Если я выберу Development
схема, я получаю No such module 'JazzHands'
Если я отредактирую Development
Схема использования Debug
сборка, работает нормально.
Так что я должен что-то упустить, чтобы это не сработало.
2 ответа
Для тех, кто сталкивается с этим вопросом, попробуйте pod install
это сгенерирует некоторые файлы.xcconfig с вашим именем конфигурации. Очистите папку сборки и выполните сборку заново.
Это работало для меня с Cocoapods 1.0
Решение:
Создайте ту же пользовательскую конфигурацию сборки в JazzHands
Первопричина:
- Ошибка компиляции
No such module
брошен, потому что не может найтиJazzHands
для вашей пользовательской конфигурации сборки
Фон:
- Каждый раз, когда вы компилируете папку, создается в
DerivedData
, - Эта папка соответствует вашему устройству / симулятору и вашему приложению.
- Внутри этой папки будет
Build
папка, которая будет содержать папку, соответствующую каждой конфигурации сборки для вашего проекта. - В твоем случае
Development
папка не будет содержать рамкиJazzHands
двоичный - тем не мение
Debug
папка будет содержать рамкиJazzHands
двоичный
Пример:
Ниже приведен пример:
~/Library/Developer/Xcode/DerivedData/SomeApp-skjahjkdhsakjhdaskjdhaskjlhs/Build/Development-iphonesimulator
- SomeApp - название приложения
- Разработка - Конфигурация Custom Build