【问题标题】:how to keep timer.shcedule() running when changing system time更改系统时间时如何保持 timer.shcedule() 运行
【发布时间】:2018-10-16 21:54:27
【问题描述】:

最近,我正在使用 android 服务来启动一个新的计时器并运行一个 timerTask 来做一些事情。
代码如下:

Timer timer = new Timer();
timer.schedule(new RetrieveTask(), 300000);

private class RetrieveTask extends TimerTask {

    @Override
    public void run() {
        //do something
        timer.schedule(new RetrieveTask(), 300000);
    }
}

它工作得很好,但是如果我将系统时间更改为比当前系统时间更早的时间,它就不起作用了。我浏览了 java API 文档并知道原因。

如果更改系统时间也想保持运行,该怎么办?

非常感谢您的帮助。

【问题讨论】:

    标签: java android timer timertask


    【解决方案1】:

    已经得到解决方案。使用 receive 接收时间更改意图并重新启动此计时器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 2016-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多