码迷,mamicode.com
首页 > 其他好文 > 详细

如何判断当前网络连接状态(网络是否正常)

时间:2015-05-08 19:50:40      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:

 众所周知,我们在开发APP时,涉及网络连接的时候,都会想着提前判断一下当前的网络连接状态,如果没有网络,就不再请求url,省去不必要的步骤,所以,这个如何判断?其实很简单。

前提:工程添加:SystemConfiguration.framework

然后在需要判断的类中包含头文件:

#import "Reachability.h" 

 

下面是我写的一个方法:

#pragma mark - 检测网络连接

+ (BOOL)isConnectionAvailable

{

    BOOL isExistenceNetwork = YES;

    DDReachability *reach = [DDReachability reachabilityWithHostname:@"www.apple.com"];

    switch ([reach currentReachabilityStatus]) {

        case NotReachable:

            isExistenceNetwork = NO;

            //NSLog(@"notReachable");

            break;

        case ReachableViaWiFi:

            isExistenceNetwork = YES;

            //NSLog(@"WIFI");

            break;

        case ReachableViaWWAN:

            isExistenceNetwork = YES;

            //NSLog(@"3G");

            break;

    }

    

    if (!isExistenceNetwork) {

        UIAlertView *alertview = [[UIAlertView alloc] initWithTitle:nil message:@"当前网络不可用,请检查网络连接!" delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil];

        [alertview show];

        return NO;

    }else{

        return isExistenceNetwork;

    }

}

然后在需要判断的地方直接:

    //能联网去请求数据

    if ([self isConnectionAvailable]) {

    }

大家看懂了吧,就这么简单。

所以举一反三,如果你不单单是判断是否网络通畅,而是要判断是WIFI或3G,再写一个isEnableWIFI的方法,具体判断方法就不用再赘述了吧,currentReachabilityStatus判断之。

如何判断当前网络连接状态(网络是否正常)

标签:

原文地址:http://www.cnblogs.com/huangzs/p/4488447.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!