【问题标题】:How to control whether iOS uses 3G/GSM network of WiFi for HTTP request如何控制iOS是否使用WiFi的3G/GSM网络进行HTTP请求
【发布时间】:2011-08-23 07:21:53
【问题描述】:

当我通过 HTTP 和 WiFi 连接到本地 Web 服务器时,我的 iOS 设备出现了奇怪的行为。这是设置:

  • iOS 设备连接到本地 WiFi 网络,但没有互联网连接。一个小型嵌入式 Web 服务器连接到同一个 WiFi 网络,我想通过 HTTP 连接到该 Web 服务器。此网络服务器的响应时间在 0.2 到 2 秒之间变化。
  • iOS 设备还连接到具有互联网访问权限的 3G 网络。

在此设置中,大多数 HTTP 请求在默认时间间隔 10 秒后超时,没有任何响应。当我通过打开飞行模式并有选择地再次启用 WiFi 来关闭 3G 网络时,不再丢弃一个请求。就好像 iOS 大部分时间(但并非总是)尝试通过 3G 网络连接到本地 Web 服务器,当然,这肯定会失败。

据我了解,无法控制 iOS 设备使用哪个网络接口。很高兴听到您对此设置的意见和经验。

在此先感谢和欢呼, 乔治

【问题讨论】:

    标签: ios http network-interface


    【解决方案1】:

    本地 WWW 服务器是否与 iOS 设备中的 WLAN 卡在同一网络中运行?如果没有,请配置它们,然后 IP 堆栈将知道不要尝试将“本地”流量发送到 3GPRS 卡,而是发送到 WiFi 卡(它将为该本地网络设置默认路由并将相应地路由流量)

    【讨论】:

    • Web 服务器运行在与 iOS 设备连接的同一 WiFi 网络中。我的假设是它像你描述的那样工作,但它不在我的设备上。我还用另一个 iOS 版本的另一个 iOS 设备进行了测试,但遇到了同样的问题。顺便说一句,我正在运行 iOS 4.3.3。
    【解决方案2】:

    似乎无法控制此界面。我想它甚至在架构上也有意义。我确实对丢包问题进行了更多调查,并希望分享结果。经过大量测试,我的结论是 iPhone 4 上的 3G 硬件干扰了 WiFi 硬件(或软件)。 iPhone 3GS 或 iPad1 3G 上没有出现此问题。 iPhone 4GS 的时间到了。

    【讨论】:

    • iOS上没有控制界面的方法还是真的吗?从 5.0(Lollipop,2014 年发布)开始,Android 可以控制使用哪个网络发送请求。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多