无法使用Reachability reachabilityForInternetConnection检测Internet连接

Aqu*_*eel 7 connection objective-c reachability ios

我有个问题.我正在使用可达性的reachabilityForInternetConnection方法来检测互联网可用性,但我没有获得连接状态而不是互联网状态.我的意思是,如果我打开我的Wifi连接,该方法给了我正确的指示,我没有连接但是如果wifi打开并且互联网连接不起作用,它似乎不起作用.任何的想法?

最好的祝福

MrT*_*rTJ 3

可达性只能用于检测 iPhone 是否连接到互联网网关。网关后面是什么,它不会告诉你。如果 LAN 可以访问但无法访问 Internet,该怎么办?iPhone 如何猜测它所看到的(局域网)不是整个互联网?

您应该向真实的站点发出一些真实的请求。如果失败,则表明连接互联网存在问题,通过 Reachability 的结果,您甚至可以了解问题出在哪里。最简单的方法是使用 NSUrlRequest 发出请求,例如向http://www.google.com发出请求。(如果谷歌死了,你可能会认为那里有比你的应用程序的连接更大的问题:)