2012-04-25 136 views
0

當我點擊按鈕時,必須鎖定模擬器。我用這個代碼 -在android中以編程方式鎖定設備鎖

我不明白什麼是主動和securemeAdmin

我使用這個鏈接 - >Lock the android device programmatically

public class adminActivity extends DeviceAdminReceiver 
{ 
    public static class Test extends Activity 
    { 
     Button btn; 
     DevicePolicyManager mDPM; 
     ComponentName mDeviceAdminSample; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) 
     { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

    mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE); 
     mDeviceAdminSample = new ComponentName(Test.this, 
       adminActivity.class); 

     Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN); 
     intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, securemeAdmin); 

     btn=(Button)findViewById(R.id.btn); 

     btn.setOnClickListener(new OnClickListener() 
     { 
     @Override 
     public void onClick(View v) 
     { 
      if (active) 
      { 
      mDPM.lockNow(); 
      } 
     } 
     }); 
     } 
    } 
} 

我也用鍵盤鎖管理器,但它也不能正常工作。有人可以給我鎖電話的例子嗎?

public class Keyguard extends Activity 
{ 
    Button btn; 
    KeyguardLock lock; 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     btn=(Button)findViewById(R.id.btn); 

     KeyguardManager mgr = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE); 
     lock = mgr.newKeyguardLock(KEYGUARD_SERVICE); 

     btn.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) 
     { 
      lock.reenableKeyguard(); 


     } 
    }); 
    } 
} 

任何人都可以幫助我。

+0

可能重複[以編程方式鎖定Android設備](http://stackoverflow.com/questions/4545079/lock-the-android-device-programatically) – Nanne 2012-04-25 10:06:18

+0

是@nanna但仍在尋找解決方案。 – arpit 2012-04-25 10:12:53

回答

3

該代碼會爲你工作..

WindowManager.LayoutParams lp = getWindow().getAttributes(); 
lp.screenBrightness = 0; 
getWindow().setAttributes(lp); 
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD); 
+0

多數民衆贊成tnx;) – M410 2013-10-15 08:00:10

+1

該代碼如何鎖定設備?這隻會改變屏幕的亮度。我錯過了什麼嗎? – Harish 2014-03-28 10:21:57

相關問題