Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Lock the Android device programmatically

Tags:

I have been trying to lock the device through program. But I can't find the solution still. I want to lock Android froyo2.2 through program. I have tried keyguardmanager and DeviceAdminManager.

My app is to remote lock the device. When message is received with some code words to lock then it locks the phone. I have found many Api_demo program as solution but I can't extract lock code alone from that and find solution.

like image 637
adithi Avatar asked Dec 28 '10 09:12

adithi


1 Answers

The activity class should be inner class and the outter class should extend DeviceAdminReceiver

public class adminActivity extends DeviceAdminReceiver {     public static class Controller extends Activity {                      DevicePolicyManager mDPM;             ComponentName mDeviceAdminSample;          protected void onCreate(Bundle savedInstanceState) {                 super.onCreate(savedInstanceState);                  mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);                 mDeviceAdminSample = new ComponentName(Controller.this,                         adminActivity.class);       }    } } 

To lock the device write the code in the event where you use to lock

if (active) { mDPM.lockNow(); } 

If DeviceAdmin is enabled then the phone will be locked. To enable the device admin, the DevicePolicyManager intent is called and it should be enabled by the user.

Intent intent = new   Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);   intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mDeviceAdminSample);         
like image 163
adithi Avatar answered Oct 26 '22 23:10

adithi