【发布时间】:2012-12-19 01:40:01
【问题描述】:
这是场景:
- 活动“A”创建并执行 AsyncTask“T”
- 当“T”在后台运行时,用户离开“A”
- 用户如何离开“A”的示例:
- 按“go”并启动 Intent 启动 Activity“B”(在我的应用中最常见)
- 按“返回”按钮(在我的应用中也很常见)
- 旋转屏幕,不带 android:configChanges="orientation|keyboardHidden"
- 等
- 用户如何离开“A”的示例:
- “T”已经完成它的工作并返回,试图在“A”上调用函数“F”来更新“A”的 UI,但是“A”……“消失了”?!
如何确保上述内容不会“轰炸”?
【问题讨论】:
-
AsyncTask 需要完成吗?当 A 的
onPause()被调用时,你总是可以取消它。 -
我认为在移动到新活动时取消 AsyncTask 可以完成这项工作,但我会让@iagreen 回答这个问题。
-
是的,取消是一种常见的方法,在很多情况下都是可以接受的。我假设您希望线程完成。
标签: android