download:Python前后端分离开发Vue+Django REST framework实战
PowerManagerService之唤醒锁
前言
在开发中,或多或少会运用唤醒锁(wake lock),有的是为了坚持屏幕长亮,有的是为了坚持 CPU 运转。
唤醒锁的实质,其实是对屏幕状态的控制,以及对 CPU 挂起的控制。
屏幕状态的控制,指的是坚持屏幕处于点亮的状态,或者直接唤醒屏幕,或者延长亮屏时间。
CPU 挂起的控制,指的能否阻止 CPU 挂起,假如阻止了 CPU 挂起,其实就是坚持 CPU 运转。
本文重点剖析唤醒锁是如何完成对屏幕状态的控制,以及对 CPU 挂起的控制。