iOS 判断手机蜂窝煤数据是否打开

#import 
#import 
#import 
#import 
#import 
#import 

#define IOS_CELLULAR    @"pdp_ip0" //WWAN地址,即 ip

- (BOOL)isReachableViaWWAN {
    
    struct ifaddrs *interfaces = NULL;
    struct ifaddrs *temp_addr = NULL;
    int success = 0;
    success = getifaddrs(&interfaces);
    if (success == 0) {
        // Loop through linked list of interfaces
        temp_addr = interfaces;
        while(temp_addr != NULL) {
            if(temp_addr->ifa_addr->sa_family == AF_INET) {
                // Check if interface is pdp_ip0 which is the wwan connection on the iPhone
                NSString *ifa_name = [NSString stringWithUTF8String:temp_addr->ifa_name];
                if([ifa_name isEqualToString:IOS_CELLULAR]) {
                   return YES;
                }
            }
            temp_addr = temp_addr->ifa_next;
        }
    }
    // Free memory
    freeifaddrs(interfaces);
    return NO;
    
}

你可能感兴趣的:(iOS 判断手机蜂窝煤数据是否打开)