web-dev-qa-db-fra.com

Comment convertir .xcarchive en .ipa pour que le client soumette une application à l'App Store à l'aide d'Application Loader

Nous avons créé la signature du code du fichier .xcarchive avec le profil d'approvisionnement et de certification de notre client, mais nous devons envoyer le fichier .ipa à notre client afin qu'il puisse télécharger l'application sur l'App Store à l'aide d'Application Loader.

La seule façon de créer le fichier .ipa dans Xcode 4.5 est de cliquer sur Distribuer -> Enregistrer pour l'entreprise ou Déploiement ad hoc qui a une description en dessous disant "Signer et empaqueter l'application pour la distribution en dehors de l'App Store iOS".

Si nous enregistrons le fichier .ipa de cette façon, cela entraînera-t-il des problèmes de soumission à l'App Store? Ou existe-t-il un moyen approprié de convertir le .xcarchive en .ipa?

Merci d'avance!

49
aobs

J'ai également observé le même problème dans l'un de mes projets.

Je l'ai résolu en modifiant les paramètres de la cible. Pour projet principal et dépendance.

 skip Install  NO

Après cette modification, passez à Xcode-> Product-> Archive-> Save for Enterprise ou Ad-Hoc Deployment

Nous avons suivi le même processus et téléchargé via Application Loader et Apple a approuvé l'application.

enter image description here

10
Guru
  1. Créer un fichier Xarchieve en utilisant Xcode, cliquez sur produit-> archiver
  2. premier clic droit sur le fichier xarchive-> afficher dans le Finder
  3. cliquez à nouveau avec le bouton droit sur le fichier xarchive-> afficher le contenu du package
  4. Ensuite, ouvrez le dossier produits-> applications, vous obtenez ici votre fichier d'application
  5. Maintenant, faites glisser celui-ci vers le répertoire des applications de l'iTunes Store (trouvez le menu déroulant des applications dans le coin supérieur droit de l'iTunes Store). Cela convertira automatiquement le fichier d'archive en fichier ipa. (Ici, vous pouvez également faire cela -> faites glisser et déposez le fichier .app n'importe où dans itunestore, une fois qu'il est traité, recherchez-le à partir de la zone de recherche).

  6. puis faites un clic droit dessus et -> afficher dans le Finder, cela affichera votre fichier ipa. Vous pouvez maintenant donner celui-ci à n'importe quel utilisateur

95
Mehul Thakkar

mis à jour pour Xcode 7 et 8

Voici un script pour créer l'archive et générer le .ipa - Tweak au besoin:

PROJECT=xxx
ARCHIVE_PATH=/tmp/${PROJECT}.xcarchive
EXPORT_PATH=/tmp/${PROJECT} # DIRECTORY
mkdir -p $ARCHIVE_PATH
xcodebuild -project ./${PROJECT}.xcodeproj -scheme ${SCHEME} archive -archivePath $ARCHIVE_PATH -verbose

PLIST='{"compileBitcode":false,"method":"enterprise"}' # edit as needed

EXPORT_PLIST=/tmp/${PROJECT}.plist
echo $PLIST | plutil -convert xml1 -o $EXPORT_PLIST -

xcodebuild -exportArchive -archivePath $ARCHIVE_PATH -exportPath $EXPORT_PATH -exportOptionsPlist $EXPORT_PLIST
52
Jason Moore

Vous pouvez créer une IPA à partir de XCArchive.

  1. Faites un clic droit sur ProjectName [Date Time] .xcarchive
  2. Sélectionnez Afficher le contenu du package .

Step 1

Step 2

Il comprend trois choses:

une. dSYMs: les fichiers dSYM stockent les symboles de débogage pour votre application.

b. Info.plist: liste de propriétés contenant des détails tels que ApplicationProperties, ArchiveVersion, CreationDate, Name, Scheme.

c. Produits: Il contient un fichier d'application pour votre projet.

  1. Sélectionnez Produits -> Applications. Il contient un fichier d'application.

  2. Maintenant, glissez-déposez le fichier d'application dans iTunes (onglet MyApps).

  3. Sélectionnez votre projet.

  4. Cliquez avec le bouton droit et sélectionnez "Afficher dans le Finder". Cela localisera le fichier IPA nouvellement créé.

Step 4

Step 5

16
Jayprakash Dubey

Premier produit> Archiver puis cliquez avec le bouton droit sur le fichier xcodearchive généré et sélectionnez Show package content et allez dans le Products -> Applications dossier. Créez un nouveau dossier nommé Payload et faites glisser le .app fichier dans ce dossier. Compressez le dossier Payload et renommez-le comme vous voulez et changez l'extension en .ipa.

Si la taille de votre application est trop grande, vous pouvez désactiver le code bit dans les paramètres de construction pour la réduire de 50 à 70%.

14
Vahid Amiri

Si vous en avez besoin depuis la ligne de commande, vous pouvez trouver tous les détails ici: http://encyclopediaofdaniel.com/blog/xcarchive-to-ipa . En bref:

xcodebuild 
   -exportArchive -archivePath <path to archive> -exportPath <path to output> 
   -exportOptionsPlist <path to export options plist>

Où une liste d'options minimale ressemble à ceci:

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

Bien sûr, la méthode changera en fonction du type de profil d'approvisionnement que vous avez utilisé (app-store est pour les profils de distribution). Courir xcodebuild --help pour voir la liste des options disponibles.

10
Ohad Schneider
XCode > Project > Archive
XCode > Organizer > Distribute > Enterprise/add Hoc > Save As
Saves as YOURAPP.ipa.
Make sure Save for Enterprise Deploy remains UNCHECKED.
Download latest Application Loader.
tap 'Deliver Your App'
make sure new version in iTunes connect in WAITING FOR UPLOAD state
Click on Activity... button 

CONSEIL: ouvrez Console.app pour voir les erreurs de validation XCode

Click on ALL MESSAGE on list of logs on right.
Then in search enter 'XCode' or 'Application Loader' 
to monitor any errors with your upload.

Remarque:

J'ai fait tout cela et j'ai toujours reçu des e-mails concernant les icônes 120x120 manquantes.

Vous avez oublié de les mettre à jour dans Build Target> General Tab List of new icon requirements for iOS7 http://www.icenium.com/resources/forums/icenium-general-discussion/missing-recommended-icon-file =

10
brian.clear