diff --git a/src/com/android/settings/biometrics/BiometricEnrollActivity.java b/src/com/android/settings/biometrics/BiometricEnrollActivity.java index 3f57f5d98a4..fa66bb57adb 100644 --- a/src/com/android/settings/biometrics/BiometricEnrollActivity.java +++ b/src/com/android/settings/biometrics/BiometricEnrollActivity.java @@ -561,7 +561,13 @@ public class BiometricEnrollActivity extends InstrumentedActivity { Intent intent = BiometricUtils.getChooseLockIntent(this, getIntent()); intent.putExtra(ChooseLockGeneric.ChooseLockGenericFragment.HIDE_INSECURE_OPTIONS, true); intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_REQUEST_GK_PW_HANDLE, true); - intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_FOR_BIOMETRICS, true); + if (mHasFeatureFingerprint && mHasFeatureFace) { + intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_FOR_BIOMETRICS, true); + } else if (mHasFeatureFace) { + intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_FOR_FACE, true); + } else if (mHasFeatureFingerprint) { + intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_FOR_FINGERPRINT, true); + } if (mUserId != UserHandle.USER_NULL) { intent.putExtra(Intent.EXTRA_USER_ID, mUserId); diff --git a/tests/componenttests/src/com/android/settings/biometrics/BiometricEnrollActivityTest.java b/tests/componenttests/src/com/android/settings/biometrics/BiometricEnrollActivityTest.java index 0ef57a0b676..c5e3a19cc92 100644 --- a/tests/componenttests/src/com/android/settings/biometrics/BiometricEnrollActivityTest.java +++ b/tests/componenttests/src/com/android/settings/biometrics/BiometricEnrollActivityTest.java @@ -20,6 +20,11 @@ import static android.provider.Settings.ACTION_BIOMETRIC_ENROLL; import static androidx.test.espresso.intent.Intents.intended; import static androidx.test.espresso.intent.matcher.IntentMatchers.hasComponent; +import static androidx.test.espresso.intent.matcher.IntentMatchers.hasExtra; + +import static com.android.settings.password.ChooseLockSettingsHelper.EXTRA_KEY_FOR_BIOMETRICS; +import static com.android.settings.password.ChooseLockSettingsHelper.EXTRA_KEY_FOR_FACE; +import static com.android.settings.password.ChooseLockSettingsHelper.EXTRA_KEY_FOR_FINGERPRINT; import static com.google.common.truth.Truth.assertThat; @@ -83,6 +88,13 @@ public class BiometricEnrollActivityTest { try (ActivityScenario scenario = ActivityScenario.launch(getIntent())) { intended(hasComponent(ChooseLockGeneric.class.getName())); + if (mHasFace && mHasFingerprint) { + intended(hasExtra(EXTRA_KEY_FOR_BIOMETRICS, true)); + } else if (mHasFace) { + intended(hasExtra(EXTRA_KEY_FOR_FACE, true)); + } else if (mHasFingerprint) { + intended(hasExtra(EXTRA_KEY_FOR_FINGERPRINT, true)); + } } } @@ -109,11 +121,9 @@ public class BiometricEnrollActivityTest { response.getGatekeeperPasswordHandle()); }).get(); - - try (ActivityScenario scenario = ActivityScenario.launch(intent)) { - intended(hasComponent(mHasFace + intended(hasComponent(mHasFace && !mHasFingerprint ? FaceEnrollIntroduction.class.getName() : FingerprintEnrollIntroduction.class.getName())); }