Android杀死了我的Threads / AsyncTasks

时间:2015-03-02 19:35:49

标签: java android android-asynctask

我运行我的asynctask类活动,然后完成活动,asynctask仍然有效。 Android经过一段时间杀死了我的asynctask。我试图添加到函数run "Process.setThreadPriority (Process.THREAD_PRIORITY_FOREGROUND);""Process.setThreadPriority (Process.THREAD_PRIORITY_BACKGROUND);"但asynctask仍然被杀死。

是的我知道他们是服务,但我希望任务在完成工作后完成,并且不会在后台作为服务一直工作。

1 个答案:

答案 0 :(得分:0)

您应该使用IntentService。这与常规服务不同。 IntentService会导致service在完成后自行关闭。 IntentService未在UI线程上运行,因此您无需处理"你需要做一个服务.. 你开始它,它做了一些工作,当它完成它关闭自己,正是你需要的。

您无法确保Asynctask完成,因为它不是为此目的而构建的。

此外,service不是"正在运行"就像在cpu中,即使它打开也无所事事。