实施Wakelock

时间:2012-09-02 19:39:44

标签: android wakelock

我有一个Service,其中有两个TimerTask以2分钟的频率运行(根据用户偏好设置为2到30分钟。)。

现在这种方法很好,但是当手机进入睡眠状态(关灯和手机处于锁定状态)时,这并不符合预期。所以我想我需要为此实现唤醒...

如果是这样,使用唤醒锁的最佳方式是什么。

我发现我们也可以使用Alarmmanager ..

请帮助以及cose应该在哪里实现这个..(在oncreate方法或扩展时间类的类中)。

Andoid 2.2 taget版

1 个答案:

答案 0 :(得分:0)

通常使用唤醒锁是一种非常非常罕见的需求。它可以对电池寿命产生重大影响,并且很容易出错,在这种情况下,唤醒锁将根本不会被释放。

出于您的目的,AlarmManager(http://developer.android.com/reference/android/app/AlarmManager.html)是理想的解决方案。它保证在执行期间不会执行任何睡眠,但在此执行(2或30分钟)之间,设备可以进入睡眠状态并节省大量电池。在执行下一次执行时系统将被唤醒。

祝你好运