diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java b/packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java index ae4baad65617b..4d89a8dd54e1a 100644 --- a/packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java +++ b/packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java @@ -260,7 +260,6 @@ public class KeyguardSecurityContainer extends FrameLayout implements KeyguardSe if (DEBUG) Log.d(TAG, "reportFailedPatternAttempt: #" + failedAttempts); SecurityMode mode = mSecurityModel.getSecurityMode(); - final boolean usingPattern = mode == KeyguardSecurityModel.SecurityMode.Pattern; final int currentUser = KeyguardUpdateMonitor.getCurrentUser(); final DevicePolicyManager dpm = mLockPatternUtils.getDevicePolicyManager(); final int failedAttemptsBeforeWipe = diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java b/packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java index b8d9053093d13..c7b762866a12e 100644 --- a/packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java +++ b/packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java @@ -65,6 +65,7 @@ import android.telephony.SubscriptionManager.OnSubscriptionsChangedListener; import android.telephony.TelephonyManager; import android.util.Log; import android.util.SparseBooleanArray; +import android.util.SparseIntArray; import com.google.android.collect.Lists; @@ -139,7 +140,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { private BatteryStatus mBatteryStatus; // Password attempts - private int mFailedAttempts = 0; + private SparseIntArray mFailedAttempts = new SparseIntArray(); private boolean mClockVisible; @@ -1260,30 +1261,22 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { return mDeviceProvisioned; } - public int getFailedUnlockAttempts() { - return mFailedAttempts; + public void clearFailedUnlockAttempts() { + mFailedAttempts.delete(sCurrentUser); } - public void clearFailedUnlockAttempts() { - mFailedAttempts = 0; + public int getFailedUnlockAttempts() { + return mFailedAttempts.get(sCurrentUser, 0); + } + + public void reportFailedUnlockAttempt() { + mFailedAttempts.put(sCurrentUser, getFailedUnlockAttempts() + 1); } public void clearFingerprintRecognized() { mUserFingerprintAuthenticated.clear(); } - public void reportFailedUnlockAttempt() { - mFailedAttempts++; - } - - public boolean isClockVisible() { - return mClockVisible; - } - - public int getPhoneState() { - return mPhoneState; - } - public boolean isSimPinVoiceSecure() { // TODO: only count SIMs that handle voice return isSimPinSecure();