当 iPhone 连接到无线路由器,而该路由器未连接到互联网时?我需要显示一条错误消息说“检查你的互联网连接”我尝试了可达性示例代码。但没有运气,
http://developer.apple.com/library/ios/#samplecode/Reachability/Listings/ReadMe_txt.html
当我禁用手机中的 WIFI 时它工作正常,我尝试了 Checking For Internet Connectivity in Objective C 示例代码“isDataSourceAvailable”,即使 itz 不工作,任何人都可以帮我解决这个问题,真的很感激。
最佳答案
你可以这样做:
+ (BOOL) pingServer
{
NSURL *url = [NSURL URLWithString:@"http://some-url-that-has-to-work/"];
NSURLRequest *request = [NSMutableURLRequest requestWithURL:url];
NSHTTPURLResponse *response = nil;
[NSURLConnection sendSynchronousRequest:request
returningResponse:&response error:NULL];
return (response != nil);
}
这是一个同步请求,因此它会阻塞当前线程。您可以在后台线程中进行整个网络检查,这样阻塞就无所谓了,或者您可以异步发送请求。此外,您可能希望将 HTTP 方法设置为 HEAD,这样您就不会下载整个资源。
关于iphone - 如何检测真实的网络可用性?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3912586/