我知道这个问题似乎是许多其他人的欺骗,然而,我不觉得这个简单的情况是很好的解释这里。来自 Android 和黑莓的后台,如果没有可用的连接,通过 HTTPUrlConnection
发出的请求会立即失败。这似乎是完全正常的行为,我很惊讶地发现,iOS 中的 NSURLConnection
没有模仿它。
我知道苹果公司(和其他已经扩展它的公司)提供了一个 Reachability
类来帮助确定网络状态。我很高兴第一次看到这个,并完全期待看到类似于 bool isNetworkAvailable()
的东西,但令我惊讶的是,我发现了一个复杂的系统,需要通知注册和回调,以及一堆似乎不必要的细节。一定有更好的办法。
我的应用程序已经能够很好地处理连接故障,包括没有连接。用户被通知失败,应用程序继续前进。
因此,我的要求很简单: 我可以在所有 HTTP 请求之前调用单个同步函数,以确定是否需要实际发送请求。理想情况下,它不需要设置,只需返回一个布尔值。
这在 iOS 上真的不可能吗?