zoukankan      html  css  js  c++  java
  • 关于网络状态监听实时,创建单例网络监测(非实时)

    #pragma mark 网络状态监测

    -(void)checkNetworkStatus{

        //创建一个用于测试的url

        NSURL *url=[NSURL URLWithString:@"http://www.baidu.com"];

        AFHTTPRequestOperationManager *operationManager=[[AFHTTPRequestOperationManager alloc]initWithBaseURL:url];

        //根据不同的网络状态改变去做相应处理

        [operationManager.reachabilityManager setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {

            switch (status) {

                case AFNetworkReachabilityStatusReachableViaWWAN:

                    [self alert:@"2G/3G/4G Connection."];

                    break;

                case AFNetworkReachabilityStatusReachableViaWiFi:

                    [self alert:@"WiFi Connection."];

                    break;

                case AFNetworkReachabilityStatusNotReachable:

                    [self alert:@"Network not found."];

                    break;

                    

                default:

                    [self alert:@"Unknown."];

                    break;

            }

        }];

        

        //开始监控

        [operationManager.reachabilityManager startMonitoring];

    }

    -(void)checkNetworkStatus{

        //创建一个用于测试的url

        NSURL *url=[NSURL URLWithString:@"http://www.apple.com"];

        AFHTTPSessionManager * operationManager=[[AFHTTPSessionManager alloc]initWithBaseURL:url];

        

        //根据不同的网络状态改变去做相应处理

        [operationManager.reachabilityManager setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {

            switch (status) {

                case AFNetworkReachabilityStatusReachableViaWWAN:

    //                [self alert:@"2G/3G/4G Connection."];

                    [SVProgressHUD showSuccessWithStatus:@"2G/3G/4G Connection."];

                    

    //                DNLog(@"2G/3G/4G Connection.");

                    break;

                case AFNetworkReachabilityStatusReachableViaWiFi:

                    [SVProgressHUD showSuccessWithStatus:@"WiFi Connection."];

                    

    //                DNLog(@"WiFi Connection.");

                    

                    break;

                case AFNetworkReachabilityStatusNotReachable:

                    [SVProgressHUD showErrorWithStatus:@"Network not found."];

                    

    //                DNLog(@"Network not found.");

                   

                    break;

                    

                default:

                    [SVProgressHUD showErrorWithStatus:@"Unknown."];

                    

    //                DNLog(@"Unknown.");

                  

                    break;

            }

        }];

        

        //开始监控

        [operationManager.reachabilityManager startMonitoring];

    }

    /**************** 检测网络状态,并返回无网络状太****************/

    要导入头文件

    + (BOOL)netWorkStateFalse {

        

    //     Reachability* reach = [Reachability reachabilityWithHostname:@"www.baidu.com"];

    //     [reach startNotifier];

        return ([[Reachability reachabilityForInternetConnection] currentReachabilityStatus] == NotReachable);

    }

  • 相关阅读:
    关于C的一些理解
    Linux下/proc目录简介
    python学习链接
    “段寄存器”的故事[转](彻底搞清内存段/elf段/实模式保护模式以及段寄存器)
    内核态与用户态
    bzoj1087: [SCOI2005]互不侵犯King 状压dp
    bzoj1007: [HNOI2008]水平可见直线 单调栈维护凸壳
    bzoj1015: [JSOI2008]星球大战starwar
    bzoj1002: [FJOI2007]轮状病毒 生成树计数
    bzoj1013: [JSOI2008]球形空间产生器sphere
  • 原文地址:https://www.cnblogs.com/soulDn/p/5336600.html
Copyright © 2011-2022 走看看