ios0监测网络变化

来源:互联网 发布:淘宝店铺分类管理 编辑:程序博客网 时间:2024/06/05 00:39

appdelegate.m


#import "Reachability.h"

#import "ALinNetworkTool.h"

@interface AppDelegate (){

    

    Reachability *_reacha;

    NetworkStates _preStatus;}


@end



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


  [selfcheckNetworkStates];

    

    

    NSLog(@"网络状态码:----->%ld", (unsignedlong)[ALinNetworkToolgetNetworkStates]);



}

// 实时监控网络状态

- (void)checkNetworkStates

{

    [[NSNotificationCenterdefaultCenter] addObserver:selfselector:@selector(networkChange)name:kReachabilityChangedNotificationobject:nil];

    _reacha = [ReachabilityreachabilityWithHostName:@"http://www.baidu.com"];

    [_reachastartNotifier];

}


- (void)networkChange

{

    NSString *tips;

    NetworkStates currentStates = [ALinNetworkToolgetNetworkStates];

    if (currentStates ==_preStatus) {

        return;

    }

    _preStatus = currentStates;

    switch (currentStates) {

        caseNetworkStatesNone:

            tips = @"当前无网络,请检查您的网络状态";

            break;

        caseNetworkStates2G:

            tips = @"切换到了2G网络";

            break;

        caseNetworkStates3G:

            tips = @"切换到了3G网络";

            break;

        caseNetworkStates4G:

            tips = @"切换到了4G网络";

            break;

        caseNetworkStatesWIFI:

            tips = nil;

            break;

        default:

            break;

    }

    

    

    if (tips.length) {

        [[[UIAlertViewalloc] initWithTitle:@"宅代送"message:tips delegate:nilcancelButtonTitle:@"好的"otherButtonTitles:nil,nil] show];

    }

}



0 0