So che questa domanda sembrerà essere un inganno di molti altri, tuttavia, non credo che il caso semplice sia ben spiegato qui. Proveniente da un background Android e BlackBerry, le richieste HTTPUrlConnection
falliscono istantaneamente se non è disponibile alcuna connessione. Questo sembra un comportamento completamente sano, e sono stato sorpreso di scoprire che NSURLConnection
in iOS non lo ha emulato.
Comprendo che Apple (e altri che l'hanno esteso) forniscono una Reachability
classe per aiutare a determinare lo stato della rete. Sono stato felice di vederlo per primo e mi aspettavo di vedere qualcosa del genere bool isNetworkAvailable()
, ma invece con mia sorpresa ho trovato un sistema complesso che richiedeva registrazioni e richiamate delle notifiche e un sacco di dettagli apparentemente non necessari. Deve esserci un modo migliore.
La mia app gestisce già correttamente gli errori di connessione, inclusa la connettività. L'utente viene avvisato dell'errore e l'app procede.
Quindi i miei requisiti sono semplici: singola funzione sincrona che posso chiamare prima di tutte le richieste HTTP per determinare se dovrei preoccuparmi di inviare effettivamente la richiesta o meno. Idealmente non richiede alcuna configurazione e restituisce solo un valore booleano.
Questo non è davvero possibile su iOS?