Существуют ли передовые практики для совместного использования кода разработки между приложениями для iPhone и iPad? - PullRequest
5 голосов
/ 05 августа 2011

Я хочу создать два приложения, одно оптимизированное для iphone и одно для ipad.

оба эти приложения вызывают вызовы API сервера и совместно используют один и тот же код для объектов модели, поэтому я хотел бы поделиться этим кодом между проектами iphone и ipad.

Я использую xCode 4 с концепцией рабочего пространства (которая должна позволять совместное использование кода между проектами), но мне было интересно, нужно ли мне создавать другой проект только для общего кода.

Кто-нибудь делал это и хочет поделиться лучшими практиками?

Ответы [ 2 ]

4 голосов
/ 05 августа 2011

Я предпочитаю обмениваться кодом между проектами, будь то повторное использование iPhone / iPad или любой другой сценарий совместного использования, используя проект статической библиотеки для размещения общего кода и использования в качестве целевой зависимости во всех проектах, которые его используют.Немного подробнее ...

Вы можете создать новый проект Xcode с шаблоном статической библиотеки Cocoa Touch.Этот проект может содержать весь общий код между проектами.Затем в любом приложении, в котором вы хотите использовать статическую библиотеку, вы можете добавить ссылку на проект в проект статической библиотеки, перетащив статический проект lib в клиентский проект.В этом клиентском проекте рекомендуется добавить статическую библиотеку в качестве фазы построения Target Dependency клиентского проекта.Это заставляет общую библиотеку перестраиваться каждый раз, когда создается клиентский проект.Затем вы добавите статический библиотечный продукт в фазу сборки «Link Binary With Libraries» клиентского проекта.

И в качестве еще одного предостережения, вы также должны сообщить клиентскому проекту, где находятся заголовки статической библиотеки.Это результат того, что статические библиотеки не содержат своих собственных заголовков, как в Cocoa Framework на Mac.Для этого просто найдите параметр сборки «Путь поиска заголовка» в клиентском проекте и добавьте путь к заголовкам статической библиотеки.Я считаю, что наиболее полезно ссылаться на те, которые были созданы Xcode и помещены в производные данные (если у вас есть Xcode, настроенный для этого).

0 голосов
/ 05 августа 2011

Если вы собираетесь создавать два отдельных приложения, вам нужно создать одно рабочее пространство с двумя проектами приложений iOS и одним проектом статической библиотеки. Статическая библиотека должна содержать весь ваш общий код, и библиотека должна быть включена в оба ваших проекта приложений для iOS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...