Lancement du simulateur iOS à partir de Xcode et obtention d'un écran noir, suivi de Xcode suspendu et incapable d'arrêter les tâches

j'ai de la difficulté à exécuter mon application iPhone de base (tout en passant par les conférences Stanford iTunes CS193p) dans le simulateur iOS.

j'ai cherché pendant un certain temps (à la fois Google et ainsi de suite), mais incapable de trouver une solution jusqu'à présent. Il y a beaucoup de bogues similaires, mais les solutions ne semblent pas corriger cela.

dans Xcode je clique sur"Exécuter". Il compile et construit avec succès, lance iOS simulateur mais il n'arrive jamais à charger l'application. Seul le barre d'état en haut. Avec un écran noir.

Je n'ai écrit que du code de base (en suivant les cours) et je n'arrive pas à surmonter ce problème.

pour embrouiller les choses plus, j'ai écrit un web wrapper (UIWebView) avant ces conférences et cela fonctionne très bien. Mais il n'y a guère de différence dans le code. Toutes les nouvelles applications que je crée à partir de zéro échouent avec le même problème d'écran noir.

si j'appuie sur le bouton simulateur et lancer l'application, il affichera. Mais Xcode ne semble pas savoir ce qui se passe.

C'est comme si Xcode avait perdu la possibilité de parler au simulateur iOS et supposait qu'il fonctionne (même si je quitte le simulateur iOS). J'essaie de quitter Xcode, et il me demande d'arrêter les tâches. Puis il se bloque. Donc je dois forcer le redémarrage pour sortir de Xcode.

j'utilise: OSX 10.8.2 Xcode 4.5.2 simulateur iOS 6.0

CalculatorAppDelegate.h

#import <UIKit/UIKit.h>

@interface CalculatorAppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;

@end

CalculatorAppDelegate.m

#import "CalculatorAppDelegate.h"

@implementation CalculatorAppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions (NSDictionary *)launchOptions
{
    // Override point for customization after application launch.
    return YES;
}

- (void)applicationWillResignActive:(UIApplication *)application
{
// Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
// Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
}

- (void)applicationDidEnterBackground:(UIApplication *)application
{
// Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 
// If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
}

- (void)applicationWillEnterForeground:(UIApplication *)application
{
// Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background.
}

- (void)applicationDidBecomeActive:(UIApplication *)application
{
// Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
}

- (void)applicationWillTerminate:(UIApplication *)application
{
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}

@end

CalculatorViewController.h

#import <UIKit/UIKit.h>

@interface CalculatorViewController : UIViewController
@property (weak, nonatomic) IBOutlet UILabel *display;

@end

CalculatorViewController.m

#import "CalculatorViewController.h"

@implementation CalculatorViewController

@synthesize display = _display;

- (IBAction)digitPressed:(UIButton *)sender
{
    NSString *digit = [sender currentTitle];
NSLog(@"digit pressed = %@", digit);
}

@end
64
demandé sur Cœur 2013-02-03 05:09:00

19 réponses

étonnamment, ce qui a fonctionné pour moi allait au menu iOS simulateur, et en appuyant sur "Réinitialiser le contenu et les paramètres".

71
répondu doug 2013-07-12 15:37:53

avant de réinitialiser l'émulateur, allez d'abord à vos projets " Project navigator " et sous l'écran general -> renseignements sur le dépôt vérifiez à l'écran que la propriété main interface est correctement configurée!

enter image description here

36
répondu Chris 2014-01-22 09:16:31

je suis un débutant du développement de l'application iOS. Je m'entraînais à développer des applications iOS dès le début et tout en exécutant une application Hello World très basique, j'ai également fait face au même problème que seul un écran blanc noir apparaît après la construction et l'exécution de l'application dans le simulateur iOS. D'une façon ou d'une autre, alors que je luttais pour trouver une solution au problème, j'ai accidentellement cliqué sur Window-->Scale-->50% dans iOS simulator et cela a résolu mon problème. Je pourrais alors voir la page d'Accueil de mon application et en cliquant sur l'app icon j'ai réussi à lancer mon application avec succès. App versions: Xcode 5.1 simulateur iOS: 7.1 OSX: 10.9.3

8
répondu asdf 2014-07-21 09:42:26

une autre Solution est que si vous construisez UI programatically dans le projet de L'Objectif C, alors vous pourriez avoir besoin d'ajouter du code pour gonfler la vue, donc vous aurez besoin d'ajouter ces 3 lignes pour faire l'interface de la fenêtre interagit avec le code (les 2 externes interagissent en fait avec le code et l'autre va changer l'écran en blanc de sorte que vous saurez que cela fonctionne).

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

self.window = [[UIWindow alloc] initWithFrame: [[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.

...

self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];


return YES;
}
5
répondu sivi 2016-11-17 10:40:30

cela pourrait être dû au fait que les renseignements sur le déploiement ne sont pas définis correctement. (c'est à dire si votre scénario n'est pas défini comme l'interface principale)

4
répondu Eric Hou 2013-11-22 14:17:58

Si vous devez perdre votre point d'entrée dans votre Storyboard ou souhaitez tout simplement changer le point d'entrée, vous pouvez le spécifier dans Interface Builder. Pour définir un nouveau point d'entrée, vous devez d'abord décider quel ViewController agira comme nouveau point d'entrée et dans L'attribut Inspector, sélectionnez la case à cocher "scène initiale".

vous pouvez essayer: http://www.scott-sherwood.com/ios-5-specifying-the-entry-point-of-your-storyboard /

3
répondu user2101881 2014-11-12 04:57:38

Solution 1 : Vous pouvez Quit simulator et essayez à nouveau.

Solution 2 (recommandé): aller à iOS Simulator -> Reset Content and Settings...

Step 1

ceci fera apparaître une alerte indiquant 'Are you sure you want to reset the iOS Simulator content and settings?'

Step 2

sélectionner Reset si vous le souhaitez ou autrement Don't Reset bouton.

notez qu'une fois que vous aurez réinitialisé le contenu du simulateur, toutes les applications installées sur le simulateur seront supprimées et réinitialisées aux paramètres initiaux.

3
répondu Jayprakash Dubey 2015-09-23 06:25:44

redémarrer votre ordinateur devrait être tout ce que vous avez à faire.

1
répondu Lolo 2013-02-12 21:09:25

j'ai réussi à trouver la solution. Il a été trouvé avec la permission de ce billet de blog:

http://vandadnp.wordpress.com/2012/03/18/xcode-4-3-1-cannot-attach-to-ios-simulator /

La solution consiste à appuyer sur cmd+maj+, (commande, la touche maj, puis une virgule ",").. cela charge certaines options pour la libération ou le débogage.

changez le débogueur de LLDB en GDB. Cela résout le problème.

0
répondu Matt 2013-02-07 20:48:36

pour être sûr que c'est un problème de simulateur, voyez si vous pouvez vous connecter au simulateur avec un tout nouveau projet sans changer de code. Essayez le modèle de barre d'onglets.

si vous pensez que c'est un problème de simulateur, appuyez sur le menu iOS simulateur. Sélectionnez " Réinitialiser le contenu et les paramètres...". Appuyez Sur "Réinitialiser."

Je ne vois pas votre XIB et ce que @properties vous avez connecté dans Interface Builder, mais il se peut aussi que vous ne chargiez pas votre fenêtre, ou que votre fenêtre ne charge pas votre contrôleur de vue.

0
répondu Aaron Brager 2013-02-07 20:56:13

j'ai eu le même problème avec Xcode... écran noir sur le lancement des applications, aucun Débogage et clic ne bloquerait Xcode.

j'ai enfin trouvé le problème... en suivant la piste que le simulateur ne pouvait pas se connecter à Xcode, j'ai regardé mon fichier etc/hosts et j'ai découvert qu'il y a des mois pour résoudre un problème différent, j'avais édité le fichier host pour mapper localhost vers mon IP fixe au lieu de la valeur par défaut... ma valeur:

10.0.1.17 localhost

cela devrait fonctionner puisque c'est mon IP, mais en le changeant de nouveau à L'IP fixée par défaut Xcode...

127.0.0.1 localhost

Espérons que cette aide.

0
répondu Chad Celsius 2013-12-23 15:54:02

je faisais ce que doug suggère ("Réinitialiser le contenu et les paramètres") qui fonctionne mais prend beaucoup de temps et c'est vraiment ennuyeux... jusqu'à récemment j'ai trouvé tout à fait accidentel une autre solution qui est beaucoup plus rapide et semble fonctionner aussi jusqu'à présent! Il suffit de cliquer cmd+L sur votre simulateur ou allez dans le menu du simulateur "Hardware - > Lock", qui verrouille l'écran, lorsque vous déverrouillez l'écran l'application fonctionne comme si rien ne s'était passé:)

0
répondu Dimi Dim 2014-02-13 16:40:41

ce qui s'est passé avec moi était le Type de classe N'était pas UIViewController pour le script attaché à mon contrôleur de vue. C'était pour une UITabController..... J'avais créé par erreur rapidement le mauvais type de classe.... Alors assurez-vous que la classe si le type correct.. Espérons que cela aide quelqu'un. J'étais pressé et fait cette erreur.

0
répondu CakeGamesStudios 2016-03-30 04:27:27

réinitialisez simplement votre simulateur en cliquant sur simulateur-> réinitialisez le contenu et les paramètres..

0
répondu Pravin S. 2016-12-08 10:20:07

vous pouvez aussi aller sur Hardware - > reboot, puis Hardware - > Home, et cliquer sur votre application

0
répondu coder666 2017-10-08 01:58:35

s'il Vous Plaît assurez-vous que vous avez fait cela,si vous obtenez l'écran noir après avoir copié le storyboard d'un autre projet enter image description here

0
répondu Abhinav Jha 2018-01-28 03:23:09

assurez - vous que le contrôleur de vue Initial est réglé

0
répondu davut dev 2018-06-06 22:03:44

j'ai résolu ce problème seulement après avoir retiré les simulateurs avec les versions iOS préalables.

0
répondu Eran Talmor 2018-06-26 08:17:29

j'avais des écrans de simulateur noir seulement pour iOS 11 sims. Après avoir essayé de réinitialiser, redémarrer, réinstaller et créer un nouveau compte utilisateur sur ma machine, j'ai trouvé cette solution:

defaults write com.apple.CoreSimulator.IndigoFramebufferServices FramebufferRendererHint 3

trouvé dans cette réponse ici: Xcode 9 iOS simulateur devenir écran noir après l'installation Xcode 10 bêta

0
répondu Apoc 2018-08-28 20:31:16