Merge "Remove haptic feedback from face detect operations." into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
31fcf5ce4e
@@ -206,17 +206,6 @@ public abstract class AcquisitionClient<T> extends HalClientMonitor<T> implement
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected final void vibrateError() {
|
|
||||||
Vibrator vibrator = getContext().getSystemService(Vibrator.class);
|
|
||||||
if (vibrator != null && mShouldVibrate) {
|
|
||||||
vibrator.vibrate(Process.myUid(),
|
|
||||||
getContext().getOpPackageName(),
|
|
||||||
ERROR_VIBRATION_EFFECT,
|
|
||||||
getClass().getSimpleName() + "::error",
|
|
||||||
HARDWARE_FEEDBACK_VIBRATION_ATTRIBUTES);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isInterruptable() {
|
public boolean isInterruptable() {
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ public class FaceDetectClient extends AcquisitionClient<AidlSession> implements
|
|||||||
boolean isStrongBiometric, SensorPrivacyManager sensorPrivacyManager) {
|
boolean isStrongBiometric, SensorPrivacyManager sensorPrivacyManager) {
|
||||||
super(context, lazyDaemon, token, listener, options.getUserId(),
|
super(context, lazyDaemon, token, listener, options.getUserId(),
|
||||||
options.getOpPackageName(), 0 /* cookie */, options.getSensorId(),
|
options.getOpPackageName(), 0 /* cookie */, options.getSensorId(),
|
||||||
true /* shouldVibrate */, logger, biometricContext);
|
false /* shouldVibrate */, logger, biometricContext);
|
||||||
setRequestId(requestId);
|
setRequestId(requestId);
|
||||||
mIsStrongBiometric = isStrongBiometric;
|
mIsStrongBiometric = isStrongBiometric;
|
||||||
mSensorPrivacyManager = sensorPrivacyManager;
|
mSensorPrivacyManager = sensorPrivacyManager;
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ import static org.mockito.Mockito.inOrder;
|
|||||||
import static org.mockito.Mockito.never;
|
import static org.mockito.Mockito.never;
|
||||||
import static org.mockito.Mockito.same;
|
import static org.mockito.Mockito.same;
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
|
import static org.mockito.Mockito.verifyZeroInteractions;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
import android.hardware.biometrics.common.AuthenticateReason;
|
import android.hardware.biometrics.common.AuthenticateReason;
|
||||||
@@ -34,6 +35,7 @@ import android.hardware.face.FaceAuthenticateOptions;
|
|||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
import android.os.PowerManager;
|
import android.os.PowerManager;
|
||||||
import android.os.RemoteException;
|
import android.os.RemoteException;
|
||||||
|
import android.os.Vibrator;
|
||||||
import android.platform.test.annotations.Presubmit;
|
import android.platform.test.annotations.Presubmit;
|
||||||
import android.testing.TestableContext;
|
import android.testing.TestableContext;
|
||||||
|
|
||||||
@@ -75,6 +77,8 @@ public class FaceDetectClientTest {
|
|||||||
@Mock
|
@Mock
|
||||||
private IBinder mToken;
|
private IBinder mToken;
|
||||||
@Mock
|
@Mock
|
||||||
|
private Vibrator mVibrator;
|
||||||
|
@Mock
|
||||||
private ClientMonitorCallbackConverter mClientMonitorCallbackConverter;
|
private ClientMonitorCallbackConverter mClientMonitorCallbackConverter;
|
||||||
@Mock
|
@Mock
|
||||||
private BiometricLogger mBiometricLogger;
|
private BiometricLogger mBiometricLogger;
|
||||||
@@ -94,6 +98,8 @@ public class FaceDetectClientTest {
|
|||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setup() {
|
public void setup() {
|
||||||
|
mContext.addMockSystemService(Vibrator.class, mVibrator);
|
||||||
|
|
||||||
when(mBiometricContext.updateContext(any(), anyBoolean())).thenAnswer(
|
when(mBiometricContext.updateContext(any(), anyBoolean())).thenAnswer(
|
||||||
i -> i.getArgument(0));
|
i -> i.getArgument(0));
|
||||||
}
|
}
|
||||||
@@ -147,6 +153,16 @@ public class FaceDetectClientTest {
|
|||||||
verify(mBiometricContext).unsubscribe(same(mOperationContextCaptor.getValue()));
|
verify(mBiometricContext).unsubscribe(same(mOperationContextCaptor.getValue()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void doesNotPlayHapticOnInteractionDetected() throws Exception {
|
||||||
|
final FaceDetectClient client = createClient();
|
||||||
|
client.start(mCallback);
|
||||||
|
client.onInteractionDetected();
|
||||||
|
client.stopHalOperation();
|
||||||
|
|
||||||
|
verifyZeroInteractions(mVibrator);
|
||||||
|
}
|
||||||
|
|
||||||
private FaceDetectClient createClient() throws RemoteException {
|
private FaceDetectClient createClient() throws RemoteException {
|
||||||
return createClient(100 /* version */);
|
return createClient(100 /* version */);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user