2016-07-19 1 views
0

utilisant Actuellement, le Xcode 6 processus de construction, nous avons d'abord créer le xcarchive avec la commande suivanteXcode 7: bâtiment pour les entreprises et adhoc la même archive

xcodebuild -workspace OurApp.xcworkspace -scheme MainScheme \ 
clean archive -archivePath OurApp.xcarchive -sdk "iphoneos" \ 
-configuration "Release" CODE_SIGNING_REQUIRED="NO" \ 
CODE_SIGN_IDENTITY="" PROVISIONING_PROFILE="" 

En ne faisant aucune signature et le provisionnement code, nous avons ensuite utilisez la commande exportArchive pour générer les ipas respectives d'entreprise et ad hoc en utilisant la même archive comme ceci.

xcodebuild -exportArchive -archivePath OurApp.xcarchive \ 
-exportPath OurApp-adhoc.ipa -exportFormat "ipa" \ 
-exportProvisioningProfile "Our Adhoc Provisioning Profile" 

et

xcodebuild -exportArchive -archivePath OurApp.xcarchive \ 
-exportPath OurApp-enterprise.ipa -exportFormat "ipa" \ 
-exportProvisioningProfile "Our Enterprise Provisioning Profile" 

Notez que nous aurions nos serveurs définir l'identité de signe de code approprié avant d'exécuter ces commandes exportArchive. Cela a très bien fonctionné pour nous car nous pouvions utiliser le même xcarchive (8 minutes pour compiler) et créer de multiples variantes (l'exportArchive ne prend pas plus de 30 secondes).

Dans Xcode7, Apple a présenté exportOptionsPlist. Xcode 7 a également vu l'introduction de fonctionnalités telles que Swift Support et Universal Links, que nous déployons tous les deux. Ces deux fonctionnalités nécessitent que vous utilisiez exportOptionsPList semble-t-il. La seule façon dont j'ai pu obtenir exportOptionsPlist est que je ne pouvais plus mettre "CODE_SIGN_IDENTITY" et "PROVISIONING_PROFILE" à "" lors de la génération d'IPA. En conséquence, nos temps de construction doublera puisque nous devons maintenant construire le xcarchive deux fois

Je me demandais si quelqu'un connaît un moyen de créer un IPA d'entreprise et un ipa adhoc en utilisant le même xcarchive.

Répondre

0

Salut ce n'est pas possible parce que chaque fois que vous créez un iPA à partir d'Archive, il crée chaque iPA séparément pour Adhoc ou Enterprise ou autre.