Экспорт устанавливаемого OTA IPA из XCARCHIVE

Я переношу наши сценарии сборки для создания файлов xcarchive, поэтому мы можем загружать сборки прямо из Xcode Organizer, однако сейчас у меня проблемы с запуском сборок по беспроводной сети.

Я создаю архив с:

xcodebuild -scheme myScheme \
       "CODE_SIGN_IDENTITY[sdk=iphoneos*]=$appstore_identity" \
       PROVISIONING_PROFILE=$appstore_profile_id \ 
       -archivePath $outputArchive 
       archive`

Затем я пытаюсь экспортировать и повторно подписать, используя свой корпоративный профиль распространения с помощью:

enterprise_profile_name=`basename $enterprise_profile_file .mobileprovision` \
xcodebuild  -exportArchive \
            -archivePath "$outputArchive" \
            -exportFormat IPA \
            -exportProvisioningProfile "$enterprise_profile_name" \
            -exportPath "$outputIPA"

Полученный IPA выглядит правильно (содержит правильный профиль, код говорит, что он действителен и т. д.), однако, когда мы создаем файл манифеста, чтобы его можно было установить по воздуху, все перестает работать. На устройствах с iOS 7 возникает цикл «Установка…, ожидание…», и приложение так и не устанавливается.

Какие-либо предложения?

Обновление 1

Я также попытался экспортировать приложение из архива, а затем отказаться от него с помощью PackageApplication:

xcodebuild -exportArchive \
            -archivePath "$outputArchive" \
            -exportFormat APP \
            -exportWithOriginalSigningIdentity \
            -exportPath "$outputApp"

xcrun PackageApplication \
        "$outputApp" \
        -o "$outputIPA" \
        --sign "$enterprise_identity" \
        --embed "$enterprise_profile_file"

Но получившийся IPA по-прежнему не удается установить OTA и синхронизировать через iTunes.


person brianpartridge    schedule 31.01.2014    source источник
comment
1. Вы уверены, что создаете конфигурацию Release? 2. Вы пробовали это: stackoverflow.com /вопросы/5640776/   -  person MishieMoo    schedule 01.02.2014


Ответы (1)


@MishieMoo и я болтали в автономном режиме, и кажется, что то, что я пытаюсь сделать, невозможно, потому что я пытаюсь работать в команде. У меня есть 2 команды A и B, каждая со своим идентификатором и профилем подготовки. A имеет корпоративный профиль для com.foo.*. B имеет обычный профиль для com.foo.bar.

Я строил с B и пытался уйти в отставку с A. Однако это не работает, потому что это 2 разных аккаунта с 2 разными идентификаторами команды.

Результат: мне нужно построить два раза (по одному разу для каждой учетной записи).

person brianpartridge    schedule 04.02.2014