Могу ли я скомпилировать приложение для iPhone на одном компьютере и подписать его на другом? - PullRequest
5 голосов
/ 07 апреля 2010

Предположим, что мой клиент не хочет, чтобы у меня был его Сертификат распространения iPhone, есть ли способ, которым я могу отправить ему скомпилированное приложение и позволить ему настроить все параметры Id приложения, обеспечения и т. Д., Затем подписать и отправить его? Как мне это сделать?

Ответы [ 2 ]

3 голосов
/ 09 апреля 2010

Посмотрите на шаг CodeSign в окне результатов сборки XCode (щелкните значок раскрытия «строк текста» справа, чтобы увидеть фактические команды, которые использует XCode).

Вы увидите, чтоНа этапе CodeSign используется инструмент командной строки (/ usr / bin / codesign), наподобие этого:

/usr/bin/codesign -f -s "iPhone Distribution: My Company" 
    --resource-rules=/Users/username/source/myApp/build/Distribution-iphoneos/myApp.app/ResourceRules.plist 
    --entitlements /Users/username/source/myApp/build/myApp.build/Distribution-iphoneos/myApp.build/myApp.xcent 
    /Users/username/source/myApp/build/Distribution-iphoneos/myApp.app 

Он подписывает скомпилированное приложение в каталоге "build", используя идентификатор подписи, указанный в "-s "опция в командной строке.Таким образом, нет никаких причин, по которым вы не могли бы переместить каталог «build» на другой компьютер и подписать его нужным ключом, используя codesign из командной строки.

0 голосов
/ 07 апреля 2010

Единственный способ, который теперь задокументирован, для сертификации двоичного файла - это его создание с помощью Dist. Сертификат добавлен на компьютер, который компилирует исходный код.

Вы можете экспортировать сертификат в виде файла .p12 и повторно импортировать его на другой компьютер, обе процедуры необходимо выполнить с помощью утилиты Keychain Access .

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

...