17

非同期呼び出しは GCD で簡単に実行できるのに、AFNetworking の非同期メソッドを使用する必要があるのはなぜですか?

dispatch_async(bgQ, ^{

                //NSURLConnection code

                dispatch_async(dispatch_get_main_queue(), ^{
                    //UI code
                });
});
4

1 に答える 1

37

これについては、AFNetworking FAQの上部に詳細に回答されています。

とをNSURLConnection提供します+sendAsynchronousRequest:queue:completionHandler:+sendSynchronousRequest:returningResponse:error:、AFNetworking を使用することには多くの利点があります。

  • AFURLConnectionOperationおよびそのサブクラスは から継承しNSOperation、リクエストのキャンセル、中断/再開、および による管理を可能にしますNSOperationQueue
  • AFURLConnectionOperationまた、アップロードとダウンロードのストリーミング、認証チャレンジの処理、アップロードとダウンロードの進行状況の監視、キャッシュの動作や要求の制御を簡単に行うこともできます。
  • AFHTTPRequestOperationおよびそのサブクラスは、HTTP > ステータス コードとコンテンツ タイプに基づいて、成功したリクエストと失敗したリクエストを区別します。
  • AFNetworking にはNSData、JSON、XML、画像、プロパティ リストなど、より使いやすい形式に変換するメディア固有の要求操作が含まれています。
  • AFHTTPClientは、デフォルト ヘッダー、認証、ネットワーク到達可能性の監視、バッチ操作、クエリ文字列パラメーターのシリアライゼーション、マルチパート フォーム リクエストなど、Web サービスとやり取りするための便利なインターフェイスを提供します。
  • UIImageView+AFNetworking画像を非同期にロードする便利な方法を追加します。
于 2012-10-30T06:29:18.707 に答える