我正在开发一个使用网络的 iPhone 应用程序。 iPhone 通过 HTTP 请求与我的服务器通信,应该可以在 WiFi 和 3G 上工作。
我目前使用 NSURLConnection initWithRequest
向我的服务器发送异步请求并获得响应(但我很快就会转向使用 ASIHTTPRequest
库)
有一件事我不确定,
当用户设备从 WiFi 切换到 3G(或相反)时会发生什么?
我知道不能使用相同的连接,必须建立新的连接。
但是我需要做些什么来处理这种情况,还是 NSURLConnection
会自动处理它?<br/>
例如,如果我发送了一个请求,并且在获取响应的过程中连接发生了变化,这个请求会发生什么情况?
我看过 Apple 的 Reachability 示例代码,我知道我可以使用 Reachability 来检测网络变化,但不确定如何处理这些变化。
最佳答案
当连接从 3G 变为 WiFi 时,当前请求将导致失败状态,是的,您将需要做一些事情来重新建立连接(重启、恢复等...)
话虽如此,我不确定,但我认为 ASIHTTPRequest
有一种机制可以解决这些问题,例如当您请求下载文件时
关于objective-c - Objective-C - 从 WiFi 切换到 3G,反之亦然,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11176833/