当我登录到我的应用程序时,一个异步任务开始执行,当该任务正在执行并且我注销应用程序时,该任务仍在运行并在一段时间后给我结果(尽管我已经注销)。我想问一下,有没有办法取消那个任务,这样它就不会给我结果?
class AsyncClass extends AsyncTask<>{
@Override
protected String doInBackground(Void... params)
{
if(isCancelled())
{
Log.d("isCancelled", iscancelled());
}
//call the webservice
}
}
现在我要打电话的还有其他课程
if(asyncTaskObject!=null){
asyncTaskObject.cancel(true);
asyncTaskObject=null;
}
但是里面的 Log 语句iscancelled()
永远不会被调用。