Я разрабатываю расширение Today Widget для приложения с целью развертывания до iOS 8.0. В Apple Руководство по программированию расширений они рекомендовали использовать встроенную структуру для обмена кодом между расширением приложения и содержащим его приложением.
Вы можете создать встроенную платформу для совместного использования кода между вашим расширением приложения и содержащим его приложением.
В конце этого руководства объясняется, как развернуть содержащее приложение в более старых версиях iOS 8.0 с помощью команды dlopen
.
После того, как я добавил цель фреймворка, проект не строится успешно. Это всегда терпит неудачу со следующими ошибками:
- Ошибка Lipo: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo: невозможно открыть входной файл: PATH_TO_BUILD/armv7/APP_NAME (нет такого файла или каталога)
- Ошибка компоновщика Apple Mach-O: ld: встроенные dylibs/frameworks поддерживаются только в iOS 8.0 и более поздних версиях (@rpath/FRAMEWORK_NAME) для архитектуры armv7
(Ошибка 2 повторяется с архитектурой arm64)
Что я делаю неправильно?
Есть ли другой способ поделиться кодом между расширением приложения и содержащим его приложением?
Если кто-то знает о решении dlopen
, пожалуйста, введите руководство "Как сделать" (примеры приветствуются).