【发布时间】:2013-07-26 18:33:20
【问题描述】:
我想构建一个可以在后台下载图像的“智能下载器”(使用 AsyncTask)。 有两个Activity,A和B。在Activity A中,我可以选择我要查看的图片列表,(如果没有下载过就先下载)。然后进入activity B,这里我启动了一个异步任务来在后台下载图片,在UI线程中,将图片展示给用户。
有些大型列表可能需要几分钟才能完成下载。一个棘手的问题是,当 asynctask 仍在下载列表时,用户可能会退出活动 B(回到活动 A。(我知道即使活动 B 被破坏,异步任务仍将继续工作)。 但是如果此时用户选择另一个列表来查看(然后输入活动 B)。想暂停一下之前的任务,开始先下载新列表,再下载旧列表。 我的想法是检索以前的 asynctask 并修改下载顺序。但我不知道如何检索异步任务,我搜索了一些关于重新创建异步任务的问题,但它们都是关于重新配置后的(比如旋转屏幕)。在我销毁活动并重新创建它之后,有没有办法检索后台工作的异步任务。
谢谢!
【问题讨论】: