Ho fatto un po 'di ricerche e ho trovato la mia risposta nei documenti Apple.
La procedura consigliata è quella di tentare la connessione. Se c'è un problema con la connessione, ti dà un oggetto NSError che dovresti usare per testare la connettività.
Apple consiglia di utilizzare Raggiungibilità solo come metodo per diagnosticare gli errori e risolvere ulteriormente i problemi noti. Sembra che si dovrebbe usare solo la raggiungibilità per rilevare quando la rete torna online dopo un errore.
"tentare sempre di stabilire una connessione. Non tentare di indovinare se il servizio di rete è disponibile, e non memorizzare nella cache che la determinazione.
Se una connessione non riesce, utilizzare l'API SCNetworkReachability per aiutare a diagnosticare la causa del fallimento."
fonte: https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/WhyNetworkingIsHard/WhyNetworkingIsHard.html#//apple_ref/doc/uid/TP40010220-CH13-SW3
"Quando tutta l'operazione viene completata, l'oggetto NSURLSession
chiama il metodo del delegato URLSession:task:didCompleteWithError:
sia con un oggetto errore o nulla (se l'operazione completata con successo)
Se l'operazione non è riuscita,. la maggior parte delle app dovrebbe riprovare la richiesta fino a quando l'utente annulla il download o il server restituisce un errore che indica che la richiesta non avrà mai esito positivo, tuttavia la tua app non dovrebbe riprovare immediatamente, ma dovrebbe utilizzare API di raggiungibilità per determinare se il server è raggiungibile e dovrebbe fare una nuova richiesta solo quando riceve una notifica che la raggiungibilità è cambiata. "
fonte:
https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/URLLoadingSystem/NSURLSessionConcepts/NSURLSessionConcepts.html
yamski @ fa la mia risposta ti ha aiutato o bisogno di più aiuto –
@RohitKP, mi dispiace non ha aiutato, ma mi portano alla soluzione corretta. – yamski