diff --git a/src/com/android/settings/ConfirmDeviceCredentialBaseFragment.java b/src/com/android/settings/ConfirmDeviceCredentialBaseFragment.java index ef19c2a2d90..b46fa92a3d8 100644 --- a/src/com/android/settings/ConfirmDeviceCredentialBaseFragment.java +++ b/src/com/android/settings/ConfirmDeviceCredentialBaseFragment.java @@ -142,8 +142,16 @@ public abstract class ConfirmDeviceCredentialBaseFragment extends OptionsMenuFra @Override public void onResume() { super.onResume(); + refreshLockScreen(); + } + + protected void refreshLockScreen() { if (mAllowFpAuthentication) { mFingerprintHelper.startListening(); + } else { + if (mFingerprintHelper.isListening()) { + mFingerprintHelper.stopListening(); + } } if (isProfileChallenge()) { updateErrorMessage(mLockPatternUtils.getCurrentFailedPasswordAttempts( @@ -168,7 +176,7 @@ public abstract class ConfirmDeviceCredentialBaseFragment extends OptionsMenuFra @Override public void onPause() { super.onPause(); - if (mAllowFpAuthentication) { + if (mFingerprintHelper.isListening()) { mFingerprintHelper.stopListening(); } } diff --git a/src/com/android/settings/ConfirmLockPattern.java b/src/com/android/settings/ConfirmLockPattern.java index dd8640c1998..a2ce1540785 100644 --- a/src/com/android/settings/ConfirmLockPattern.java +++ b/src/com/android/settings/ConfirmLockPattern.java @@ -498,6 +498,7 @@ public class ConfirmLockPattern extends ConfirmDeviceCredentialBaseActivity { checkForPendingIntent(); } else { if (timeoutMs > 0) { + refreshLockScreen(); long deadline = mLockPatternUtils.setLockoutAttemptDeadline( effectiveUserId, timeoutMs); handleAttemptLockout(deadline); diff --git a/src/com/android/settings/fingerprint/FingerprintUiHelper.java b/src/com/android/settings/fingerprint/FingerprintUiHelper.java index 6e7f8ec7928..f7ec97b1678 100644 --- a/src/com/android/settings/fingerprint/FingerprintUiHelper.java +++ b/src/com/android/settings/fingerprint/FingerprintUiHelper.java @@ -67,7 +67,7 @@ public class FingerprintUiHelper extends FingerprintManager.AuthenticationCallba } } - private boolean isListening() { + public boolean isListening() { return mCancellationSignal != null && !mCancellationSignal.isCanceled(); }