读书人

判断网络是不是连接

发布时间: 2013-11-15 22:28:15 作者: rapoo

判断网络是否连接

iOS开发中判断网络连接的操作步骤如下:

1、添加framework,SystemConfiguration.framework;

2、倒入文件:

#import <SystemConfiguration/SystemConfiguration.h>#include <netdb.h>

?3、判断方法:

- (BOOL) connectedToNetwork {    // Create zero addy    struct sockaddr_in zeroAddress;    bzero(&zeroAddress, sizeof(zeroAddress));    zeroAddress.sin_len = sizeof(zeroAddress);    zeroAddress.sin_family = AF_INET;        // Recover reachability flags    SCNetworkReachabilityRef defaultRouteReachability = SCNetworkReachabilityCreateWithAddress(NULL, (struct sockaddr *)&zeroAddress);        SCNetworkReachabilityFlags flags;    BOOL didRetrieveFlags = SCNetworkReachabilityGetFlags(defaultRouteReachability, &flags);    CFRelease(defaultRouteReachability);    if (!didRetrieveFlags) {        return NO;    }    BOOL isReachable = ((flags & kSCNetworkFlagsReachable) != 0);    BOOL needsConnection = ((flags & kSCNetworkFlagsConnectionRequired) != 0);    return (isReachable && !needsConnection) ? YES : NO;}

?来自《The iPhone Developer's Cookbook》

?

读书人网 >移动开发

热点推荐