我正在做一个Android手机的耗电研究。我想每10分钟运行一次电池检查,直到电池完全死亡。我一直在遇到问题,使其工作。永远在后台运行服务..? Android
在我第一次尝试时,我在服务类中使用计时器,并且每10分钟安排一次电池检查。但很快我发现当屏幕熄灭时服务暂停。
然后我尝试使用AlarmService,每隔10分钟使用一次警报呼叫唤醒我的服务并检查电池电量并将数据保存到SD卡上的文件中。它与屏幕一起工作。但是,我只能获得9小时的数据......看起来AlarmService在几个小时后的某个时间点停止。我不知道为什么它是这样的,有系统杀死它的内存问题?
所以我的问题是,有没有人写过一些服务在后台运行(像永远)?你如何做到这一点,我会非常感谢一个示例代码?
我正在阅读一些帖子,说有一个部分唤醒锁,我可以用来保持服务活着..这是正确的方法来做到这一点?
非常感谢,我希望我能在这里得到一些有用的答案。
非常感谢您的宝贵信息,我现在用的局部唤醒锁,以保持我的服务(使用定时器调度)还活着。看起来它效果很好,我会一直等到电池关闭,并确保没有问题。 再次感谢! – sunocky 2010-02-24 09:58:56
即使服务是前台服务,屏幕关闭时服务是否暂停? – remi 2013-06-24 05:10:49