申明:此为本人学习笔记,若有纰漏错误之处的可留言共同探讨
/*
网路监测练习思路
0.导入框架类和头文件Reachability.h(若不会导入框架,可参考本人上一篇博客)
1.传一个连接对象
2.手动开启网络监听状态
3.开启通知中心
4.根据反馈回来的数据判断网络情况
a.reachability接收消息对象
b.NetworkStatus(网络状态)接收reachability状态
c.使用创建NSString使用传回来的消息
*/
附上完整代码Demo:http://download.csdn.net/detail/csdn_hhg/9186241
#pragma mark - view加载
- (void)viewDidLoad {
[super viewDidLoad];
// 传一个连接对象, 这里是手动内存管理记得retain
Reachability *reachability = [[Reachability reachabilityWithHostName:@"www.baidu.com"]retain];
// ASI框架默认是不会帮你监听网络状态,如果需要它去监听网络状态,需要我们手动去开启这个功能。
// 开起监听
[reachability startNotifier];
// 通知中心
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(networkMonitoring:) name:kReachabilityChangedNotification object:nil];
}
#pragma mark - 网络监测消息
-(void)networkMonitoring:(NSNotification*)notification
{
Reachability *reachability = notification.object;
NetworkStatus status = [reachability currentReachabilityStatus];
NSString * message = @"";
switch (status) {
case kReachableViaWiFi:
message = @"使用wifi中";
break;
case NotReachable:
message = @"没有网络";
break;
case ReachableViaWWAN:
message = @"手机网络";
break;
default:
break;
}
NSLog(@"%@",message);
}