summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Joshua Mccloskey <joshmccloskey@google.com> 2021-06-24 11:29:14 -0700
committer Joshua Mccloskey <joshmccloskey@google.com> 2021-06-29 12:15:18 -0700
commit7580fad2fdeb51752d0ffccdbe11d565c4edb871 (patch)
tree72dc5faae4eaa37078bbc40529701cff11329cfe
parent0954cfe6517dd21afbfc14f8868da8c9219e164e (diff)
Added fingerprint acquired too bright
Test: Manually verified too too bright acquired message appears on keyguard. Bug: 191954958 Change-Id: I679acf4f4fd07f0a6d7d8f05a89bc239ff117fbe
-rw-r--r--core/java/android/hardware/biometrics/BiometricFingerprintConstants.java10
-rw-r--r--core/java/android/hardware/fingerprint/FingerprintManager.java3
-rw-r--r--core/res/res/values/symbols.xml1
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintUtils.java4
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/AidlConversionUtils.java2
5 files changed, 18 insertions, 2 deletions
diff --git a/core/java/android/hardware/biometrics/BiometricFingerprintConstants.java b/core/java/android/hardware/biometrics/BiometricFingerprintConstants.java
index e665d0fcc836..4721f3e86543 100644
--- a/core/java/android/hardware/biometrics/BiometricFingerprintConstants.java
+++ b/core/java/android/hardware/biometrics/BiometricFingerprintConstants.java
@@ -209,7 +209,8 @@ public interface BiometricFingerprintConstants {
FINGERPRINT_ACQUIRED_VENDOR,
FINGERPRINT_ACQUIRED_START,
FINGERPRINT_ACQUIRED_UNKNOWN,
- FINGERPRINT_ACQUIRED_IMMOBILE})
+ FINGERPRINT_ACQUIRED_IMMOBILE,
+ FINGERPRINT_ACQUIRED_TOO_BRIGHT})
@Retention(RetentionPolicy.SOURCE)
@interface FingerprintAcquired {}
@@ -287,6 +288,13 @@ public interface BiometricFingerprintConstants {
int FINGERPRINT_ACQUIRED_IMMOBILE = 9;
/**
+ * For sensors that require illumination, such as optical under-display fingerprint sensors,
+ * the image was too bright to be used for matching.
+ * @hide
+ */
+ int FINGERPRINT_ACQUIRED_TOO_BRIGHT = 10;
+
+ /**
* @hide
*/
int FINGERPRINT_ACQUIRED_VENDOR_BASE = 1000;
diff --git a/core/java/android/hardware/fingerprint/FingerprintManager.java b/core/java/android/hardware/fingerprint/FingerprintManager.java
index 68dd62343eb0..c104eebbdb2c 100644
--- a/core/java/android/hardware/fingerprint/FingerprintManager.java
+++ b/core/java/android/hardware/fingerprint/FingerprintManager.java
@@ -1420,6 +1420,9 @@ public class FingerprintManager implements BiometricAuthenticator, BiometricFing
case FINGERPRINT_ACQUIRED_IMMOBILE:
return context.getString(
com.android.internal.R.string.fingerprint_acquired_immobile);
+ case FINGERPRINT_ACQUIRED_TOO_BRIGHT:
+ return context.getString(
+ com.android.internal.R.string.fingerprint_acquired_too_bright);
case FINGERPRINT_ACQUIRED_VENDOR: {
String[] msgArray = context.getResources().getStringArray(
com.android.internal.R.array.fingerprint_acquired_vendor);
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index c05adfd4ba2e..8d8291e964ac 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -2526,6 +2526,7 @@
<java-symbol type="string" name="fingerprint_acquired_imager_dirty" />
<java-symbol type="string" name="fingerprint_acquired_too_slow" />
<java-symbol type="string" name="fingerprint_acquired_too_fast" />
+ <java-symbol type="string" name="fingerprint_acquired_too_bright" />
<java-symbol type="array" name="fingerprint_acquired_vendor" />
<java-symbol type="string" name="fingerprint_error_canceled" />
<java-symbol type="string" name="fingerprint_error_user_canceled" />
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintUtils.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintUtils.java
index d69151da55f6..0062d31962a9 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintUtils.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintUtils.java
@@ -18,9 +18,11 @@ package com.android.server.biometrics.sensors.fingerprint;
import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_GOOD;
import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_IMAGER_DIRTY;
+import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_IMMOBILE;
import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_INSUFFICIENT;
import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_PARTIAL;
import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_START;
+import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_TOO_BRIGHT;
import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_TOO_FAST;
import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_TOO_SLOW;
import static android.hardware.biometrics.BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_VENDOR;
@@ -188,6 +190,8 @@ public class FingerprintUtils implements BiometricUtils<Fingerprint> {
case FINGERPRINT_ACQUIRED_TOO_FAST:
case FINGERPRINT_ACQUIRED_VENDOR:
case FINGERPRINT_ACQUIRED_START:
+ case FINGERPRINT_ACQUIRED_TOO_BRIGHT:
+ case FINGERPRINT_ACQUIRED_IMMOBILE:
return true;
default:
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/AidlConversionUtils.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/AidlConversionUtils.java
index 0ae2e381cf14..341aaa64d434 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/AidlConversionUtils.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/AidlConversionUtils.java
@@ -78,7 +78,7 @@ final class AidlConversionUtils {
return BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_UNKNOWN;
} else if (aidlAcquiredInfo == AcquiredInfo.TOO_BRIGHT) {
// No framework constant available
- return BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_UNKNOWN;
+ return BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_TOO_BRIGHT;
} else if (aidlAcquiredInfo == AcquiredInfo.IMMOBILE) {
return BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_IMMOBILE;
} else if (aidlAcquiredInfo == AcquiredInfo.RETRYING_CAPTURE) {