前提・実現したいこと
AsyncTask内のdoInBackgroundで処理をしている時に、
特定の条件でPopupWindowを呼び出したい
発生している問題・エラーメッセージ
java.util.concurrent.ExecutionException: java.lang.RuntimeException:
”Can't create handler inside thread that has not called Looper.prepare()”
該当のソースコード
Java
1try { 2 // サーバーのポート番号を指定 3 clientAnswerSocket = new ServerSocket(50005); 4 // 正解を受信するまでループ 5 while (loop) { 6 // 接続待機 7 acSocket = clientAnswerSocket.accept(); 8 // 受信ストリームの取得 9 isr = new InputStreamReader(acSocket.getInputStream()); 10 br = new BufferedReader(isr); 11 ra = br.readLine(); 12 // double型に変換 13 answer = Double.parseDouble(ra); 14 // ループを抜けるか判定 15 if(question == answer) { 16 loop = false; 17 } 18 else { 19 makeMissPopup(); 20 } 21 // ソケットを閉じる 22 acSocket.close(); 23 } 24 } 25 // 例外処理 26 catch (IOException e) { 27 e.printStackTrace(); 28 } 29 finally { 30 try { 31 // 解答の表示 32 if(br != null) { 33 br.close(); 34 } 35 // ソケットを閉じる 36 acSocket.close(); 37 } 38 // 例外処理 39 catch (IOException e) { 40 e.printStackTrace(); 41 } 42 }
試したこと
question == answerのif文で行うelseでHandlerを呼び処理をしましたが、同じエラーが発生しました。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。