Обработка поддонов в cocoa touch framework - получена ошибка на устройстве

Я проработал около 2-3 часов и пробовал несколько вещей, но я не могу заставить это работать:

Что мне нравится делать

Цель состоит в разделении кода пользовательского интерфейса и бизнес-логики. Бизнес-логика должна быть укоренена в отдельной структуре. Cocooa Touch Framework. Таким образом, бизнес-логика может быть повторно использована в приложении WatchKit, например.

Как я пытался это сделать

  • Создайте новый проект Xcode → Выберите одноразовое приложение.
  • Добавить новую цель → Выбрать Cocoa Touch Framework.
  • Запустить pod init.
  • Добавьте несколько подкадров в подфайл для каждой цели.
  • Запустите программу установки.
  • Внедрить некоторый код в пользовательском интерфейсе и Framework

Это отлично работает на симуляторе. Как только я запустил его на устройстве, в отладчике появится следующая ошибка:

dyld: библиотека не загружена: @rpath/SwiftAddressBook.framework/SwiftAddressBook   Ссылка из:/private/var/mobile/Containers/Bundle/Application/48E58889-78D4-4D71-B8DA-154ADEB98894/Pod Ошибка Framework.app/Frameworks/PodErrorKit.framework/PodErrorKit   Причина: изображение не найдено

Я не знаю, как это решить. Какие-либо предложения?

Я использую:

  • cocoapods 0.38.2
  • Xcode 6.4 (6E35b)
  • Цель развертывания iOS 8

Я загрузил проект (только поддельный проект, но ту же ошибку) в github. Вы можете просмотреть его здесь.

Ответы

Ответ 1

Исправление находится здесь https://github.com/keithyipkw/pod-cocoa-touch-framework

SwiftAddressBook.framework является динамическим, поэтому вам нужно встроить его в свое приложение, как и PodErrorKit. Подробности в моей фиксации. Симуляторы обманывают, так или иначе, возможность находить фреймворки вне приложения (рядом с ним в производных данных).

Я не смог скомпилировать ваш проект из-за отсутствия Pods.framework. Я не смог найти цель, поэтому я удалил ее.