Je ne parviens pas à exécuter mon application dans le simulateur après avoir eu des problèmes avec le profil d'approvisionnement. Je suis en train de coder Swift dans Xcode 6 - beta 4. C'était bien avant le problème dans le profil du certificat.
J'ai essayé de nettoyer la construction. Vérifié la ligne de commande sur xCode6-beta4 pour exécuter . Vérifié le déploiement de la construction, défini sur 7.0 afin que Swift ne se plaint pas de la compatibilité Correction de l'erreur de provisioning.
Cela se produit si l'ID de bundle de votre extension n'est pas préfixé par l'ID de bundle de votre application. Par exemple, si votre application est com.mycompany.appname
, votre extension devrait être quelque chose comme com.mycompany.appname.today
.
Autre chose à noter, si vous utilisez Swift et définissez une classe principale avec NSExtensionPrincipalClass
, assurez-vous que la cible de votre extension définit "Defines Module" sur "Yes" et que la valeur de NSExtensionPrincipalClass
est égale à "YourModuleName. VotreNomClasse ".
Je l'ai corrigé en réinitialisant le simulateur:
simulateur iOS> Réinitialiser le contenu et les paramètres ...
Il semble qu'il existe plusieurs raisons pour l'erreur "domain = LaunchServicesError code = 0". Je l'ai également rencontré pendant que j'essayais de réinstaller l'application sur le simulateur iOS8. Je ne peux pas réinstaller mais je dois d'abord supprimer l'ancienne application.
Le problème a été résolu par:
Dans Xcode, remplissez le champ Version ou Build vide avec la valeur appropriée dans votre Target-> General-> Identity
Dans Simulator, réinitialisez le contenu et les paramètres ...
Après cela, tout fonctionne bien.
Cela se produit également lorsque vous supprimez le StoryBoard par défaut du projet de modèle créé d'un widget Aujourd'hui. Pour résoudre ce problème, j'ai ajouté NSExtensionPrincipalClass
sous NSExtension
et l'a dirigée vers la classe contenant le contrôleur de vue du widget Aujourd'hui, qui correspond au modèle par défaut TodayViewController
.
Cela ressemble à ceci dans le fichier Info.plist de l'extension:
NSExtension NSExtensionPointIdentifier String com.Apple.widget-extension NSExtensionPrincipalClass String TodayViewController
Produit -> Clean
simulateur iOS> Réinitialiser le contenu et les paramètres
Redémarrer le XCode
Aucun de ce qui précède n'a fonctionné pour moi, mais la suppression des données dérivées a résolu le problème.
Pour supprimer les données dérivées, sélectionnez Fenêtre> Projets, sélectionnez le projet en cours et appuyez sur le bouton de suppression approprié.
"Réinitialiser le contenu et les paramètres" depuis Simulateur iOS options de menu et lancement du simulateur après Quitter a résolu le problème.
La solution pour moi consistait à ne pas intégrer un cadre qui n’avait pas été construit comme un cadre intégrable.
Trouvé la cause du problème pour moi.
J'utilise ShareKit via des pods. Ce problème est lié au SDK GooglePlus utilisé par ShareKit et doit être mis à jour en raison d'un changement de stratégie effectué par Apple . http://googledevelopers.blogspot.com.br/2014/09/an-important -announcement-for-ios.html
J'ai donc remplacé mon pod "ShareKit" par:
pod "ShareKit/Twitter"
pod "ShareKit/Facebook"
pod "ShareKit/Pocket"
pod "ShareKit/Evernote"
En laissant de côté le sous-projet GooglePlus et l'application s'est déployée et fonctionne correctement sous les simulateurs 8.0.
J'espère que cela aide quelqu'un d'autre.
Dans mon cas, cela a résolu le problème.
Identifiant de paquet ne doit pas être vide. Vous pouvez trouver le champ avec la référence ci-dessous:
J'ai résoudre ce problème. merci pour les conseils. :)
Ce problème se produit toujours lorsque vous créez votre application d'extension de clavier avec le même identifiant que votre bundle principal. comme ça.
Si vous avez ce "com.codemagnus.ExAppMain" dans votre bundle principal, votre extension doit également porter cet identifiant "com.codemagnus.ExAppMain" .. Cela entraînera une erreur du service de lancement si vous allez exécuter le simulateur. Mais vous pouvez créer une construction. Cependant, le problème que j'ai trouvé était agaçant. Cette application ne peut pas être installée sur votre appareil. : /
Si vous voulez exécuter en simulateur. Vous devriez avoir ce "com.codemagnus.ExAppMain.ExApp" dans votre clavier d'extension où ExApp était votre nom d'extension. Et votre paquet principal devrait être "com.codemagnus.ExAppMain" .. Cela fonctionnera parfaitement avec le simulateur. Toutefois, "l'identifiant de l'ensemble du binaire incorporé ne sera pas préfixé par l'identifiant de l'ensemble de l'application parente".
Identifiant du paquet binaire incorporé: com.codemagnus.ExAppMain.ExApp Identifiant de l'ensemble d'appli parent: com.codemagnus.ExAppMain
Je pense toujours et cherche une solution pour résoudre ce problème pour la construction ipa.
Cela m'a rendu fou. J'ai vérifié tout ce qui est suggéré ici, réinstallé Xcode, redémarré mon ordinateur et rien ne fonctionnait. Après avoir vérifié certains commits précédents, j'ai découvert le problème.
Pour le contexte, je travaille sur une extension de clavier personnalisée dans Objective C. Ajouter une nouvelle cible d’extension de clavier personnalisée vous donne une classe de raccourcis KeyboardViewController
avec le bouton "clavier suivant". J'ai changé la valeur NSExtensionPrincipalClass
dans le Info.plist
de l'extension pour qu'elle soit un nom de classe différent de KeyboardViewController
et j'ai commencé à travailler dessus. Finalement, j'ai décidé de supprimer le stub KeyboardViewController
puisqu'il s'agissait d'un code mort.
La suppression des fichiers KeyboardViewController
et leur suppression de Xcode ont provoqué ce problème. Les remettre a fait fonctionner l'application à nouveau.
Assurez-vous de vérifier les paramètres de construction; Faites défiler l'écran jusqu'en bas et assurez-vous que le préfixe de l'ensemble défini par l'utilisateur est correct. Habituellement, peu importe.
Le fait de le placer en haut ne change pas toujours ce réglage en bas. Cela a finalement fonctionné pour moi après la réinitialisation du simulateur, la friture du dossier dérivé, etc.
Je suis sous IOS 9.3, xCode 7.3
J'obtenais une erreur similaire lors du lancement de l'application, via xCode, "Le bundle parent a le même identifiant que le sous-bundle ..."
J'ai raccourci l'identifiant de paquet dans "Projet -> Général" pour xCode8. Initialement, mon identifiant de bundle était com.companyname ..
Le nom de l'application comportait plus de 20 caractères. Une fois que j'ai raccourci 12 caractères, cela a fonctionné pour moi.
Xcode 7.3
Cela pourrait simplement arriver parce que votre nom de cible est trop long. Essayez de changer le nom de votre cible en un nom plus court (souvenez-vous de changer votre identifiant bundleIdentifier).
Pour comprendre la cause de cette erreur, vous devez d'abord consulter les fichiers journaux du simulateur. Ceux-ci sont généralement situés dans ~/Library/Logs/CoreSimulator/CoreSimulator.log
ou dans un emplacement similaire. Je vous recommande donc vivement de commencer par consulter le journal pour identifier la cause fondamentale, puis de faire des recherches plus approfondies. (Vous pouvez consulter ce fil de discussion pour savoir où se trouvent les journaux.)
Par exemple, si vous obtenez une erreur telle que ErrorDescription=Failed to chmod /Users/username/Library/Developer/CoreSimulator/Devices/
, il est probablement plus simple de réinitialiser votre simulateur. Pour les erreurs telles que ErrorDescription=WatchKit 2 app's bundle ID com.mydomain.AppName.watchapp is not prefixed by the parent app's bundle
, il existe probablement une erreur dans la configuration de l'ID d'ensemble principal de votre projet.
J'ai eu cette erreur parce que j'ai modifié par erreur la valeur de NSExtensionPointIdentifier
. Je pensais que c'était supposé être un identifiant pour mon extension, mais ce doit être l'une de ces valeurs indiquant le type d'extension.
Si vous utilisez la montre Apple en plus de l'identifiant de l'ensemble, vous devez également vous assurer que, dans info.plist, la clé WKAppBundleIdentifier contient l'identificateur correct de l'offre de la montre.
J'ai commencé à avoir cette erreur lorsque j'ai modifié ma cible de déploiement de 6.0 à 7.0. J'ai constaté que la réinitialisation du simulateur résolvait le problème et que je devais le faire pour TOUS les simulateurs pertinents pour l'application. Mais si je suis retourné à la version 6.0 et que je l'ai recompilé pour un simulateur particulier, cela a fonctionné immédiatement, mais en revenant à la version 7.0, le simulateur est tombé en panne et j'ai dû effacer à nouveau les paramètres.
De toute évidence, la cible de déploiement affecte le codage dans le simulateur, et le codage est compatible avec les versions inférieures, mais pas vers le haut. De plus, le message de journal n’est pas très utile, indiquant que l’application ne pouvait pas être liée de manière rigide à un fichier de cache à l’aide d’un manifeste (en donnant les chemins de l’application, du cache et du manifeste, bien sûr).