に問題がありHandler
ます。これは私のアプリが行うことです:
- 新しいスレッドが作成されます。
- スレッドはデータをダウンロードし、メッセージに入れます。
- スレッドはメッセージをハンドラに送信します。
そして、ここから問題が始まります。ログアプリによるとNullPointerException
、次の行がスローされます。
replyTo.sendMessage(msg);
すべてがうまくいくこともあれば、うまくいかないこともあります。ハンドラーは、新しいスレッドを作成する前に配置されます。これはハンドラのコードです:
Handler responseHandler = new Handler() {
public void handleMessage(Message msg) {
ad.dismiss();
populateListWithVideos(msg);
};
};
なぜこれが起こっているのか、何か考えはありますか?
編集: これが私の Logcat です。読み方:
- "Powstała nowa biblioteka" - 新しい ArrayList が作成されました
- "Array" - JSONArray が受信されました
- "Obiekt"/"Tytuł" + number - JSONArray からのオブジェクト/文字列が受信されました (number - オブジェクト番号)
- "ドダノ ド ビブリオテキ" - オブジェクトから受け取った文字列がビデオとして配列に追加されました
- 「Nowa biblioteka」 - ArrayList から作成された新しいライブラリ
- "Serializable" - バンドルにシリアル化されたライブラリ
- "Otrzymano wiadomość" - Message.obtain() を使用して取得したメッセージ
- "Ustalono wiadomość" - Message.setData() を使用して Message に入れられたバンドル
"Wysłano wiadomość" - Handler に送信されたメッセージ
02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Powstała nowa biblioteka 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Array 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Obiekt0 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Tytuł0 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Obiekt1 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Tytuł1 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Obiekt2 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Tytuł2 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Obiekt3 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Tytuł3 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Obiekt4 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Tytuł4 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Obiekt5 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Tytuł5 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Obiekt6 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Tytuł6 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Obiekt7 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Tytuł7 02-07 13:17:13.885: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki ... 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Obiekt48 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Tytuł48 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Obiekt49 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Tytuł49 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Dodano do biblioteki 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Nowa biblioteka 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Serializable 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Otrzymano wiadomość 02-07 13:17:13.905: D/Ignaś TV(24913): Thread-6447| Ustalono wiadomość 02-07 13:17:13.905: E/Ignaś TV(24913): Thread-6447| Koniec listy //Error 02-07 13:17:13.905: E/Ignaś TV(24913): java.lang.NullPointerException 02-07 13:17:13.905: E/Ignaś TV(24913): at com.ignas.ignastv.service.task.GetData.run(GetData.java:142) 02-07 13:17:13.905: E/Ignaś TV(24913): at java.lang.Thread.run(Thread.java:856)