55

NSURLConnection現在、ネットワークの大部分を使用しているアプリがあります。に移行したいのはNSURLSession、Apple がそれが進むべき道だと言っているからです。

私のアプリは、クラス メソッドNSURLConnectionを介して の同期バージョンを使用するだけです。+ (NSData *)sendSynchronousRequest:(NSURLRequest *)request returningResponse:(NSURLResponse **)response error:(NSError **)errorこれはNSBlockOperation実行中に行うNSOperationQueueため、メイン キューを不必要にブロックすることはありません。このようにすることの大きな利点は、操作を相互に依存させることができることです。たとえば、データを要求するタスクをログイン タスクの終了に依存させることができます。

内での同期操作のサポートは見たことがありませんNSURLSession。私が見つけることができるのは、それを同期的に使用することさえ考えていることで私を嘲笑し、スレッドをブロックするのは恐ろしい人であるという記事だけです。罰金。しかし、NSURLSessionTasks を相互に依存させる方法はありません。それを行う方法はありますか?

または、そのようなことを別の方法で行う方法についての説明はありますか?

4

3 に答える 3

2

@Rob からの次のドキュメント ノートを考慮して、返信を解決策として投稿することをお勧めしますNSURLSession.dataTaskWithURL(_:completionHandler:)

このメソッドは、NSURLConnection の sendAsynchronousRequest:queue:completionHandler: メソッドの代替として意図されており、カスタム認証とキャンセルをサポートする機能が追加されています。

于 2014-11-21T10:06:05.323 に答える