在Android 6.0中使用lockNow后如何保留指纹解锁?

Duy*_*yen 6 android fingerprint device-admin android-6.0-marshmallow

使用DevicePolicyManager在Android 6.0中执行lockNow()后,我们如何保留无缝指纹解锁效果?

假设在具有指纹扫描仪的设备上,应用程序调用lockNow()具有"USES_POLICY_FORCE_LOCK"并且已被授予设备管理员状态.

这是lockNow()函数的文档:

public void lockNow()

立即锁定设备,就像锁定屏幕超时在此呼叫时已过期一样.

呼叫设备管理员必须已请求USES_POLICY_FORCE_LOCK才能调用此方法; 如果没有,则抛出安全异常.

获得设备管理员状态并执行锁定就好了.为了便于参考,请参阅我使用的方法的SO问题.

问题是在手机锁定后,指纹扫描仪不再能够顺利解锁手机.相反,指纹扫描仪会提示我输入后备PIN码. 为了在执行lockNow()调用后保留指纹解锁效果,Android 6.0中是否有新功能?

我查看了所有的DevicePolicyManager标志(在文档中),它似乎提供了禁用事物而不是启用事物.

谢谢!

ana*_*bek 4

看起来谷歌已将其标记为“按预期工作”,但没有任何适当的解释。

https://code.google.com/p/android/issues/detail?id=79735#c110

还有这里 https://code.google.com/p/android/issues/detail?id=191955#c23

因此,目前我们无法在保持智能锁工作的同时以编程方式锁定屏幕。他们还表示“开发人员错误地使用了它”。不确定他们是在开玩笑还是认真的。

编辑:这里有一些令人不满意的解释https://code.google.com/p/android/issues/detail?id=79735#c115