Merge "Fix the flicker of FingerprintSettings before FingerprintEnrollIntro." into tm-qpr-dev

This commit is contained in:
Hao Dong
2022-11-15 15:40:37 +00:00
committed by Android (Google) Code Review
2 changed files with 16 additions and 2 deletions

View File

@@ -78,7 +78,9 @@ public class FingerprintStatusUtils {
* Returns the class name of the Settings page corresponding to fingerprint settings. * Returns the class name of the Settings page corresponding to fingerprint settings.
*/ */
public String getSettingsClassName() { public String getSettingsClassName() {
return FingerprintSettings.class.getName(); return !hasEnrolled() && isAvailable()
? FingerprintEnrollIntroductionInternal.class.getName()
: FingerprintSettings.class.getName();
} }
/** /**

View File

@@ -179,8 +179,20 @@ public class FingerprintStatusUtilsTest {
} }
@Test @Test
public void getSettingsClassName_whenNotEnrolled_returnsFingerprintSettings() { public void getSettingsClassName_whenNotEnrolled_fingerprintOnly_returnsFingerprintEnrollInduction() {
when(mFingerprintManager.hasEnrolledFingerprints(anyInt())).thenReturn(false); when(mFingerprintManager.hasEnrolledFingerprints(anyInt())).thenReturn(false);
when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
when(mFaceManager.isHardwareDetected()).thenReturn(false);
assertThat(mFingerprintStatusUtils.getSettingsClassName())
.isEqualTo(FingerprintEnrollIntroductionInternal.class.getName());
}
@Test
public void getSettingsClassName_whenNotEnrolled_fingerprintNotOnly_returnsFingerprintSettings() {
when(mFingerprintManager.hasEnrolledFingerprints(anyInt())).thenReturn(false);
when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
when(mFaceManager.isHardwareDetected()).thenReturn(true);
assertThat(mFingerprintStatusUtils.getSettingsClassName()) assertThat(mFingerprintStatusUtils.getSettingsClassName())
.isEqualTo(FingerprintSettings.class.getName()); .isEqualTo(FingerprintSettings.class.getName());