屏幕关闭时后台服务未运行

时间:2011-09-20 06:29:19

标签: android

我正在使用WakeLock,但它耗费了大量电池。有没有替代解决方案??

3 个答案:

答案 0 :(得分:3)

WakeLock的整个想法是允许设备运行一些代码而不是进入睡眠模式。无论你用什么方式防止设备睡觉,它都会消耗电池。据我所知,“屏幕关闭”时运行代码的唯一方法是使用WakeLock

Android操作系统在功耗方面非常积极,除非您明确要求在设备进入省电模式时运行您的应用程序,否则它将“暂停”您的应用程序进程。


因此,如果您认为必须始终运行代码,则应接受电池消耗。如果应用耗尽了太多电量,请考虑更改您的设计和/或决定应用运行的频率和时长,尤其是当设备尝试进入省电模式时。

答案 1 :(得分:0)

您可以使用thread在服务中实现infinite loop但是当您停止服务时,请不要忘记释放您在服务中使用的所有资源,因为Android不会为您执行此操作。

答案 2 :(得分:0)