2014-10-22 4 views
11

Я прочитал много статей об использовании динамической библиотеки, включая эту страницу «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)

+1

Прежде всего, каркас - это просто контейнер для библиотеки. Он может содержать либо статическую библиотеку, либо динамическую библиотеку. Вы не сможете связать динамическую библиотеку с iOS 7. Также (мне нечего это поддерживать). Я не ожидаю, что вы сможете загрузить динамическую библиотеку, загруженную из сети. Это было бы огромным нарушением безопасности. Я предполагаю, что Apple позволяет загружать только подписанные динамические библиотеки, то есть те, которые включены в приложение и проходят процесс проверки приложений. –

+0

@BartekChlebek: вот в чем вопрос: замените спекуляцию фактами :-) Это сводится к двум вопросам: 1) Позволяет ли iOS загружать библиотеку за пределы вашего пакета приложений (здесь: загруженная библиотека)? На самом деле это легко проверить; кто-то просто должен это реализовать. 2) Даже если iOS разрешает вам это делать, позволяют ли правила магазина приложений хранить это? Другими словами, вы отклоняетесь, если рецензент замечает, что вы это делаете? – DarkDust

+0

@DarkDust 1) iOS не запускает неподписанный код. Таким образом, вы не сможете внедрить библиотеку, не просматривая Обзор приложений. 2) iOS не позволяет вам это делать, но если это так, в Руководстве по обзору App Store 2.7 говорится: «Приложения, которые загружают код каким-либо образом или формой, будут отклонены» https://developer.apple.com/app-store/ обзор/руководящие принципы/# условия-условия –

ответ

8

Руководство App Store Review явно запретить, что в 2.7 приложения, которые загружают код в любом случае или форме будет отклоненhttps://developer.apple.com/app-store/review/guidelines/

+0

ОК, спасибо! Прежде чем отметить это как правильный ответ, пожалуйста, позвольте мне попытаться проверить в течение следующих двух недель ... – Itachi

-1

Update3 просто использовать один и тот же код подписание !!!

меня проверить его в специальной среде!

когда моя динамическая библиотека использовать подписи кода с тем же кодом подписания, оно работает, иначе, раздавить !!

+0

как вы подписали код для своей динамической библиотеки? вы сделали это через Xcode? Пожалуйста, поделитесь некоторыми деталями, спасибо! – Itachi

+0

@Itachi такой же, как код, подписывающий проект для распространения! очистить старую структуру и построить новую, используя тот же файл buddleID, файл обеспечения вашего проекта хостинга ~ – Sanzrew

 Смежные вопросы

  • Нет связанных вопросов^_^