Impossible d'exécuter l'application dans le simulateur: une erreur s'est produite lors de l'exécution (Domain = LaunchServicesError, Code = 0)


91

Après avoir compilé avec succès le projet dans Xcode 6, je ne peux pas l'exécuter dans le simulateur avec le message mentionné ci-dessus. J'ai fait toutes les recherches possibles, tout essayé et toujours pas d'avancées.

Je ne travaille pas avec Swift, je n'utilise pas non plus de widgets ou d'extensions, donc veuillez ne pas suggérer de solutions causées par ces problèmes comme on peut le voir dans des questions similaires.

Si quelqu'un a trouvé une cause possible (ou une solution !!) autre que celles - ci , veuillez aider. Merci


il serait utile que vous puissiez énumérer ce que vous avez essayé d'exclure ces recommandations.
donmarkusi

Le problème est maintenant résolu, mais juste pour information, j'ai essayé: - exécuter un nettoyage - supprimer le cache du projet / les données dérivées - redémarrer à la fois le simulateur et Xcode - redémarrer le Mac - réinstaller Xcode - nettoyer et réinstaller CocoaPods - vérifier les paramètres de construction pour tout rare apparences Rien n'a aidé. Je n'ai pas essayé de jouer avec la dénomination des extensions d'application car je n'en utilise aucune.
Miki du

3
"Produit -> Propre" a fonctionné pour moi.
nshuman


Le redémarrage du simulateur a résolu mon problème
Bhavesh

Réponses:


175

"Réinitialiser le contenu et les paramètres" à partir des options du menu iOS Simutalor et le lancement du simulateur après avoir quitté a résolu mon problème.

Réinitialiser le contenu et les paramètres


6
Bien mieux que la réponse initiale. Doit être marqué comme la solution.
denislexic

Après cela, j'ai également dû quitter et rouvrir le simulateur.
jfredsilva

Cette exigence est déjà mentionnée dans ma réponse @jfredsilva.
Sauvik Dolui

1
Suppression également de l'application si vous l'aviez déjà installée sur le simulateur
danywarner

Travaille pour moi. Merci
Nikhil Chaurasiya

125

Le nettoyage du dossier de construction a résolu le problème pour moi. J'espère que ça aide quelqu'un!

(Tout en maintenant la touche Alt enfoncée : Produit> Nettoyer le dossier de construction )


1
YA YA YA, a corrigé le problème: D
Abo3atef

1
Cela a fonctionné pour moi après la mise à jour pour utiliser Cocoapods et le .xcworkspace.
Jean le roi

3
C'est un must après la mise à jour vers Cocoapods v1.0.0
Anconia

Juste pour ajouter, c'est la seule chose qui a résolu ce problème pour moi après la mise à jour vers Cocoapods v1.0.0. Aucune des autres réponses SO n'a fonctionné.
Andy Rice

Travaillé, je suis si heureux
anavarroma

33

J'ai essayé toutes les autres solutions répertoriées ici. Eh bien, j'ai porté mon projet de Swift 1.2 à Swift 2.0. L'application était bloquée même après que beaucoup de débogage et de lancement de services d'erreur 0 aient été signalés.

solution: cela se produit à cause de la compilation du framework.

Cible de l'application -> Phases de construction -> Incorporer des cadres.

Donc, marquez la copie uniquement lors de l'installation sur. Nettoyez le projet et exécutez-le!

entrez la description de l'image ici


Pouvez-vous expliquer comment "Copier uniquement lors de l'installation" résout le problème?
sethfri

@ sethfri: "Copier uniquement lors de l'installation" pour spécifier que la phase de construction copie les fichiers uniquement dans les versions d'installation du produit. developer.apple.com/library/mac/recipes/…
AG

3
Je comprends ce que signifient les mots «Copier uniquement lors de l'installation». Je demande comment cela résout le problème auquel l'auteur de la question est confronté.
sethfri

28

Cela a maintenant été résolu. Le problème a été causé par la bibliothèque ShareKit ajoutée par CocoaPods pour des raisons de compatibilité. Après avoir supprimé la bibliothèque et tout le code associé, l'application s'est lancée avec succès dans le simulateur. Je recommande de vérifier le journal du système pour plus de détails sur le problème car il m'a orienté dans la bonne direction (en indiquant le nom de la bibliothèque en conflit).


Je viens d'ajouter shareKit et j'ai le même problème.
dirkoneill

24
Si cela aide quelqu'un: vous pouvez accéder au journal système en tapant Console dans Spotlight.
Nate Cook

Pour moi, c'était la MixpanelAppExtension
villy393

Merci, cela m'a aidé. XCode 7.3.1 et mon journal ont montré "ErrorDescription = Impossible de copier le lien papier". Je définissais une version mais pas un numéro de build dans Target -> General -> Identity. Une fois que j'ai inclus une valeur pour Build, le problème a disparu.
William Smith

Pour vérifier le journal système, essayez cette commande dans le terminal: tail -f /var/log/system.logiOS Simulator imprime directement sur stdout, afin que vous puissiez voir les journaux mélangés avec les journaux système.
vhong le

16

Au cas où quelqu'un aurait ce problème en combinaison avec des cabosses de cacao, ces étapes m'ont aidé à résoudre cette erreur (après quelques heures):

  • courir pod cache clean
  • à partir de l'exécution de SRC_ROOT rm -rf Pods(en option rm Podfile.lock)
  • Cliquez sur l' application Simulator , cliquez sur Simulator -> Reset Content and Settings ...
  • Allez dans Xcode, dans la barre de menu, cliquez sur Produit -> Nettoyer (ou cliquez sur Maj + Commande + K). Cela permettra de nettoyer votre projet Xcode.
  • Créer un nouveau terminal Shell (dans la barre de menu, cliquez sur Shell -> Nouvelle fenêtre)
  • courir rm -rf ~/Library/Developer/Xcode/DerivedData/

... puis essayez de créer et d'exécuter votre projet.

Remarque: SRC_ROOT peut être trouvé en entrant dans le navigateur , en cliquant sur le projet, en cliquant à nouveau sur le projet dans la liste des projets et des cibles , en allant dans les paramètres de construction , en faisant défiler jusqu'en bas jusqu'à la section définie par l' utilisateur et la SRC_ROOT sera étiqueté comme PODS_ROOT. Prenez-le et copiez-le verbatum dans le terminal et passez à l'étape 2 de la liste ci-dessus.

J'espère que ça aide.


2
Cela l'a fait. Je vous remercie! Cela devrait vraiment être la réponse acceptée.
Dan Loewenherz

Cela a résolu mon problème! Cela devrait certainement être la réponse acceptée!
Victor Oliveira Antonino du

15

Je me débarrasse du problème en suivant les étapes données pour le simulateur

1. Chemin

  1. Réinitialisez le contenu et les paramètres du simulateur .
  2. Nettoyez votre projet Cmd + Maj + K .
  3. Effacez vos données dérivées .
  4. Le dernier qui est le plus important change votre identifiant de bundle par "com.yourcompanyname.projectname" comme "com.facebook.Facebook"

2 voies

Tu ne peux être que la ligne donnée, ça marche pour moi

Le dernier qui est le plus important change votre identifiant de bundle par "com.yourcompanyname.projectname" comme "com.facebook.Facebook"

Merci et bonne programmation.


Voulez-vous dire cmdau lieu de win? ;) (Ou peut-être que vous utilisez un clavier Windows.)
JeroenJK

@JeroenJK Oui, c'est Cmd.
Dharmbir Singh

Wow, le changement d'ID de bundle est celui qui a finalement fonctionné pour moi. Merci!
ArtSabintsev

6

Cela peut être lié à ce problème: "Cette application contient une extension d'application avec un identifiant de groupe illégal"

J'ai dû formater les identifiants de bundle pour mon application et mon extension comme suit:

com.company.AppName
com.company.AppName.Extension

Pareil ici. J'ai changé l'identifiant du bundle car l'extension (widget) ne s'affichait pas, et cela en était la cause. J'ai dû abaisser la version d'extension de 9.2 à 8.2 et changer le bundle comme mentionné ci-dessus.

Merci, exactement mon problème!
Andres le

5
  1. Tout d'abord "Réinitialiser le contenu et les paramètres"
  2. Si vous n'avez pas rempli le numéro de build, remplissez-le et exécutez.

C'est résolu pour moi.


4

Si vous modifiez le nom de l' InterfaceControllerensemble de classes fourni par défaut lorsque vous démarrez un nouveau projet. Cette classe est référencée dans le Info.plistsous la clé RemoteInterfacePrincipalClass. Dans mon cas, j'ai eu l'erreur mentionnée par l'OP jusqu'à ce que j'y fixe le nom de la classe (voir capture d'écran).

Info.plist: définir la classe principale


Cela a vraiment aidé! Merci!
Lonkly

2

Si vous êtes ici après avoir rencontré des problèmes lors d'une intégration avec WatchOS 2.0, allez à - ~/Library/Logs/CoreSimulator/[Device UDID]/system.loget si cela dit quelque chose comme, WatchKit 2 app has frameworks; that's not allowed.suivez le lien ci-dessous.

http://zyafa.me/blog/watchos-2-and-embedded-frameworks


1
Merci de m'avoir indiqué le fichier journal du simulateur. Dans mon cas, le fichier journal a ~/Library/Logs/CoreSimulator/CoreSimulator.logrévélé que mon framework lié n'avait pas de fichier CFBundleIdentifierdans son Info.plist
berbie

framework n'avait pas de CFBundleIdentifier dans son Info.plist: je reçois également ceci quelle est la solution? ne pas utiliser sur watchkit ou watchOS
Abhishek Thapliyal

1

Je suis un utilisateur adMob et j'ai résolu l'activation de "Copier uniquement lors de l'installation" dans la cible de l'application -> Phases de construction -> Intégrer les cadres.


1

J'ai le même problème après avoir localisé mon application. Surtout Info.plist. Semble que j'avais vide CFBundleShortVersionStringdans InfoPlist.strings, après la fixation que le simulateur a commencé à travailler correctement.


C'était aussi mon problème. Si vous voyez cela, essayez de supprimer toutes les clés qui ne nécessitent pas de localisation de vos fichiers InfoPlist.strings. Dans mon cas, la suppression des clés ci-dessous a tout corrigé: CFBundleName CFBundleShortVersionString CFBundleVersion
lazarev

1

J'ai eu ce problème en ajoutant une référence de dossier nommée "Resources".

Si je lui donne un autre nom, alors il s'exécute!


1
Celui-ci m'a résolu un problème similaire! J'incorporais un dylib, et cela a provoqué une erreur d'installation cryptique "Je n'avais pas de CFBundleIdentifier dans son Info.plist". Après avoir changé le dossier Resources pour quelque chose d'autre, il a recommencé à fonctionner
Sagi Iltus

Deux oiseaux avec une pierre;)
Moose

1

Il y a un certain nombre de choses qui peuvent provoquer cette erreur. La meilleure réponse générale consiste à rechercher dans le journal de la console CoreSimulator, car le simulateur enregistre le problème sous-jacent lorsqu'il affiche ce message.


1

Merci de l'avoir signalé @Miki et bravo à vous. J'ai eu le même problème que vous hier (et j'ai ajouté ShareKit 3.0.0 de CocoaPods à l'application il y a quelques jours). Je soupçonnais ShareKit de me poser ce problème, mais maintenant je peux être sûr de la bibliothèque exacte qui en est la cause. Voici ce que j'ai trouvé dans mon journal (si cela peut profiter à d'autres):

Error Domain = LaunchServicesError Code = 0 "L'opération n'a pas pu être terminée. (LaunchServicesError error 0.)" UserInfo = 0x7fa836097aa0 {Error = PackageInspectionFailed, ErrorDescription = Impossible de charger Info.plist à partir du bundle au chemin / Users / {UserName} / Bibliothèque / Developer / CoreSimulator / Devices / 99FEB34E-6F00-4EFA-861A-A6985AFE96D8 / data / Library / Caches / com.apple.mobile.installd.staging / temp.X7eead / extrait / {AppName} .app / Frameworks / LiveSDK. cadre}


1
à partir de votre journal, comment pouvez-vous savoir que ShareKit est à l'origine de l'erreur?
chipbk10

1
J'ai la même chose dans mon journal, mais la suppression des simulateurs et leur ajout n'aide pas ... comment avez-vous corrigé l'erreur?
Amitay

1

Si vous avez installé des bibliothèques en utilisant CocoaPodspendant que XCode était ouvert, tout ce que vous avez à faire est de fermer XCode et de supprimer la bibliothèque du Podfichier, exécutez la commande pod installpour désinstaller cette bibliothèque. puis réinstallez la bibliothèque. Veuillez vous assurer que XCode est toujours fermé lors de l'installation et de la désinstallation des bibliothèques.


0

J'ai exactement le même problème et c'était ShareKit.

Sur le simulateur, j'avais "Error Domain = LaunchServicesError Code = 0".

Sur l'appareil iPhone6, j'ai eu le message "L'installation de l'application a échoué. Impossible d'inspecter le package d'application."

Lorsque j'ai supprimé ShareKit, cela fonctionnait.


0

J'ai eu ce problème lorsque j'ai ajouté une cible Apple Watch à mon application et supprimé accidentellement le fichier InterfaceController.m. L'ajout du fichier dans la cible a résolu le problème.


0

Il y a différentes choses qui peuvent causer cela. Regarder dans la console peut bien vous donner un indice.

Dans mon cas - le problème était une extension construite avant que je change le nom du produit. Xcode n'a pas effacé l'ancien, puis a été stressé par deux extensions avec le même identifiant de bundle.

(La suppression du dossier de construction a résolu mon problème particulier).


0

Dans mon cas, le problème provenait d'un jeu d'icônes ajouté avec certaines images manquantes. Une fois, j'ai remplacé le jeu d'icônes par un autre et désinstallé l'application dans le simulateur; J'ai pu le relancer.


0

J'ai supprimé tous mes fichiers pod et les ai tous remplacés, il semble que le problème pour moi était que le cadre des boulons était ancien et provoquait cette erreur. J'ai fait un contenu propre et réinitialisé et maintenant tout va bien.


0

N'ajoutez pas le framework google maps à la section lib intégrée, cela a résolu ma rupture de construction.


La suppression du cadre intégré qui n'était pas nécessaire pour y être a également résolu mon problème
manman

0

J'ai eu cette erreur en développant une application pour Apple Watch après avoir ajouté dans Info.plist: "App Transport Security Settings" et "Allow Arbitry Loads" = YES. (Dans WatchKit App, dans WatchKit Extension c'est bien !!) En supprimant ces deux lignes, cela continue de fonctionner.

entrez la description de l'image ici


0

Pour moi, le problème se produit parce que j'ai ajouté mon framework ( GoogleMobileAds.frameworkdans mon cas) aux binaires incorporés , pas aux cadres et bibliothèques liés .

Pour votre information, AdMob vous demande d'utiliser le Add Files to "Your Project"menu sur Xcode, mais j'étais trop paresseux pour obéir aux instructions.


0

J'ai eu ce problème en essayant d'exécuter des tests d'interface utilisateur dans un projet contenant AWS Cognito.

Voici comment je l'ai résolu.

  1. Sélectionnez la cible de test de l'interface utilisateur.
  2. Cliquez sur la section Build Phases.
  3. Cliquez sur le plus pour ajouter une phase de copie de fichiers Ajouter la phase de copie de fichiers
  4. Dans la phase de copie de fichiers, changez la destination en Frameworks (voir la dernière image)
  5. Appuyez sur le plus en dessous de la phase de copie de fichiers.
  6. Sélectionnez le cadre pour lequel vous recevez une erreur et cliquez sur le bouton Ajouter (le vôtre ne sera probablement pas le premier élément de la hiérarchie de votre projet). Sélectionnez Framework à copier Cela devrait finir par ressembler à ça. Résultat final
  7. Répétez les étapes 5 et 6 pour tous les frameworks en vous donnant une erreur.
  8. Exécutez vos tests.
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.