ios检查是否网格连接正常代码如下:
#import <Foundation/Foundation.h> //检查网络 @interface NetWorkIsOK : NSObject { } //网络是否OK + (BOOL) checkNetWorkIsOk; @end
#import "NetWorkIsOK.h" #import <SystemConfiguration/SystemConfiguration.h> #import <netdb.h> @implementation NetWorkIsOK + (BOOL) checkNetWorkIsOk{ struct sockaddr_in zeroAddress; bzero(&zeroAddress, sizeof(zeroAddress)); zeroAddress.sin_len = sizeof(zeroAddress); zeroAddress.sin_family = AF_INET; SCNetworkReachabilityRef defaultRouteReachability = SCNetworkReachabilityCreateWithAddress(NULL, (struct sockaddr *)&zeroAddress); SCNetworkReachabilityFlags flags; BOOL didRetrieveFlags = SCNetworkReachabilityGetFlags(defaultRouteReachability, &flags); CFRelease(defaultRouteReachability); if (!didRetrieveFlags) { return NO; } BOOL isReachable = flags & kSCNetworkFlagsReachable; BOOL needsConnection = flags & kSCNetworkFlagsConnectionRequired; // = flags & kSCNetworkReachabilityFlagsIsWWAN; BOOL nonWifi = flags & kSCNetworkReachabilityFlagsTransientConnection; BOOL moveNet = flags & kSCNetworkReachabilityFlagsIsWWAN; return ((isReachable && !needsConnection) || nonWifi || moveNet) ? YES : NO; } @end