J'utilise l'outil de ligne de commande xcodebuild pour exporter le fichier ipa de distribution ad-hoc hors de mon archive, comme ceci:
xcodebuild -exportArchive -archivePath /path/Archive.xcarchive -exportPath /path -exportOptionsPlist /path/options.plist
Cependant, cette commande échoue avec une erreur
exportArchive: exportOptionsPlist error for key 'method': expected one of {}, but found ad-hoc
Peu importe la "méthode" que je fournis dans ma pliste d'options d'exportation, elle échoue toujours avec cette erreur. Cela échoue également si je supprime l'option 'method' du fichier plist.
Je soupçonnais initialement l'outil xcodebuild, mais il s'est avéré que le fichier archive était invaid. Lorsque j'ai ouvert le fichier d'archive dans Xcode et essayé d'exporter un fichier ipa manuellement, j'ai remarqué que les boutons "Télécharger sur l'App Store" et "Valider" étaient désactivés. Après avoir cliqué sur le bouton "Exporter", deux options m'ont été proposées: "Enregistrer les produits intégrés" et "Exporter en tant qu'archive Xcode", mais il n'y avait pas de distribution Export ad-hoc et les autres options standard.
Il s'est avéré qu'il y avait peu de fichiers de bibliothèque le long de mon fichier .app dans les archives. Xcode considère cela comme une archive générique et non comme une archive d'application. Vérifiez les phases de construction dans les paramètres de votre projet pour la copie des fichiers d’en-tête et de bibliothèque.
Pour plus de détails, voir https://developer.Apple. com/bibliothèque/ios/technotes/tn2215/_index.html
J'ai eu ce problème dans l'un de mes projets. Après la mise à jour de Cocoapods de 0.38.2 à 0.39.0, il avait disparu.
En outre, j'avais un problème connexe différent. L'exportation échouait avec l'erreur suivante:
2015-10-22 17:16:12.568 xcodebuild[91172:2171408] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/_l/2rl169m16p717gzldvh7n0600000gq/T/MyDriveEU_2015-10-22_17-16-12.568.xcdistributionlogs'.
2015-10-22 17:16:12.860 xcodebuild[91172:2171408] [MT] IDEDistribution: Step failed: <IDEDistributionSigningAssetsStep: 0x7fbc13f0c970>: Error Domain=IDEDistributionErrorDomain Code=1 "The operation couldn’t be completed. (IDEDistributionErrorDomain error 1.)"
error: exportArchive: The operation couldn’t be completed. (IDEDistributionErrorDomain error 1.)
Error Domain=IDEDistributionErrorDomain Code=1 "The operation couldn’t be completed. (IDEDistributionErrorDomain error 1.)"
** EXPORT FAILED **
Il s'est avéré que xcodebuild n'aimait pas le paramètre teamID
que j'ai ajouté au exportOptions.plist
. Après l'avoir supprimée, l'application a été exportée avec succès.
J'avais le même problème depuis deux jours, Le problème venait de certificats Apple . Supprimez l'autorité de certification Apple Worldwide Developer Relations de votre trousseau (expirera le 14 février) et renouvelez-le par téléchargement:
Dans mon cas, une de mes bibliothèques statiques n’avait pas activé Skip Install
, ce qui a provoqué le même problème. Lorsque j'ai défini xcode Skip Install
sur Yes
pour ce projet, j'ai résolu le problème.
J'ai eu le même problème et j'ai découvert lors de la recherche dans KeyChain que le certificat utilisé pour la signature avait été révoqué. L'archivage a bien fonctionné, mais lorsque nous sommes arrivés à -exportArchive, nous avons eu cette erreur cryptique. HTH.
Vérifiez les raisons suivantes: