0

我开发了 3 个 Android 应用程序和 2 个 Iphone 应用程序,因为我来自 Java 背景,所以我获得了使网络/Web 服务调用正确地在不同线程上工作的最佳实践。进行除主线程之外的并行多个调用。

但是,在为几乎 2 个 iphone 应用程序跨 iOS 平台时,我还没有得到哪些是 iOS Web 服务调用模型的最佳实践,因此 UI 不会受到影响。

我使用了 NSURLConnection 及其回调方法。

谁能帮我举个例子?

4

3 回答 3

3

在任何情况下,我都会评估现有的第 3 方网络框架/库(如使用 java),然后从头开始并自己实现!

例如从AFNetworking开始。这是最成功的之一,并在后台使用 NSURLConnection 和 NSOperation(以及用于异步请求的 NSOperationQueue)等。

更新

Alamofire是 AFNetworking 的 Swift 版本。

于 2012-11-08T11:14:18.023 回答
0

您可以使用 NSURLConnection 类发出请求,这是链接

它在我的申请的请求/响应方面帮助了我很多。

于 2012-11-08T11:25:24.720 回答
0

在我看来,最佳实践通常是:

  • 尽可能使用 NSURLConnection
  • 使用 NSURLConnection 时,使用异步 api,通过委托 + 调用“开始”,通常来自主线程
  • 使用 NSURLConnection 时,不要使用 sendSynchronousRequest
  • 通过使用块和 dispatch_async 或系统中任何其他可用的 APIS 在后台解析任何传入数据以实现并发
  • 如果您有一个非常复杂的服务器 API,需要大量繁重的代码来解析等,并且您没有时间使用 NSURLConnection 来实现所有这些,请使用第 3 方框架,如 RestKit
于 2012-11-08T11:52:33.140 回答