我在项目中使用AsynTask并执行一些任务,但是当我更改活动时,后台任务停止。 现在,当我的活动发生变化时,如何使我的线程保持活动状态?
我的班级:
private class mytask extends AsyncTask<Void, Void, AlertDialog.Builder>{
Context contex;
mytask(Context contex)
{
this.context = context
}
protected AlertDialog.Builder doInBackground(Void... voids) {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
AlertDialog.Builder alertDialog = new AlertDialog.Builder(context ,android.R.style.Theme_Material_Dialog_Alert);
alertDialog.setTitle("Tittle");
alertDialog.setMessage("Message");
return alertDialog;
}
@Override
protected void onPostExecute(AlertDialog.Builder Builder) {
super.onPostExecute(Builder);
Builder.show();
}
}
MainClass:
new mytask(this).execute()
Intent intent = new Intent(this,NewClass.class);
startActivity(intent);
答案 0 :(得分:0)
对于后台任务,您应该使用线程或服务。因此,您的后台任务不会在活动更改后结束。