美文网首页
iOS 实时监听网络状态

iOS 实时监听网络状态

作者: 学霸学霸不学也霸 | 来源:发表于2016-12-19 16:15 被阅读1024次

此方法依赖AFNetworking第三方库(✈️

以下代码写在appDelegate.m调用即可

/**
 实时检查当前网络状态
 */
- (void)addReachabilityManager {
    AFNetworkReachabilityManager *afNetworkReachabilityManager = [AFNetworkReachabilityManager sharedManager];
    //    [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(afNetworkStatusChanged:) name:AFNetworkingReachabilityDidChangeNotification object:nil];//这个可以放在需要侦听的页面
    [afNetworkReachabilityManager setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
        switch (status) {
            case AFNetworkReachabilityStatusNotReachable:{
                NSLog(@"网络不通:%@",@(status) );
                break;
            }
            case AFNetworkReachabilityStatusReachableViaWiFi:{
                NSLog(@"网络通过WIFI连接:%@",@(status));
                break;
            }
            case AFNetworkReachabilityStatusReachableViaWWAN:{
                NSLog(@"网络通过无线连接:%@",@(status) );
                break;
            }
            default:
                break;
        }
        
        NSLog(@"网络状态数字返回:%@",@(status));
        NSLog(@"网络状态返回: %@", AFStringFromNetworkReachabilityStatus(status));
        
        NSLog(@"isReachable: %@",@([AFNetworkReachabilityManager sharedManager].isReachable));
        NSLog(@"isReachableViaWWAN: %@",@([AFNetworkReachabilityManager sharedManager].isReachableViaWWAN));
        NSLog(@"isReachableViaWiFi: %@",@([AFNetworkReachabilityManager sharedManager].isReachableViaWiFi));
    }];
    
    [afNetworkReachabilityManager startMonitoring];  //开启网络监视器;
}

相关文章

网友评论

      本文标题:iOS 实时监听网络状态

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