0

iOSアプリ(6.0以降)を作成中です。フローは次のように機能します。

  1. アプリのアイコンをタップします
  2. アプリの読み込みを開始し、最初のビュー(マップビュー)を表示します
  3. アプリに場所が決まったら、httpリクエストを介してAPIからアプリに関する情報を取得します
  4. そのデータを使用して、いくつかのマップ注釈に入力します

2で、アプリは4の終わりまで完全に応答を停止することがわかりました。これは壊れたエクスペリエンスのように感じられ、アノテーションの追加が完了するまでアプリがフリーズしたように感じます。

このブロッキング動作を回避するにはどうすればよいですか?答えはタスクのスレッド化に関係していると思いますが、どこを見ればよいのか、それが実際に解決すべき問題なのかはわかりません。

4

1 に答える 1

1

サーバーからデータを取得するには、非同期リクエストを使用する必要があります。そうしないと、アプリケーションはリクエストが終了するまで待機します。

NSURLConnectionの次のクラスメソッドのいずれかを使用できます

connectionWithRequest:delegate:

sendAsynchronousRequest:queue:completionHandler:

またはAFNetworkingのようなフレームワークを使用します

于 2013-03-25T16:23:36.707 に答える