shiv1229
shiv1229

Reputation: 357

How to lock a device in android

How to lock a android device or screen??. Here is my code.

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();

                }
            });
        }

Here I am using a button. when user clicks on then the screen should be lock. But this code is not working. Is have to use BraodCastRecievr??. I included this permmission in manifest

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

But also not working

Upvotes: 1

Views: 2647

Answers (3)

Android
Android

Reputation: 2393

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

For locking the screen use,

lock.reenableKeyguard();

and for disabling the lock use,

lock.disableKeyguard()

This will just hide the lock screen and will display if any incoming call or any such event is happening, it will display that screen. It wont display the lock screen.

When running the application, to disable from going to the lock state, just use setKeepScreenOn() is set to true. or use the xml attribute android:keepScreenOn="true"

Another way to prevent the device to go to the sleep or lock mode when the application is running is set this api to true - setKeepScreenOn()

And of course we need to give permission android.permission.DISABLE_KEYGUARD

Upvotes: 1

android developer
android developer

Reputation: 1253

Can u plz go thru this

Upvotes: 2

Related Questions