1.前言
在13.0的产品开发中, 需要提供亮屏和灭屏的接口在8.0以后系统对于屏幕亮灭屏做了限制,直接调用亮屏和灭屏的方法就调不到了,所有就需要通过增加自定义服务的功能,来实现
通过系统服务的方法来调用系统关于控制屏幕亮屏灭屏的相关操作
2.通过系统自定义服务控制屏幕亮屏和灭屏操作的功能实现
Android PowerManager是一个用于管理设备电源状态和唤醒锁的系统服务。使用PowerManager可以让应用程序实现更好的省电控制,同时还可以管理设备的唤醒状态
它为我们提供了电源管理的一个API,其相关接口与设备电池的续航能力有很大的关联
在系统中关于对屏幕的亮度操作功能都是在PowerManage.java的相关api进行相关的处理的,
接下来就来看PowerManage.java类 这个是一个电源管理的服务类
2.1PowerManager的基本操作
Android中的PowerManager可以通过以下代码获取:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
获取到PowerManager之后,就可以使用它的基本方法了:
1、创建WakeLock
要确保设备不会在应用程序运行时休眠,可以使用WakeLock。使用WakeLock可以确保设备进入睡眠状态时,CPU、屏幕等部件仍然继续工作。
PowerManager.WakeLock wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyWakeLockTag");
其中第一个参数是 WakeLock 的类型,PowerManager.PARTIAL_WAKE_LOCK表示部分唤醒;