Xcode: impossible d'obtenir la tâche pour le processus

255

J'ai exécuté en mode de libération mon application sur un iPhone avec Xcode 4.

Tout a bien fonctionné jusqu'à ce que je passe au simulateur et que je revienne à l'iPhone. Après le retour, l'application est lancée sur l'iPhone, mais l'écran d'accueil s'affiche immédiatement après et dans Xcode, j'obtiens:

failed to get the task for process 

J'ai essayé de supprimer / ajouter un fichier de droits, de supprimer l'application et de redémarrer Xcode, mais rien à faire.

anévrisme
la source
avez-vous essayé en changeant le Bundle ID?
rakeshNS

Réponses:

666

Je parie que votre mode de publication comprend la compilation avec votre certificat de distribution, ce qui interdit ce comportement (vous ne voudriez pas que des imbéciles aléatoires se connectent à votre application après l'avoir téléchargée depuis l'App Store). Compilez plutôt avec le certificat de développement. Vous pouvez changer cela dans les paramètres du bâtiment sous signature de code.

borrrden
la source
Ok, maintenant je me sens stupide ... J'ai choisi par erreur Déploiement -> iPad et j'ai eu cette erreur. Je ne pouvais pas comprendre pourquoi pour la vie de moi, jusqu'à ce que je m'en rende compte, je l'ai changé en Développement -> iPad et cela a fonctionné. Duh! : P
Joel Martinez
3
Assurez-vous que la bonne cible est sélectionnée et que vous ne réglez pas les paramètres de signe de code pour la cible de test / autre.
Vincil Bishop
11
Cela vous fait vous demander pourquoi Apple ne nous donnerait pas une erreur plus utile comme "veuillez utiliser un profil de débogage"
inorganik
7
Toute mon expérience de développement pour les plateformes Apple est une pure douleur. Je ne sais pas comment peuvent-ils avoir si peu de respect pour eux
noncom
1
Ouais, j'avais fait la même erreur: Xcode a été construit avec bonheur et m'a laissé tenter d'exécuter une application, où j'avais choisi un profil provisoire, avec un certificat de distribution (plutôt que de développement). Mais, sérieusement, POURQUOI ... Pourquoi Xcode ne peut-il pas donner un message d'erreur à moitié utile pour vous alerter de ce problème? Nous sommes en 2016. Xcode va-t-il jamais grandir et ressembler à un environnement à moitié décent?!
Mike Gledhill
24

Modifiez le profil pour la signature de code. Sélectionnez votre projet, accédez à Paramètres de construction> Identité de signature de code. Passez à un autre profil de développeur.

Teofilo Israel Vizcaino Rodrig
la source
Il existe deux paramètres de construction, un sous Projet et un sous Cibles. J'ai dû changer la signature du code pour que les deux fonctionnent.
Stephen Horvath
7

Si quelqu'un rencontre ce problème mais est sûr d'avoir correctement configuré ses certificats et sa signature de code, vérifiez l'onglet des capacités lorsque vous cliquez sur le projet (c'est-à-dire à côté de l'onglet des paramètres de construction, de l'onglet des phases de construction, etc.).

Dans mon cas, il y avait des liens brisés pour Game Center et les achats intégrés qui devaient être corrigés (en cliquant sur les boutons "me corriger") pour résoudre ce problème.

Charlie Scott-Skinner
la source
4

À tous ceux qui rencontrent ceci: après avoir lu ceci, j'ai tenté de résoudre le problème en définissant la signature de débogage sur mon certificat de développement uniquement pour découvrir que le déploiement échouait toujours.

Il s'avère que ma cible était Release et donc toujours en train de signer avec le certificat de distribution - revenez à Debug target ou changez temporairement la signature de release en Development.

Aleksander Niedziolko
la source
4

J'ai eu le même problème et après avoir lu les réponses ci-dessus, tout ce que j'avais à faire était d'aller dans Paramètres de construction> Signature de code> Profil d'approvisionnement> Aucun et j'ai pu exécuter à nouveau l'application sur mes appareils. J'espère que cela aide quelqu'un d'autre

DamongoCoder
la source
Les changements ci-dessus n'ont pas fonctionné pour moi non plus, mais votre suggestion a fonctionné.
Praxitèle
Je n'avais aucune chance. Finalement, je définissais les profils d'approvisionnement pour mon projet. Je devais le définir pour la cible que je construisais. ouf
Suz
3

Je suis revenu à "Automatique" sur le profil de provisioning des paramètres de build pour "Debug" et j'ai laissé le profil de certificat de version inchangé, le mien a fonctionné. J'ai essayé les autres réponses. rien n'a fonctionné. Je ne voulais pas avoir à reconfigurer mes certificats. Automatique sur le profil d'approvisionnement a fait l'affaire

capture d'écran

abiodun ekundayo
la source
2

Obtenez simplement le même problème en installant mon application sur l'iPhone 5S avec le profil de distribution

-> ma solution était d'activer les capacités qui sont définies dans le profil de distribution (dans mon cas, "partage de trousseau", "achat intégré" et "Game Center")

J'espère que cela aide quelqu'un ...

Alexej W.
la source
1

Juste eu le même problème - l'application était en cours d'installation, mais ne fonctionnera pas à partir de Xcode avec le "échec du lancement du processus: impossible d'obtenir la tâche pour le processus".

Il s'avère que mon certificat de développement a expiré pendant la nuit. La régénération du certificat et des profils d'approvisionnement a résolu le problème.

Côte maritime du Tibet
la source
Pareil ici. Vous pouvez savoir qu'il y a un problème avec le certificat de développement si le statut du profil d'approvisionnement de développement dans l'Organiseur indique "Identité de signature valide introuvable".
Vladimir Grigorov du
1

Si vous avez défini le bon certificat de signature de code sous Paramètres de construction-> Signature de code , assurez-vous également que vous utilisez également le profil de provisioning correct pour le mode Debug / Release.

J'avais ce problème parce que j'utilisais un profil d'approvisionnement Ad-Hoc pour les deux modes de débogage / libération, ce qui ne permet pas d'utiliser un profil de développement lors d'une génération de débogage.

nenchev
la source
0

Il est sûr que l'ID de signature du code développeur est correct, mais assurez-vous également que votre appareil est ajouté au Centre des membres via l'organisateur ou via le portail des développeurs.

Il y a quelques jours, j'ai réinitialisé la liste de mes appareils, et aujourd'hui, j'obtenais tout à coup cela pour un iPod avec lequel je débogue tout le temps. Environ 15 minutes plus tard, j'ai réalisé le problème.

hawkeyecoder
la source
0

J'ai eu ce problème après avoir créé un nouveau certificat de développeur.

Ce qui suit était déjà correct: l'ancienne clé privée a été supprimée du trousseau, tous les profils où à jour, la configuration de la configuration et les paramètres de signature étaient corrects. Pourtant, j'ai eu ce problème.

Solution: j'ai dû redémarrer Xcode (5.1.1), car il n'était pas au courant de mon nouveau certificat de développeur. J'ai également supprimé les profils obsolètes de mes appareils juste pour être sûr et pour nettoyer.

thetrutz
la source
0

J'ai rencontré ce problème lors de la tentative de débogage d'une application sur un appareil que je n'avais pas utilisé auparavant. Le profil de développeur a été correctement défini. L'appareil faisait partie de notre compte d'équipe, mais n'était pas inclus dans mon profil.

Il suffit d'ouvrir l'Organiseur -> Sélectionner l'appareil -> Ajouter au centre des membres

Kevin Hawker
la source
0

J'ai eu ce même problème, mais dans une situation un peu différente. Un jour, mon application se lance très bien (en utilisant la disposition développeur), puis je fais quelques modifications mineures à mon fichier de droits, et après cela, il cesse de fonctionner. L'application s'est bien installée sur mon appareil, mais à chaque fois que j'ai essayé de la lancer, elle se fermait instantanément (après l'animation d'ouverture). (Comme j'ai également apporté des modifications à d'autres fichiers, je n'ai pas soupçonné le problème suivant)

Le problème était au format de fichier Entitlements, semble que les déclarations suivantes ne soient pas les mêmes:

Correct:

<key>get-task-allow</key>
<true/>

Incorrect:

<key>get-task-allow</key>
<true />

Même s'il s'agit d'un format XML, n'utilisez pas d'espaces dans la balise ou le Xcode ne pourra pas se connecter au processus.

J'utilisais le profil d'approvisionnement des développeurs depuis le début.

Modifier: assurez-vous également que la ligne se terminant dans votre fichier de droits est \ n (LF) au lieu de \ r \ n (CRLF). Si vous modifiez le fichier de droits sur Windows à l'aide des fins de ligne CRLF, le lancement de votre application peut échouer.

Sipka
la source