我正在使用下面的代码片段来检测是否启用了wifi.
此代码适用于iPad Air或
此代码适用于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不确定.