我有AsyncTask
创建Notification
并在进度时更新它。
但是当AsyncTask
工作时用户存在我的应用程序时,我松开Context
并且我无法再更新。
因此,当AsyncTask运行时,将后退按钮的功能更改为与主页按钮相同的功能是一个好主意吗?或者还有什么方法可以访问Context
?
答案 0 :(得分:1)
由于这样的原因,我倾向于避免使用AsyncTasks。我通常将它们用于那些如果活动或任务死亡则不会丢失的事情。对于我想确保活动完成的事情,或者如果后台工作有问题,您应该使用服务。该平台内置了一个名为IntentService
的基本平台。这应该适合您的情况,因为服务将拥有自己的上下文,并可以更新和跟踪通知本身。
另一种替代方案,我不建议但是可能的是让主Application
在静态变量中保持对自身的引用。这也将提供任务可以使用的Context
。