Есть ли способ не показывать пользователю мои классы, используемые для создания статической библиотеки на компьютере пользователя? - PullRequest
0 голосов
/ 19 ноября 2010

Я бы хотел разработать приложение для Mac, которое создает пользовательские статические библиотеки для iPhone от имени пользователя.

Я знаю, что могу вызвать xcode из терминала с -xcodebuild для создания этих статических библиотек на компьютере пользователя, но моя проблема в том, что я не хочу показывать пользователю мой target-c классы, используемые для статической библиотеки.

Итак, мой вопрос, есть ли способ не показывать пользователю мои занятия? Вместо использования -xcodebuild у меня есть другой способ?

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 19 ноября 2010

Короче говоря, нет. Поскольку ваш код будет скомпилирован для машины gcc, пользователю нужно только перехватить Gcc в соответствующий момент и прочитать код.

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

Вы также можете предварительно скомпилировать часть кода, который является общим для всех пользователей, в среду, и это означает, что вам не нужно распространять исходный код для этой части.

0 голосов
/ 19 ноября 2010

Полагаю, вы хотите, чтобы пользователи вашей библиотеки не видели заголовочные файлы вашей статической библиотеки, верно? Я предполагаю, что это действительно проблематично, поскольку компилятору требуются файлы заголовков для правильной компиляции.

Что вы можете сделать, это предоставить «урезанную» версию ваших заголовков пользователям вашего класса.

Я наткнулся на этот урок некоторое время назад. Если вы хотите, чтобы код ваших классов был «закрыт» для любых разработчиков, которые должны его использовать, я предлагаю сделать его статической библиотекой. В качестве альтернативы вы можете сделать Framework.

http://www.clintharris.net/2009/iphone-app-shared-libraries/

Не беспокойтесь, это тот же процесс для iOS и Mac OS X.

...