问题标签 [reachability]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
304 浏览

iphone - 如何判断 iPhone 的 Wi-Fi 是否开启?

我不是在谈论通过 Wi-Fi 进行实际通信,因此测试主机的可达性在这里不适用。iOS 使用 SSID 来帮助定位您;您不必连接到 Wi-Fi 网络即可获得该好处,但您必须在手机上激活 Wi-Fi。

我想警告用户,如果他们没有激活 Wi-Fi 并且他们在室内,他们将获得糟糕的位置数据。有人知道这是否可能吗?

谢谢!

0 投票
1 回答
197 浏览

iphone - 我是否需要在我的 iPhone 应用程序中按下每个按钮时不断检查连接?

我正在构建一个视频流应用程序,它允许用户创建播放列表并具有定期更新的内容。它有 4 个主视图,每个视图都有一个视频列表,当视图加载并缓存一段时间(而不是应用加载时)时,其内容以 xml 加载

因此,基本上在任何时间,该应用程序都需要有效的互联网连接。

我已在 plist 中将“应用程序使用 wifi”设置为“是”。

我已经测试了这个优秀答案中看到的可达性示例代码如何检查 iOS 或 OSX 上的活动 Internet 连接?并将其添加到我的每个视图 viewDidLoad 方法中。

我的问题是我应该多久以及在哪里实施这个?我是否将它包含在每个视图 viewDidLoad 中是正确的,还是应该创建一些我可以更频繁地调用的其他类?

非常感谢

0 投票
2 回答
1630 浏览

iphone - 如何在一个项目中同时使用 2 个 Reachability 类?

我正在尝试使用在stackoverflow上找到的以下代码检查网络可达性。唯一的问题是由于使用了 ASIHTTPRequest 类,我的项目中已经有了可达性类。由于以下错误,我无法使用 Apple 的默认可达性代码构建我的项目:

我想我的问题是如何让这里的代码ASIHTTPRequest 的 Reachability 类一起使用?谢谢。

0 投票
1 回答
1010 浏览

objective-c - 丢失连接时 ASIHTTPRequest 没有错误

我正在下载文件(使用 apache tomcat 6.0.32)。当我断开连接(关闭 tomcat)时,有时 ASHITTPRequest 会产生错误,但有时(大多数情况下完全正确...所有时间完全正确!只有在开始时没有连接时才会发生错误)它会像所有正确的一样结束工作。

所以有一个问题:为什么会发生这种情况,如果连接正确丢失,我该如何查看。

非常感谢!

更新:

尝试通过 TCPMon 发送请求,然后停止它(TCPMon)并得到相同的结果: ASIHTTPRequest 认为下载正确完成。

更新:

响应头:

响应状态消息:

更新:

如果手动断开计算机(断开电缆)并得到这个:

有时 ASIHTTPRequest 会等到超时,然后下一个请求会出现连接错误。

有时错误发生在我断开连接的时候。

有时错误不会及时发生我断开连接:下载进度丢失并且(如果再次建立连接)文件从头开始下载。

如果关闭端口 ASIHTTPRequest 认为下载成功。

看不懂这个逻辑。。。

解决方案:

我通过比较标头中的 Content-Length 和读取的总字节数来解决问题:

所以我可以检查我是否得到了所有数据,如果没有:保持错误。在其他情况下(如手动断开连接)ASIHTTPRequest 以适当的方式工作并自行生成错误。

0 投票
2 回答
7030 浏览

iphone - 如何使用 iPhone 中的可达性代码找到可以访问的服务器?


我有客户端服务器说“http://abc.com”,我想检查该服务器是否响应。
如何使用苹果的可达性代码检查这一点?
正如我看到的代码,但无法获得在哪里写我的客户的 url 来检查这一点。
请给我建议。

0 投票
0 回答
1056 浏览

crash - 使用 SCNetworkReachabilityGetFlags 和 iOS 应用程序在设备上立即崩溃

我正在使用 SCNetworkReachabilityCreateWithName 和 SCNetworkReachabilityGetFlags 来测试我的 iOS 设备中的网络可用性。当我在模拟器中运行应用程序,或者在设备上运行它,但连接到调试器时,一切都非常酷。但是,当我在测试设备上运行应用程序但与调试器分离时,我遇到了崩溃。[编辑:刚刚意识到我没有指出在哪里:在调用 SCNetworkReachabilityGetFlags] 奇怪的是,它不会在我第一次运行检查时发生。它发生在第二次检查。并且使用 try/catch 绝对没有任何作用。

崩溃是立竿见影的。异步轮询发生并且应用程序超时时没有延迟。这是即时的。

这是完全有效的。我完全不明白为什么会发生这种情况。我正准备参加一个会议来展示该应用程序及其随附的网络应用程序。我正打算走在地板上炫耀它。但现在我基本上只能将我的 iPhone/iPod 拴在展位上的电脑上。

有任何想法吗?任何不让我与计算机保持联系的解决方法?以及解决此问题的任何长期解决方案?每次执行任何网络活动时,我都会使用此方法检查网络可用性。我正在将我的数据同步到云端,并在每次同步时运行此检查。如果网络连接突然中断,我认为有必要让用户了解情况。

帮助????

这是代码片段。

}

0 投票
1 回答
1870 浏览

ios - 是否已弃用“关闭飞行模式”警报?

我想我在某处读到它已被弃用?还有什么选择?

我说的是 info.plist 中的布尔值:SBUsesNetwork = YES。

显示的警报说:

关闭飞行模式或使用 Wi-Fi 访问数据

它有一个非常简洁的“设置”按钮,可将您带到设置应用程序。


我知道 Apple 的Reachability示例代码很棒。但我不知道如何以编程方式显示此警报或类似警报,它可以将您带到设置应用程序。

0 投票
2 回答
8246 浏览

ios - iOS 网络可达性 - 似乎无法正常工作

我正在关注如何在 iOS 或 OSX 上检查活动的 Internet 连接?http://developer.apple.com/library/ios/#samplecode/Reachability/Introduction/Intro.html来测试连接性,但我遇到了一些非常基本的问题。

例如,我在另一台机器上运行 .NET API,然后尝试通过我的 mac mini 连接到它。

1)当 IIS 运行时,一切正常,我很高兴我能正常工作!

2)我可以完全关闭 IIS(显然,主机不可访问)但我的reachabilityWithHostName 仍然报告主机是可访问的。

有任何想法吗?

0 投票
2 回答
9068 浏览

iphone - 在 iPhone 上,状态更改的网络可达性通知是强制性的吗?

许多可达性测试代码似乎包含“通知”概念,因此当网络重新启动时,用户可以得到通知。

  1. 我需要实现“通知”部分吗?每当用户尝试需要网络连接但不可用的东西时提醒用户是否可以接受?(连接恢复时不通知)

  2. 我看到示例代码处理纯网络可用性(如果设备连接到 wifi、3g 等)以及对特定 ip 的可达性。我的应用需要在适当的时候连接到特定的 IP 地址。在这种情况下,只需要在适当的时间无法访问该 ip 就发出警报,还是我需要处理更多的事情?(例如放置不同的消息以提醒用户打开网络并提醒用户我的 ip 不是可达)

谢谢

0 投票
1 回答
4430 浏览

iphone - (iphone) 特定 IP/端口的可达性测试?

我查看了来自 Apple 的 Reachability 示例和来自“Iphone developer's cook book”的另一个示例

以下是测试 ip/port 可达性的步骤

  1. 用给定的 ip/port 构造 sockaddr_in 变量。
  2. 使用地址调用 SCNetworkReachabilityCreateWithAddress
  3. 调用 SCNetworkReachabilityGetFlags 并查看是否设置了 kSCNetworkFlagsReachable。

我发现无论我测试什么有效(有效范围)ip/port,我的代码都说它是可访问的,即使在我 ping 或 telnet 测试时它们实际上是不可访问的。
(我看过其他 SO 帖子,其中对特定 ip 的可达性测试总是成功) 可达性可达性WithAddress 不起作用

是 SCNetworkReachability.. 调用仅检查参数(IP 地址或主机名)的有效性吗?即,他们是否真的向给定地址发送数据包(或连接)以测试可达性?

我可以自己实现带有超时的异步连接,但是超时不应该被苹果评论者拒绝多长时间是微妙的。(我担心如果时间太长,苹果评论者可能会认为我的应用程序没有处理网络可达性全部)

谢谢