в моем приложении Я пытаюсь извлечь данные из webservice с помощью AsyncTask. В этом коде я поставил длительную работу в AsyncTask, но я получаю эту ошибку:Android Looper.prepare() в AsyncTask
FATAL EXCEPTION: Thread-10
java.lang.ExceptionInInitializerError at
icq.ms.Activities.ActivitySendArchive$4.run(ActivitySendArchive.java:298)
01-05 10:52:30.905: E/AndroidRuntime(467):
Caused by: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
Мой код:
Thread request_thread = new Thread() {
@Override
public void run() {
new LongOperationList().execute ("");
}
};
request_thread.start();
LongOperationList
блок кода:
private class LongOperationList extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... params) {
G.db.deleteArchive (G.config_username);
try {
getRequestFromServer (0, 10);
} catch (Exception e) {
if(G.DEBUG) G.DebugLog.log(e + "");
}
return "";
}
@Override
protected void onPostExecute(String result) {
progress_bar.setVisibility (View.GONE);
}
@Override
protected void onPreExecute() {}
@Override
protected void onProgressUpdate(Void... values) {}
}
как позвонить Looper. Подготовьте() в AsyncTask?
Вы уже использовали AsyncTask для выполнения сетевой фоновой операции, поэтому зачем вам выполнять свою задачу async в другом потоке ??? – RockStar
не вызывайте AsyncTask из потока – Anjali
@RockStar Спасибо, сэр. моя проблема решена, –