L'Application n'a pas pu Lancer dans le Temps
Comment puis-je diagnostiquer cette erreur?
Application Specific Information:
MyApp failed to launch in time
Elapsed total CPU time (seconds): 4913.443 (user 3868.270, system 1045.173), 56% CPU
Elapsed application CPU time (seconds): 0.010, 0% CPU
Backtrace not available
Unknown thread crashed with unknown flavor: 5, state_count: 1
Binary Images:
0x2fe00000 - 0x2fe26fff dyld armv7 <a11905c8ef7906bf4b8910fc551f9dbb> /usr/lib/dyld
Voici mon didFinishLaunching
méthode:
#pragma mark -
#pragma mark Application lifecycle
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
if(getenv("NSZombieEnabled") || getenv("NSAutoreleaseFreedObjectCheckEnabled"))
{
NSLog(@"NSZombieEnabled/NSAutoreleaseFreedObjectCheckEnabled enabled!");
}
//Override point for customization after application launch.
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachabilityChanged:) name: kReachabilityChangedNotification object: nil];
//Check for connectivity
internetReach = [[Reachability reachabilityForInternetConnection] retain];
[internetReach startNotifer];
[self updateInterfaceWithReachability: internetReach];
[window addSubview:navigationController.view];
[window makeKeyAndVisible];
return YES;
}
Plus d'une heure de temps d'installation? Ah la vache!
Je ne sais pas pourquoi c'est le cas? App certainement ne pas prendre 1 heure pour l'installation! Il fonctionne assez rapide en fait, ce problème est relatif.
Je ne sais pas pourquoi c'est le cas? App certainement ne pas prendre 1 heure pour l'installation! Il fonctionne assez rapide en fait, ce problème est relatif.
OriginalL'auteur Sheehan Alam | 2010-10-11
Vous devez vous connecter pour publier un commentaire.
Vous êtes probablement faire beaucoup de travail d'installation dans votre AppDelegate de application:didFinishLaunching méthode.
Vous devriez assurez-vous que cette fonction se termine dès que possible. Tout d'installation-un travail qui prend du temps (accès au réseau, par exemple) doit être fait de manière asynchrone dans votre application. Pendant ce temps, vous pouvez afficher un compteur pour indiquer à l'utilisateur que l'application est en cours de chargement.
Vous ne devriez pas le faire dans didFinishLaunching. Une accessibilité vérification peut prendre un temps très long
C'est là où Apple mettent dans leur code d'exemple. Où dois-je faire une accessibilité vérifier?
OriginalL'auteur Philippe Leybaert
Afin d'ajouter de l'information à Philippe Leybaert réponse.
Si la demande de prendre beaucoup de temps pour démarrer le thread principal va être de tuer pour que l'application crash.
Un moyen de tester cette délivrance avant de le soumettre pour se déployer à testflight ou avec adhoc et de l'installer sur le périphérique le plus lent que vous souhaitez soutenir.
merci pour l'information. Il a du sens que si le testeur utiliser un rapide iPhon. Il ne va pas voir le bug et de valider votre application.
Lors de l'utilisation de l'iPhone connecté à Xcode ne tombent pas en panne, vous pouvez appuyez simplement sur stop dans Xcode, puis ouvrez l'application sur votre iPhone à nouveau manuellement. Il sera en mesure de crash. Cela permet d'économiser les tracas d'aller à travers Ad Hoc ou TestFlight de distribution.
OriginalL'auteur Martin Magakian
Juste essayer de diviser votre demande:didFinishLaunchingWithOptions: le code de la méthode aux différents appels de fonction et de faire ces appels en arrière-plan en utilisant les threads des autres, puis principal et assurez-vous que l'application:didFinishLaunchingWithOptions: méthode retourne dès que possible
vous pouvez utiliser
J'ai résolu le problème en utilisant ce code !
OriginalL'auteur Ankit Vyas