summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Beverly Tai <beverlyt@google.com> 2021-07-01 16:11:05 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2021-07-01 16:11:05 +0000
commit28e62c2da6db8f9d73c2045f613dffc7bf6d1593 (patch)
tree9e80305e1ac85602f8f3cec490c37a2fb111b7b2
parent79bbe49b4bfd10766fbc65ea08e07c86a6a5e76c (diff)
parent0ef11ebaa98622761774ac4e20062f5ff91e5c0b (diff)
Merge "Recommend using fp for auth" into sc-dev
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java23
1 files changed, 15 insertions, 8 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java
index 875b1e7e71af..5afdc38d739a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java
@@ -882,7 +882,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;
}
@@ -909,6 +912,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.
@@ -954,18 +963,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