Android屏幕锁定/解锁以编程方式

Ami*_*mit 23 android

我正在开发一个应用程序,我必须以编程方式锁定和解锁屏幕.请帮忙!我不知道如何开发支持每个版本的Android OS的此类功能.

Vir*_*ank 26

开锁

KeyguardManager km = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE); 
final KeyguardManager.KeyguardLock kl = km .newKeyguardLock("MyKeyguardLock"); 
kl.disableKeyguard(); 

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); 
WakeLock wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK
                                 | PowerManager.ACQUIRE_CAUSES_WAKEUP
                                 | PowerManager.ON_AFTER_RELEASE, "MyWakeLock");
wakeLock.acquire();
Run Code Online (Sandbox Code Playgroud)

  • @Barend不在Android 4.4上工作我还应该怎么做才能锁定设备? (2认同)
  • 对安全屏幕锁定的Nougat(7.0)不起作用. (2认同)

Raj*_*N B 14

此链接可能有助于您解决问题:

以编程方式解锁和锁定

//Get the window from the context    
WindowManager wm = Context.getSystemService(Context.WINDOW_SERVICE);   

//Unlock
Window window = getWindow();  
window.addFlags(wm.LayoutParams.FLAG_DISMISS_KEYGUARD);  

//Lock device  
DevicePolicyManager mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);
Run Code Online (Sandbox Code Playgroud)

  • 没有在ICS 4.0.4上工作:) (2认同)