应用程序关闭后,Android TimerTask无法完成

时间:2014-10-24 13:48:58

标签: java android timertask

如何在应用程序关闭后完成我的TimerTask?垃圾收集器无法正常工作或只是不想完成任何后台任务或线程。

2 个答案:

答案 0 :(得分:0)

假设你想要在销毁活动时停止它:

@Override
protected void onDestroy()
{
    super.onDestroy();
    yourTimer.cancel();
}

或者如果您想在隐藏活动时停止它:

@Override
protected void onStop()
{
    super.onStop();
    yourTimer.cancel();
}

根据活动工作流程,选择必须取消计时器的最佳方法:

enter image description here

答案 1 :(得分:0)

您应该在Activity中停止onDestroy()中的任何线程/任务。顺便说一下,你不应该在Android中使用TimerTask。检查这个问题:TimerTask vs Thread.sleep vs Handler postDelayed - most accurate to call function every N milliseconds?

为了更新数据,你可以在服务中做到这一点(你应该而不是活动)。