我的应用程序中有 2 个 CountDownTimer 对象,它们在应用程序运行时不断计算下一个事件的时间。
所以今天调试了一下,发现定时器根本不准,我给它设置了1小时的间隔,从上午9:00开始,现在14:04是下一个事件触发的时间。整整晚了 4 分钟,而且每场比赛都越来越晚。
那么我应该将 CountDownTimer 用于此类任务,还是应该只在它的onTick()
方法中进行 if 检查,在该方法中,我每秒都会检查自上一个事件以来经过的固定时间,然后将时间重置为 1 小时后?
我无法使用AlarmManager完成这些任务,因为所有这些事情都发生在 中foreground service
,而且据我所知,如果用户将应用程序从正在运行的应用程序菜单中滑开,警报将被终止