Відповіді:
Для мене жодне з попередніх рішень не спрацювало. Ми виявили, що ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIESв налаштуваннях збірки є прапор (у попередніх версіях: "Вбудований вміст містить код швидкого"), який потрібно встановити "ТАК". За замовчуванням це було НІ!
Ця помилка може виникнути, якщо під час перетворення проекту Objective-C щось почало використовувати Swift. Проблема полягає в тому, що параметри збірки Linker ніколи не були налаштовані належним чином, тому вам доведеться це робити вручну. Знайдіть налаштування збірки шляхів пошуку Runpath та встановіть його на:
$(inherited) @executable_path/Frameworks

EDIT: Я також повинен додати, що останнім часом цілий ряд цих помилок викликаний чимось іншим цілком - Apple внесла зміни в сам Swift, починаючи, можливо, з Xcode 6.1 або 6.1.1. Здається, єдиним рішенням є залишити Xcode, знищити ваші сертифікати в Keychain Access, перейти до Центру членів та видалити всі сертифікати та профілі (крім профілів для додатків у магазині - ви не можете їх видалити), а потім запустити весь процес запиту сертифікатів з нуля.
Я не дуже впевнений, чому це питання викликає недоречність, у мене була така проблема, коли я вперше спробував використати Swift з існуючим проектом. Перезапуск Xcode також вирішив це для мене.
Я довго шукав це питання. Є кілька причин, що викликають це питання.
Якщо ви зіткнулися, коли ви і Swift код / бібліотека в проекті Objectice C, ви повинні спробувати Рішення 1-2-3
Якщо ви зіткнулися з цією проблемою, то новий проект Swift Рішення 4 підійде вам найкраще.
Перезавантажте Xcode, потім комп'ютер та iPhone
Перейдіть до налаштувань збірки проекту та встановіть Always Embed Swift Standard Libraries(раніше Embedded Content Contains Swift Code) прапор наYES
Перейдіть до налаштувань збірки проекту та додайте @executable_path/Frameworksдо Runpath Search Pathsопції
Якщо жодне з перерахованих вище не працює, це повинно бути. Apple, схоже, сертифікати, пов'язані з ніндзя, як згадується у публікації AirSign
На сертифікати InHouse
Subject: UID=269J2W3P2L, CN=iPhone Distribution: Company Name, O=Company Name, C=FR
вони додали нове поле під назвою OU
Subject: UID=269J2W3P2L, CN=iPhone Distribution: Company Name, OU=269J2W3P2L, O=Company Name, C=FR
тож вам слід просто відтворити сертифікати та положення
@executable_path/../Frameworksтам, де проекти iOS вимагають цього без ..середини. Зміна цього значення важлива, якщо ви перетворили ціль з однієї ОС в іншу.
У моєму випадку я намагався імпортувати користувальницьку систему і отримував подібну помилку. Виявляється, мені довелося імпортувати рамку в Вбудовані Бінарні файли, а не у Пов'язані рамки та бібліотеки.
Вбудовані бінарні файли знаходяться в розділі Налаштування проектів -> -> Загальні
Для розробників, які мали цю проблему з розширеннями Adhoc / Enterprise,
Створіть сертифікат на виробництво з порталу розробників, а потім відновіть профіль розподілу. Завантажте та інсталюйте їх на свій Mac. Переконайтесь, що ви вибрали правильний профіль у налаштуваннях збірки Xcode та перезавантажте програму.
Джерело: https://devforums.apple.com/message/1022908#1022908
Рішення 5:
У моєму випадку всі рішення, зазначені у відповіді невідомих, були дуже корисними, але жодне не спрацювало. Я вирішив свою проблему, додавши свою швидку бібліотеку до розділу "Вбудовані бінарні файли" в розділі "Загальні" цілі мого проекту. Можливо, це пов’язано з тим, що я включив мій швидкий фреймворк у свою робочу область? Що б зараз не склав! Приготуйся Свіфт, я тут!
Для мене ця проблема була пов'язана з тим, що мій орган сертифікації відносин розробників Apple Worldwide був недійсним.
Завантажте його звідси: https://developer.apple.com/certificationauthority/AppleWWDRCA.cer
Перетягніть його в Keychain Access, очистіть проект та запустіть.
У мене був проект Obj-C, де я почав додавати швидкі вихідні файли. Наступне вирішило проблему для мене:
RUNPATH SEARCH PATHS = $(inherited) @executable_path/FrameworksEMBEDDED CONTENT CONTAINS SWIFT = YESЯ щойно створив новий проект із шаблонів Xcode 6.3 і порівняв налаштування проекту зі своїм старим оригінальним проектом.
Спробуйте утримувати Alt, перейдіть до Product -> Clean Build Folder ...
Сподіваюся, це допоможе комусь ..
Причин цього відбувається багато. Щойно провівши веселі вихідні, знайшовши ще одне питання, що викликає це (порядок підписання коду), я хотів створити стислий відповідь, який поєднує всі можливі рішення разом:
DerivedDataта Buildкаталоги. Подивіться в розділі Налаштування для місцезнаходження DerivedData. Buildмає бути у папці вашого проекту.@executable_path/Frameworks . Це прості речі. Якщо ви займаєтеся побудовою власного командного рядка, ви можете створювати власні .ipaфайли для завантаження. У цьому випадку вам потрібно забезпечити наступне:
SwiftSupport/iphoneosє такою ж, як і версія в.Contents/YourApp.app/Frameworks Тому що Swift ще не є бінарною сумісною між версією, ви повинні переконатися, що ці версії є тією, з якої ви створили додаток. Ви можете знайти ці бібліотеки під /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos.codesignв бібліотеки та файли фреймворку ( Frameworksв .appпапці), а потім підписати все .appдерево. .appДерево має бути підписана з , entitlements.plistале НЕ в рамках.Сподіваємось, коли Swift 3.0 вийде і нам більше не потрібно поєднувати Swift з нашими програмами, вся ця проблема піде назовні.
У мене виникла ця проблема, використовуючи спеціальну мобільну програму (або підприємство) із сертифікатом виробництва. Перехід на сертифікат розробки та мобільне забезпечення вирішили цю проблему.
Мій проект - проект Swift з деякими класами Objective-C. У мене була така ж проблема, коли я був підписаний зі старим сертифікатом inhouse (підприємство).
Наступні кроки вирішили це для мене.
Runpath Search Pathsналаштування збірки на: $(inherited) @executable_path/Frameworks. Рішення 6:
У нашому випадку сертифікат розповсюдження підприємства був відкликаний. Створення нового сертифіката та оновлення профілю забезпечення вирішили проблему.
(Схоже, існує багато різних причин цієї помилки. Сподіваюся, що це комусь допоможе.)
Я зіткнувся з тією ж проблемою, встановлення правильної ідентичності коду вирішило проблему (Налаштування налаштувань-> Ідентифікація підпису коду)
Відповідно до технічного питання Apple "Усі сертифікати для розробників Enterprise і стандарт iOS, створені після випуску iOS 8, мають нове поле Team ID у потрібному місці, щоб дозволити запускати додатки мови Swift"
Якщо ви додасте три рамки через вбудовані бінарні файли, вони також будуть додані до пов'язаних рамок і бібліотек. Видаліть три записи із пов'язаних рамок і бібліотек вирішить проблему.
Магічні методи, такі як повторний запуск Xcode та перезапуск Mac, не працюють на мене.
Додавання Framework як "Вбудованого двійкового" замість просто "Зв'язані рамки та бібліотеки" - виправлена моя проблема.
Я також встановив прапорець Вбудований вміст, який містить прапор Swift Code.
Оновлення до останньої версії OS X (Yosemite)
Після годин проб і помилок я прийшов до вирішення цієї проблеми. - Якщо це стосується вашого випадку, звичайно.
У мене була така ж проблема, поки я не модернізував Mac OS X з Mavericks до Yosemite. - Це вирішило мою проблему, сподіваюся, що вона виправить і вашу
Я спробував усі рішення, які знайшли в Інтернеті, включаючи Apple та нові сертифікати. Без успіху.
Єдиний спосіб, коли я міг запустити xcode, після 6 місяців спроб, це створити новий обліковий запис на моїй книзі macbook.
Зазвичай ця помилка зникне, якщо ви додасте цю бібліотеку до сегменту "Копіювати файли" у вашій фазі збірки.
Жодне з цих рішень не здавалося, що для мене послідовно працює; після кожної пари успішних пробіжок знову не вдасться. Прапор "Вбудований вміст містить код швидкого" для мене завжди був "ТАК".
Виявляється, я б встановив, що Xcode сумісний з 6.3. Змінивши його назад на 3.2-сумісну, вирішено:

Це з’явилося, коли я до нового проекту додав нову ціль розширення Today із мовою Swift. Виправляється легко шляхом оновлення проекту до рекомендованих налаштувань. Xcode 6.0.1
У мене виникла така ж проблема за допомогою Mavericks, Xcode 6.1.1, тестування на iPhone5 з iOS 8.1.1. Я спробував усі можливі рішення, включаючи нові сертифікати та профілі забезпечення, але нічого не допомогло. Я вносив зміни до Embedded Content Contains Swift Codeта Runpath Search Pathsяк на рівні проекту, так і на цільовому рівні.
Зараз я встановив Yosemite, і без подальших змін він почав працювати.
otool