如何检测iPhone上是否运行3G或Wifi?

时间:2011-04-08 00:59:46

标签: wifi detect 3g

一些代码行?有经验吗?

3 个答案:

答案 0 :(得分:5)

您可以使用Apple的Reachability代码来检索此信息:

示例:

Reachability *reach = [Reachability reachabilityForLocalWiFi];
[reach startNotifier];

NetworkStatus stat = [reach currentReachabilityStatus];

if(stat & NotReachable) {
   //not reachable
}

if(stat & ReachableViaWiFi) {
   //reachable via wifi
}

if(stat & ReachableViaWWAN) {
   //reachable via wwan
}

答案 1 :(得分:1)

答案 2 :(得分:0)

由于我制作了一个非常简单的基于块的Reachability包装器,它剥离了所有过时的C-like Reachability代码,并将其倾注到更多的Cocoa表单中。

用法如:

[EPPZReachability reachHost:hostNameOrIPaddress
               completition:^(EPPZReachability *reachability)
{
    if (reachability.reachableViaCellular) [self doSomeLightweightStuff];
}];

Reachability with blocks for everyday use上查看eppz!blog,或直接从eppz!reachability at GitHub抓取。

也适用于IP地址,后来证明这是一种非常罕见的可达性包装功能。