IOS开发之网络编程开源类 Reachability应用

先看Reachability.h发现

#import <Foundation/Foundation.h>

#import <SystemConfiguration/SystemConfiguration.h>

#import <netinet/in.h>

所以如果我们在项目中需要用到此类的话,需要引入SystemConfiguration.framework。

此类在ios网络开发中可以确认判断网络环境,连接情况(无网络连接,3G,WIFI,GPRS)


enum {   // DDG NetworkStatus Constant Names.

kNotReachable = 0, // Apple's code depends upon 'NotReachable' being the same value as 'NO'.

kReachableViaWWAN, // Switched order from Apple's enum. WWAN is active before WiFi.

kReachableViaWiFi

};

定义三种网络类型:

一:kNotReachable                    无网络连接

二:kReachableViaWWAN       使用GPRS或者3G网络连接

三:kReachableViaWiFi            使用WIFI连接

我在项目中用下面的语句判断是否存在网络连接

        BOOL reachable = [[Reachability reachabilityForInternetConnection] isReachable];

            if (!reachable) {

                UIAlertView *alertView = [[[UIAlertView alloc] initWithTitle:@"该功能需要连接网络才能使用,请检查您的网络连接状态" message:nil delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil] autorelease];

                [alertView show];

                return;

            }

当有网络请求的时候,类中方法可以返回目前的网络连接状态

例如:Reachable *reachable = [Reachable   reachabilityWithHostName:@"http://blog.csdn.net"];

之后我们应用

// These are the status tests.

- (NetworkStatus) currentReachabilityStatus;   返回网络连接状态

 switch(  [reachable currentReachabilityStatus ] ) {

/* [reachable currentReachabilityStatus ]包含三个值

一:kNotReachable                    无网络连接

二:kReachableViaWWAN       使用GPRS或者3G网络连接

三:kReachableViaWiFi            使用WIFI连接 */

}


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值