2012-01-17 103 views
1

如何鎖定android設備或屏幕?這是我的代碼。如何在android中鎖定設備

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    context = this; 
    Button b = new Button(context); 
    b = (Button)findViewById(R.id.button1); 
    b.setOnClickListener(new OnClickListener() { 
    @Override 
     public void onClick(View v) { 
     // TODO Auto-generated method stub 
     System.out.println("inside button"); 
     PowerManager pManager = (PowerManager)                             
      getSystemService(Context.POWER_SERVICE);   
     PowerManager.WakeLock wl = pManager.newWakeLock(PowerManager. 
      PARTIAL_WAKE_LOCK, "lock screen");     
       wl.acquire(); 
       wl.release(); 

       } 
      }); 
     } 

這裏我正在使用一個按鈕。當用戶點擊時屏幕應該鎖定。但是這個代碼不起作用。必須使用BraodCastRecievr ??。我包括這permmission清單中

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

但也沒有工作

回答

0
+0

thx for ur answer。在上面的鏈接if(active){mDPM.locknow()}。主動意味着什麼? – shiv1229 2012-01-17 05:31:30

+0

如果它處於活動狀態,請立即鎖定設備,就好像鎖定屏幕超時在此次呼叫時已過期一樣。 – 2012-01-17 05:42:53

+0

http://developer.android.com/reference/android/app/admin/DevicePolicyManager.html#lockNow() – 2012-01-17 05:43:20

2

Can u plz go thru this

+0

http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/DeviceAdminSample.html – 2012-01-17 06:02:34

+0

你可以不做類似這樣的事情嗎... – 2012-01-17 06:03:55

+0

ok thx很多:) 。我會嘗試。 – shiv1229 2012-01-17 06:07:38

1
KeyguardManager keyguardManager = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE); 
KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE); 

爲了鎖定屏幕使用時,

lock.reenableKeyguard(); 

和用於禁止所述鎖定使用,

lock.disableKeyguard() 

這將只是隱藏鎖定屏幕,並顯示,如果任何輸入呼叫或任何這樣的事件是發生,它會顯示該屏幕。它不會顯示鎖定屏幕。

運行應用程序時,從去鎖定狀態禁用,只需使用 setKeepScreenOn()設置爲true。或使用XML屬性的android:keepScreenOn =「真」

的另一種方式,以防止設備進入睡眠或鎖定模式時,應用程序運行時設置這個API來真的 - setKeepScreenOn()

而且當然我們需要給予權限android.permission.DISABLE_KEYGUARD

+0

@ shiv1229試試這個。 – Android 2012-01-17 07:06:45

+0

我在onClick按鈕中添加了上面的代碼。但它不工作,並添加權限也:( – shiv1229 2012-01-17 07:21:43