ios 判断网络是否可用
2014-12-21 20:34
375 查看
#import "isNetavilable.h"
#import <SystemConfiguration/SystemConfiguration.h>
@implementation isNetavilable
+(BOOL)isNetAvilable{
BOOL bEnabled = FALSE;
NSString *url =
@"www.baidu.com";
SCNetworkReachabilityRef ref =
SCNetworkReachabilityCreateWithName(NULL, [url
UTF8String]);
SCNetworkReachabilityFlags flags;
bEnabled = SCNetworkReachabilityGetFlags(ref, &flags);
CFRelease(ref);
if (bEnabled) {
// kSCNetworkReachabilityFlagsReachable:能够连接网络
// kSCNetworkReachabilityFlagsConnectionRequired:能够连接网络,但是首先得建立连接过程
// kSCNetworkReachabilityFlagsIsWWAN:判断是否通过蜂窝网覆盖的连接,比如EDGE,GPRS或者目前的3G.主要是区别通过WiFi的连接。
BOOL flagsReachable = ((flags &
kSCNetworkFlagsReachable) != 0);
BOOL connectionRequired = ((flags &
kSCNetworkFlagsConnectionRequired) != 0);
BOOL nonWiFi = flags &
kSCNetworkReachabilityFlagsTransientConnection;
bEnabled = ((flagsReachable && !connectionRequired) || nonWiFi) ?
YES : NO;
}
return bEnabled;
}
@end
#import <SystemConfiguration/SystemConfiguration.h>
@implementation isNetavilable
+(BOOL)isNetAvilable{
BOOL bEnabled = FALSE;
NSString *url =
@"www.baidu.com";
SCNetworkReachabilityRef ref =
SCNetworkReachabilityCreateWithName(NULL, [url
UTF8String]);
SCNetworkReachabilityFlags flags;
bEnabled = SCNetworkReachabilityGetFlags(ref, &flags);
CFRelease(ref);
if (bEnabled) {
// kSCNetworkReachabilityFlagsReachable:能够连接网络
// kSCNetworkReachabilityFlagsConnectionRequired:能够连接网络,但是首先得建立连接过程
// kSCNetworkReachabilityFlagsIsWWAN:判断是否通过蜂窝网覆盖的连接,比如EDGE,GPRS或者目前的3G.主要是区别通过WiFi的连接。
BOOL flagsReachable = ((flags &
kSCNetworkFlagsReachable) != 0);
BOOL connectionRequired = ((flags &
kSCNetworkFlagsConnectionRequired) != 0);
BOOL nonWiFi = flags &
kSCNetworkReachabilityFlagsTransientConnection;
bEnabled = ((flagsReachable && !connectionRequired) || nonWiFi) ?
YES : NO;
}
return bEnabled;
}
@end
相关文章推荐
- IOS中如何判断当前网络状态是否可用
- IOS--判断当前网络是否可用
- iOS--判断网络是否可用-(本地判断)
- ios 判断网络是否可用工具类
- 精确的判断网络是否可用(转贴)
- Android中判断网络功能是否可用
- android中判断网络连接是否可用
- IOS-判断camera是否可用,ActionSheet中button数量动态更改
- Android判断当前网络是否可用--示例代码
- 判断网络是否可用
- Android判断当前网络是否可用--示例代码
- IOS开发之查看网络链接是否可用-----第二讲
- Android中判断有无可用网络(是否是3G或者WIFI网络)
- 网络监听以及判断网络是否可用
- C# 判断计算机网络是否可用
- android 程序中判断当前是否连接网络,网络是否可用
- 判断SDCARD扫描状态和是否存在,网络是否可用
- 判断数据网络是否可用
- 精确的判断网络是否可用
- IOS开发之查看网络链接是否可用-----第一讲