如何检查移动包数据是不是可用的互联网..?

Posted

技术标签:

【中文标题】如何检查移动包数据是不是可用的互联网..?【英文标题】:How to check internet available to mobile packdata or not..?如何检查移动包数据是否可用的互联网..? 【发布时间】:2014-06-05 08:33:55 【问题描述】:

我们的应用支持离线和在线

所以每一步我们都需要检查网络是否可用。

当我们使用Reachability 类时,wi-fi off/on 检查是否正确。

在另一个我们也使用SimplePing 它也可以在使用 ping 到主机的 Wi-fi 上正常工作。

我们也在检查 ICMP 套接字编程,但它只支持 wi-fi。

但是当我们使用移动数据包时,我们如何检查移动设备是否可以使用互联网。

【问题讨论】:

【参考方案1】:
NSURL *scriptUrl = [NSURL URLWithString:@"http://google.co.in/"];
NSData *data = [NSData dataWithContentsOfURL:scriptUrl]; 
if (data)
    NSLog(@"Device is connected to the internet"); 
else 
    NSLog(@"Device is not connected to the internet");

【讨论】:

我们也使用了此代码,但是当互联网无法连接网络时,响应需要更多时间,并且在应用程序中,我们多次要求在 2 秒内做出响应......所以我们不能使用这段代码...【参考方案2】:

这是OS 检测到自己或通过ISP 检测到的东西。您可以通过WiFiCellularData 或其他媒体查看互联网是否可用。

如果用户使用了数据,互联网访问将自动断开。

您无法通过编写代码来检查。

【讨论】:

以上是关于如何检查移动包数据是不是可用的互联网..?的主要内容,如果未能解决你的问题,请参考以下文章

即使设备连接到 Wifi 或移动数据,也要检查互联网可用性 [重复]

如何在android中检查当前的互联网连接是不是可用

检查 swift 中是不是有可用的互联网连接 [重复]

Python 检查互联网广播流是不是可用/直播的方法

检查是不是连接到 WiFi(即使没有互联网)或移动数据

检查 Firebase 服务是不是可用