From 08b35a8729f76669b638c1fc5a1bd9b513d4be98 Mon Sep 17 00:00:00 2001 From: Milton Wu Date: Mon, 24 Mar 2025 08:36:39 +0000 Subject: [PATCH] Customize Fingerprint Enroll FindSensor Activity Provide an interface for ODM/OEM to override fingerprint enrollment findSensor page Bug: 394232846 Flag: EXEMPT interface change Test: adb shell am start -a android.settings.FINGERPRINT_ENROLL --ez skip_intro true Change-Id: Iff61f0be49faf3581fa2b26e364ac8c8d61bdbf3 --- .../android/settings/biometrics/BiometricUtils.java | 11 ++++++++--- .../FingerprintEnrollActivityClassProvider.kt | 4 ++++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/com/android/settings/biometrics/BiometricUtils.java b/src/com/android/settings/biometrics/BiometricUtils.java index 21b0fa03f06..672d0865240 100644 --- a/src/com/android/settings/biometrics/BiometricUtils.java +++ b/src/com/android/settings/biometrics/BiometricUtils.java @@ -17,6 +17,8 @@ package com.android.settings.biometrics; +import static com.android.settings.biometrics.BiometricEnrollActivity.EXTRA_SKIP_INTRO; + import android.annotation.IntDef; import android.app.Activity; import android.app.PendingIntent; @@ -45,8 +47,7 @@ import com.android.settings.R; import com.android.settings.SetupWizardUtils; import com.android.settings.biometrics.face.FaceEnroll; import com.android.settings.biometrics.fingerprint.FingerprintEnroll; -import com.android.settings.biometrics.fingerprint.FingerprintEnrollFindSensor; -import com.android.settings.biometrics.fingerprint.SetupFingerprintEnrollFindSensor; +import com.android.settings.biometrics.fingerprint.FingerprintEnrollActivityClassProvider; import com.android.settings.overlay.FeatureFactory; import com.android.settings.password.ChooseLockGeneric; import com.android.settings.password.ChooseLockSettingsHelper; @@ -252,8 +253,12 @@ public class BiometricUtils { public static Intent getFingerprintFindSensorIntent(@NonNull Context context, @NonNull Intent activityIntent) { final boolean isSuw = WizardManagerHelper.isAnySetupWizard(activityIntent); + FingerprintEnrollActivityClassProvider clsProvider = FeatureFactory + .getFeatureFactory().getFingerprintFeatureProvider() + .getEnrollActivityClassProvider(context); final Intent intent = new Intent(context, isSuw - ? SetupFingerprintEnrollFindSensor.class : FingerprintEnrollFindSensor.class); + ? clsProvider.getSetupSkipIntro() : clsProvider.getSkipIntro()); + intent.putExtra(EXTRA_SKIP_INTRO, true); if (isSuw) { SetupWizardUtils.copySetupExtras(activityIntent, intent); } diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollActivityClassProvider.kt b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollActivityClassProvider.kt index 14261e9524a..8623294df3e 100644 --- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollActivityClassProvider.kt +++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollActivityClassProvider.kt @@ -28,6 +28,10 @@ open class FingerprintEnrollActivityClassProvider { get() = FingerprintEnrollIntroductionInternal::class.java open val addAnother: Class get() = FingerprintEnrollEnrolling::class.java + open val setupSkipIntro: Class + get() = SetupFingerprintEnrollFindSensor::class.java + open val skipIntro: Class + get() = FingerprintEnrollFindSensor::class.java companion object { @JvmStatic