"L'appareil iOS de destination de l'exécution n'est pas valide pour exécuter le schéma"


93

J'ai exécuté mon application sur un iPhone 5 / iOS 6, mais lorsque j'essaie de l'exécuter sur un iPhone 4S / iOS6, j'obtiens "Le périphérique iOS de destination d'exécution n'est pas valide pour exécuter le schéma NN. Le schéma ne contient aucun élément à construire qui peuvent être construites pour les architectures prises en charge par le dispositif de désignation d’exécution ».

J'ai regardé les publications précédentes à ce sujet, mais elles impliquent des problèmes avec la cible de déploiement. Dans mon cas, le SDK de base est défini sur 6.1 et la cible de déploiement sur 5.0.

L'iPhone 4 a la version iOS 6.0.1.

Réponses:


272

C'était un bogue dans XCode, j'ai fermé et rouvert Xcode et cela a commencé à fonctionner.

J'ai remarqué ce genre de chose plusieurs fois maintenant avec Xcode avec d'autres problèmes, c'est très frustrant que l'outil soit si douteux.


4
Et la séquence continue. Ce bogue est toujours disponible dans la version 9.4.1.
essayez d'attraper enfin le

1
Dans xcode 10.1 après le redémarrage de xcode, il arrive également, impossible d'exécuter l'application sur iPhone.
R. Mohan

Encore un problème dans 11.1
James Jackson

4
et en 11.2. 😬
Michael Schinis

Ce bogue existe dans Xcode 11.4.1. Quitter Xcode ne résout pas le problème. Cmon Apple
vikzilla


24

J'ai eu le même problème. Le problème que j'ai trouvé est que, par erreur, j'avais choisi l'iPad comme cible de déploiement en raison de laquelle XCode a montré que l'iPhone 5 est un appareil non valide. entrez la description de l'image ici. J'espère que ça aide. Ensuite, je viens de changer la cible en iPhone et cela a fonctionné.


de même, j'avais choisi un iPhone 7 Plus pour une application iPad, alors j'ai simplement basculé le sélecteur du simulateur sur iPad et l'avertissement disparaît.
Peter Brockmann

ne peut-on pas avoir une application universelle qui prend également en charge Watch?
Chris Allinson

16

C'est parfois une sorte de problème de mémoire. Fermez une application et réessayez.

Fermez également Xcode et rouvrez. A travaillé pour moi.

À votre santé.


16

L'iPhone de destination d'exécution n'est pas valide pour exécuter le schéma.

  • Quitter Xcode
  • Ouvrez Xcode
  • Projet propre
  • Lancer le projet

Ça va marcher


7
Un mot: redémarrer le Xcode résoudra le problème.
kit du

10

Redémarrez simplement Xcode et votre problème sera recherché automatiquement.


5

Dans mon cas, le problème manquait la valeur exécutable sélectionnée dans Scheme -> Profile -> Executable (e sélectionné dans le débogage de configuration de construction déroulante et exécutable le "application" .app).

entrez la description de l'image ici


Où trouver ça?
Vidya Sagar

1
Produit -> Schéma -> Modifier le schéma ou cliquez sur l'icône du haut qui affiche l'icône de l'application près de l'icône de lecture ...
Andrea Leganza

5

Quit and Reset Xcodepeut résoudre la plupart des problèmes. L'autre cause n'est Devicepas compatible avec l'iPhone, vous pouvez

Target-> sélectionnez le schéma -> General-> Deployment Info-> Device-> sélectionnez Universalou le périphérique actuel souhaité.

entrez la description de l'image ici


4

Une solution simple.

1) Forcer à quitter X-Code

2) Forcer à quitter iTunes

3) Reconnectez l'iPhone

4) Ouvrez X-Code


3

Accédez à la cible de développement de l'ensemble d'informations du projet comme 4.3 ou 5.1.1 et la même chose dans la cible également.


3

J'ai eu ce problème dans XCode 9.0.1.

Il semble que XCode n'actualise pas la liste des appareils connectés.

Vous remarquerez peut-être qu'après avoir déconnecté votre appareil, vous pouvez toujours le choisir comme cible. Donc XCode essaie peut-être de se connecter à un faux appareil.

Pour résoudre ce problème:

  1. Modifiez le schéma.
  2. Sélectionnez à nouveau l'exécutable du schéma.
    • cela semble forcer XCode à mettre à jour la liste des appareils connectés.

Si cela ne fonctionne pas, essayez de reconnecter votre appareil (câble) avant de faire cela.


Ou peut-être une autre combinaison de déconnexion de périphérique, de connexion de périphérique et de re-sélection de l'exécutable du schéma.

Par mesure désespérée, vous pouvez également essayer de changer le câble qui relie votre appareil mobile à votre ordinateur.

Mais idéalement ... Xcode devrait être corrigé.


: O ... mon héros !!! Pourquoi alors? Pourquoi Xcode est-il ce buggy, à chaque itération, empire presque toujours ... c'est tellement frustrant qu'ils ont une faible priorité pour leur Dx !!!
Chris Allinson

3

Allez simplement dans Appareils -> L'appareil prévu que vous vouliez exécuter (I Was iPhone6 ​​Simulator) -> Sélectionnez l'appareil (j'ai été sélectionné iPhone6) -> Clic droit-> Assurez-vous que l'option `` Afficher le menu de destination d'exécution '' est activée.

Pour moi, c'était activé. Je l'ai fait, cela a fonctionné.


2

J'ai rencontré ce problème dans XCode 9, mais j'ai réalisé plus tard que, pour certaines raisons, j'avais décoché la destination d'exécution dans la fenêtre "Périphériques et simulateurs"

entrez la description de l'image ici


1

Sélectionnez votre projet, sous Cibles, sélectionnez votre cible principale, puis dans l'onglet Paramètres de construction, il y a un champ qui dit «Architectures valides». Assurez-vous que «armv7» est également présent. Vous n'avez probablement que des armv7 pour le moment.


Merci d'avoir répondu, mais armv7 est actuellement déjà là avec armv7s.
Gruntcakes

essayez de supprimer armv7s et voyez si cela vous permet de l'exécuter
Pochi

1

J'utilise XCode 8.2.1 ayant le même problème.

Solution:

-> Aller aux appareils

-> Ajouter des simulateurs supplémentaires

-> Simulateur de clic droit que vous utilisez

-> Afficher dans le menu de destination d' exécution <-Activer cette option


0

Pour moi, Xcode n'a pas réussi à copier les symboles pour le périphérique connecté en raison d'un espace disque insuffisant. Vérifiez d'abord si vous avez des symboles appareil connecté sous /Users/$USERNAME/Library/Developer/Xcode/iOS\ DeviceSupport/.

Depuis que j'avais iOS 8.3 (12F70) installé sur mon appareil, le chemin pour moi était /Users/$USERNAME/Library/Developer/Xcode/iOS DeviceSupport/8.3 (12F70)/SymbolsLa taille de ce répertoire devrait être d'environ 2,5 Go. Lorsque j'ai eu ce problème, la taille était de 484 Ko.

Pour le réparer, je

  1. Libérez environ 3 Go d'espace disque. Vous pouvez supprimer les dossiers de tous les appareils non pris en charge que vous pourriez avoir sous / Users / $ USERNAME / Library / Developer / Xcode / iOS \ DeviceSupport /
  2. Appareil déconnecté de Xcode et Xcode fermé.
  3. Suppression du dossier dans le chemin ci-dessus (tout sous 8.3 (12F70).
  4. Démarrez Xcode et connectez l'appareil.
  5. Xcode devrait commencer à copier les symboles une fois terminé, la taille du dossier devrait être d'environ 2,5 Go

0

Cela m'est arrivé parce que j'ai changé de branche dans le contrôle de code source avec des schémas non partagés.

Mon xcuserdatadossier a été ignoré par git et contenait un schéma que j'ai oublié de partager. Cela signifiait que j'essayais d'utiliser un schéma qui provenait d'une branche de code complètement différente.

J'ai refait le schéma qui a résolu le problème et l'ai marqué comme partagé afin qu'il soit dans le xcshareddatadossier et archivé dans le contrôle de code source.


0

Pour mon cas, vérifiez la cible -> Paramètres de construction -> Recherchez "Mach-O Type" et vérifiez la valeur, elle doit être exécutable / Dynamic Library / Static Library. Pour les autres valeurs de type, la cible n'a PAS pu être créée et exécutée.


0

Ceci est similaire au commentaire de Kunal Gupta, mais j'ai eu cette erreur après avoir exécuté un projet Xcode sur un iPad réel (la cible de déploiement a été changée en iPad et je voulais l'exécuter sur mon simulateur iPhone). N'oubliez pas de modifier les informations de déploiement après avoir utilisé un appareil / simulateur réel, en particulier lors du passage de l'iPad à l'iPhone.


0

Swift 3 ou 4 Xcode 8 ou 9 Une chose que vous pouvez faire est de cliquer sur le fichier Projet pour ouvrir les paramètres généraux, les capacités, etc.

  1. Choisissez les paramètres de construction
  2. Rechercher Base SDK
  3. Assurez-vous que le débogage ET la version ont le même type de construction.

J'ai mis le débogage sur ios 11.0 et la version sur macOS 10.13 Ils doivent être les mêmes pour archiver


0

Dans mon cas,

J'ouvre mon iPhone, voici l'alerte apparaissant sur mon iPhone pour Trust and Don't Trust. Je clique sur Trust. Ça fonctionne bien.

entrez la description de l'image ici


Ok mais ça n'aide pas dans mon cas.
Ananta Prasad

0

Le passage à un autre port USB et le redémarrage de Xcode ont résolu le problème. J'ai rencontré ce problème sur un iMac exécutant Xcode 9.1 chaque fois que j'essayais de connecter un appareil iOS à un port USB spécifique. Si vos ports USB ont cessé de fonctionner, vérifiez ceci .

  • Ouvrez le menu Pomme> À propos de ce Mac> Plus d'infos> Rapport système> USB et vérifiez que le périphérique apparaît dans l'arborescence des périphériques USB. Si ce n'est pas le cas, essayez un autre câble USB.

entrez la description de l'image ici


0

Je remarque cela avec certaines combinaisons câble + appareil (probablement un mauvais contact), le redémarrage du XCode n'aidera que pour une ou deux courses, puis il frappera à nouveau. Changer de câble / appareil est la seule solution à long terme qui a fonctionné pour moi.


0

son bogue xcode , jusqu'à 10.0 beta 3 (10L201y)


veuillez envisager d'ajouter plus d'informations à votre réponse afin que d'autres personnes puissent comprendre la même chose.
Inder

0

Dans mon cas, ce problème a été résolu en changeant les architectures (Paramètres de construction -> Architectures) en architectures standard - $ (ARCHS_STANDARD)

Assurez-vous d'avoir arm64 armv7 armv7s sur les architectures valides.


0

Dans mon cas, aucune des réponses données n'a fonctionné pour moi.

J'essayais de configurer TravisCI sur mon projet et voici ce que j'ai fait:

Sélectionnez Target> Edit Scheme> Build

entrez la description de l'image ici

Cochez l'option "exécuter" dans la cible Tests et le problème a disparu, j'espère que cela aidera quelqu'un, j'ai passé 2 jours à essayer de résoudre ce problème.


0

Dans le cas d'iOS 13.x - Ce qui a fonctionné pour moi, c'est de dissocier ma montre de mon téléphone et de la réparer sur mon iPhone. Je ne voudrais pas simplement le dissocier via Bluetooth - j'ai répété tout le cycle comme si j'avais une nouvelle montre. Il a fallu 10 minutes pour tout faire. Lorsque j'ai de nouveau exécuté mon application, cela a fonctionné. À partir de là, assurez-vous que toutes vos cibles ont la même connexion pour l'identité.


0

D'autres solutions peuvent fonctionner pour d'autres scénarios mais, en cas d'utilisation de Xcode 11, je suis allé dans "Paramètres de construction" de ma cible de test et je suis passé à universel sous "Déploiement" -> "Famille d'appareils ciblés"

entrez la description de l'image ici

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.