reachability的基本理解

1. 示例说明:此示例用于演示关于如何使用SystemConfiguratio Reachalility程序接口来判定相关的网络连接状态及状态变化,所以在使用此示例中的Reachability.(h/m)文件于自有的项目中的前提是必须引入SystemConfiguration.framework。

2. 首选分析Reachability.h文件:

-> 首先引入<SystemConfiguration/SystemConfiguration.h>

#import <SystemConfiguration/SystemConfiguration.h>

-> 定义代表网络状态的枚举类型NetworkStatus:

复制代码
// 定义网络请求可到达状态
typedef enum 
{
    NotReachable = 0,   // 不可到达
    ReachableViaWiFi,   // 通过WiFi可到达
    ReachableViaWWAN    // 通过无线广域网可到达(WWAN,即Wireless Wide Area Network,无线广域网。)
} NetworkStatus;
复制代码

-> 宏定义关于网络连接变更的通知标识名称:

#define kReachabilityChangedNotification @"kNetworkReachabilityChangedNotification"

-> 定义相关属性:

BOOL localWiFiRef;    
// 用来保存创建测试连接返回的引用
SCNetworkReachabilityRef reachabilityRef;

 

-> 声明各相关的方法:

// 用于检查网络请求是否可到达指定的主机名
+ (Reachability*) reachabilityWithHostName: (NSString*) hostName;
// 用于检查网络请求是否可到达指定的IP地址
+ (Reachability*) reachabilityWithAddress: (const struct sockaddr_in*) hostAddress;
// 用于检查路由连接是否有效
+ (Reachability*) reachabilityForInternetConnection;
// 用于检查本地的WiFi连接是否有效
+ (Reachability*) reachabilityForLocalWiFi;
// 在当前程序的运行回路中开始监听网络请求可到达的通知
- (BOOL) startNotifier;
- (void) stopNotifier;
// 当前网络请求可到达状态
- (NetworkStatus) currentReachabilityStatus;
// 当前网络请求可到达状态
- (NetworkStatus) currentReachabilityStatus;
// 连接需求
- (BOOL) connectionRequired;
阅读更多
想对作者说点什么? 我来说一句

ios Reachability

2016年05月18日 29KB 下载

没有更多推荐了,返回首页

不良信息举报

reachability的基本理解

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭