首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取iOS 7上的互联网/网络状态

获取iOS 7上的互联网/网络状态
EN

Stack Overflow用户
提问于 2014-01-01 07:49:28
回答 1查看 5.6K关注 0票数 0

我有这样的代码:

代码语言:javascript
复制
BOOL status = ([[Reachability reachabilityForInternetConnection] currentReachabilityStatus] != NotReachable);

但出于某种原因,它总是返回YES,即使我的设备处于飞行模式,蜂窝数据关闭,计算机关闭Wifi。通知中心代码工作正常:

代码语言:javascript
复制
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(reachabilityChanged:) name:kReachabilityChangedNotification object:nil];

self.reachability = [Reachability reachabilityWithHostname:@"www.google.com"];

[self.reachability startNotifier];

怎么回事?

EN

回答 1

Stack Overflow用户

发布于 2014-01-01 09:18:44

您的设备可以通过ReachableViaWWAN or ReachableViaWiFi访问

有三种NetworkStatus可用。

代码语言:javascript
复制
typedef enum : NSInteger {
    NotReachable = 0,
    ReachableViaWiFi,
    ReachableViaWWAN
} NetworkStatus;


/*!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 This method is used to provide wifi network current status.
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
- (NetworkStatus *)notifyNetworkStatus:(Reachability *)reachability
{
    NetworkStatus netStatus = [reachability currentReachabilityStatus];

    NSString* statusString = @"Network Mode Changed / Connection closed!!";

    @try
    {
        switch (netStatus)
        {
            case NotReachable:
            {
                statusString = @"No network Access!! Connection closed";
                break;
            }
            case ReachableViaWWAN:
            {
                statusString = @"Network Mode Changed / Connection reachable only via WWAN!!";
                break;
            }
            case ReachableViaWiFi:
            {
                statusString = @"Network Mode Changed / Connection reachable via WiFi";
                break;
            }
            default:
            {
                break;
            } 

        }
    }
    @catch (NSException *exception)
    {
        NSLog(@"%s\n Exception: Name- %@ Reason->%@", __PRETTY_FUNCTION__,[exception name],[exception reason]);
    }
}

下载并检查developer.apple.com- Reachability application

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20864348

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档