Я прочитал много статей об использовании динамической библиотеки, включая эту страницу «Can you build dynamic library...».Рецензенты Appstore позволят нам использовать динамическую библиотеку в iOS8?
Как сказал яблоко документ, "Каркасы для разработчиков IOS. IOS теперь могут создавать динамические рамки. Каркасы представляют собой набор кода и ресурсов, чтобы инкапсулировать функциональность, которая является ценным в нескольких проектах. Каркасы прекрасно работают с расширениями, разделяя логику которые могут использоваться как основным приложением, так и прилагаемыми расширениями. ", см. полную страницу от here.
Принимая вопрос безопасности, как внимание, я получил отклонять причину динамической библиотеки до того iOS8, детали из «DarkDust's answer». Но как это «работает» в iOS8? @appstore_reviewers?
Во всяком случае, в настоящее время я пишу пример демо-приложение и попытаться загрузить его в Appstore для обзора, главной особенностью которого является загрузки рамки из Интернета для клиента и dlopen его. Надеюсь, что действительно «просто работает»!
Кроме того, целью развертывания является iOS7.0, не уверен, что он может хорошо работать в нем. Я не понял столь ясного понимания различий между «динамической библиотекой» и «каркасом», я думаю, что они такие же, и в этой теме я имею в виду «Cocoa-touch framework», которые могут быть созданы в Xcode 6.
Некоторые фона: Я пытаюсь создать приложение IOS, которая does't содержит функцию расширения, мой какао касание рамки для легко расширить без загрузки новой версии, как это происходит из интернета ....
UPDATE Я опубликовал демонстрационный проект GMDemo here, попытаюсь загрузить в Appstore.
UPDATE2 я не смог dlopen свою динамическую структуру с недопустимый код подписания ошибки после многих попыток в IOS устройства. Извините, здесь нет хороших новостей. (Почти забыл обновить этот вопрос, извините! BTW)
Прежде всего, каркас - это просто контейнер для библиотеки. Он может содержать либо статическую библиотеку, либо динамическую библиотеку. Вы не сможете связать динамическую библиотеку с iOS 7. Также (мне нечего это поддерживать). Я не ожидаю, что вы сможете загрузить динамическую библиотеку, загруженную из сети. Это было бы огромным нарушением безопасности. Я предполагаю, что Apple позволяет загружать только подписанные динамические библиотеки, то есть те, которые включены в приложение и проходят процесс проверки приложений. –
@BartekChlebek: вот в чем вопрос: замените спекуляцию фактами :-) Это сводится к двум вопросам: 1) Позволяет ли iOS загружать библиотеку за пределы вашего пакета приложений (здесь: загруженная библиотека)? На самом деле это легко проверить; кто-то просто должен это реализовать. 2) Даже если iOS разрешает вам это делать, позволяют ли правила магазина приложений хранить это? Другими словами, вы отклоняетесь, если рецензент замечает, что вы это делаете? – DarkDust
@DarkDust 1) iOS не запускает неподписанный код. Таким образом, вы не сможете внедрить библиотеку, не просматривая Обзор приложений. 2) iOS не позволяет вам это делать, но если это так, в Руководстве по обзору App Store 2.7 говорится: «Приложения, которые загружают код каким-либо образом или формой, будут отклонены» https://developer.apple.com/app-store/ обзор/руководящие принципы/# условия-условия –