当手机进入睡眠状态时,Handler,CountDownTimer和Timer不工作

问题描述:

我想在我的应用程序中实现计数定时器功能。首先,我使用Handler类使用postDelay方法,当手机没有进入睡眠状态时它工作正常。 CountDownTimer和Timer类也会发生同样的情况。当手机进入睡眠模式时,定时器速度降低。这是随机发生的。当手机进入睡眠状态时,Handler,CountDownTimer和Timer不工作

+0

如果你要睡觉,你为什么要“数”任何东西?只要睡觉,睡得好,当你醒来时检查当前时间并计算你想要的任何东西,但只有当你“活着”时 – pskink

+0

当计数值变成5和0时,我想执行一些任务。因此计数应该是继续的在后台 –

+1

所以使用'AlarmManager'唤醒 – pskink

有几个问题

首先有的像小米,魅族等设备具有安全性应用程序,它可以阻止的后台服务工作。

After android 7.0 there are features to block background too.所以你不能只使用简单的Service

假设我想最好的解决方案将使用wake lockIntent Service这将运行postDelayCountDownTimerTimer