Raggiungibilità (sia il codice di esempio di Apple, sia il codice simile di altre persone, e la sottostante SCNetworkReachability ti dirà che non c'è l'accesso a Internet, o che avrai accesso a Internet tramite WiFi, o che avrai accesso a Internet attraverso dati mobili.
Se si dispone di connessione Wi-Fi e dati mobili disponibili, vi dirà "Wi-Fi". non c'è modo di scoprire che i dati mobile è disponibile quando si dispone di connessione Wi-Fi. (si può facilmente scoprire che mobili i dati sono disponibili quando non è disponibile la connessione Wi-Fi. Non è possibile scoprire se la modalità Aereo è attivata (che sarebbe diversa da WiFi e dati mobili disattivati).
WiFi disponibile non garantisce che il download utilizzi dati WiFi e non mobili. Potresti avviare un download a casa, lasciare un minuto dopo, il WiFi scompare e iOS continuerà felicemente a scaricare tramite 3G. È possibile impostare un flag nella chiamata di download per disabilitare 3G. Il codice di errore sarà -1009 = Nessun accesso a Internet, nessuna menzione del fatto che il 3G sarebbe stato disponibile.
Usando CTTelephonyNetworkInfo è possibile scoprire che siete su un dispositivo che potrebbe hanno dati mobili (non un iPod Touch o iPad senza dati mobili, e c'è una SIM nel dispositivo).
Questo è un po 'vecchio. C'è una versione più recente di Reachability di Tony Miller, che ho usato [qui] (https://github.com/tonymillion/Reachability) –