iphone - 我如何检查我是否连接到无线网络

问题描述:

我看过,看到苹果网站的Reachablility例子,但仍然不确定iPhone是否连接到无线网络/或电脑(ipaddress)。我对这个例子的理解是,你给它一个地址,它会检查它是如何通过wifi,WWAN或根本无法访问的。iphone - 我如何检查我是否连接到无线网络

任何人都可以对此有所了解吗?我新的iPhone编程:\

我想要的是检查iPhone是否通过WiFi连接到一个特定的ipaddress在那个时候,就像点击一个按钮和一个UIAlertView显示“不通过WiFi连接到”INSERT当它未连接时,IPADDRESS HERE“”。我有道理吗?大声笑。

+0

一般来说,当你正在做的事情好奇,它有助于国家*为什么*您想要做这样的事情。 – 2010-07-19 18:48:02

IP地址仅用于通过Wi-Fi或WWAN测试连接到Internet上的另一台计算机。所有Reachability框架都告诉您,您的设备是通过Wi-Fi网络,通过WWAN(通过手机连接)连接到TCP/IP网络,还是根本不连接。它不会告诉您您的手机是否通过底座连接器电缆连接到Mac或PC。

+0

好酷。所以如果我想检查iPhone是否有WiFi连接到特定地址,我应该在Reachablitity示例中注意哪些方法? – Kenneth 2010-07-19 07:14:56

+0

查看'+ reachabilityForLocalWiFi'等等。您可以在Reachability.h头文件中找到它:http://developer.apple.com/iphone/library/samplecode/Reachability/Listings/Classes_Reachability_h.html#//apple_ref/doc/uid/DTS40007324-Classes_Reachability_h --DontLinkElementID_5 – 2010-07-19 07:20:08

+0

好酷,我会试试看。 – Kenneth 2010-07-19 07:20:52

可达样品奇怪的是,看看这个

-(BOOL)hasWifiConnectivity{ 
    SCNetworkReachabilityRef reachabilityRef = SCNetworkReachabilityCreateWithName(NULL,"apple.com"); 
    SCNetworkReachabilityFlags flags; 
    if (SCNetworkReachabilityGetFlags(reachabilityRef,&flags)) { 
     CFRelease(reachabilityRef);  
     if (flags & kSCNetworkReachabilityFlagsReachable) { 
      if (flags & kSCNetworkReachabilityFlagsIsWWAN) {  
       //not wifi 
       return NO; 
      }else { 
       //wifi 
       return YES; 
      } 
     } 
    } 
    return NO; 
}