63 votes

L'exécutable a été signé avec des droits non valides

J'ai un problème avec la distribution ad-hoc sur mon iPhone. J'ai développé une application avec le SDK 3.0. J'ai une licence de développeur. J'ai ajouté des certificats et des profils de provisionnement dans mon projet. Il n'y a donc aucun problème.

Mais, lorsque j'essaie d'installer l'application sur mon iPhone, elle compile le projet et affiche ensuite l'erreur : "The executable was signed with invalid entitlements" dans la fenêtre de l'Organisateur. Est-ce que quelque chose m'échappe ? J'ai mis à jour mon iPhone à partir de la version 2.2.1 et j'ai téléchargé le dernier SDK d'Apple.

Veuillez m'aider à résoudre ce problème.

0voto

Andy Ibanez Points 1752

Je viens de recevoir ce même code d'erreur. Il semble qu'il y ait différentes causes à ce problème et donc différentes façons de le résoudre.

Dans mon cas, j'avais deux appareils différents portant le même nom (un iPhone 4 et un iPhone 4S). En changeant le nom de l'un d'eux, j'ai complètement résolu cette erreur...

0voto

theDuncs Points 839

J'ai essayé d'ajouter la prise en charge d'iCloud à mon application existante, mais j'ai constaté qu'après avoir ajouté des droits et configuré iCloud, mon application ne pouvait plus être déboguée.

Je me suis rendu compte que mon certificat générique de développement iOS avait un APPID différent de celui de l'application sur laquelle je travaillais. Pour résoudre ce problème, au lieu d'utiliser mon certificat générique, j'ai créé un certificat de développement spécifique pour cet APPID.

J'ai rafraîchi mon profil de provisionnement dans XCode, nettoyé l'application, déconnecté mon appareil, redémarré XCOde et connecté l'appareil et exécuté, et cela fonctionne maintenant à merveille !

0voto

Brian Knoblauch Points 8747

J'ai également passé plusieurs heures à me battre avec cela. La solution est très simple. Editez votre fichier Entitlements.plist dans la racine du répertoire de votre projet. Trouvez la ligne qui dit <key>get-task-allow</key> . En dessous, il devrait y avoir <false/> . Changez cela en <true/> .

0voto

John Farkerson Points 383

Désolé que ce soit très tardif, mais j'ai examiné cette question et j'ai trouvé quelque chose qui a fonctionné pour moi. Je suis allé à PROJECT->Build Settings et j'ai trouvé la section Code Signing. A côté de debug, mon profil de distribution qui disait Iphone Distribution: MY NAME a été sélectionné. J'ai plutôt sélectionné Iphone Developer: MY NAME dans la liste déroulante sous IpodProfile (for bundle identifiers com.myName.myApp qui était le profil d'approvisionnement de mon appareil. J'espère que cela vous aidera !

0voto

smj2393 Points 383

Allez dans Fenêtre -> Organiseur -> Appareils puis accédez à l'onglet Profils d'approvisionnement de l'appareil connecté.

Notez le nom du profil actuellement valide (doit avoir une icône verte cochée).

Cliquez sur le projet puis allez dans Projet -> Paramètres de construction -> Signature de code Copiez ensuite le nom du profil approprié dans le champ Identité de signature de code.

Nettoyer le projet

Exécutez ensuite le programme sur l'appareil

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