最近研究音频播放 看到 AsyncPlayer
这个类的实现 确实里面做的细节挺值得学习
那首先大概看下这个类吧 这个类实现了音频异步播放的功能
把音频信息封装称Conmmad
将所有的音频信息存放入队列中
那么播放的功能就交给另外一个线程吧
接着进入主题看看怎么实现屏幕高亮的
PowerManager
和 PowerManager.WakeLock 这个类
PowerManager:This class gives you control of the power state of the device.
PowerManager.WakeLock: lets you say that you need to have the device on.
android通过lock锁对电源进行控制 来看两个方法
这样就可以实现对电源的控制了。。so简单
这之前还需要做一些初始化工作
newWakeLock 方法就俩参数,后面一个就是日志的TAG了。。前面一个才是主要的 可以设置本Activity的亮度级别
int flags
各种锁的类型对CPU 、屏幕、键盘的影响:
PARTIAL_WAKE_LOCK
:保持CPU 运转,屏幕和键盘灯有可能是关闭的。
SCREEN_DIM_WAKE_LOCK
:保持CPU 运转,允许保持屏幕显示但有可能是灰的,允许关闭键盘灯
SCREEN_BRIGHT_WAKE_LOCK
:保持CPU 运转,允许保持屏幕高亮显示,允许关闭键盘灯
FULL_WAKE_LOCK
:保持CPU 运转,保持屏幕高亮显示,键盘灯也保持亮度
这个操作还要加权限的
这就OK了!!!!