Domanda

Sto controllando la raggiungibilità di rete in applicationDidFinishLaunching:

[self performSelectorInBackground:@selector(performReachabilityCheck) withObject:nil];

thread in background

-(void)performReachabilityCheck{
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
        internetReach = [[Reachability reachabilityForInternetConnection] retain];
        [internetReach startNotifer];
        [self updateInterfaceWithReachability: internetReach];
    [pool release]; pool = nil;
}

Non sono sicuro che il motivo per cui la mia app non riesce a lancio in tempo?

È stato utile?

Soluzione

È [self updateInterfaceWithReachability: internetReach]; aggiornare correttamente l'interfaccia utente nel thread principale? Se no, che potrebbe essere un problema.

In caso contrario, vorrei suggerire di fare in modo che il vostro applicationDidFinishLaunching: sia correttamente tornando rapidamente come previsto.

Un'altra cosa da provare è quello di passare al debugger come l'applicazione sta sparando su ma prima che non è riuscita a lancio. Controllare il backtrace e assicurarsi che il ciclo degli eventi principale è in uno stato sensibile (come suona come non lo è).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top