web-dev-qa-db-fra.com

Erreur de signature de code: aucun profil de provisioning non expiré trouvé contenant les certificats de signature du trousseau.

Je pense que j'ai atteint le nadir de iOS approvisionnement l'enfer. Après avoir migré vers un nouveau Mac et créé une archive pour la distribution, j'ai reçu l'erreur suivante:

Erreur de signature de code: Aucun profil de provisioning non expiré trouvé contenant l'un des certificats de signature du trousseau

J'ai ensuite effacé tous les certs, clés et profils de provision et procédé à une "réinitialisation matérielle" (suppression de toutes les clés, certs et profils), en suivant à la main les instructions d'Apple, avec la même erreur. Ensuite, j'ai effectué une autre réinitialisation matérielle, puis Xcode a géré le tout via l'Organiseur, puis une autre archive - uniquement pour voir la même erreur.

Tous les certificats (WDRCA, Developer ID Cert Authority, iPhone Dev, iPhone Distribution) sont affichés dans Keychain Access, Xcode montre qu'il voit les certificats de développement et de distribution, ainsi que les profils de provisioning, tous marqués d'une coche verte et d'un statut "valide".

La signature de code au sein de l'application indique le dev correct et la distribution est sélectionnée.

Ce qui est vraiment troublant, c’est qu’une recherche de Google sur l’erreur montre une note technique de Apple qui n’est pas très utile, 2 tweets et 3 résultats en japonais - et rien d’autre. J'ai contacté l'un des tweeps et il a dit qu'il l'avait corrigé avec un résultat difficile, ce que j'ai fait deux fois.

Des idées sur où aller ou quoi faire ensuite?

36
Matt Miller

Après neuf heures passées à tirer les cheveux, maudissant et enfouissant ma tête dans les mains ... Tout ce que je devais faire, c'était créer un nouveau projet, transférer les fichiers à la main, et l'erreur a disparu. Argh.

Mise à jour : Le fait de marquer ma propre réponse comme correcte ne signifie pas que ces autres réponses étaient fausses - je n'ai pas eu l'occasion d'essayer l'une d'entre elles.

2
Matt Miller

Fixé par Organisateur -> Équipes (sélectionnez Votre équipe) -> Actualiser (coin inférieur droit).

27
Uladzimir

Après avoir supprimé tous les devices/profiles/certificates et adding/creating, cela ne fonctionnait toujours pas ici aussi ... supprimer également les préférences de Xcode n’a pas aidé. 

mais il semble que dans les paramètres du projet, vérifiez les paramètres de construction sous CODE_SIGN_IDENTITIY. Dans mon projet, la première ligne était définie sur un ancien profil mais n'était pas visible dans la liste, uniquement si vous ouvrez le menu déroulant, après l'avoir supprimé.

10
Marc

Je viens d'avoir ce problème aussi. J'ai finalement réalisé que l'identifiant était sensible à la casse. Par exemple, si le nom de votre produit est "StackOverflow", il identifie automatiquement l'identificateur avec com.votre nom de la société.StackOverflow. (ceci peut bien sûr être changé en allant au résumé de la cible). Le problème réside dans l'identifiant de l'application dans le portail des développeurs. Assurez-vous que l'identifiant dans le portail correspond à ce qui est dans Xcode.

6
Chad Meyer

J'ai le même problème ici depuis l'installation de Xcode 4.3 (passage de/Developer à/Applications). J'ai trouvé cet article pour changer le répertoire Xcode 

dans le terminal, vérifiez le chemin avec lequel il est défini:

/usr/bin/xcode-select -print-path

et s'il est toujours défini sur /Developer, définissez-le sur /Applications:

Sudo /usr/bin/xcode-select -switch /Applications

ce qui a fonctionné pour moi de pouvoir effectuer la mise à jour vers la version 4.3.2 mais cela n'a pas résolu le problème mentionné .... alors peut-être que cela vous aide.

4
Marc

j'ai rencontré le même problème.

la réponse au problème est simple.

vous devez vous connecter à votre site Web Apple Develpoer pour postuler et télécharger un profil pour votre application.

après avoir double-cliqué sur le fichier téléchargé, vous pouvez voir le fichier en cours d’organisation du projet dans xcode.

le nom de l'id du bundle est du type com.yourname.appname

le périphérique xcode choisit le périphérique ios et le code de la cible doit choisir la distribution

f.y.i.

2
andrew chu

Je l'ai corrigé en mettant à jour l'identificateur de paquet dans les paramètres du projet> cibles> nomapp dans l'onglet Infos.

1
JoriDor

J'ai rencontré le même problème après la mise à niveau vers Xcode 4.3.2 et SDK 5.1. Tout fonctionnait parfaitement dans la version précédente de Xcode avec SDK 5.0. Après de nombreuses heures de coiffure, j'ai créé un nouveau certificat de distribution dans le iOS Provisioning Portal->Provisioning-> Distribution Tab et après l'avoir téléchargé et installé dans Xcode (glisser-déposer), l'archivage fonctionne après la sélection du nouveau certificat dans le Code Signing area de ma cible.

1
Carl Hoffstedt

Il y a quelques jours, j'ai eu exactement le même problème.

Le problème est lié au fait de ne pas disposer des bons profils d'approvisionnement de distribution. Mon erreur est que j'ai ajouté un nouveau périphérique au portail et que je n'ai pas re-téléchargé le profil de distribution à partir du site du développeur.

Aujourd'hui, j'ai eu le même problème. alors que cela fonctionnait parfaitement avec le profil du développeur, je ne pouvais pas archiver ni construire de paquet de distribution.

Je devais accéder au portail et télécharger à nouveau manuellement mon profil de distribution car un nouveau matériel a été ajouté, même si je ne l'utilise pas activement sur le profil du développeur (je n'ai pas coché la case pour l'ajouter à la provision).

J'espère que ça aide quelqu'un

1
jeckil

Je suis allé directement à "mais il semble que dans les paramètres du projet, vérifiez les paramètres de construction sous CODE_SIGN_IDENTITIY. que cela a fonctionné. "

Et cela semble avoir fait l'affaire.

1
user1443032

J'ai eu ce problème et je l'ai corrigé en remettant mon schéma à Debug, par opposition à Release.

1
HenryRootTwo

Raison de l'erreur

Si aucun profil d'approvisionnement valide n'a été téléchargé dans le dossier Bibliothèque/MobileDevice/Profils d'approvisionnement de votre système, vous risquez de rencontrer cette erreur.

Solution

Connectez-vous à votre compte de développeur Apple à partir de Xcode-> Préférences-> Comptes, puis téléchargez un profil d'approvisionnement valide.

Déplacer vers la cible -> Général et sélectionnez la bonne équipe.

Allez maintenant dans Paramètres de construction du projet -> Identité de signature de code et sélectionnez simplement ' Développeur iOS ' et ' Automatique ' dans les profils de provisioning. Votre application fonctionnera sans problème.

0
n.by.n

J'ai eu le même problème après la mise à niveau du système d'exploitation/xcode, il valait donc la peine d'essayer. La solution pour moi était simple. Allez sur le portail d'approvisionnement IOS. Assurez-vous que le certificat de l'application est valide. et pas expiré . le télécharger à nouveau et double-cliquez dessus pour installer . il devrait résoudre le problème.

0
user513790

Dans les paramètres de construction, recherchez

Général> Identité> Identificateur d’ensemble et Paramètres d’équipe. Remplissez l’identifiant de l’ensemble et sélectionnez Equipe. (ceci essentiellement vos informations de publication). Bien sûr, comme les autres l’ont écrit, vous aurez besoin du bon compte de développeur ou d’équipe. Cette solution a fonctionné pour moi et a résolu l'erreur de construction.

0
Alwin

C'est à cause de la permission Sudo que vous avez donnée lors de l'ajout de la plateforme. 

Suivez ce lien Erreur de code ionique: aucun profil d’approvisionnement non expiré

0

J'ai eu cette erreur en essayant de construire une version - aucun problème ne s'est produit pour les versions de débogage. Déroutant parce que dans la section relative à la signature de code des paramètres de construction, j'avais le même profil sélectionné.

La solution pour moi était de créer et de télécharger un nouveau profil d'approvisionnement de distribution, même si, d'après les paramètres, il ne semble pas être utilisé.

0
Richard

Corrigé le . Je suis allé à Projet-> général-> a trouvé une option "aucun profil d'approvisionnement n'a été trouvé" bouton Correction d'un problème Cliqué dessus. Fixé automatiquement

0
Lax

Ce qui a fonctionné pour moi est de choisir "Ne pas coder le signe" puis de faire un build. Cela génère une erreur, mais semble effacer tout ce à quoi xcode est suspendu. Choisissez ensuite le bon profil d'approvisionnement et créez-le. Cela a résolu des problèmes similaires pour moi dans le passé.

0
user1055568

J'ai corrigé le mien en analysant à la place et en vérifiant cette erreur. Cela indiquait que mon identifiant de paquet n'était pas en minuscule comme dans le profil d'approvisionnement.

0
LouwHopley

J'avais effectivement ce problème, mais chaque fois que j'essayais d'entrer dans l'organisateur, cela provoquait un crash de XCode. Pour résoudre ce problème, je suis allé dans mes cibles et j'ai tout changé sous Code Signing Identity en iPhone Developer. La cible a par défaut le profil d'approvisionnement que je voulais et cela a fonctionné.

0
Widget

Dans les paramètres de la cible, dans Résumé, vérifiez si l'identifiant de l'ensemble est exactement le même que dans itunesconnect.com

à titre d'exemple:

ID de l'ensemble: com.mycompany.myapplication

0
SyntheticMeshwork

J'ai trouvé une solution qui ne se trouvait pas ici. Après avoir parcouru les erreurs et avoir examiné mon fichier .app brut, j'ai trouvé la solution.

Allez à votre cible, puis "Build Phases" au lieu de Build Settings.

Assurez-vous que dans "Compiler les sources" est votre story-board. Pour une raison quelconque, Xcode n’a pas ajouté le story-board à cette partie de mon fichier lorsque j’ai recopié le story-board.

P.S. J'ai dû ajouter les autres .m que je voulais dans le projet à cette zone également (ceux que j'ai entraînés, pas créés dans le projet)

J'espère que cela t'aides

0
tyler53