美文网首页
AFNetworkReachabilityManager

AFNetworkReachabilityManager

作者: seventhboy | 来源:发表于2017-04-06 16:01 被阅读104次

    避免AFNetworkReachabilityManager检查网络状态AFNetworkReachabilityStatusUnknown
    1、开启监听 [[AFNetworkReachabilityManager sharedManager] startMonitoring];

    2、[[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {

        switch (status) {
    
            case AFNetworkReachabilityStatusNotReachable:{
    
                NSLog(@"无网络");
    
                break;
    
            }
    
            case AFNetworkReachabilityStatusReachableViaWiFi:{
    
                NSLog(@"WiFi网络");
    
                break;
    
            }
    
            case AFNetworkReachabilityStatusReachableViaWWAN:{
    
                NSLog(@"无线网络");
    
                break;
    
            }
    
            default:
    
                break;
    
        }
    
    }];
    

    define kNetworkNotReachability ([AFNetworkReachabilityManager sharedManager].networkReachabilityStatus <= 0) //无网

    如果启动就去检测 建议延时调用

    eg:[self performSelector:@selector(login:) withObject:nil afterDelay:0.35f];

    由于检测网络有一定的延迟,所以如果启动app立即去检测调用[AFNetworkReachabilityManager sharedManager].networkReachabilityStatus 有可能得到的是status == AFNetworkReachabilityStatusUnknown;但是此时明明是有网的,建议在收到监听网络状态回调以后再取[AFNetworkReachabilityManager sharedManager].networkReachabilityStatus。

    相关文章

      网友评论

          本文标题:AFNetworkReachabilityManager

          本文链接:https://www.haomeiwen.com/subject/qhsqattx.html