4
如何处理(孤立的)WakeLock?
我想你们大多数人至少听说过WakeLocks。你们中的许多人都已经经历过 -无论是否知情。有些人可能会知道如何与他们打交道-但只有极少数人知道如何与“更复杂的候选人”打交道。 对于那些不知道的人,尽管上面的链接给出了一个简短的摘要:应用程序可能会要求a WAKE_LOCK使设备组件保持“休眠”状态,因此即使关闭了显示器,它们也可以执行任务。这在大多数情况下非常有用(例如,在导航时保持屏幕打开状态,保持WiFi激活以播放音乐)–但使用方式错误,会导致电池在短期内耗尽(每小时高达25%) 。 大多数情况下,很容易识别来源(通常是行为不端的应用程序)-我将在下面的答案中对此进行展示,因为它可能对许多用户有帮助。但是,如果请求WakeLock的应用程序退出而不释放它该怎么办?Android系统不会处理它。当然,重新启动可以解决问题-但这并不总是(所需)选项。 因此,从用户的角度来看(我不是在问开发解决方案,而是用户如何处理事情): 用户*可以采取什么措施来解决该问题并避免进一步消耗电池电量? 我更喜欢不涉及root的答案(因此所有用户都可以从中受益)。但是,“扎根解决方案”是完全有效的,也很受欢迎。