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!
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.
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).
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
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
Vous pouvez créer une IPA à partir de XCArchive.
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.
Sélectionnez Produits -> Applications. Il contient un fichier d'application.
Maintenant, glissez-déposez le fichier d'application dans iTunes (onglet MyApps).
Sélectionnez votre projet.
Cliquez avec le bouton droit et sélectionnez "Afficher dans le Finder". Cela localisera le fichier IPA nouvellement créé.
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%.
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.
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 =