我在服务中有一个CountDownTimer,在检查后启动
if (timerToNextDay == null) {
timeToNextDay(some long here);
}
问题是,每次初始化服务并且正在检查此计时器时,它总是返回null,即使我没有在任何地方取消它。所以在服务开始几次后,计时器被初始化了3次,我可以注意到它的onTick方法中的这个日志
Log.i("Hours to next day ", (((millisUntilFinished / 1000) / 60) / 60) + "");
那么我该怎么做才能检查定时器是否正在运行,不能多次启动它?
答案 0 :(得分:4)
为了防止计时器多次初始化,它必须是static
,所以它应该像这样声明
private static CountDownTimer timer;
这可确保不会成为CountDownTimer