1

我正在使用 iOS 7.1 (XCode 5.1),最近下载了 Tony Million 的 Reachability 库和后来的Apple 示例代码。测试时,当我关闭 WiFi 时,两者都成功检测到,但是重新连接后主机名仍然无法访问。

试图确定我查看 HTTP 流量的原因,并且似乎不再使用 remoteHostName 而是三个随机主机名请求(例如。http://jcyoxhjblg)。

编辑上面的陈述是不正确的,这三个连接似乎与可达性无关,而是在重新连接时执行的 Chrome DNS 功能。我仍在研究为什么它在重新连接时仍然无法访问。

我已经在本地模拟器上使用 www.apple.com 和 www.google.com(有和没有 http://)对两个示例代码(下面是苹果的摘录)进行了测试。两者都提供上面显示/提到的结果。

我是否缺少对如何从 Reachability 中提供主机名可达性的一些基本了解?

NSString *remoteHostName = @"www.google.com";
self.hostReachability = [Reachability reachabilityWithHostName:remoteHostName];
[self.hostReachability startNotifier];
[self updateInterfaceWithReachability:self.hostReachability];
4

1 回答 1

-1

我认为你应该初始化另一个 Reachability 对象并在每次应用程序从后台唤醒时调用“[self.hostReachability startNotifier]”,因为方法“startNotifier”取决于 CurrentRunloop 是否正在运行。

于 2014-03-12T02:16:27.863 回答