194 votes

Problème de Xcode 6 beta 2 lors de l'exportation de .ipa : "Votre compte possède déjà un certificat de distribution iOS valide".

J'ai des difficultés à exporter une application pour la distribution ad hoc sur Xcode 6 beta 2 :

Failed to locate or generate matching signing assets

Lorsque j'exporte mon projet pour un développement ad hoc sur Xcode 6, je reçois cette alerte. J'ai essayé de l'exporter sous Xcode 5 et je n'ai eu aucun problème pour enregistrer le fichier .ipa. Est-ce que quelqu'un rencontre également ce problème ?

0 votes

Je soupçonne que l'identité de signature de Xcode 6 dans Build Setting est différente de celle de Xcode 5, pouvez-vous fournir plus d'informations à ce sujet ?

0 votes

Avez-vous plusieurs identités de signature de développeur sur votre Mac ?

2 votes

@christopher.ryan.cruz J'ai le même problème. Je peux toujours exporter avec xcode5 sur mon mac, mais je reçois le même message d'erreur en essayant avec le nouveau xcode6. Avez-vous résolu ce problème ?

66voto

Alexander Vasenin Points 399

J'ai eu le même problème il y a deux jours. Il s'avère que le problème était :

  1. Je dispose de mon propre certificat de distribution pour les développeurs avec une clé privée appropriée
  2. J'ai le certificat de distribution du développeur d'entreprise de mon client sin une clé privée
  3. J'essaie de faire un paquet de distribution d'entreprise pour mon client.
  4. Xcode me lance une vague erreur : Votre compte possède déjà un certificat de distribution iOS valide.

La solution est la suivante : obtenir une clé privée pour le compte d'entreprise de mon client. Il y a 2 options possibles :

  1. Demandez à votre client les informations d'identification pour accéder à son compte de développeur d'entreprise sur le site Web d'Apple. Révoquez l'ancien certificat et recréez-le. Vous créerez la clé privée au cours du processus. PRUDENCE la révocation d'un entreprise invalide toutes les applications qui ont été signées et déployées avec ce certificat ( information officielle ).
  2. Demandez à votre client d'exporter sa clé privée depuis son application Keychain Access sous forme de fichier *.p12 et de vous l'envoyer avec un mot de passe. Vous ne pouvez pas télécharger la clé privée existante sur le site web d'Apple. La seule façon de l'obtenir est de demander à votre client. C'est ce que j'ai fait et j'ai pu finalement réaliser le paquet.

Comment savoir si vous disposez d'une clé privée pour un certificat : Ouvrez l'application Keychain Access. Choisissez les certificats. Trouvez votre certificat. Si vous voyez un petit triangle gris sur le côté gauche du certificat, ouvrez-le et vous verrez votre clé privée. Pas de triangle = pas de clé privée.

How to find if you have a private key for certificate

1 votes

J'ai eu cette erreur aujourd'hui, j'étais totalement désemparé jusqu'à ce que je lise votre excellente réponse. Merci beaucoup ! +1

2 votes

Quelle réponse fantastique à un problème totalement impénétrable.

1 votes

Excellent. Merci.

52voto

adnan Points 87

C'est ce qui a marché pour moi.

  1. Sur ma machine, j'ai gardé à la fois Xcode 5 et Xcode 6 beta.

  2. Depuis Xcode 6 beta, Archivez le projet. Fermez Xcode 6.

  3. Ouvrez Xcode 5, allez dans Organizer et exportez en tant que construction Ad Hoc avec le profil de provisionnement approprié.

C'est ça !

9 votes

C'est ce qui se passe avec le GM. Cette solution ne sera plus valable très longtemps car Xcode 6 et iOS8 sortent cette semaine.

20 votes

Sur Xcode 6.0.1 le problème a disparu. Apple a changé la façon de distribuer Ad Hoc pour les développeurs. Maintenant, vous ne pouvez pas faire des constructions de distribution Ad Hoc en utilisant le certificat de développement. Vous avez besoin d'un certificat de distribution avec le profil de provisionnement "Ad Hoc" (pas le profil de provisionnement de développement) pour faire des constructions Ad Hoc. C'est une vraie galère et vous ne pouvez plus utiliser un seul compte Apple Developer sur plusieurs Macs pour archiver les builds TF (TestFlight). Il semble que chaque développeur doive payer 99 $/an individuellement ! TestFlight d'Apple semble prometteur, mais les versions bêta seront examinées par l'équipe de révision des applications. :(

3 votes

Plus tard - après que j'ai révoqué et régénéré tous les certificats et le profil de provisionnement pour le compte de développeur en question, le problème a finalement été résolu.

49voto

Chris Comeau Points 311

J'ai eu le même problème, j'ai dû utiliser l'outil "xcodebuild" en ligne de commande comme solution de contournement, avec seulement Xcode 6 installé (je n'ai pas eu à réinstaller Xcode 5).

http://www.thecave.com/2014/09/16/using-xcodebuild-to-export-a-ipa-from-an-archive/

Exemple :

xcodebuild -exportArchive -archivePath $projectname.xcarchive -exportPath $projectname -exportFormat ipa -exportProvisioningProfile "Provisioning Profile Name"

2 votes

Merci beaucoup ! Ça a marché et j'ai envoyé une construction adhoc.

1 votes

J'ai pu produire un *.ipa de cette façon, mais je ne peux pas l'installer (l'application se bloque sur 'Installing...'). Le journal du dispositif dans Xcode montre une erreur de signature de code.

0 votes

Dans quel chemin de dossier pouvons-nous écrire ce code pour créer l'ipa ?

28voto

lucaslt89 Points 625

Dans mon cas, ce qui a résolu le problème a été la suppression de tous les certificats de distribution de mon compte Apple Developer. Ensuite, Xcode a réussi à créer à nouveau des certificats de développement et de distribution, et cela a fait l'affaire.

1 votes

Ce qui signifie également que vous devez refaire tous vos profils de distribution ad-hoc.

1 votes

@Kendall, je n'ai pas refait tous mes profils de distribution ad-hoc. J'ai juste supprimé les certificats du trousseau de clés et du portail Apple developer. Puis Xcode a réussi à résoudre tous les problèmes par lui-même

12 votes

Cela a fonctionné pour moi aussi... c'est un problème constant avec chaque version de Xcode, et j'aimerais vraiment qu'Apple passe du temps à réorganiser cet horrible processus.

19voto

Pedro Lorente Points 55

J'obtiens une solution sans renouveler le certificat :

1 - Archivage de la cible avec la méthode appropriée. Identité de signature de code y Profil d'approvisionnement

2 - Bouton droit dans le fichier créé dans Organisateur --> Afficher dans le Finder

3 - Bouton droit dans le xcarchive fichier --> Afficher le contenu du paquet

4 - Là, dans Finder allez dans Produits/Applications/

5 - Téléchargez le fichier Produits/Applications/Nom de l'application dans iTunes.

6 - Lorsque l'application apparaît dans iTunes, faites un clic droit dessus -->. Afficher dans le Finder . Voici le fichier ipa

7 - Envoyez cette ipa par App Loader 3.0

Je ne pense pas que ce soit une solution durable mais je ne veux pas supprimer mes certificats.

2 votes

Plz pourquoi devrions-nous utiliser app loader ici ? je ne sais pas vraiment à ce sujet.

0 votes

Quels sont l'identité de signature de code et le profil de provisionnement "appropriés" ? J'ai essayé de définir l'identité de signature de code de la version sur "iOS Distribution" et cela n'a rien donné. Si je règle le profil d'approvisionnement de la version sur autre chose que "automatique", Xcode modifie l'identité de signature du code.

0 votes

Merci beaucoup ! Je ne connaissais pas celle-ci.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X