-1

私のアプリには、サーバーからデータを取得するために使用するクラスがあります。それは私が作ったすべてのものでうまくActivityいきますが、今回Serviceは私にとって100%新しい(サービス)サブクラスでそれを使いたいです。

この行に問題が見つかりました:

InputStream inputStream = urlConnection.getInputStream();

これは、私の Web クラスが例外を発生させる場所です。

android.os.NetworkOnMainThreadException

アクティビティとサービスでの使用に大きな違いはありますか?

4

2 に答える 2

1

このエラーandroid.os.NetworkOnMainThreadExceptionは、メイン スレッド "UI Thread" でネットワーク指向のタスクを実行していることを意味します。Android では、ネットワーク呼び出し中に UI が応答しなくなるため、これを禁止しています。

これを解決するには、別のスレッドでネットワーク呼び出しを行う必要があります。AsyncTaskはこれに最適です。

于 2012-10-27T00:49:20.993 に答える
-1

わかりました、これが問題でした。私は自分Serviceで AsyncTask を使用しましたが、現在はうまく動作しています。

于 2012-10-27T00:48:08.660 に答える