diff --git a/core/java/android/hardware/biometrics/BiometricFingerprintConstants.java b/core/java/android/hardware/biometrics/BiometricFingerprintConstants.java index 2d46a4073809e..e665d0fcc8368 100644 --- a/core/java/android/hardware/biometrics/BiometricFingerprintConstants.java +++ b/core/java/android/hardware/biometrics/BiometricFingerprintConstants.java @@ -208,7 +208,8 @@ public interface BiometricFingerprintConstants { FINGERPRINT_ACQUIRED_TOO_FAST, FINGERPRINT_ACQUIRED_VENDOR, FINGERPRINT_ACQUIRED_START, - FINGERPRINT_ACQUIRED_UNKNOWN}) + FINGERPRINT_ACQUIRED_UNKNOWN, + FINGERPRINT_ACQUIRED_IMMOBILE}) @Retention(RetentionPolicy.SOURCE) @interface FingerprintAcquired {} @@ -277,6 +278,14 @@ public interface BiometricFingerprintConstants { */ int FINGERPRINT_ACQUIRED_UNKNOWN = 8; + /** + * This message may be sent during enrollment if the same area of the finger has already + * been captured during this enrollment session. In general, enrolling multiple areas of the + * same finger can help against false rejections. + * @hide + */ + int FINGERPRINT_ACQUIRED_IMMOBILE = 9; + /** * @hide */ diff --git a/core/java/android/hardware/fingerprint/FingerprintManager.java b/core/java/android/hardware/fingerprint/FingerprintManager.java index 688f9f1174dd6..0819835f5fb53 100644 --- a/core/java/android/hardware/fingerprint/FingerprintManager.java +++ b/core/java/android/hardware/fingerprint/FingerprintManager.java @@ -1417,6 +1417,9 @@ public class FingerprintManager implements BiometricAuthenticator, BiometricFing case FINGERPRINT_ACQUIRED_TOO_FAST: return context.getString( com.android.internal.R.string.fingerprint_acquired_too_fast); + case FINGERPRINT_ACQUIRED_IMMOBILE: + return context.getString( + com.android.internal.R.string.fingerprint_acquired_immobile); case FINGERPRINT_ACQUIRED_VENDOR: { String[] msgArray = context.getResources().getStringArray( com.android.internal.R.array.fingerprint_acquired_vendor); diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml index d4ddab1ec502d..302bd94c19733 100644 --- a/core/res/res/values/strings.xml +++ b/core/res/res/values/strings.xml @@ -1603,6 +1603,8 @@ Too bright Try adjusting + + Change the position of your finger slightly each time diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index 46a834a6dc05b..5f849b4e1eb00 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -2539,6 +2539,7 @@ + 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 f1f94564c35dd..0ae2e381cf149 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 @@ -80,8 +80,7 @@ final class AidlConversionUtils { // No framework constant available return BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_UNKNOWN; } else if (aidlAcquiredInfo == AcquiredInfo.IMMOBILE) { - // No framework constant available - return BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_UNKNOWN; + return BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_IMMOBILE; } else if (aidlAcquiredInfo == AcquiredInfo.RETRYING_CAPTURE) { // No framework constant available return BiometricFingerprintConstants.FINGERPRINT_ACQUIRED_UNKNOWN;