1

我正在扩展倒数计时器类并实现了计时器,但我在这里遇到了问题,我已将计时器设置为 60 秒,现在我将通过单击设备电源按钮锁定屏幕,所以我猜计时器应该自动暂停,但我看到了计时器在移动 5 秒后暂停。

例如:计时器在 55 秒内,现在我按下电源按钮(屏幕关闭并锁定设备),现在经过很长时间说 30 分钟,当我解锁设备时,我看到它从 50 秒开始。为什么我该如何解决这个问题?

注意:我的计时器正在向后移动 60,59,58...

4

2 回答 2

2

暂停在这里

步骤1

onPause停止计时器并将剩余时间存储在变量中。

第2步

onResume使用上述变量中​​剩余的时间启动一个新计时器(当然很傻,只有当不为零时)


第 3 步

要开心!

于 2013-05-10T21:16:33.993 回答
1

当您按下电源按钮时,您的设备会在一段时间后进入深度睡眠。这意味着 CPU 没有运行,也没有执行任何代码。

你可以考虑学习一下 WakeLock 和 AlarmManager。

于 2013-05-10T17:38:02.230 回答