Chcę napisać kod do obsługi wyjątków, gdy połączenie HTTP nie powiedzie się. Używam następujących kodów:Jak wyświetlić alert, gdy połączenie HTTP nie powiedzie się na telefonie iPhone?
-(void) connection:(NSURLConnection *)connection
didFailWithError: (NSError *)error {
UIAlertView *errorAlert = [[UIAlertView alloc]
initWithTitle: [error localizedDescription]
message: [error localizedFailureReason]
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[errorAlert show];
[errorAlert release];
[activityIndicator stopAnimating];
NSLog (@"Connection Failed with Error");
}
Ale program po prostu zawiesza się, gdy połączenie się nie udaje. Jak pozwolić, aby alert pojawił się bez awarii programu?
Czy to działa w głównym wątku lub wątku tła? Manipulowanie obiektami interfejsu użytkownika * w wątkach w tle zwykle nie działa. Poza tym, w której linii odbywa się awaria? Użyj debuggera lub przesuń linię NSLog, aby się dowiedzieć. –