Ios 无法检测wifi仅在iPad 2机型上打开或关闭
我使用下面的代码片段来检测wifi是否启用。 此代码在iPad或Air上运行良好Ios 无法检测wifi仅在iPad 2机型上打开或关闭,ios,objective-c,iphone,ipad,Ios,Objective C,Iphone,Ipad,我使用下面的代码片段来检测wifi是否启用。 此代码在iPad或Air上运行良好 (BOOL) isWiFiEnabled { NSCountedSet * cset = [NSCountedSet new]; struct ifaddrs *interfaces; if( ! getifaddrs(&interfaces) ) { for( struct ifaddrs *interface = interfaces; interface;
(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;
}
对于iPad2代机型,此代码不起作用,即返回0。
请在这方面帮助我,即用任何其他方法检测此型号上的wifi开启或关闭
这个问题只针对iPad2机型,我已经提到过它对iPadAir和其他机型很好。对于可访问性类中的旧款iPad设备,您可能可以尝试使用interface“en1”而不是“awdl0”。您可以添加if条件来检查“en1”接口和“awdl0”接口
AFAIK“awdl0”界面在iPhone4/4s上不起作用,但对iPad2不太确定。您可以使用苹果的
可达性
类,并将其转换为迅捷版本。该问题的可能副本针对上述型号above@Manishamxmlc链接的重复问题中的代码与您使用的不同,并且不硬编码接口名称awdl0
。它应该适用于所有模型。@DashWuff-我调试了代码,对于iPad2,它返回false,即使接口是awdl0。