Reachability监测网络环境

1、添加Reachability.h和Reachability.m到工程中;

2、在Frameworks里添加SystemConfiguration.framework;

3、在AppDelegate.m中的

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

    

    // Override point for customization after application launch.

    

    //开启网络状况的监听

    [[NSNotificationCenter defaultCenter] addObserver:self

                                             selector:@selector(reachabilityChanged:)

                                                 name: kReachabilityChangedNotification

                                               object: nil];

    reachability =[[Reachability reachabilityWithHostName:@"www.baidu.com"] retain];

    [reachability startNotifier];


    

    return YES;

}


-(void)reachabilityChanged:(NSNotification *)note

{

    Reachability* curReach = [note object];

    NSParameterAssert([curReach isKindOfClass: [Reachability class]]);

    [self updateInterfaceWithReachability: curReach];

    

}

//处理连接改变后的情况

- (void) updateInterfaceWithReachability: (Reachability*) curReach

{

    //对连接改变做出响应的处理动作。

    NetworkStatus status = [curReach currentReachabilityStatus];

    

    switch (status) {

        case NotReachable:

        {

            UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"NotReachable"

                                                            message:@""

                                                           delegate:nil

                                                  cancelButtonTitle:@"YES" otherButtonTitles:nil];

            [alert show];

            

        }

            break;

        case kReachableViaWWAN:

        {

            UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"kReachableViaWWAN"

                                                            message:@""

                                                           delegate:nil

                                                  cancelButtonTitle:@"YES" otherButtonTitles:nil];

            [alert show];

            

            

        }

            break;

        case kReachableViaWiFi:

        {

            UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"kReachableViaWiFi"

                                                            message:@""

                                                           delegate:nil

                                                  cancelButtonTitle:@"YES" otherButtonTitles:nil];

            [alert show];

            

        }

            break;

            

        default:

            break;

    }

    

}






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值