获取网络状态,区分2G3G4GWIFI等,非reachability
2016-06-12 15:35
399 查看
原文:http://www.cocoachina.com/bbs/read.php?tid=227757
+(NSString *)getNetWorkStates{
UIApplication *app
= [UIApplication sharedApplication];
NSArray *children
= [[[app valueForKeyPath:@"statusBar"]valueForKeyPath:@"foregroundView"]subviews];
NSString *state
= [[NSString alloc]init];
int netType
= 0;
//获取到网络返回码
for (id child in children)
{
if ([child isKindOfClass:NSClassFromString(@"UIStatusBarDataNetworkItemView")])
{
//获取到状态栏
netType = [[child valueForKeyPath:@"dataNetworkType"]intValue];
switch (netType)
{
case 0:
state = @"无网络";
//无网模式
break;
case 1:
state = @"2G";
break;
case 2:
state = @"3G";
break;
case 3:
state = @"4G";
break;
case 5:
{
state = @"WIFI";
}
break;
default:
break;
}
}
}
//根据状态选择
return state;
}
根据状态栏获取网络状态,可以区分2G、3G、4G、WIFI,系统的方法,比较快捷。稍微蛋疼的是万一连接的WIFI没有联网的话···你懂得
+(NSString *)getNetWorkStates{
UIApplication *app
= [UIApplication sharedApplication];
NSArray *children
= [[[app valueForKeyPath:@"statusBar"]valueForKeyPath:@"foregroundView"]subviews];
NSString *state
= [[NSString alloc]init];
int netType
= 0;
//获取到网络返回码
for (id child in children)
{
if ([child isKindOfClass:NSClassFromString(@"UIStatusBarDataNetworkItemView")])
{
//获取到状态栏
netType = [[child valueForKeyPath:@"dataNetworkType"]intValue];
switch (netType)
{
case 0:
state = @"无网络";
//无网模式
break;
case 1:
state = @"2G";
break;
case 2:
state = @"3G";
break;
case 3:
state = @"4G";
break;
case 5:
{
state = @"WIFI";
}
break;
default:
break;
}
}
}
//根据状态选择
return state;
}
根据状态栏获取网络状态,可以区分2G、3G、4G、WIFI,系统的方法,比较快捷。稍微蛋疼的是万一连接的WIFI没有联网的话···你懂得
相关文章推荐
- java Socket网络通信简介
- Apche Httpd安装与配置
- HTTP消息中header头部信息的讲解
- Windows系统下的TCP参数优化
- HTTP协议详解
- iOS开发之网络编程--4、NSURLSessionDataTask实现文件下载(离线断点续传下载) <进度值显示优化>
- iPhone判断当前网络连接状态
- TCP 协议 ---- "三次握手,四次挥手"
- http请求测试网址
- httpd: Could not reliably determine the server's fully .......
- 通过 http 协议上传文件
- java 网络编程
- 浅谈HTTPS安全性
- HTTP 的 Keep-Alive模式
- JAVA网络编程
- 如何在低速率网络中测试 Web 应用
- HttpClient4.0
- ImageNet中的LRN(Local Response Normalization)
- okhttp get
- android判断手机是否连接网络