当前位置: 首页 > 工具软件 > Reachability > 使用案例 >

Reachability

夏飞跃
2023-12-01

一、Reachability中介绍了取得/检测网络状态的方法。

二、使用

    1、添加源文件:Reachability.h和Reachability.m

    2、添加framework———SystemConfiguration.framework

三、网络状态

    Reachability.h定义了三中网络状态

typedef enum{

        NotReachable = 0,   //无连接

        ReachableViaWiFi,   //使用3G/GPRS网络

        ReachableViaWWAN   //使用WiFi网络

        }NetworkStatus;

 

 

因此可以这样检查网络状态

 

Reachability *r = [Reachability reachabilityWithHostName:@“www.apple.com”];

switch([r currentReachabilityStatus])

{

    case NotReachable:    //没有网络连接

       break;

    case ReachableViaWWAN:  //使用3G网络连接

        break;

    case ReachableViaWiFi:    //使用WiFi网络

        break;

}

 

四、检查当前网络环境

  // 是否wifi

+ (BOOL) IsEnableWIFI {
        return ([[Reachability reachabilityForLocalWiFi] currentReachabilityStatus] != NotReachable);
    }

 



    // 是否3G
   

+ (BOOL) IsEnable3G {
        return ([[Reachability reachabilityForInternetConnection] currentReachabilityStatus] != NotReachable);
    }

 


    例子:

- (void)viewWillAppear:(BOOL)animated {    
    if (([Reachability reachabilityForInternetConnection].currentReachabilityStatus == NotReachable) && 
            ([Reachability reachabilityForLocalWiFi].currentReachabilityStatus == NotReachable)) {
            self.navigationItem.hidesBackButton = YES;
            [self.navigationItem setLeftBarButtonItem:nil animated:NO];
        }
    }

 

 

相关阅读

相关文章

相关问答