Создание ipa из командной строки xcode

Как лучше всего создать файл IPA из командной строки?

Я использую xcode 4.2 и создаю архив, используя:

xcodebuild -scheme AppStore clean archive

После кодовой подписи в выходном каталоге сборки будут созданы файлы .dSYM и .app. Как мне приступить к созданию файла .ipa? Другими словами, я ищу эквивалент командной строки для выполнения следующих действий в графическом интерфейсе пользователя

  1. Организатор - Архив
  2. доля
  3. Пакет приложений для iOS
  4. Не подписывать повторно

Спасибо!


person Vasanth    schedule 30.11.2011    source источник


Ответы (3)


Недостающий элемент использует служебную программу PackageApplication.

/usr/bin/xcrun -sdk iphoneos PackageApplication -v $FULL_PATH_TO_APP -o $OUTPUT_PATH

Вы также можете передать параметры этого сценария для увольнения и встраивания профиля. Используя флаги --sign и --embed соответственно.

person Joshua Weinberg    schedule 01.12.2011
comment
Как я могу получить доступ к $ FULL_PATH_TO_APP? Если я создаю приложение, вместо архивирования я мог бы использовать BUILT_PRODUCTS_DIR. Что эквивалентно BUILT_PRODUCTS_DIR для каталога продукта архива? Я знаю, что могу изменить расположение каталога архива на любое другое, но мне бы не хотелось иметь эту зависимость. Спасибо за ответ! - person Vasanth; 02.12.2011
comment
BUILT_PRODUCTS_DIR также должен работать с архивом, но я думал, вы сказали, что не архивируете, а делаете обычную сборку? - person Joshua Weinberg; 02.12.2011
comment
Нет, я архивирую, но файлы .app отсутствуют в BUILT_PRODUCTS_DIR, который /Users/vasanth/Library/Developer/Xcode/DerivedData/Foo-drauzdtlrihjsddujotyhbjojcpa/Build/Products/Debug-iphoneos/Foo.app скорее доступен здесь: /Users/vasanth/Library/Developer/Xcode/DerivedData/Foo-drauzdtlrihjsddujotyhbjojcpa/ArchiveIntermediates/Debug/InstallationBuildProductsLocation/Applications/Foo.app. Но я только что понял, что могу использовать $ INSTALL_DIR вместо $ BUILT_PRODUCTS_DIR. - person Vasanth; 02.12.2011
comment
Мне нравится этот ответ, больше stackoverflow.com/questions / 5640776 / - person bitle; 24.03.2013
comment
Это больше не правильный ответ PackageApplication не существует - person Cameron Lowell Palmer; 29.04.2020

Этот инструмент упрощает сборку (и распространение): https://github.com/nomad/shenzhen

person Rayfleck    schedule 18.10.2013
comment
Этот инструмент - действительно отличное решение. Спасибо за публикацию. - person KrauseFx; 02.11.2013

После архива вам необходимо «Экспортировать» в желаемый формат, например ipa:

xcodebuild -sdk iphoneos7.0 -archivePath "путь к файлу архива" -exportPath "path_for_export" -exportFormat ipa -exportArchive -exportProvisioningProfile "provisioning_profile_to_export_with"

person srikanth Nutigattu    schedule 22.11.2013