Диалоговое окно предупреждения внутри asynctask в android

Мне нужно показать Alertdialog внутри Asynctask в android, но это не будет отображаться в исключении throws.

 05-13 14:59:35.522: WARN/System.err(1179): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare() 

Благодарю.

Solutions Collecting From Web of "Диалоговое окно предупреждения внутри asynctask в android"

Невозможно управлять пользовательским интерфейсом из фонового потока. Для этого используйте обработчик или методы onPre / Post для AsyncTask.

Покажите диалог в методе onPostExecute (), а не doInBackground.

надеюсь, это поможет

Я думаю, что это может быть вашей проблемой – вы не можете показать диалог изнутри doInBackground.

Нет проблем с достижением потока пользовательского интерфейса из backGround thread (более ясно: из метода doInBackground ()): вам просто нужно запустить runOnUiThread() в вашем контексте. В моем случае я doInBackground() его из doInBackground() .

 ContactsViewerActivity.this.runOnUiThread(new Runnable() { @Override public void run() { AlertDialog.Builder builder = new AlertDialog.Builder(ContactsViewerActivity.this); builder.setTitle("Connection problem..") .setMessage("Could not connect to " + url + ", " + "try changing your host in the settings to default one :" + getResources().getString(R.string.default_server_ip) + ":" + getResources().getString(R.string.default_server_port)) .setNegativeButton("OK", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); AlertDialog alert = builder.create(); alert.show(); } }); 

Вы можете вызвать publishProgress () прямо из doInBackground () и манипулировать с пользовательским интерфейсом в onProgressUpdate ().