【问题标题】:Check if device is connected to i-net检查设备是否连接到 i-net
【发布时间】:2011-12-14 10:54:02
【问题描述】:

需要检查手机是否联网。

我目前执行的检查如下:

NSString *connectionString = [[NSString alloc]initWithContentsOfURL:[NSURL URLWithString:@"http://www.google.com/ncr"] encoding:NSUTF8StringEncoding error:nil];

//If user isn't connected
if ([connectionString length] == 0){
    //Do this
} else {
    //Do that
}

此检查在 WIFI 网络上完美运行!但是一旦用户在 3G / EDGE 网络上,connectionString = null

如何改进这项检查,即使是在 3G 网络上?

谢谢

【问题讨论】:

标签: iphone objective-c xcode nsurlconnection 3g


【解决方案1】:

Apple 为此创建了一个很棒的类:Reachability

它可以告诉您您是连接到 WiFi 还是 WAN(3G 和 GRPS)。

【讨论】:

  • 我将 Reachability.h/.m 导入到我的项目中。
  • 我实现了 updatedInterfaceWithReachability 和reachabilityChanged。
  • 但是我可以在哪里以及如何检查用户是否连接到互联网,无论是通过 WIFI 还是 3G?
猜你喜欢
  • 1970-01-01
  • 2011-05-31
  • 1970-01-01
  • 2019-04-18
  • 1970-01-01
  • 2013-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多