diff options
4 files changed, 12 insertions, 14 deletions
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java b/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java index 32775fe9d5c1..669594b86e54 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java @@ -646,13 +646,6 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { return mStrongAuthTracker; } - public void reportSuccessfulStrongAuthUnlockAttempt() { - if (mFpm != null) { - byte[] token = null; /* TODO: pass real auth token once fp HAL supports it */ - mFpm.resetTimeout(token); - } - } - private void notifyStrongAuthStateChanged(int userId) { for (int i = 0; i < mCallbacks.size(); i++) { KeyguardUpdateMonitorCallback cb = mCallbacks.get(i).get(); diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java index e23875f6c094..663f45a6c4bc 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java @@ -560,9 +560,6 @@ public class KeyguardViewMediator extends SystemUI { } tryKeyguardDone(); - if (strongAuth) { - mUpdateMonitor.reportSuccessfulStrongAuthUnlockAttempt(); - } } @Override @@ -591,9 +588,6 @@ public class KeyguardViewMediator extends SystemUI { mStatusBarKeyguardViewManager.startPreHideAnimation(mHideAnimationFinishedRunnable); mHandler.sendEmptyMessageDelayed(KEYGUARD_DONE_PENDING_TIMEOUT, KEYGUARD_DONE_PENDING_TIMEOUT_MS); - if (strongAuth) { - mUpdateMonitor.reportSuccessfulStrongAuthUnlockAttempt(); - } Trace.endSection(); } @@ -1288,7 +1282,6 @@ public class KeyguardViewMediator extends SystemUI { // Without this, settings is not enabled until the lock screen first appears setShowingLocked(false); hideLocked(); - mUpdateMonitor.reportSuccessfulStrongAuthUnlockAttempt(); return; } } diff --git a/services/core/java/com/android/server/locksettings/LockSettingsService.java b/services/core/java/com/android/server/locksettings/LockSettingsService.java index a105c8414afe..256f59516a89 100644 --- a/services/core/java/com/android/server/locksettings/LockSettingsService.java +++ b/services/core/java/com/android/server/locksettings/LockSettingsService.java @@ -560,6 +560,7 @@ public class LockSettingsService extends ILockSettings.Stub { mDeviceProvisionedObserver.onSystemReady(); // TODO: maybe skip this for split system user mode. mStorage.prefetchUser(UserHandle.USER_SYSTEM); + mStrongAuth.systemReady(); } private void migrateOldData() { diff --git a/services/core/java/com/android/server/locksettings/LockSettingsStrongAuth.java b/services/core/java/com/android/server/locksettings/LockSettingsStrongAuth.java index 096615313f94..542b929d85f5 100644 --- a/services/core/java/com/android/server/locksettings/LockSettingsStrongAuth.java +++ b/services/core/java/com/android/server/locksettings/LockSettingsStrongAuth.java @@ -27,6 +27,7 @@ import android.app.AlarmManager.OnAlarmListener; import android.app.admin.DevicePolicyManager; import android.app.trust.IStrongAuthTracker; import android.content.Context; +import android.hardware.fingerprint.FingerprintManager; import android.os.Binder; import android.os.DeadObjectException; import android.os.Handler; @@ -64,6 +65,7 @@ public class LockSettingsStrongAuth { private final Context mContext; private AlarmManager mAlarmManager; + private FingerprintManager mFingerprintManager; public LockSettingsStrongAuth(Context context) { mContext = context; @@ -71,6 +73,10 @@ public class LockSettingsStrongAuth { mAlarmManager = context.getSystemService(AlarmManager.class); } + public void systemReady() { + mFingerprintManager = mContext.getSystemService(FingerprintManager.class); + } + private void handleAddStrongAuthTracker(IStrongAuthTracker tracker) { for (int i = 0; i < mStrongAuthTrackers.size(); i++) { if (mStrongAuthTrackers.get(i).asBinder() == tracker.asBinder()) { @@ -188,6 +194,11 @@ public class LockSettingsStrongAuth { } public void reportSuccessfulStrongAuthUnlock(int userId) { + if (mFingerprintManager != null) { + byte[] token = null; /* TODO: pass real auth token once fp HAL supports it */ + mFingerprintManager.resetTimeout(token); + } + final int argNotUsed = 0; mHandler.obtainMessage(MSG_SCHEDULE_STRONG_AUTH_TIMEOUT, userId, argNotUsed).sendToTarget(); } |