可达性未检测到 WiFi
Posted
技术标签:
【中文标题】可达性未检测到 WiFi【英文标题】:Reachability Not Detecting WiFi 【发布时间】:2013-06-30 19:15:56 【问题描述】:我遇到了 Reachability 问题,没有检测到 Wifi 处于活动连接状态。我在我的项目中导入了标准的 Reachability 类,并在我执行的操作中检测 Wifi 是否可用以确定实际执行的操作。
Reachability *reachability = [Reachability reachabilityWithHostName:@"www.google.com"];
NetworkStatus status = [reachability currentReachabilityStatus];
NSLog(@"%i", status);
if (status == ReachableViaWiFi)
//do wifi action
else
//do non wifi action
无论如何,它总是执行 else 动作。状态日志返回“2”。有什么想法吗?
更新:经过多次测试,我确定由于某种原因,此应用程序上的 WWAN 和 WIFI 被颠倒了。在关闭wifi的真机上运行时显示连接状态为WIFI,连接到WIFI网络时显示连接状态为WWAN。
【问题讨论】:
你添加了 SystemConfiguration 框架吗? @rezand 是的,我做到了。 Reachability 的标头显示了以下版本:文件:Reachability.h 摘要:基本演示如何使用 SystemConfiguration Reachablity API。版本:2.0.4ddg / / Andrew W. Donoho 于 2009 年 8 月 11 日做出的重要补充。这是 Apple 的 Reachability v2.0 类的派生作品。以下许可证是新的 BSD 许可证,带有 OSI 推荐的个性化设置。 opensource.org/licenses/bsd-license.php> 好吧,我还没有使用它,但我的意思是我要复制你的代码,看看我得到了什么结果,如果到那时没有人回答,如何解决.. 奇怪的是我以前用过这段代码,从来没有遇到过这个问题,即使在过去使用相同代码的项目中,它也不会像这样。 也许谷歌今天要搞砸你的编程......是的,它很奇怪,当你弄清楚时会是一件可笑的小事 【参考方案1】:我们查看了编程并将其缩小到开关案例问题,可达性返回 2,但另一个类中的开关案例返回“wwan”而不是案例 2 的“wifi”,请检查此答案或关闭这个问题,所以其他人不会尝试回答已解决的问题,谢谢。
【讨论】:
以上是关于可达性未检测到 WiFi的主要内容,如果未能解决你的问题,请参考以下文章