ios – 仅在iPad 2型号上无法检测到wifi开启或关闭

前端之家收集整理的这篇文章主要介绍了ios – 仅在iPad 2型号上无法检测到wifi开启或关闭前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用下面的代码片段来检测是否启用了wifi.
代码适用于iPad Air或

(BOOL) isWiFiEnabled {

    NSCountedSet * cset = [NSCountedSet new];

    struct ifaddrs *interfaces;

    if( ! getifaddrs(&interfaces) ) {
        for( struct ifaddrs *interface = interfaces; interface; interface = interface->ifa_next) {
            if ( (interface->ifa_flags & IFF_UP) == IFF_UP ) {
                [cset addObject:[NSString stringWithUTF8String:interface->ifa_name]];
            }
        }
    }

    return [cset countForObject:@"awdl0"] > 1 ? YES : NO;
}

对于iPad 2代模型,此代码不起作用,即返回0.
请帮我这个,即在这个型号上检测wifi开启或关闭的任何其他方式.

此问题仅适用于iPad 2型号,我已经提到它适用于iPad Air和其他型号.

解决方法

对于Reachability类中较旧的iPad设备,您可以尝试使用界面“en1”而不是“awdl0”.您可以添加if条件以检查“en1”接口以及“awdl0”接口.

AFAIK“awdl0”界面在iPhone 4 / 4s上不起作用,但对iPad 2不确定.

猜你在找的iOS相关文章