2011-04-21 11 views
0

私はこのクライアントをWebサービス用に構築しています。 ほとんどすべてがサーバーにリクエストを行い、今私がやっていることは、新しいスレッドを開き、すべてのリクエストを同じスレッドに入れます。つまり、スレッド内ですべてのリクエストをシリアルの方法で行い、それがユーザーを待っていることになります。アプリケーションの高速化を目指して、すべてのサーバーが非同期で要求したいと思っています。AsyncTaskを使用してAndroidで非同期HTTPリクエストを実装する

私は必要なすべてのHTTP要求を処理するNetworkingクラスを持っています。すべての要求が独自のスレッドを開始するようにしています。

私はこれにASyncTaskを使用することを考えていますが、私はASyncTaskで私のHTTP要求(GET、POST、PUTなどのクラス)ごとにクラスが必要であることに気付きました。これが最善の方法ですか?これを行うためのより効率的な方法がありますか?あなたは何をお勧めしますか?

+1

なぜAsyncTaskを使用すると、httpリクエストごとに1つのクラスを作成する必要があると思いますか? 'AsyncTask'は、ある仕事を別のスレッドにオフロードし、実装パターンを強制しません。単に' doInBackground'からNetworkingクラスを呼び出します。 –

+0

denis.solonenko:hmmm。それは考慮すべきアイデアです。私はそれがうまくいくかどうか試してみるつもりです。 – DallaRosa

答えて

1

デザインの決定は、あなたが何をしているかによって決まります。ユーザーが何らかのデータを待っているか、バックグラウンドタスクが完了した後に通知されているかによって、タスクを実行する方法はさまざまです。

私はあなたがAndroidのさまざまなタスクの仕組みを比較するthisの投稿を見ることをお勧めします。これ以外にも、java.util.concurrentパッケージを実行します。

これは具体的な回答ではありませんが、私から取っておきます。主にどのようにユーザーにサービスを提供しようとしているかによって異なります。だから、アイデアを提案することしかできません。お役に立てれば。

+0

ありがとうございます!はい、それは設計上の決定であり、私は本当に何を求めているかについての洞察を求めています。その記事は本当に面白いですし、私はそれを読んでいます! – DallaRosa

関連する問題