【发布时间】:2014-08-26 05:27:52
【问题描述】:
我的应用有一个启动器活动,它查看用于调用它的意图并根据意图调用许多活动之一(我们称之为子活动 B)。启动器活动还启动 AsyncTask 以在后台对 SharedPreferences 进行一些清理。后台任务完成后,启动器 Activity 会调用 finish() 自行终止。
如果活动B终止时后台任务仍未完成,我想避免返回启动器活动。我该怎么做?
我正在考虑在清单中的活动定义中使用android:noHistory="true"。然而,noHistory 的description 说:
“当用户离开它并且它不再在屏幕上可见时,是否应该从活动堆栈中删除活动并完成(调用它的完成()方法)”。所以我担心这个活动可能会在它完成运行它的后台任务之前被终止。
是否保证允许我的后台任务运行完成?有没有更好的方法来做到这一点?
【问题讨论】:
标签: android android-intent android-asynctask