首页 > 代码库 > 解锁、唤醒屏幕

解锁、唤醒屏幕

解锁、唤醒屏幕用到KeyguardManagerKeyguardLockPowerManagerPowerManager.WakeLock

 

所需权限:

<uses-permission androidname="android.permission.WAKE_LOCK" />

<uses-permission androidname="android.permission.DISABLE_KEYGUARD" />

<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>

 

//锁屏、唤醒相关
private KeyguardManager  km;
private KeyguardLock kl;
private PowerManager pm;
private PowerManager.WakeLock wl;
private void wakeAndUnlock(boolean b){
   if(b){
               //获取电源管理器对象
               pm=(PowerManager) getSystemService(Context.POWER_SERVICE);
               //获取PowerManager.WakeLock对象,后面的参数|表示同时传入两个值,最后的是调试用的Tag
               wl = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP | PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "bright");
               //点亮屏幕
               wl.acquire();
             
              //得到键盘锁管理器对象
               km= (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE);
               kl = km.newKeyguardLock("unLock");
 
               //解锁
               kl.disableKeyguard();
      }
       else{
              //锁屏
              kl.reenableKeyguard();
             
              //释放wakeLock,关灯
              wl.release();
       }
}

解锁、唤醒屏幕