1、输入错误次数超过5次后,倒计时到1秒停留时间太长
2、有时无30S提示输入界面会出现几次可输入的情况
3、锁屏界面画错5次图案,点按提示框中的OK后,界面倒计时显示 剩余解锁秒数,按键锁屏半分钟后唤醒,界面还是显示之前锁屏时的秒数
4、锁屏界面画错5次图案,点按提示框中的OK后,有时无30s倒计时提示只显示wrong pattern,立刻可以继续进行解锁操作
碰到这类情况的基本上是在reset的时候没有处理好
1、修改路径:frameworks/base/packages/Keyguard/src/com/android/keyguard/KeyguardPatternView.java
2、修改方法:
public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit } public void reset() { // reset lock pattern - mLockPatternView.enableInput(); - mLockPatternView.setEnabled(true); - mLockPatternView.clearPattern(); + //mLockPatternView.enableInput(); + //mLockPatternView.setEnabled(true); + //mLockPatternView.clearPattern(); // if the user is currently locked out, enforce it. long deadline = mLockPatternUtils.getLockoutAttemptDeadline(); if (deadline != 0) { handleAttemptLockout(deadline); } else { + // reset lock pattern + mLockPatternView.enableInput(); + mLockPatternView.setEnabled(true); + mLockPatternView.clearPattern(); displayDefaultSecurityMessage(); } @@ -214,7 +222,8 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit if (KeyguardUpdateMonitor.getInstance(mContext).getMaxBiometricUnlockAttemptsReached()) { mSecurityMessageDisplay.setMessage(R.string.faceunlock_multiple_failures, true); } else { - mSecurityMessageDisplay.setMessage(R.string.kg_pattern_instructions, false); + mSecurityMessageDisplay.setMessage(R.string.kg_pattern_instructions, true); } }
原文地址:http://blog.csdn.net/silence_cdsn/article/details/43268335