Don't disable fingerprint when entering wrong credential

Bug: 23748205
Change-Id: I0ee2a0562d5ef2992a6a4b40d235601b19dcef16
This commit is contained in:
Adrian Roos
2015-09-02 13:23:30 -07:00
parent f6d51acec6
commit af4ab3e2d3

View File

@@ -232,7 +232,7 @@ public class LockPatternUtils {
public void reportFailedPasswordAttempt(int userId) {
getDevicePolicyManager().reportFailedPasswordAttempt(userId);
getTrustManager().reportUnlockAttempt(false /* authenticated */, userId);
requireCredentialEntry(userId);
requireStrongAuth(StrongAuthTracker.SOME_AUTH_REQUIRED_AFTER_WRONG_CREDENTIAL, userId);
}
public void reportSuccessfulPasswordAttempt(int userId) {
@@ -1281,10 +1281,17 @@ public class LockPatternUtils {
*/
public static final int STRONG_AUTH_REQUIRED_AFTER_LOCKOUT = 0x8;
/**
* Some authentication is required because the user has entered a wrong credential.
*/
public static final int SOME_AUTH_REQUIRED_AFTER_WRONG_CREDENTIAL = 0x10;
public static final int DEFAULT = STRONG_AUTH_REQUIRED_AFTER_BOOT;
final SparseIntArray mStrongAuthRequiredForUser = new SparseIntArray();
private static final int ALLOWING_FINGERPRINT = STRONG_AUTH_NOT_REQUIRED
| SOME_AUTH_REQUIRED_AFTER_WRONG_CREDENTIAL;
private final SparseIntArray mStrongAuthRequiredForUser = new SparseIntArray();
private final H mHandler;
public StrongAuthTracker() {
@@ -1323,7 +1330,7 @@ public class LockPatternUtils {
* current strong authentication requirements.
*/
public boolean isFingerprintAllowedForUser(int userId) {
return getStrongAuthForUser(userId) == STRONG_AUTH_NOT_REQUIRED;
return (getStrongAuthForUser(userId) & ~ALLOWING_FINGERPRINT) == 0;
}
/**