如何以编程方式使用密码取消屏幕锁定?

时间:2015-01-27 08:39:10

标签: android

我已阅读documnet How can i set up screen lock with a password programmatically?

我可以使用以下代码设置密码以编程方式锁定屏幕。

DevicePolicyManager devicePolicyManager =(DevicePolicyManager)getApplicationContext().getSystemService(Context.DEVICE_POLICY_SERVICE);
ComponentName demoDeviceAdmin =new ComponentName(this, MyAdmin.class);

devicePolicyManager.setPasswordQuality(demoDeviceAdmin,DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED);
devicePolicyManager.setPasswordMinimumLength(demoDeviceAdmin, 5);

boolean result = devicePolicyManager.resetPassword("123456", DevicePolicyManager.RESET_PASSWORD_REQUIRE_ENTRY);

Toast.makeText(this, "button_lock_password_device..."+result,  Toast.LENGTH_LONG).show()

如何以编程方式使用密码取消屏幕锁定?你能帮帮我吗?

此外,如何以编程方式使用PIN设置屏幕锁定?谢谢!

2 个答案:

答案 0 :(得分:1)

问:如何以编程方式使用密码取消屏幕锁定?

A:

devicePolicyManager.setPasswordMinimumLength(compName, 0);
boolean result = devicePolicyManager.resetPassword("", DevicePolicyManager.RESET_PASSWORD_REQUIRE_ENTRY);

问:如何以编程方式使用PIN设置屏幕锁定

答:您的应用必须由用户批准为Device Administrator。为此,您必须添加DeviceAdminReceiver,为此您可以阅读更多here

P.S。要成为管理员应用,用户必须转到“设置”屏幕并接受应用为管理员。

答案 1 :(得分:0)

为什么你没有创建自己的锁定/解锁代码?

您可以按照here所述锁定/解锁屏幕。剩下的就是获取密码。为此,请使用sharedpreferences保存密码,当用户开启屏幕时,您只需获取密码并将其与保存的密码进行比较。