2010-01-13 6 views
2

Comment pouvez-vous tester un échec de NSURLConnection?Échec du test NSURLConnection

En outre, comment pouvez-vous dire si elle a échoué en raison du mode avion ou de la désactivation du WiFi? Dans mes tests, pendant que l'alerte apparaît et indique à l'utilisateur qu'il doit activer le WiFi, s'il l'ignore, mon application se trouve juste là et tourne en attente d'une réponse.

Répondre

4

Si le délégué de votre connexion est soi-même, vous pouvez quelque chose comme ceci:

self.myConnection = [[[NSURLConnection alloc] initWithRequest:urlRequest delegate:self] autorelease]; 

- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error { 
    if ([error code] == kCFURLErrorNotConnectedToInternet) 
    { 
     // if we can identify the error, we can present a more precise message to the user. 
     NSDictionary *userInfoDict = [NSDictionary dictionaryWithObject:@"No Connection Error" 
                  forKey:NSLocalizedDescriptionKey]; 
     NSError *noConnectionError = [NSError errorWithDomain:NSCocoaErrorDomain 
                 code:kCFURLErrorNotConnectedToInternet 
                userInfo:userInfoDict]; 
     [self handleError:noConnectionError]; 
    } 
    else 
    { 
     // otherwise handle the error generically 
     [self handleError:error]; 
    } 
} 
+0

ici ce qui est handleError –

+0

Il est le nom d'exemple d'une méthode que vous pouvez créer pour gérer les erreurs. –

Questions connexes