Stop face auth if occluding app doesn't want face auth.
Fixes: 259521464
Test: atest KeyguardUpdateMonitorTest
Test: manually,
1. Enroll face auth (Bypass or non-bypass doesn't matter)
2. Lock the phone
3. Open bouncer to unlock (face auth lock out state doesn't matter).
4. Enter the pin/pattern/password to unlock
5. Camera protection ring should not grow in size, scanning animation should not show up.
Change-Id: Ic35d8538a97bdab3ed22456f5055cbe20f1b56a1
This commit is contained in:
@@ -751,8 +751,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
*/
|
||||
public void requestFaceAuthOnOccludingApp(boolean request) {
|
||||
mOccludingAppRequestingFace = request;
|
||||
updateFaceListeningState(BIOMETRIC_ACTION_UPDATE,
|
||||
FACE_AUTH_TRIGGERED_OCCLUDING_APP_REQUESTED);
|
||||
int action = mOccludingAppRequestingFace ? BIOMETRIC_ACTION_UPDATE : BIOMETRIC_ACTION_STOP;
|
||||
updateFaceListeningState(action, FACE_AUTH_TRIGGERED_OCCLUDING_APP_REQUESTED);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1284,6 +1284,24 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
|
||||
assertThat(mKeyguardUpdateMonitor.isFaceDetectionRunning()).isEqualTo(true);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRequestFaceAuthFromOccludingApp_whenInvoked_startsFaceAuth() {
|
||||
mKeyguardUpdateMonitor.requestFaceAuthOnOccludingApp(true);
|
||||
|
||||
assertThat(mKeyguardUpdateMonitor.isFaceDetectionRunning()).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRequestFaceAuthFromOccludingApp_whenInvoked_stopsFaceAuth() {
|
||||
mKeyguardUpdateMonitor.requestFaceAuthOnOccludingApp(true);
|
||||
|
||||
assertThat(mKeyguardUpdateMonitor.isFaceDetectionRunning()).isTrue();
|
||||
|
||||
mKeyguardUpdateMonitor.requestFaceAuthOnOccludingApp(false);
|
||||
|
||||
assertThat(mKeyguardUpdateMonitor.isFaceDetectionRunning()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRequireUnlockForNfc_Broadcast() {
|
||||
KeyguardUpdateMonitorCallback callback = mock(KeyguardUpdateMonitorCallback.class);
|
||||
|
||||
Reference in New Issue
Block a user