Recommend using fp for auth

Instead of showing face error msg

Test: manual
Fixes: 188022390
Change-Id: I05dcac4d4aec511224bb8c33b96c1846c9b8e2e2
This commit is contained in:
Beverly
2021-06-30 11:49:17 -04:00
parent e68668899b
commit 0ef11ebaa9

View File

@@ -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