在我的应用中添加屏幕锁定

时间:2017-12-15 11:23:17

标签: android

我想在我的应用程序中实现屏幕锁定,例如,大多数基于支付网关的应用程序如何做,我已经尝试使用KeyGuardManager,仅在Lollipop之后工作,问题是我的应用程序也支持KitKat,那个' s为什么我需要帮助

这就是我试过的

KeyguardManager km = (KeyguardManager)getSystemService(KEYGUARD_SERVICE);
        if(km.isKeyguardSecure()) {

        Intent i = km.createConfirmDeviceCredentialIntent("Authentication required", "password");
        startActivityForResult(i, CODE_AUTHENTICATION_VERIFICATION);
    }
    else
        Toast.makeText(this, "No any security setup done by user(pattern or password or pin or fingerprint", Toast.LENGTH_SHORT).show();

1 个答案:

答案 0 :(得分:0)

查看Device Administration

您可以设置在设备锁定之前可能发生的用户不活动的最长时间。例如:

DevicePolicyManager mDPM;
ComponentName mDeviceAdminSample;
...
long timeMs = 1000L*Long.parseLong(mTimeout.getText().toString());
mDPM.setMaximumTimeToLock(mDeviceAdminSample, timeMs);

您还可以通过编程方式告诉设备立即锁定

DevicePolicyManager mDPM;
mDPM.lockNow();

编辑:

不要忘记申请许可 文档陈述

  

呼叫设备管理员必须已请求USES_POLICY_FORCE_LOCK   能够调用这种方法;如果没有,则会出现安全例外   被抛出。

检查此帖子here