2010-07-06 87 views
2

我正在寻找一种方法来从我的应用程序启动本机android锁定屏幕。我环顾四周,发现了关于KeyGuardLock和KeyGuardManager的代码,但我相信只会锁定键盘工作。启动Android本机锁定屏幕

REF:http://smartandroidians.blogspot.com/2010/03/enabling-and-disabling-lock-screen-in.html

+0

您可以使用PowerManager的goToSleep()方法告诉它“去睡觉”:http://developer.android.com/reference/android/os/PowerManager.html 但是我不知道这是否真的与本机屏幕锁定相同。我自己并没有使用它,只是在API Docu中看过这个功能,现在记得:-) – pableu 2010-07-07 12:08:03

回答

0

使用DevicePolicyManager锁屏..

这里是如何做到这一点:http://developer.android.com/reference/android/app/admin/DevicePolicyManager.html

要解锁..

keyGuard = (KeyguardManager) getSystemService(KEYGUARD_SERVICE); 
     mLock = keyGuard.newKeyguardLock("Your_App"); 
     mLock.disableKeyguard(); 

唤醒屏幕向上..

 PowerManager pm = (PowerManager) getApplicationContext() 
       .getSystemService(Context.POWER_SERVICE); 
     WakeLock wakeLock = pm 
       .newWakeLock(
         (PowerManager.SCREEN_BRIGHT_WAKE_LOCK 
           | PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP), 
         "TAG"); 
     wakeLock.acquire();