Chaque fois que j'essaie d'exécuter mon application dans Xcode 6 Beta 4, j'obtiens l'erreur suivante:
The file "MyApp.app" couldn't be opened because you don't have permission to view it.
Cette erreur apparaît quel que soit le simulateur ou le périphérique que je cible.
J'ai essayé:
Quelqu'un at-il rencontré ce problème et trouvé une solution?
Il y avait un problème avec l'Info.plist du projet. J'ai créé un nouveau projet portant le même nom dans Xcode 6 beta 4, puis remplacé l'Info.plist du projet réel par le nouveau. Le projet a ensuite été construit et a bien fonctionné.
Regardez le diff, il semble que le pliste pourrait avoir été mélangé avec le plist d'un terrain de jeu. L'identifiant de l'ensemble était "com.Apple.dt.playground.iOS-18300-13" et les noms des exécutables et des ensembles étaient "iOS" avec quelques autres curiosités.
Ceci est la diff complète au cas où quelqu'un en aurait besoin pour référence:
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
- <string>iOS</string>
+ <string>${EXECUTABLE_NAME}</string>
<key>CFBundleIdentifier</key>
- <string>com.Apple.dt.playground.iOS-18300-13</string>
+ <string>com.myCompany.${PRODUCT_NAME:rfc1034identifier}</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
- <string>iOS</string>
+ <string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
- <string>AAPL</string>
+ <string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
- <key>CFBundleSupportedPlatforms</key>
- <array>
- <string>iPhoneSimulator</string>
- </array>
+ <key>CFBundleSignature</key>
+ <string>????</string>
<key>CFBundleVersion</key>
<string>1</string>
- <key>DTPlatformName</key>
- <string>iphonesimulator</string>
- <key>DTSDKName</key>
- <string>iphonesimulator8.0</string>
- <key>LSBackgroundOnly</key>
- <true/>
<key>LSRequiresIPhoneOS</key>
<true/>
+ <key>UIMainStoryboardFile</key>
+ <string>Main</string>
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>armv7</string>
</array>
+ <key>UISupportedInterfaceOrientations</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
</dict>
</plist>
Dans Xcode, procédez comme suit
Fenêtre -> Organiseur -> Projets -> L'application avec le problème -> bouton Supprimer dans les données dérivées.
J'ai ensuite nettoyé le projet et le tour est joué
travaux
Les autres solutions ne le réparaient que pour moi sur simulateur, pas d'appareil.
Pour moi, ce problème est survenu (sous Xcode 6) lorsque j’essayais de changer le info.plist propriétés tout en essayant de changer le nom de mon application.
Dans info.plist J'avais changé le nom Executable File
en un nom autre que celui par défaut ${EXECUTABLE_NAME}
...
J'avais confondu ce champ avec le champ qui modifie le nom de l'application sous l'icône sur le tremplin.
Pour moi, un simple Produit -> Nettoyer a bien fonctionné
Je l'ai corrigé en nettoyant un dossier de construction. Je suis juste allé dans le menu 'Produit' et Option + Cliquez sur 'Nettoyer'. Après cela, un problème a été résolu.
J'ai eu même cette erreur dans Xcode 8.2. La raison pour laquelle j'ai découvert pour moi, un autre Info.plist est ajouté à mon projet lors de l'ajout d'une bibliothèque (copie manuelle).
Pour que Xcode soit confus en sélectionnant le correct Info.plist .
Je viens de supprimer cet Info.plist de la bibliothèque ajoutée.
Ensuite, cela fonctionne bien sans aucune alerte de permission.
Veuillez vérifier si vous avez changé le fichier exécutable => $ (EXECUTABLE_NAME) en un autre nom. Si vous avez changé ce nom, cette erreur s’affiche. Veuillez le remplacer par $ (EXECUTABLE_NAME).
Produit -> Propre (commande shift K) corrigé pour moi
Mon Dieu!! J'ai passé des heures à résoudre ce problème.
Sur XCode 7.3, j'avais un projet sans problème.
Erreur je l'ai fait
_ {Je viens d'ajouter des dossiers physiques et d'y déplacer mes fichiers, le problème a commencé.} _
J'ai tout essayé
rien n'a fonctionné :(
Comment j'ai résolu
J'étais sur le point de créer un nouveau projet et ensuite je ai supprimé ceux physiques dossiers J'ai ajouté, nettoyer la construction et YESS !!
Ça marche!!
Essayez "cmd + shift + k" pour nettoyer le projet et reconstruire. Au moins ça a fonctionné pour moi
J'avais un problème similaire (xCode 6.2) pour l'exemple de code téléchargé. J'ai essayé de définir Executable Name
sur Default in Info.plist
mais cela n'a pas fonctionné.
À la place, remplacez Compilateur pour C/C++/Objective-C en Compilateur par défaut (Apple LLVM 6.0) au lieu de Compilateur non supporté (com.Apple.compilers.llvmgcc42) pour le projet.
Parfois, ouvrir un ancien projet dans la nouvelle version de Xcode recevra ce message.
Allez dans le navigateur de problèmes et suivez les instructions de l'avertissement 'Upate to reconmmented settings'.
Boom, magique!
1) Allez d'abord créer des options.
2) Ensuite, changez la valeur du "Compilateur pour C/C++/Objective-C" en Compilateur par défaut.
propre et fonctionnel :-)
J'ai trouvé que changer mon compilateur en LLVM 6.0 dans les options de construction me suffisait (xcode 6.1)
J'ai eu la même erreur sur mon Xcode 6.1.1 pour un projet téléchargé depuis gitHub qui avait été engagé il y a 4 ans . Pour moi, régler Architectures sur la valeur par défaut Architectures standard arm64) et Compilateur pour C/C++/Objective-C à Compilateur par défaut dans Paramètres de construction travaillé.
J'ai eu cette erreur avec un certain nombre de projets plus anciens que je sors du placard pour mettre à jour. Il semble que l’utilisation de Xcode 6 avec un code plus ancien semble l’apporter pour une raison quelconque.
J'ai corrigé cela dans tous les projets pour lesquels je l'avais fait en:
Je rencontre récemment le même problème pour exécuter un ancien projet (initialement créé dans Xcode 4.x) dans Xcode 6.0.1.
J'ai résolu le problème en modifiant le paramètre Architectures dans Configuration du bâtiment s sur la valeur par défaut, qui est " Architectures standard (armv7, arm64) ".
J'espère que cela pourrait aider tous ceux qui ont des problèmes similaires :)
J'ai essayé toutes les réponses énumérées et aucune d'entre elles n'était utile. Le problème était dû à l'existence d'un autre fichier plist lié à partir d'un sous-module via des cocoapods. Heureusement, il s’agissait de mon propre module. Je viens donc de supprimer ce plist du projet de sous-module et de réinstaller les modules.
Plus tard, j'ai compris que la clé du problème résidait dans le nom de ce second plist: info.plist
. Vous pouvez renommer le fichier et le relier via une section sources
d'un sous-module.
Ce deuxième fichier plist avait un nom unique, de sorte que Xcode n'était pas censé être frustré. Même les paramètres de ma cible pointaient sur un plist principal, pas sur un info.plist
. On dirait que Xcode prend des considérations spéciales sur ce nom
Le bogue reproduit dans Xcode 6.4 et Xcode 7.0
Eh bien, dans mon cas, je viens de renommer les valeurs Bundle Name
et Executable file
en info.plist
, comme pour le nom du projet. Cela a fonctionné pour moi.
J'ai eu ce problème similaire. D'une certaine manière, ma valeur pour la clé Fichier exécutable s'est mélangée. Changez-le simplement en $ {EXECUTABLE_NAME} (Sous votre projet> Info). Travaillé pour moi!
Pour moi, l'erreur était dans le fichier .plist à la clé CFBundleExecutable
. J'avais renommé l'exécutable en supprimant un espace situé entre deux mots. (Ex: de "Wild Racer" à "WildRacer"). A pris 1 jour pour le repérer !!
Xcode est tellement inutile dans le débogage!
Je ne sais pas si le problème est lié, mais peut-être que cela pourrait être une solution pour tous ceux qui tirent les cheveux comme moi
Dans mon cas, j'ai un projet avec beaucoup d'objectifs. Chaque cible est une personnalisation de ce projet de base qui est un Cocoa Touch Static Library
et des cibles, Applications
. Même si le fichier main
est ajouté à la compilation de la bibliothèque, mais pas dans chaque cible, ce message d'erreur apparaît. Alors qu'est-ce que j'ai fait? A ajouté manuellement le fichier main
à chaque cible de la section Compile Sources
et du bingo, tout va bien.
Dans mon cas, main.m contenant la fonction principale (...) ne figurait pas dans la liste des "sources de compilation" de "phases de construction" Pour vérifier si c'est le cas, entrez dans Build Phases et regardez si votre main.m apparaît dans la liste "Compiler les sources".
avec X-code 6.3.2
[Paramètres de construction] Options. [Tous] - [Options de construction] - [Compilateur pour C/C++/Objective-C] - [Compilateur par défaut (Apple LLVM 6.1)]
Reconstruisez ensuite le projet et tout se passera bien.
Ce qui a résolu le problème pour moi a été de mettre Construire une architecture active uniquement de Non à Oui .
Dans mon cas, il a été utile de fermer Xcode et de réparer les autorisations avec l’utilitaire de disque. Seulement après un redémarrage cela a fonctionné comme un charme.
Comme je suis également confronté à ce problème aujourd'hui matin et qu'aucune des réponses ne m'a aidé, en particulier dans mon cas. Et après avoir essayé pendant des heures, j'ai compris le problème.
En fait, tout en travaillant dans le storyboard par erreur, je viens de renommer mon "Main.storyboard" "en" .storyboard "et de le remplacer par" Main.storyboard " résolu mon problème.
(SOLUTION (selon mon problème)): Vous avez peut-être renommé un fichier pour lequel xcode ne pouvait pas le charger et vous avez posé un problème . Par exemple: comme mentionné ci-dessus, le cas de la modification de "Fichier exécutable "nom
Zone de problème possible: Peut-être les derniers fichiers sur lesquels vous travailliez.
J'ai eu des problèmes similaires. Apparemment, j'ai inclus Info.plist depuis un dossier de projet externe. Cela conduit à la même erreur, affichée après chaque construction (sauf après que je l'ai exécutée après le nettoyage du projet).
Pour résoudre ce problème, je devais simplement inclure Info.plist à partir du dossier du projet.
J'utilise Xcode 6 GM. J'ai rencontré le même problème. Ce que j’ai fait est d’aller dans Paramètres de construction -> Options de construction (vous pouvez rechercher "compilateur"), , Puis changé l’option du "Compilateur pour C/C++/Objective-C" en Compilateur par défaut.
Le message d'erreur est générique et ne vous dit pas réellement ce que cela signifie.
Pour moi, je devais restaurer les précédentes versions de github qui donnaient:
armv7 armv7s arm64
à l'architecture.
Mon application fonctionnait correctement sous XCode 9.4, mais lorsque j'ai ouvert mon projet sous XCode 10, je rencontrais ce problème. Pour moi, le problème était le paramètre de construction. J'ai trouvé la réponse dans cette page https://forums.developer.Apple.com/thread/112141 .
En bref, sélectionnez Fichier> Paramètres de l’espace de travail…> Construire le système et remplacez-le par «Système de construction hérité».
J'ai changé de nom pour un nouveau nom, puis j'ai renvoyé l'ancien nom à mon projet et cela m'a aidé.
J'ai eu ce problème dans Xcode 10.1 après avoir ajouté des fichiers Objective C à mon projet Swift. Vous avez obtenu ce travail en suivant les étapes ci-dessous,
J'ai pu restaurer mon projet à partir d'une sauvegarde pré-xcode 6.1,
Une fois que j’ai ouvert mon espace de travail à partir d’un répertoire différent, j’ai été en mesure d’exécuter ma cible sans cette erreur .
J'avais ce problème lorsque ma classe appdelegate n'était pas liée à ma cible principale, mais à un cadre statique distinct. Le lien direct avec l'application cible a résolu le problème.
J'ai corrigé cela en effaçant mes données dérivées des préférences de xcode
J'ai corrigé cela moi-même en basculant entre les architectures "arm32" et "arm64". Depuis les "Paramètres de construction", j'ai modifié "Architectures" et "Architectures valides" de "arm32" à "arm64" et cela a fonctionné. Après avoir modifié un certain nombre d'autres paramètres, basculer entre arm32 et arm64 ne fait plus aucune différence. Je suis donc sceptique quant à la cause de la route.
Auparavant, j'ai essayé toutes les autres suggestions ici:
Vérifier les autorisations de lecture et d'écriture du dossier de projet (clic droit pour le dossier de projet dans le Finder> Lire les informations)
J'ai eu le même problème avec Xcode 10 & react-native. Toutes les solutions ci-dessus ne m'ont pas aidé.
Ma solution: Créer un nouveau projet avec le même nom. Et changez les fichiers de projet et d’espace de travail avec ceux du projet dupliqué . Et ça marche !!! (après quelques petits problèmes de construction avec le chemin, etc.)
Ma solution était:
Entrez ceci dans votre terminal:
Supprimer le dossier approprié
Compiler à nouveau et cela devrait fonctionner
Aucune des réponses fournies n'a fonctionné pour moi. Dans mon cas, j'ai finalement résolu le problème en mettant à jour les architectures cibles dans Paramètres de construction/Architectures/Architectures valides sur $ (ARCHS_STANDARD), car arm64 était manquant. Cela n'empêchait pas la construction du projet, bien qu'un avertissement ait été émis recommandant de mettre à jour les architectures valides, mais que l'erreur "l'application ne pouvait pas être ouverte" était affichée au moment de l'exécution.
Je suppose que cette erreur est plutôt générique et qu'elle n'est pas toujours liée à un problème d'autorisation, mais qu'elle peut s'afficher lorsque le package d'application généré n'est pas valide.
Veuillez également vérifier si vous avez ajouté une bibliothèque tierce avec un plist. Il arrive parfois qu'une bibliothèque tierce ait le plist info à l'origine du problème.
Ce message apparaîtra également si vous utilisez des fichiers .m dans votre projet qui ne sont pas ajoutés dans la phase de construction "compile source"
Pour moi, l'erreur était dans le fichier info.plist
, champ Bundle identifier
. En quelque sorte, il a été modifié pour
com.myCompany.${PRODUCT_NAME:rfc1034identifier}
de
com.myCompany.${PRODUCT_NAME}
De mon côté, ce qui a déclenché cette erreur, c’est que j’avais, à la racine de mon dossier de ressources, un dossier du même nom que mon fichier exécutable final.
Ainsi, lors du lancement de l'exécutable, je pense que Xcode a trouvé le dossier et a eu des problèmes pour l'exécuter! ;-)
Je voudrais aller dans le dossier où sont vos documents Xcode et appuyez sur commande + I pour obtenir des informations. En bas, appuyez sur le verrou pour déverrouiller le dossier afin de modifier les autorisations. Si les autorisations vous conviennent, cochez la case qui vous permet d’appliquer aux dossiers fermés et laissez-le faire. Je n'ai pas vu cela personnellement et je ne suis pas sûr que ce soit ce que vous disiez dans votre message lorsque vous modifiez les autorisations de génération.
J'ai mis à jour mes dosettes de cacao et ajouté de nouvelles architectures prises en charge dans les paramètres de construction, ce qui a été corrigé.
Je suis venu à cette question à la fois sur simulateur et appareil.
Et il y a un phénomène délicat. Si je copie le projet dans un nouvel emplacement, il y a des chances que ce problème soit réglé lors de ma première exécution. Mais après avoir nettoyé et exécuté, ce problème survient.
J'ai essayé presque toute la solution à partir des réponses à cette question, mais moi non plus.
Avec l'aide du système de contrôle de version git, je peux consulter la version précédente du code et voir quelles modifications ont provoqué ce problème.
Dans mon projet, la HEAD version} _ est réalisable, et ma dernière modification umcommitted va entraîner ce problème.
J'ai donc extrait chaque fichier de la version exploitable de mon code pour localiser le problème. Lorsque je récupère le coin.xcodeproj/project.pbxproj
(la pièce est le nom de mon application), ce problème a disparu.
Solution: vérifie simplement le coin.xcodeproj/project.pbxproj
utilisable, dans mon cas, la version HEAD est correcte.
git checkout HEAD coin.xcodeproj/project.pbxproj
Pour en faire un résumé:
Compiler for C/C++/Objective-C
au compilateur par défaut.$(EXECUTABLE_NAME)
ou défini directement sur le nom de votre application.Xcode->preference->locations->Derived data
, puis supprimez-le avec rm -r /Users/roofe/Library/Developer/Xcode/DerivedData
J'ai eu le problème que l'AppDelegate était manquant.
Créer un minimum a résolu le problème:
import UIKit
@UIApplicationMain
final class AppDelegate: UIResponder,UIApplicationDelegate {
}