web-dev-qa-db-fra.com

Un profil d'approvisionnement valide pour cet exécutable n'a pas été trouvé pour le mode débogage

Je reçois cette erreur pendant que j'essaie de déboguer mon application sur le périphérique.

J'ai créé le profil d'approvisionnement de développement, comme indiqué sur le portail des développeurs. Mon périphérique de développement est sélectionné dans le profil et je sélectionne le profil approprié dans le menu Identité de signature de code de Target. J'ai recréé le profil de provisionnement plusieurs fois, puis je l'ai également supprimé, réinstallé et recréé le projet, mais je l'obtenir chaque fois que j'essaie de déboguer sur le périphérique.

Btw, le profil de provision de distribution adhoc fonctionne.

J'ai passé toute ma journée à trouver une solution mais rien. Quelqu'un a une solution?

231
xenep

Enfin, je pourrais résoudre le problème. Un de mes collègues a révoqué le certificat de développeur sur iOS Provisioning Portal pour ses applications de test. pour la fixation; J'ai retiré le certificat de développeur existant sur mon trousseau, demandé un nouveau certificat avec la clé privée existante, révoqué le certificat du portail d'approvisionnement et soumis le nouveau certificat demandé.

maintenant, je peux déboguer mon application sur mon appareil :)

18
xenep

C'est peut-être parce que votre iphone n'est pas reconnu par le portail de provisioning.

Solution:

1) Dans Xcode, Saut -> Construire -> nettoyer toutes les cibles.

2) Dans "Groupes et fichiers" -> Cible -> développez-le -> faites un clic droit sur votre application et sélectionnez Nettoyer "votre application".

3) Goto-> Fenêtre -> Organisateur

4) Dans l’appareil à gauche, sélectionnez votre iphone

5) Dans la section Provisioning de l'iPhone sélectionné, supprimez tous les profils actuels (le cas échéant).

6) Débranchez votre iPhone et rebranchez-le.

7) Goto-> Fenêtre -> Organiseur -> cliquez avec le bouton droit de la souris sur votre iPhone -> Ajouter un appareil au portail de provisioning

8) Assurez-vous maintenant que vous avez sélectionné l'identité de signature de code appropriée dans les paramètres de projet d'édition -> construire -> la signature de code.

Construire et exécuter. Bonne chance!

185
samdeV

J'ai eu le même problème. Tout était ok: le périphérique était enregistré dans IOS Provisioning Portal; le certificat a été téléchargé et les profils de provisioning de développement de mon application ont été téléchargés.

Donc la solution !!!

Cible> Obtenir des informations

Sélectionnez la configuration à libérer (voici le diable) Fermer.

Sur la cible, choisissez Nettoyer la cible puis Exécuter l’application.

Bonne chance.

40
Rafael

Dans Xcode 10, j'ai résolu ce problème en faisant passer le système de construction du projet de "nouveau système de construction" à "système de construction hérité" (Fichier -> Paramètres du projet).

34
che

Dans mon cas, cela était dû au fait qu’il y avait quelques versions du certificat de développeur dans le trousseau.

Supprimer le certificat de développeur iPhone de Mes certificats et Certificats, puis télécharger le dernier en date du centre de développement et l’installer (double-cliquez sur le fichier .cer)

réglé mon problème 

28
danmux

Cela m'a surpris car quelqu'un avait changé le paramètre "Build Configuration" de la configuration "Run" en "Release" (sous "Produit"> "Edit Scheme .."> "Run * .app"). 

Ceci est normalement réglé sur "Debug" et par conséquent, il n'utilisait PAS le certificat de développeur et le profil d'approvisionnement que je m'attendais, mais les certificats de distribution.

En plus de cela, j'ai constaté que, si vous recherchez le périphérique dans le journal de la console (via Organizer), il se peut qu'un code d'erreur indique mieux votre problème. Par exemple j'avais ...

Mon Sep  5 09:39:56 unknown installd[304] <Error>: profile not valid: 0xe8008012

J'ai alors cherché "0xe8008012" dans Google et obtenu la page suivante qui indique une erreur "0xE8008012 - L'UUID du périphérique ne correspond à aucun dans le profil d'approvisionnement chargé en cours de chargement".

MobileInstallation

16
Oliver Pearmain
  • Xcode->Click your app -> TARGETS -> click the app-> Build Setting-> Code Signing: assurez-vous que Debug et Tous les SDK iOS sont définis sur Développement iPhone

  • Xcode -> Product -> Scheme -> Edit Scheme: Assurez-vous que Build Configuration est défini sur Debug .

13
fullMoon

Dans mon cas, ce problème est dû à la sélection d'un autre profil d'approvisionnement pour les tests unitaires. Ça m'a pris des heures pour trouver ça ...

12
leMale

J'ai eu le même problème avec Xcode 10.0 beta 5 (10L221o) et un appareil sous iOS 12.0 (16A5345f) - c'est aussi une version bêta.

Après l'installation de l'alerte d'application intitulée "Échec de l'installation de l'application", "Un profil d'approvisionnement valide pour cet exécutable n'a pas été trouvé".

Je m'en suis débarrassé en allant dans: ~/Library/MobileDevice/Provisioning Profiles et en trouvant le certificat que Xcode essayait d'utiliser. Ensuite, dans la fenêtre "Périphériques et simulateurs" de Xcode, j'ai cliqué avec le bouton droit de la souris sur mon périphérique, choisissez "Afficher les profils de provisioning" et avec un bouton plus, le profil de provisioning a été ajouté au périphérique.

Je ne me rappelle pas quand je l'ai fait la dernière fois, ça fait des années. Je suppose que Xcode le fait normalement pour nous, mais pour une raison quelconque, il échoue lorsque nous voyons ce message.

12
karolszafranski

Avec Xcode 6 et un nouvel appareil:

  1. Appuyez sur cmd + shift + 2 pour ouvrir des périphériques. add device in xcode
  2. Appuyez sur le bouton "enregistrer l'appareil". S'il n'existe pas de bouton de ce type (comme dans la capture d'écran), accédez à developer.Apple.com et ajoutez-le manuellement. Copiez l'identifiant dans le champ .add device on portal
  3. Allez dans Xcode -> Préférences -> Comptes -> Double-cliquez sur votre compte -> Appuyez sur le petit bouton d'actualisation en bas à gauche pour actualiser les profils refresh profiles
  4. Allez à la signature de code et définissez les nouveaux profils .set profiles
10
zeiteisen

Nous pouvons essayer ceci: Cela a résolu mon problème. Vous devez réinitialiser le profil pour lequel l'identifiant de votre appareil a été ajouté dans votre espace membre d'Apple.com. . enter image description here

7
Vinod Joshi

En supposant que votre certificat de développement et de distribution soit installé correctement:

Sous Projet, votre identité de signature de code principale doit être le profil de développeur de cette application.

Sous Cibles, votre identité de signature de code principale doit être le profil de distribution de cette application, sauf que vous devez modifier Debug> Tout SDK iOS en votre profil de développement ... et vous assurer que Libérer> Tous les SDK iOS est votre profil de distribution. Cela devrait être construit et exécuté sur votre téléphone provisionné et devrait être archivé sans avertissements de code. 

La seule chose qui a fonctionné pour moi lorsque mon téléphone est tombé en panne et que je devais le restaurer à partir d'une précédente image iTunes.

6
M Jesse

Cette solution a fonctionné pour moi

  1. Allez dans Xcode -> Préférences -> Compte.
  2. Dans la section Profils d'approvisionnement, cliquez avec le bouton droit de la souris et ouvrez-la avec le Finder.
  3. Supprimez tous les profils de provisioning du dossier de profil de provisioning.
  4. Enfin, retournez à Xcode et cliquez sur le bouton Actualiser.

J'espère que ça aide! 

6
Sultan Elerris

J'ai eu le même problème. ce que j'ai fait est: 1. nettoyer la cible 2. quitte le xcode 3. redémarrez xcode 4. reconstruire.
.__ et cela a fonctionné. 

4
Emmy

Une autre cause (vérifiée):

  1. Apple a un bug majeur dans Xcode qui remonte à la version 3.x, où il écrase magiquement le trousseau OS X avec un faux trousseau de Xcode, réinstallant des certs (et des clés privées!) Que vous avez déjà supprimés

  2. ... donc, si vous avez "nouveau certificat" installé et rien d'autre, Xcode entrera parfois dans une boucle infinie où il continuera à installer AUSSI "ancien certificat" (qui n'existe nulle part sauf dans XCode!).

  3. ... et à cause d'un autre bogue dans Xcode (non corrigé depuis plus de 3 ans maintenant ...), Xcode parfois sélectionne automatiquement le "plus ancien certificat que je puisse trouver" (ce qui, par définition, est incorrect - je pense que quelqu'un chez Apple se sont mélangés entre "plus vieux" et "plus récent" :()

  4. ... et même si vous avez sélectionné le profil de provisioning correct, Xcode envoie l'ancien "profil" à l'appareil, puis signe avec le "nouveau" profil, ce qui provoque cette erreur

Solution: vous devez annuler la FUBAR de votre trousseau un-FUBAR Xcode.

C'est plus difficile qu'il n'y paraît (il y a plusieurs SO messages sur ce sujet) - cela implique plusieurs redémarrages de votre ordinateur, en supprimant la clé à chaque fois.

Finalement, Xcode renonce à corrompre votre système d'exploitation et accepte la réalité que vous lui présentez :).

3
Adam

Dans mon cas, un fichier de provisioning valide est parce que je n'ai pas ajouté le périphérique au fichier de provisioning même.

3
BabyPanda

Avait le même problème. Ma solution était très facile. J'ai vérifié si j'ai l'UDID de mon appareil dans developer.Apple.com et qu'il était absent. Après l'avoir ajouté, ça commence à fonctionner. Il est très gênant que les développeurs Apple donnent l'erreur "Un profil d'approvisionnement valide pour cet exécutable n'a pas été trouvé" au lieu de "UDID introuvable". En fait, je l'ai d'abord mentionné dans XCode 6 ...

3
Dmitriy Kalachniuk

Le passage du profil d'approvisionnement à automatique puis à l'exécution a invité Xcode à "résoudre" le problème. Je suis ensuite revenu à mon profil d'approvisionnement initial et tout a bien fonctionné.

3
Epic Byte

Dans mon cas, c’était le problème lorsque j’ai configuré mon heure manuellement deux mois plus tôt sur mon iPhone. Mais quand j'ai changé pour régler l'heure automatiquement, cela a bien fonctionné.

Setting -> General -> Date & Time -> set time automatically

Si cela ne fonctionne pas, définissez automatiquement l'heure de votre Mac et de votre iPhone.

2
Xcodian Solangi

Supprimer le certificat, les profils et le recréer. Installez-le. C'est la meilleure solution.

1
Vaibhav Tekam

D'après mon expérience, ce problème se produit si vous essayez de créer un périphérique qui n'est pas enregistré dans votre centre de développeur ou n'est pas activé dans le profil de provisioning que vous utilisez.

1) Ajoutez le périphérique au centre des développeurs. Dans XCode 5, vous trouverez toujours un bouton "Ajouter au centre des membres" dans la fenêtre de l'organiseur. Dans XCode 6, je suggère de copier l'ID de périphérique et de l'ajouter manuellement à la section des périphériques de votre centre des membres.

2) Modifiez le profil de provisioning que vous utilisez pour inclure le périphérique que vous venez d'ajouter. Enregistrez et synchronisez les profils d'approvisionnement à partir de XCode.

Propre, et c'est sur.

1
Dodgson86

Passer d'une application de Xcode 3 à la version 4.3, j'ai découvert que le nom et l'identifiant de l'ensemble devaient correspondre à ceux de l'AppId . Si tout échoue, donnez-lui un tourbillon.

0
Bee

J'ai eu cette erreur en suivant un guide pour créer une cible distincte pour le mode de développement et le mode de production.

L'erreur que j'ai commise a été de créer un profil d'approvisionnement de distribution et de l'affecter à la cible du mode de production. Les profils de distribution ne sont pas associés aux périphériques de débogage, donc l'erreur est apparue.

La solution consistait à créer un deuxième profil d'approvisionnement de développement et à l'utiliser à la place. 

0
Max Mumford

J'ai vu ce problème parce que j'avais obtenu un nouveau Mac et utilisais toujours le certificat de mon ancien ordinateur. J'avais créé un nouveau certificat pour le nouveau Mac, mais j'avais les deux certificats dans mon trousseau.

Dans l'Organiseur, le profil a averti que "XCode n'a pas pu trouver une paire clé privée/certificat valide pour ce profil dans votre trousseau" alors que l'ancien certificat existait déjà dans mon trousseau.

La solution consistait à supprimer l'ancien certificat de mon trousseau et à supprimer/révoquer tous les profils ayant utilisé cet ancien certificat. Créez ensuite un nouveau profil avec le nouveau certificat et utilisez-le.

J'espère que cela t'aides!

0
paiego

Tout d’abord, vous devriez 1.ajouter votre identifiant d’appareil au centre des membres -> appareils. 2.Générez le profil d'approvisionnement du développeur3.Lancez l'application sur l'appareil avec ce profil d'approvisionnement.

0

Dans mon cas, mon profil d'approvisionnement était invalide car Apple a modifié certains de ses termes et conditions. Pour résoudre le problème je devais

  1. supprimer le profil précédent.
  2. J'ai dû accepter les termes et conditions de this site Web d'Apple.
0
Siddhartha Saif

J'ai eu un certificat qui a expiré (qui a généré l'erreur).
Étape 1. Rendez-vous sur developer.Apple.com, connectez-vous, puis accédez au portail de provisionnement IOS.

Étape 2. Accédez aux certificats (qui sont maintenant vides) et suivez les instructions répertoriées pour créer un nouveau certificat (ouvrez le trousseau sur votre ordinateur, créez une demande de signature, enregistrez-le sur un disque, puis téléchargez-le sur Apple)

Étape 3. Téléchargez et installez les fichiers créés par Apple sur votre trousseau.

Étape 4. Problème: tous vos profils de provisioning précédents étaient associés à votre ancien certificat. Vous devez donc revenir à developer.Apple.com-> Portail fournisseur IOS-> profils de provisioning et «modifier» chaque profil qui vous tient à cœur. Vous verrez que votre identité n'est plus associée au profil. Il vous suffit donc de cocher la case correspondante.

Étape 5. Téléchargez tous les profils que vous avez modifiés

Étape 6. Branchez votre téléphone et faites glisser le fichier .mobileprovision sur l'icône xcode dans la barre du dock pour les installer sur le périphérique.

0
user353877

J'ai résolu ce problème en cochant "Gérer automatiquement la signature" dans XCode 8.2 Cible-> Signature> Gérer automatiquement la signature

0
wei

Une des causes pourrait être que votre "projet => Build Settings => Signing => Équipe de développement" soit différent de votre "target => Build Settings => Signing => Équipe de développement"

0
Halt

J'ai aussi eu ce problème avec Xcode 5.0.1. Un beau jour, l’application ne voulait tout simplement pas être installée sur le périphérique sur lequel elle avait été installée il ya cinq minutes sans aucun problème.

J'ai essayé de nettoyer les paramètres, de supprimer les données dérivées, de recréer des profils de provisioning, de signer avec un autre certificat/profil, de retirer le périphérique de l'organiseur, etc.

Enfin, je réinitialise le contenu et les paramètres de mon appareil et ai construit mon projet avec succès à l'aide d'anciens profils, certificats et identifiants de kit.

Cela ressemble à un bogue (j'utilise XCode 7.3.1).

Essayer d'utiliser XCode-> Produit-> Profil a généré l'erreur "Pas de profil de provision valide".

Par pure chance, je l'ai fait fonctionner simplement en exécutant l'application sur mon périphérique connecté à l'aide d'une compilation normale, puis en accédant au "Navigateur de débogage" et en cliquant sur "Profil dans Instruments" dans le coin supérieur droit.

 enter image description here

0
Seoras

Ajoutez également une signature correcte pour myProjectTests.

0
Feng Liu

L'une de ces solutions peut être: votre profil d'approvisionnement n'inclut pas l'UDID de votre iPhone. Pour cela, vous devez d'abord enregistrer UDID, puis régénérer le profil d'approvisionnement à partir du compte de développeur.

0
Amit Ajmera

J'ai rencontré le même problème il y a peut-être d'autres raisons aussi:

While testing i set my date to some future date and profile got expired. As result this issue was generated.

But i solved by setting date of iphone to current date as a result profile was not expired. 
0
Paresh Navadiya

C’était mon erreur, j’ai oublié d’ajouter mon appareil dans le profil de provisioning . Une fois que j’ai ajouté mon appareil à la provision de développement et ad hoc, puis l’ai téléchargé à nouveau, puis redémarrant le Xcode, puis sélectionné à nouveau la provision souhaitée sur la cible du projet, cela a bien fonctionné.

0
Manab Kumar Mal

Je compile mon application dans Adobe Air pour iOS, pas avec Xcode. J'essayais de copier le fichier .ipa à l'aide d'iTunes et j'ai reçu un mystérieux message "Erreur lors de l'installation de l'application". Ce n'est que lorsque j'ai utilisé l'utilitaire de configuration iPhone (iCU) que j'ai reçu le vrai message d'erreur.

Le problème était que je compilais l'application avec un profil d'approvisionnement pour distribution ad hoc et un certificat pour développement. Je ne comprenais pas qu'il existe 2 types de certificats et 2 types de profils d'approvisionnement. Il en existe un pour le développement et un pour la distribution. S'ils ne correspondent pas ... alors vous obtenez ce message d'erreur. C'est évident une fois que vous l'avez compris ...

La solution consistait à télécharger le certificat de distribution (.cer), à cliquer deux fois pour l'ouvrir dans le trousseau et à l'exporter directement au format P12 depuis KC. Utilisez ensuite ce certificat P12 distribution dans les paramètres de publication (Flash IDE ou Builder Flash) et utilisez également le profil d'approvisionnement utilisé pour ad hoc distribution (.mobileprovision). Enfin, installez enfin le profil d'approvisionnement et le fichier .ipa à l'aide de l'utilitaire de configuration iPhone.

Cela l'a fait pour moi.

0
Pier

Vos sessions de compte de développeur ont peut-être expiré. Consultez la section des comptes par préférence. Vous pouvez voir du texte en rouge concernant les sessions expirées si tel est le cas.

0
Vinayak Parmar

Dans mon cas, la date et l'heure du périphérique ont été modifiées manuellement. Pour résoudre le problème, réglez la date et l'heure sur automatique. 

0
Sahil Dhawan

Cliquez sur Votre application depuis Xcode sous Cibles. (Sous projet.) Vous voyez ici les informations récapitulatives, les paramètres de construction, les phases de construction, les règles de construction.

Ok, allez dans Paramètres de construction. Descendez à la signature de code.

Vous voyez que vous avez deux champs Debug et Release. Vous avez le choix entre deux profils dans chacun de ces domaines, Distribution et développement.

Laissez la distribution être celle du champ Release. Laisser Developing être celui du champ Debug.

Cela a résolu ce problème et a laissé ce message d'erreur disparaître. Maintenant, je peux bien exécuter mon application.

0
coolcool1994

Cela a fonctionné pour moi:
de xcode, Fenêtre -> Appareils et simulateurs, faites un clic droit sur votre téléphone, Découpler.
Ensuite, rebranchez tout, construisez, faites.

0
Simion Agavriloaei

Pour moi, tous mes appareils du portail des développeurs devaient être réenregistrés. il y avait un avertissement jaune qui vous a guidé à travers les étapes. Ensuite, je devais valider tous mes profils de provisioning et les télécharger à nouveau.

0
Whitney Foster