From a39a975e7b8bd97a45b34aba951ebaecee0986de Mon Sep 17 00:00:00 2001 From: Wenhui Yang Date: Thu, 15 Jun 2023 22:53:32 +0000 Subject: [PATCH] [DO NOT MERGE] Update BP "Not recognized" message with UX/UI spec Change the string on the biometric prompt when fingerprint/face failed according to biometric enrollment status Fixes: 286993443 Fixes: 286967857 Test: Manual (see bug) Test: atest AuthControllerTest atest BiometricsServiceTest Change-Id: Ieaecf678d9498b065972340900ddb5afba97ac1e Merged-In: Ieaecf678d9498b065972340900ddb5afba97ac1e --- .../android/systemui/biometrics/AuthController.java | 12 ++++++++++-- .../server/biometrics/BiometricServiceTest.java | 4 ++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/AuthController.java b/packages/SystemUI/src/com/android/systemui/biometrics/AuthController.java index 6b861ce235d73..5b746f1b424db 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/AuthController.java +++ b/packages/SystemUI/src/com/android/systemui/biometrics/AuthController.java @@ -1049,8 +1049,16 @@ public class AuthController implements CoreStartable, CommandQueue.Callbacks, } private String getNotRecognizedString(@Modality int modality) { - return mContext.getString(modality == TYPE_FACE - ? R.string.biometric_face_not_recognized : R.string.biometric_not_recognized); + final int messageRes; + final int userId = mCurrentDialogArgs.argi1; + if (isFaceAuthEnrolled(userId) && isFingerprintEnrolled(userId)) { + messageRes = modality == TYPE_FACE + ? R.string.biometric_face_not_recognized + : R.string.fingerprint_error_not_match; + } else { + messageRes = R.string.biometric_not_recognized; + } + return mContext.getString(messageRes); } private String getErrorString(@Modality int modality, int error, int vendorCode) { diff --git a/services/tests/servicestests/src/com/android/server/biometrics/BiometricServiceTest.java b/services/tests/servicestests/src/com/android/server/biometrics/BiometricServiceTest.java index 8091273a80385..41f7dbcb0ff5c 100644 --- a/services/tests/servicestests/src/com/android/server/biometrics/BiometricServiceTest.java +++ b/services/tests/servicestests/src/com/android/server/biometrics/BiometricServiceTest.java @@ -182,6 +182,10 @@ public class BiometricServiceTest { .thenReturn(ERROR_HW_UNAVAILABLE); when(mResources.getString(R.string.biometric_not_recognized)) .thenReturn(ERROR_NOT_RECOGNIZED); + when(mResources.getString(R.string.biometric_face_not_recognized)) + .thenReturn(ERROR_NOT_RECOGNIZED); + when(mResources.getString(R.string.fingerprint_error_not_match)) + .thenReturn(ERROR_NOT_RECOGNIZED); when(mResources.getString(R.string.biometric_error_user_canceled)) .thenReturn(ERROR_USER_CANCELED);