Recommend using fp for auth
Instead of showing face error msg Test: manual Fixes: 188022390 Change-Id: I05dcac4d4aec511224bb8c33b96c1846c9b8e2e2
This commit is contained in:
@@ -886,7 +886,10 @@ public class KeyguardIndicationController implements KeyguardStateController.Cal
|
||||
return;
|
||||
}
|
||||
|
||||
if (biometricSourceType == BiometricSourceType.FACE && shouldSuppressFaceMsg()) {
|
||||
if (biometricSourceType == BiometricSourceType.FACE
|
||||
&& shouldSuppressFaceMsgAndShowTryFingerprintMsg()) {
|
||||
// suggest trying fingerprint
|
||||
showTransientIndication(R.string.keyguard_try_fingerprint);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -913,6 +916,12 @@ public class KeyguardIndicationController implements KeyguardStateController.Cal
|
||||
if (shouldSuppressBiometricError(msgId, biometricSourceType, mKeyguardUpdateMonitor)) {
|
||||
return;
|
||||
}
|
||||
if (biometricSourceType == BiometricSourceType.FACE
|
||||
&& shouldSuppressFaceMsgAndShowTryFingerprintMsg()) {
|
||||
// suggest trying fingerprint
|
||||
showTransientIndication(R.string.keyguard_try_fingerprint);
|
||||
return;
|
||||
}
|
||||
if (msgId == FaceManager.FACE_ERROR_TIMEOUT) {
|
||||
// The face timeout message is not very actionable, let's ask the user to
|
||||
// manually retry.
|
||||
@@ -958,18 +967,16 @@ public class KeyguardIndicationController implements KeyguardStateController.Cal
|
||||
|| msgId == FingerprintManager.FINGERPRINT_ERROR_USER_CANCELED);
|
||||
}
|
||||
|
||||
private boolean shouldSuppressFaceMsg() {
|
||||
private boolean shouldSuppressFaceMsgAndShowTryFingerprintMsg() {
|
||||
// For dual biometric, don't show face auth messages unless face auth was explicitly
|
||||
// requested by the user.
|
||||
return mKeyguardUpdateMonitor.isUdfpsEnrolled()
|
||||
&& mKeyguardUpdateMonitor.isFingerprintDetectionRunning()
|
||||
&& !mKeyguardUpdateMonitor.isFaceAuthUserRequested();
|
||||
return mKeyguardUpdateMonitor.isFingerprintDetectionRunning()
|
||||
&& !mKeyguardUpdateMonitor.isFaceAuthUserRequested()
|
||||
&& mKeyguardUpdateMonitor.isUnlockingWithBiometricAllowed(
|
||||
true /* isStrongBiometric */);
|
||||
}
|
||||
|
||||
private boolean shouldSuppressFaceError(int msgId, KeyguardUpdateMonitor updateMonitor) {
|
||||
if (shouldSuppressFaceMsg()) {
|
||||
return true;
|
||||
}
|
||||
// Only checking if unlocking with Biometric is allowed (no matter strong or non-strong
|
||||
// as long as primary auth, i.e. PIN/pattern/password, is not required), so it's ok to
|
||||
// pass true for isStrongBiometric to isUnlockingWithBiometricAllowed() to bypass the
|
||||
|
||||
Reference in New Issue
Block a user