诚然,我只是在这里进行黑客攻击,所以我想要一些知识。
我有一个在后台运行的服务连接到另一个倒计时计时器的线程。一段时间后,我遇到了倒计时消失的问题,并推测这是由于服务的垃圾收集造成的。我似乎已经使用 startForeground 解决了这个问题(并且没有看到真正的电池使用)。现在我读到了有关唤醒锁的内容,是否有关于何时使用其中一种的最佳实践?
Thanks!
我有一个在后台运行的服务连接到另一个倒计时计时器的线程。
请用AlarmManager
,因此您的服务只需要在实际工作时位于内存中,而不仅仅是观察时钟滴答作响。用户对 Android 最大的抱怨之一是开发人员创建的所有这些后台内容会堵塞他们的手机。
我似乎已经使用 startForeground 解决了这个问题(并且没有看到真正的电池使用)。
背后的重点startForeground()
表明您的服务正在持续为用户提供价值,这样用户就会注意到服务是否由于停留时间过长或内存不足而被回收。坐着看时钟滴答作响not“持续为用户创造价值”。请用AlarmManager
,你不需要startForeground()
.
现在我读到了有关唤醒锁的内容,是否有关于何时使用其中一种的最佳实践?
WakeLock
保持 CPU 通电(可能还有其他东西,例如屏幕)。与此关系不大startForeground()
。如果你使用AlarmManager
,根据您正在做的工作,您可能需要WakeLock
确保设备在您定期工作时保持唤醒状态
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)