Loading packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerProxy.java +3 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.provider.DeviceConfig; import android.view.MotionEvent; import com.android.internal.annotations.VisibleForTesting; import com.android.keyguard.KeyguardUpdateMonitor; import com.android.systemui.Dependency; import com.android.systemui.classifier.brightline.BrightLineFalsingManager; import com.android.systemui.classifier.brightline.FalsingDataProvider; Loading Loading @@ -102,7 +103,8 @@ public class FalsingManagerProxy implements FalsingManager { } else { mInternalFalsingManager = new BrightLineFalsingManager( new FalsingDataProvider(context.getResources().getDisplayMetrics()), Dependency.get(AsyncSensorManager.class) Dependency.get(AsyncSensorManager.class), KeyguardUpdateMonitor.getInstance(context) ); } Loading packages/SystemUI/src/com/android/systemui/classifier/brightline/BrightLineFalsingManager.java +27 −3 Original line number Diff line number Diff line Loading @@ -23,11 +23,14 @@ import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import android.hardware.SensorManager; import android.hardware.biometrics.BiometricSourceType; import android.net.Uri; import android.util.Log; import android.view.MotionEvent; import com.android.internal.logging.MetricsLogger; import com.android.keyguard.KeyguardUpdateMonitor; import com.android.keyguard.KeyguardUpdateMonitorCallback; import com.android.systemui.classifier.Classifier; import com.android.systemui.plugins.FalsingManager; Loading @@ -47,11 +50,13 @@ public class BrightLineFalsingManager implements FalsingManager { private final SensorManager mSensorManager; private final FalsingDataProvider mDataProvider; private final KeyguardUpdateMonitor mKeyguardUpdateMonitor; private boolean mSessionStarted; private MetricsLogger mMetricsLogger; private int mIsFalseTouchCalls; private boolean mShowingAod; private boolean mScreenOn; private boolean mJustUnlockedWithFace; private final ExecutorService mBackgroundExecutor = Executors.newSingleThreadExecutor(); Loading @@ -68,10 +73,27 @@ public class BrightLineFalsingManager implements FalsingManager { } }; public BrightLineFalsingManager(FalsingDataProvider falsingDataProvider, SensorManager sensorManager) { private final KeyguardUpdateMonitorCallback mKeyguardUpdateCallback = new KeyguardUpdateMonitorCallback() { @Override public void onBiometricAuthenticated(int userId, BiometricSourceType biometricSourceType) { if (userId == KeyguardUpdateMonitor.getCurrentUser() && biometricSourceType == BiometricSourceType.FACE) { mJustUnlockedWithFace = true; } } }; public BrightLineFalsingManager( FalsingDataProvider falsingDataProvider, SensorManager sensorManager, KeyguardUpdateMonitor keyguardUpdateMonitor) { mKeyguardUpdateMonitor = keyguardUpdateMonitor; mDataProvider = falsingDataProvider; mSensorManager = sensorManager; mKeyguardUpdateMonitor.registerCallback(mKeyguardUpdateCallback); mMetricsLogger = new MetricsLogger(); mClassifiers = new ArrayList<>(); DistanceClassifier distanceClassifier = new DistanceClassifier(mDataProvider); Loading Loading @@ -110,6 +132,7 @@ public class BrightLineFalsingManager implements FalsingManager { if (!mSessionStarted && !mShowingAod && mScreenOn) { logDebug("Starting Session"); mSessionStarted = true; mJustUnlockedWithFace = false; registerSensors(); mClassifiers.forEach(FalsingClassifier::onSessionStarted); } Loading Loading @@ -141,7 +164,7 @@ public class BrightLineFalsingManager implements FalsingManager { @Override public boolean isFalseTouch() { boolean r = mClassifiers.stream().anyMatch(falsingClassifier -> { boolean r = !mJustUnlockedWithFace && mClassifiers.stream().anyMatch(falsingClassifier -> { boolean result = falsingClassifier.isFalseTouch(); if (result) { logInfo(falsingClassifier.getClass().getName() + ": true"); Loading Loading @@ -335,6 +358,7 @@ public class BrightLineFalsingManager implements FalsingManager { @Override public void cleanup() { unregisterSensors(); mKeyguardUpdateMonitor.removeCallback(mKeyguardUpdateCallback); } static void logDebug(String msg) { Loading Loading
packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerProxy.java +3 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.provider.DeviceConfig; import android.view.MotionEvent; import com.android.internal.annotations.VisibleForTesting; import com.android.keyguard.KeyguardUpdateMonitor; import com.android.systemui.Dependency; import com.android.systemui.classifier.brightline.BrightLineFalsingManager; import com.android.systemui.classifier.brightline.FalsingDataProvider; Loading Loading @@ -102,7 +103,8 @@ public class FalsingManagerProxy implements FalsingManager { } else { mInternalFalsingManager = new BrightLineFalsingManager( new FalsingDataProvider(context.getResources().getDisplayMetrics()), Dependency.get(AsyncSensorManager.class) Dependency.get(AsyncSensorManager.class), KeyguardUpdateMonitor.getInstance(context) ); } Loading
packages/SystemUI/src/com/android/systemui/classifier/brightline/BrightLineFalsingManager.java +27 −3 Original line number Diff line number Diff line Loading @@ -23,11 +23,14 @@ import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import android.hardware.SensorManager; import android.hardware.biometrics.BiometricSourceType; import android.net.Uri; import android.util.Log; import android.view.MotionEvent; import com.android.internal.logging.MetricsLogger; import com.android.keyguard.KeyguardUpdateMonitor; import com.android.keyguard.KeyguardUpdateMonitorCallback; import com.android.systemui.classifier.Classifier; import com.android.systemui.plugins.FalsingManager; Loading @@ -47,11 +50,13 @@ public class BrightLineFalsingManager implements FalsingManager { private final SensorManager mSensorManager; private final FalsingDataProvider mDataProvider; private final KeyguardUpdateMonitor mKeyguardUpdateMonitor; private boolean mSessionStarted; private MetricsLogger mMetricsLogger; private int mIsFalseTouchCalls; private boolean mShowingAod; private boolean mScreenOn; private boolean mJustUnlockedWithFace; private final ExecutorService mBackgroundExecutor = Executors.newSingleThreadExecutor(); Loading @@ -68,10 +73,27 @@ public class BrightLineFalsingManager implements FalsingManager { } }; public BrightLineFalsingManager(FalsingDataProvider falsingDataProvider, SensorManager sensorManager) { private final KeyguardUpdateMonitorCallback mKeyguardUpdateCallback = new KeyguardUpdateMonitorCallback() { @Override public void onBiometricAuthenticated(int userId, BiometricSourceType biometricSourceType) { if (userId == KeyguardUpdateMonitor.getCurrentUser() && biometricSourceType == BiometricSourceType.FACE) { mJustUnlockedWithFace = true; } } }; public BrightLineFalsingManager( FalsingDataProvider falsingDataProvider, SensorManager sensorManager, KeyguardUpdateMonitor keyguardUpdateMonitor) { mKeyguardUpdateMonitor = keyguardUpdateMonitor; mDataProvider = falsingDataProvider; mSensorManager = sensorManager; mKeyguardUpdateMonitor.registerCallback(mKeyguardUpdateCallback); mMetricsLogger = new MetricsLogger(); mClassifiers = new ArrayList<>(); DistanceClassifier distanceClassifier = new DistanceClassifier(mDataProvider); Loading Loading @@ -110,6 +132,7 @@ public class BrightLineFalsingManager implements FalsingManager { if (!mSessionStarted && !mShowingAod && mScreenOn) { logDebug("Starting Session"); mSessionStarted = true; mJustUnlockedWithFace = false; registerSensors(); mClassifiers.forEach(FalsingClassifier::onSessionStarted); } Loading Loading @@ -141,7 +164,7 @@ public class BrightLineFalsingManager implements FalsingManager { @Override public boolean isFalseTouch() { boolean r = mClassifiers.stream().anyMatch(falsingClassifier -> { boolean r = !mJustUnlockedWithFace && mClassifiers.stream().anyMatch(falsingClassifier -> { boolean result = falsingClassifier.isFalseTouch(); if (result) { logInfo(falsingClassifier.getClass().getName() + ": true"); Loading Loading @@ -335,6 +358,7 @@ public class BrightLineFalsingManager implements FalsingManager { @Override public void cleanup() { unregisterSensors(); mKeyguardUpdateMonitor.removeCallback(mKeyguardUpdateCallback); } static void logDebug(String msg) { Loading