Я создал подписанный файл .xcarchive с помощью команды xcodebuild.
Внутри .xcarchive есть файл .app. Внутри .app находится файл с именем archived-extended-rights.xcent. Этот файл является ключом к моей проблеме.
Я запускаю другую команду xcodebuild, которая создает файл .IPA из .xcarchive.
Создание IPA завершается с ошибкой, так как отсутствует файл архивированного расширенного права. Дело в том, что xcodebuild создает временный каталог, где он копирует мой файл .app, а внутри этого файла .app файл отсутствует файл с архивированным расширенным расширением .xcent.
Все остальные файлы находятся там, кроме этого.
Команды, которые я запускаю, находятся ниже:
Это создает xcarchive:
xcodebuild -project diplomat.xcodeproj -scheme schemeName archive -archivePath /Path/To/Archive/name.xcarchive -configuration AppStore CODE_SIGN_IDENTITY="identity" PROVISIONING_PROFILE=provProfile
Это создает IPA:
xcodebuild -exportArchive -exportFormat IPA -archivePath /Path/To/Archive/name.xcarchive -exportPath /Path/To/Archive/name.ipa
Несмотря на указание местоположения .xcarchive, он создает временный каталог и не включает важный файл. Обратите внимание, что файл архивированного расширенного права .xcent создается во время процесса .xcarchive(первая выполняемая команда) и не удается скопировать во временный каталог во время второго запуска команды.
Это точная ошибка. Google и StackOverflow дали подобные ошибки, но ничего с этой реальной проблемой.
Checking original app
+ /usr/bin/codesign --verify -vvvv /var/folders/sl/_wdkd56d5pb05snr559cmcww0000gn/T/D2133E2C-DC66-427C-A3C5-903A88DD0541- 42128-00007ED35037747A/name.app
Program /usr/bin/codesign returned 1 :
[/var/folders/sl/_wdkd56d5pb05snr559cmcww0000gn/T/D2133E2C-DC66-427C-A3C5-903A88DD0541-42128-00007ED35037747A/name.app: a sealed resource is missing or invalid
file missing:
/private/var/folders/sl/_wdkd56d5pb05snr559cmcww0000gn/T/D2133E2C-DC66-427C-A3C5-903A88DD0541-42128-00007ED35037747A/name.app/archived-expanded-entitlements.xcent
]
Codesign check fails :
/var/folders/sl/_wdkd56d5pb05snr559cmcww0000gn/T/D2133E2C-DC66-427C-A3C5-903A88DD0541-42128-00007ED35037747A/name.app: a sealed resource is missing or invalid
file missing:
/private/var/folders/sl/_wdkd56d5pb05snr559cmcww0000gn/T/D2133E2C-DC66-427C-A3C5-903A88DD0541-42128-00007ED35037747A/name.app/archived-expanded-entitlements.xcent
Done checking the original app