From c9cc25cbfb382cbfad7f0694118e1791719c8f87 Mon Sep 17 00:00:00 2001 From: Pierre-Hugues Husson Date: Tue, 10 Mar 2020 23:30:17 +0100 Subject: [PATCH 47/58] Allow disabling of fingerprint cleanups, needed on some Realme devices that cant enumerate --- .../android/server/biometrics/BiometricServiceBase.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/services/core/java/com/android/server/biometrics/BiometricServiceBase.java b/services/core/java/com/android/server/biometrics/BiometricServiceBase.java index 292798721c6..aa94e2e2d40 100644 --- a/services/core/java/com/android/server/biometrics/BiometricServiceBase.java +++ b/services/core/java/com/android/server/biometrics/BiometricServiceBase.java @@ -326,6 +326,7 @@ public abstract class BiometricServiceBase extends SystemService private List mEnrolledList; // List of templates to remove from the HAL private List mUnknownHALTemplates = new ArrayList<>(); + final boolean mNocleanup = android.os.SystemProperties.getBoolean("persist.sys.phh.fingerprint.nocleanup", false); InternalEnumerateClient(Context context, DaemonWrapper daemon, long halDeviceId, IBinder token, @@ -370,9 +371,11 @@ public abstract class BiometricServiceBase extends SystemService BiometricAuthenticator.Identifier identifier = mEnrolledList.get(i); Slog.e(getTag(), "doTemplateCleanup(): Removing dangling template from framework: " + identifier.getBiometricId() + " " - + identifier.getName()); - mUtils.removeBiometricForUser(getContext(), - getTargetUserId(), identifier.getBiometricId()); + + identifier.getName() + " /// " + mNocleanup); + if(!mNocleanup) { + mUtils.removeBiometricForUser(getContext(), + getTargetUserId(), identifier.getBiometricId()); + } StatsLog.write(StatsLog.BIOMETRIC_SYSTEM_HEALTH_ISSUE_DETECTED, statsModality(), BiometricsProtoEnums.ISSUE_UNKNOWN_TEMPLATE_ENROLLED_FRAMEWORK); -- 2.25.1