Come posso correggere l’errore NSURLErrorDomain -999 nel sistema operativo iPhone 3.0

Sto cercando di aggiornare la mia app per iPhone per funzionare con OS 3.0. Ho un UIWebView che mostra una pagina fine. Ma quando faccio clic su un collegamento, si chiama my delegate per didFailLoadWithError e l’errore è che l’operazione non può essere completata. (Errore NSURLErrorDomain -999.) Ho verificato che questo funziona ancora con OS 2.2.1, quindi è qualcosa cambiato in 3.0.

Qualche idea?

Sono stato in grado di trovare la risposta qui .

Questo thread conteneva questa descrizione per questo errore: This error may occur if an another request is made before the previous request of WebView is completed...

Ho lavorato su questo ignorando questo errore e lasciando che la webview continuasse a caricarsi.

 if ([error code] != NSURLErrorCancelled) { //show error alert, etc. } 

NSURLErrorCancelled (-999)

“Restituito quando viene annullato un carico asincrono, un delegato della struttura del kit Web riceverà questo errore quando esegue un’operazione di annullamento su una risorsa di caricamento. Notare che un delegato NSURLConnection o NSURLDownload non riceverà questo errore se il download viene annullato.”

Per la mia situazione (e probabilmente la tua) questo può essere ignorato:

 if([error code] == NSURLErrorCancelled) return; // Ignore this error 

Le risposte DUE di cui sopra sono state CORRETTE> Effettuare un reso solo se la richiesta di caricamento causa la cancellazione.

Voglio anche sottolineare che, la gente NON dimentica di mettere un NSLog nel proprio metodo didFailLoadWithError , questo può evitare di perdere molto tempo individuando il problema!

Quindi ecco la soluzione finale con tutto quello che ho menzionato sopra:

 -(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error { NSLog(@"ERROR : %@",error); //Get informsd of the error FIRST if([error code] == NSURLErrorCancelled) return; }