网络连接判断
方法一:需添加第三方Reachability代码
下载链接:https://developer.apple.com/library/ios/samplecode/Reachability/Introduction/Intro.html
#import "Reachability.h" #pragma mark 判断当前网络状态 - (BOOL)currntNetworkType { BOOL networking; NSString* result; // Reachability *r = [Reachability reachabilityWithHostName:@"www.baidu.com"]; Reachability *r = [Reachability reachabilityForInternetConnection]; switch ([r currentReachabilityStatus]) { case NotReachable: // 没有网络连接 { result = nil; networking = NO; } break; case ReachableViaWWAN:// 3G { result = @"3G"; networking = YES; } break; case ReachableViaWiFi:// WiFi { result = @"WIFI"; networking = YES; } break; } NSLog(@"==============================现在使用的网络是:%@==================================", result); return networking; }
内容来源:http://darrendev.diandian.com/post/2012-10-15/40040914888
方法二:利用AFNetworking中的AFNetworkReachabilityManager
#import "AFNetworkReachabilityManager.h"
1 // AFNetworkReachabilityManager(网络可达性检测)对象 2 AFNetworkReachabilityManager *afReach = [AFNetworkReachabilityManager sharedManager]; 3 // 设置网络状态发生改变时触发的代码块 4 [afReach setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) { 5 switch (status) { 6 case AFNetworkReachabilityStatusNotReachable: 7 // 无网络连接 8 break; 9 case AFNetworkReachabilityStatusReachableViaWiFi: 10 // 通过WiFi连接 11 break; 12 case AFNetworkReachabilityStatusReachableViaWWAN: 13 // 通过WWAN连接 14 break; 15 default: 16 break; 17 } 18 }];