【发布时间】:2012-11-27 13:14:28
【问题描述】:
我想知道停止异步任务 frm 运行的最佳方法是什么。
我试过了
@Override protected void onCancelled() {
super.onCancelled();
mTask.cancel(true);
}
我也试过了
asyncTaskObject.cancel(true);
这在与事件关联时特别有效。
但假设场景是——有 4 个 AsyncTask。第一个叫第二个,第二个叫第三个,第三个叫第四个。当用户进入活动时,没有对话框。 否则我们可以在那里使用 onCancel 方法。 当用户单击页面上的任何位置时,如果用户没有单击任何位置,则会出现对话框,则不会显示对话框,但异步任务会在后台继续运行。假设用户单击“返回”按钮或导航图标到主页页面 user.is 从当前活动中取出。但是异步任务继续在后台运行,最终应用程序崩溃。我已经习惯了 onBackPressed 中的取消方法。但问题是您无法确定哪个任务正在运行并且应用程序再次崩溃。
解决办法是什么?
【问题讨论】:
标签: android events android-asynctask