Подтвердить что ты не робот

IPhone: сжатие файлов .app в командной строке (Mac OS X) удаляет CodeSigning

Я пытаюсь упростить автоматизацию своих приложений для iPhone с помощью TeamCity, но имею эту проблему.

Когда я вручную загружаю и устанавливаю файл .app из папки сборки, он отлично работает (плавно синхронизируется с iTunes, и я вижу приложение на своем телефоне)

Но когда я пытаюсь заархивировать это с помощью /bin/zip или ditto... тогда содержимое zipped потеряет CodeSigning (iTunes говорит, что он не может установить это приложение, потому что он не подписан)

Я пробовал разные комбинации этих...

ditto -ck --rsrc --keepParent HelloWorld.app HelloWorld.zip

Любые идеи?

Я тоже пробовал это, но все равно получаю ту же ошибку

version=$(date "+%Y-%m-%d.%H.%M.%S")
cd "$CONFIGURATION_BUILD_DIR"
zip -r -y "HelloWorld-$version.zip" HelloWorld.app
4b9b3361

Ответ 1

Вам нужно использовать опцию -y в zip:

zip -r -y zipped_blahapp.zip blahapp.app

-y

Хранить символические ссылки как таковые в zip-архиве вместо сжатия и хранения файла, на который ссылается ссылка (только для UNIX).

Обновить

Теперь из командной строки доступен доступ к функциям архива Xcode, вероятно, вы должны использовать это:

xcodebuild archive -workspace $APPNAME.xcodeproj/project.xcworkspace -scheme $APPSCHEMENAME > $OUTDIR/logs/$APPNAME.log