2016-03-05 1 views
1

J'ai un projet Xcode avec 6 cibles. Ils génèrent des applications iOS presque identiques. Je les construis et les télécharge presque toujours ensemble. J'essaie de simplifier quelque peu ce flux. J'ai mis en place un schéma qui construit les six cibles. Lorsque je crée et que j'archive ce schéma, j'obtiens une ligne dans la fenêtre Archive sous le nom du schéma, par opposition aux applications individuelles; le bouton "Télécharger sur l'App Store" est grisé sur cette ligne. Il y a "Export", mais il ne produit pas d'API.Téléchargement sur l'App Store à partir d'une version multi-applications

J'ai essayé une approche similaire avec une cible qui répertorie les 6 applications en tant que dépendances et un schéma sur cette cible - même résultat.

Un effet secondaire très apprécié d'une génération multi-applications est que les bibliothèques de dépendances courantes ne sont créées qu'une seule fois, pas six fois. Le gain de temps est considérable, donc je détesterais revenir à six versions distinctes. Question: Quelle est la bonne façon de construire plusieurs applications iOS en une seule fois? Si un schéma multi-cible est la réponse, comment puis-je les obtenir sur App Store?

+0

Je suis assez sûr que fastlane peut le faire. – dasdom

Répondre

0

Un IPA peut être trivialement construit à partir d'un ensemble d'applications - il suffit de placer l'ensemble dans un dossier appelé «Payload» et le compresser. Application Loader sera heureux de soumettre ledit IPA à l'App Store.

Certains prétendent que vous pouvez télécharger en ligne de commande, aussi, mais je n'ai pas encore essayé. App Loader fonctionne.

Vous pouvez même faire de la préparation des IPA une partie de la construction, en fournissant une action de script post-archivage dans les propriétés du schéma.

Le script shell suivant accéder aux produits archivés:

Today=$(date +%Y-%m-%d) 
XCArc=~/Library/Developer/Xcode/Archives/$Today 
ArcName=`ls -t $XCArc | head -n 1` 
XCArc=$XCArc/$ArcName/Products/Applications 

cd $TEMP 
mkdir Payload 
cp -r $XCArc/MyApp.app Payload/ 
zip -r -y -q -9 MyApp.ipa Payload 

Cette prend la dernière version archivée des archives Xcode et fait un IPA sous TEMP $.