Route to active unlock component

Update onRetryPrefenceTreeClick to check for the active unlock
preference. If biometrics are not enrolled and we're using the
biometric failure model, launch the biometric setup flow. Otherwise,
launch the  component directly.

Test: manual flag flip, confirm activity launches
Bug: 266441818
Change-Id: I8f3ce8f8366b65aad622d33ff7f99f5c82aae3e8
This commit is contained in:
Derek Jedral
2023-01-26 15:03:43 -08:00
parent 06466b030b
commit 053a9f8947
6 changed files with 173 additions and 18 deletions

View File

@@ -55,6 +55,7 @@ public abstract class BiometricsSettingsBase extends DashboardFragment {
@VisibleForTesting
static final int CONFIRM_REQUEST = 2001;
private static final int CHOOSE_LOCK_REQUEST = 2002;
protected static final int ACTIVE_UNLOCK_REQUEST = 2003;
private static final String SAVE_STATE_CONFIRM_CREDETIAL = "confirm_credential";
private static final String DO_NOT_FINISH_ACTIVITY = "do_not_finish_activity";
@@ -68,8 +69,9 @@ public abstract class BiometricsSettingsBase extends DashboardFragment {
private boolean mConfirmCredential;
@Nullable private FaceManager mFaceManager;
@Nullable private FingerprintManager mFingerprintManager;
// Do not finish() if choosing/confirming credential, or showing fp/face settings
private boolean mDoNotFinishActivity;
// Do not finish() if choosing/confirming credential, showing fp/face settings, or launching
// active unlock
protected boolean mDoNotFinishActivity;
@Nullable private String mRetryPreferenceKey = null;
@Nullable private Bundle mRetryPreferenceExtra = null;
@@ -132,7 +134,7 @@ public abstract class BiometricsSettingsBase extends DashboardFragment {
}
}
private boolean onRetryPreferenceTreeClick(Preference preference, final boolean retry) {
protected boolean onRetryPreferenceTreeClick(Preference preference, final boolean retry) {
final String key = preference.getKey();
final Context context = requireActivity().getApplicationContext();
@@ -323,6 +325,14 @@ public abstract class BiometricsSettingsBase extends DashboardFragment {
return resId == 0 ? "" : getString(resId);
}
protected int getUserId() {
return mUserId;
}
protected long getGkPwHandle() {
return mGkPwHandle;
}
@NonNull
private String getUseClass2BiometricSummary() {
boolean isFaceAllowed = false;