【发布时间】:2011-11-13 09:44:13
【问题描述】:
我要疯了。 我想要一件简单的事情——我有一个很长的任务(从网络上获取几个数据对象),我想要取消它的能力。 我尝试了很多东西(很多),但没有任何效果
流程是这样的:
用户点击按钮
我开始工作(我尝试使用
AsyncTask、Service、IntentService和Looper)该任务负责处理所有事情,包括为进度更新添加持续通知
通知中的意图调用了一个新活动,她的唯一目的是取消正在进行的任务
在 cancelActivity 我尝试调用
stopService()以获得 Service/IntentService 或执行Looper.quit()用于 Looper(我不记得我为 AsyncTask 尝试了什么,不知道是否有这样的 api 可以取消它)
在我看来,最好的选择是使用IntentService(我可以有几个任务排队,IntetService 会按照我想要的顺序执行)但是
我对任何类型的实现都持开放态度 - 我不在乎代码是什么,只是我可以选择取消任务
提前感谢您的帮助
医生
(我要睡觉了——在同一个问题上花 8 个小时实在是太多了)
【问题讨论】:
标签: android service android-asynctask looper intentservice