网络监听万能代码
2015-09-15 22:01
441 查看
NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults];
//根据不同的网络状态改变去做相应处理
[[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
[defaults setObject:[NSNumber numberWithInteger:status]forKey:@"network"];
switch (status) {
case AFNetworkReachabilityStatusReachableViaWWAN:
{
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"当前网络2g/3g/4g连接" message:nil delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[alert show];
[alert release];
}
break;
case AFNetworkReachabilityStatusReachableViaWiFi:
{
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"当前网络wifi连接" message:nil delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[alert show];
[alert release];
}
break;
case AFNetworkReachabilityStatusNotReachable:
{
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"当前网络不可用,请检查网络" message:nil delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[alert show];
[alert release];
}
break;
default:
break;
}
}];
//开始监控
[[AFNetworkReachabilityManager sharedManager] startMonitoring];
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
//根据不同的网络状态改变去做相应处理
[[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
[defaults setObject:[NSNumber numberWithInteger:status]forKey:@"network"];
switch (status) {
case AFNetworkReachabilityStatusReachableViaWWAN:
{
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"当前网络2g/3g/4g连接" message:nil delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[alert show];
[alert release];
}
break;
case AFNetworkReachabilityStatusReachableViaWiFi:
{
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"当前网络wifi连接" message:nil delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[alert show];
[alert release];
}
break;
case AFNetworkReachabilityStatusNotReachable:
{
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"当前网络不可用,请检查网络" message:nil delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[alert show];
[alert release];
}
break;
default:
break;
}
}];
//开始监控
[[AFNetworkReachabilityManager sharedManager] startMonitoring];
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
相关文章推荐
- 网络编程
- 计算机网络可靠传输的实现 (窗口)
- int open(const char * pathname, int flags); http://c.biancheng.net/cpp/html/238.html
- 安卓中处理http超时
- TCP与UDP的区别与用途
- linux下的网络命令netstat
- win7 http://localhost不能访问解决方法
- 封装多线程的HttpClient
- 封装多线程的HttpClient
- windows下TCP服务器和客户端的实现
- Android第九讲——网络(二) HttpUrlConnection
- TCP三次握手
- Netty5入门学习笔记003-TCP粘包/拆包问题的解决之道(下)
- Netty5入门学习笔记002-TCP粘包/拆包问题的解决之道(上)
- TCP协议三次握手
- 基本TCP套接字编程
- Elven Postman【HDU 5444】【长春网络赛】
- 2015长春网络赛(HDU5437,5438,5439,5441,5442,5443,5444,5446)
- TCP/IP 协议的工作流程
- Ajax之XMLHttpRequest对象