[BiometricsV2] Refine fingerprint ui and flow

1. Fix "No thanks" become 2 lines, and fix the status when new
   fingerprint enrolled.
2. Fix Finish page shows again after pressing back from a new Finish
   page
3. Fix FindSensor page shows again after max number of fingerprint
   has reached.
4. Add missing tests, and remove some bypass-only tests

Bug: 279134177
Bug: 279380583
Bug: 279386539
Bug: 279394069
Test: atest FingerprintEnrollIntroViewModelTest
    FingerprintEnrollFindSensorViewModelTest
    FingerprintEnrollEnrollingViewModelTest
    FingerprintEnrollmentViewModelTest FingerprintEnrollmentActivityTest
Test: manually test 1, 2, and 3
Change-Id: I3797ceed8e7d6c10a4b4711f8bff8d7f222f0923
This commit is contained in:
Milton Wu
2023-04-26 18:46:11 +08:00
parent cb00c675e5
commit 8b0fc14f94
9 changed files with 265 additions and 104 deletions

View File

@@ -87,7 +87,6 @@ public class FingerprintEnrollmentViewModel extends AndroidViewModel {
@NonNull
public ActivityResult getOverrideActivityResult(@NonNull ActivityResult result,
@Nullable Bundle generatingChallengeExtras) {
// TODO write tests
final int newResultCode = mIsNewFingerprintAdded
? BiometricEnrollBase.RESULT_FINISHED
: (mRequest.isAfterSuwOrSuwSuggestedAction()
@@ -165,6 +164,14 @@ public class FingerprintEnrollmentViewModel extends AndroidViewModel {
outState.putBoolean(SAVED_STATE_IS_NEW_FINGERPRINT_ADDED, mIsNewFingerprintAdded);
}
/**
* Gets the result about fingerprint enrollable
*/
public boolean isMaxEnrolledReached(int userId) {
return mFingerprintRepository.getMaxFingerprints()
<= mFingerprintRepository.getNumOfEnrolledFingerprintsSize(userId);
}
/**
* The first sensor type is UDFPS sensor or not
*/