68 votes

Simulateur d'iPhone : SpringBoard n'a pas réussi à lancer l'application avec une erreur : 7

La construction d'un projet iPhone donne lieu à :

Échec du lancement de l'application simulée : SpringBoard n'a pas réussi à lancer l'application avec une erreur : 7

Et l'application ne s'installe pas sur le simulateur. Qu'est-ce qui se passe ? Qu'est-ce que SpringBoard et qu'est-ce que l'erreur 7 ?

138voto

oacis Points 1381

J'ai eu exactement le même problème - j'ai réinitialisé le simulateur de l'iphone et j'ai quitté le simulateur (i.e. commande q) puis je l'ai relancé.

Travaillé.

10voto

La réponse à cette question est difficile à trouver, mais j'ai trouvé une solution. Le simulateur donne cette erreur s'il a des problèmes pour accéder aux fichiers dans ~/Library/Application Support/iPhone Simulator/. Il peut s'agir d'un problème de permissions, mais dans mon cas, le problème est encore plus subtil : mon répertoire personnel est monté en NFS, et cela semble être la source du problème.

La solution de base consiste à créer un répertoire local sur la machine, et à lier le répertoire du simulateur d'iPhone à ce répertoire local. Vous ne devriez pas avoir besoin de déplacer vos fichiers sources ou le répertoire du projet ; ce sont simplement les cibles du simulateur qui posent problème.

Voici une série d'étapes pour accomplir la solution de contournement, à taper dans le terminal (1-3 sur chaque machine sur laquelle vous développerez, 4-6 une fois dans votre répertoire personnel monté sur NFS) :

  1. sudo mkdir /usr/local/iphone-dirs
  2. sudo chmod 777 /usr/local/iphone-dirs
  3. mkdir /usr/local/iphone-dirs/my-dir
  4. cd "~/Library/Application Support/"
  5. rm -rf "iPhone Simulator/"
  6. ln -s /usr/local/iphone-dirs/my-dir/ "iPhone Simulator"

Il existe évidemment de nombreuses variations sur ce thème ; je soupçonne que l'utilisation d'un répertoire hébergé localement dans /tmp conviendrait (et ne nécessiterait pas de droits d'administrateur, mais devrait être refait à chaque redémarrage du système). Comme indiqué, les étapes 1 et 2 sont bonnes si vous avez plusieurs utilisateurs utilisant ces machines et que vous ne voulez pas qu'ils se heurtent les uns aux autres. Si vous avez votre propre machine personnelle mais que vous montez votre répertoire personnel en NFS, vous pouvez probablement passer directement à l'étape 3 (et la sudo). Assurez-vous simplement que le répertoire que vous créez à l'étape 3 est le répertoire vers lequel vous faites un lien symbolique à l'étape 6.

5voto

Ankur Points 3350

Il n'est pas nécessaire de supprimer le simulateur ou l'application

Il suffit de sélectionner le simulateur, d'appuyer sur commande + shift + h + h et supprimer l'application de l'arrière-plan (appui long sur l'icône de l'application) puis relancez votre application.

3voto

Le menu XCode->Clear cache a résolu mon problème.

3voto

Bitfool Points 56

J'ai commencé avec un nouveau projet dans Xcode et j'ai reçu le message d'erreur 3, mais sinon c'est la même chose. Nouveau projet - donc pas de problèmes avec du code cassé que j'ai ajouté ou des erreurs de nom ou autre chose. Mais l'application se construit mais ne fonctionne pas dans le simulateur avec le code d'erreur Springboard -3. J'ai déjà vu cela plusieurs fois, et la méthode de base consistant à tuer l'application dans le simulateur, à la nettoyer et à l'exécuter fonctionnait, mais pas cette fois.

Il s'avère que mon vieil iMac 2007 a à peine assez de RAM et d'espace disque libre. J'utilise Mavericks, et j'ai caché tout sauf Xcode et le simulateur, puis j'ai lancé un utilitaire de nettoyage de la mémoire pour libérer chaque morceau de RAM disponible (j'ai retrouvé environ 1 Go de libre), et l'application fonctionne dans le simulateur sans problème. Plus d'erreur de Springboard.

Je n'avais pas encore vu "trop peu de RAM" comme raison de cette erreur, donc cela peut être utile pour quelqu'un d'autre.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X