我在我的应用程序中使用设备默认锁定屏幕来激活和取消激活屏幕锁定。在我的应用程序中,我使用了一个复选框来显示屏幕锁是否激活。
Intent intent = new Intent(DevicePolicyManager.ACTION_SET_NEW_PASSWORD);
startActivity(intent);
我在我的DeviceAdminReceiver
类中接收它回调。
方法:onPasswordChanged
onPasswordFailed
onPasswordSucceeded
现在,如果用户选择none或按回,这些方法都不会被调用。我无法识别屏幕是否被锁定?我使用OnActivityResult
在我的活动中处理回调,它适用于反压(resultcode 0),但为所有其他选项提供相同的结果。
我发现了这个链接,它告诉我它不能被外部处理。
Summary:我想直接从我的应用程序处理屏幕锁定选项。
如果我们设置密码质量在这种情况下,用户不能选择无密码选项也许会对你有帮助。我们可以这样做
private ComponentName mDeviceAdmin;
private DevicePolicyManager mDPM;
mDPM.setPasswordQuality(mDeviceAdmin, DevicePolicyManager.PASSWORD_QUALITY_SOMETHING);
Intent intent = new Intent(DevicePolicyManager.ACTION_SET_NEW_PASSWORD);
mContext.startActivity(intent);