ios 判断网络是否可用工具类
2015-02-28 14:35
477 查看
//
// NetTool.m
// MusicLove
//
// Created by niuxinghua on 15/2/10.
// Copyright (c) 2015年 Hjojo. All rights reserved.
//
#import "NetTool.h"
@implementation NetTool
+(BOOL) isNetworkEnabled
{
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
// NetTool.m
// MusicLove
//
// Created by niuxinghua on 15/2/10.
// Copyright (c) 2015年 Hjojo. All rights reserved.
//
#import "NetTool.h"
@implementation NetTool
+(BOOL) isNetworkEnabled
{
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 判断网络是否可用
- 04工具类判断网络是否可用的方法和全局Constant类
- Android判断当前网络是否可用--示例代码
- android 程序中判断当前是否连接网络,网络是否可用
- C# 判断计算机网络是否可用
- 网络监听以及判断网络是否可用
- Android中判断有无可用网络(是否是3G或者WIFI网络)
- IOS开发之查看网络链接是否可用-----第二讲
- Android判断当前网络是否可用--示例代码
- 判断网络是否可用
- 精确的判断网络是否可用(转贴)
- IOS-判断camera是否可用,ActionSheet中button数量动态更改
- android中判断网络连接是否可用
- Android中判断网络功能是否可用
- 判断SDCARD扫描状态和是否存在,网络是否可用
- 判断数据网络是否可用
- 精确的判断网络是否可用