2015-08-13 2 views
2

Наше приложение имеет приложение для часового пояса + расширение. Архивы из XCode IDE всегда проходят проверку хранилища iTunes. Однако архивы генерируется с помощью команды xcodebuild инструментов (Xcode 6.4, Версия сборки 6E35b) не эту проверку со следующими ошибками:архив xcodebuild недействителен Проверка ITMS

ERROR ITMS-90163: "Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. The bundle contains a key that is not included in the provisioning profile: 'aps-environment' in 'Payload/TheDodo.app/PlugIns/DodoExtension.appex/DodoExtension'." 

ERROR ITMS-90164: "Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. According to the provisioning profile, the bundle contains a key value that is not allowed: '##########.###.##########.######' for the key 'application-identifier' in 'Payload/TheDodo.app/PlugIns/TheDodoWatchKitExtension.appex/TheDodoWatchKitExtension'" 

ERROR ITMS-90163: "Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. The bundle contains a key that is not included in the provisioning profile: 'aps-environment' in 'Payload/TheDodo.app/PlugIns/TheDodoWatchKitExtension.appex/TheDodoWatchKitExtension'." 

ERROR ITMS-90046: "Invalid Code Signing Entitlements. Your application bundle's signature contains code signing entitlements that are not supported on iOS. Specifically, value '##########.###.##########.######' for key 'application-identifier' in 'Payload/TheDodo.app/PlugIns/TheDodoWatchKitExtension.appex/TheDodoWatchKitExtension' is not supported. This value should be a string starting with your TEAMID, followed by a dot '.', followed by the bundle identifier." 

ERROR ITMS-90163: "Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. The bundle contains a key that is not included in the provisioning profile: 'aps-environment' in 'Payload/TheDodo.app/PlugIns/TheDodoWatchKitExtension.appex/TheDodoWatchKitApp.app/TheDodoWatchKitApp'." 

ERROR ITMS-90163: "Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. The bundle contains a key that is not included in the provisioning profile: 'com.apple.security.application-groups' in 'Payload/TheDodo.app/PlugIns/TheDodoWatchKitExtension.appex/TheDodoWatchKitApp.app/TheDodoWatchKitApp'." 

Makefile, архивировать и экспорт выглядит примерно так:

/usr/bin/xcodebuild -verbose -verbose -workspace 'rebelmouse.xcworkspace' -scheme TheDodo -configuration "App Store" -sdk 'iphoneos' -archivePath /tmp/TheDodo.xcarchive -derivedDataPath /tmp/ROJECT.Ji9vwyH0 APPLICATION_BUILD_VERSION=2456 archive 

/usr/bin/xcodebuild -exportArchive -exportFormat ipa -archivePath /tmp/TheDodo.xcarchive -exportPath /tmp/TheDodo.ipa -exportWithOriginalSigningIdentity 

Любое предложение/помощь очень ценится. Заранее спасибо.

+0

Вы нашли решение этого? Я сижу с тем же вопросом ... –

+0

Пока нет решения, надеясь, что XCode 7 решит это. Отвечая на тот же вопрос на форумах Apple, и был этот ответ - https://forums.developer.apple.com/thread/14378 –

+0

Интересный ответ. К сожалению, у него не было решения. Благодарю. –

ответ

2

Отвечая это в случае, если кто-то застрял в одной лодке.

С Xcode 7.0 xcodebuild приобрела новую опцию командной строки для экспорта архива, а именно exportOptionsPlist, это полный путь к plist, который настраивает архив.

Вам больше не нужно устанавливать в списках -exportFormat

xcodebuild --help детали PLIST.

Для предприятий строит я использую этот PLIST

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>method</key> 
    <string>enterprise</string> 
</dict> 
</plist> 

для App Store сборок заменить заменить enterprise с app-store.

0

сказать xcodebuild имя профиля инициализации использовать вместо того, чтобы его «автопоиск» это:

xcodebuild -exportArchive -exportFormat ipa -archivePath "FOLD/FILE.xcarchive" -exportPath "FOLD/FILE.ipa" -exportProvisioningProfile "NAME" > /dev/null || exit 1 
+0

, к сожалению, это не сработает, если приложение имеет расширение Watchkit - поскольку оба они используют другой профиль обеспечения. –

+0

А, ок. Спасибо, тогда –

 Смежные вопросы

  • Нет связанных вопросов^_^