Revert "Remove IPC calls from KeyguardUpdateMonitor"
This reverts commit c01528ffbe.
Bug: 251142195
Reason for revert: b/251142195 broke a lot of Droidmonitored tests
Change-Id: Ice67c31eb377bbf4634a9c338445b947b31706df
This commit is contained in:
@@ -2182,8 +2182,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
private void updateFaceEnrolled(int userId) {
|
||||
mIsFaceEnrolled = whitelistIpcs(
|
||||
() -> mFaceManager != null && mFaceManager.isHardwareDetected()
|
||||
&& mBiometricEnabledForUser.get(userId))
|
||||
&& mAuthController.isFaceAuthEnrolled(userId);
|
||||
&& mFaceManager.hasEnrolledTemplates(userId)
|
||||
&& mBiometricEnabledForUser.get(userId));
|
||||
}
|
||||
|
||||
public boolean isFaceSupported() {
|
||||
|
||||
@@ -151,7 +151,6 @@ public class AuthController extends CoreStartable implements CommandQueue.Callba
|
||||
@Nullable private List<FingerprintSensorPropertiesInternal> mSidefpsProps;
|
||||
|
||||
@NonNull private final SparseBooleanArray mUdfpsEnrolledForUser;
|
||||
@NonNull private final SparseBooleanArray mFaceEnrolledForUser;
|
||||
@NonNull private final SensorPrivacyManager mSensorPrivacyManager;
|
||||
private final WakefulnessLifecycle mWakefulnessLifecycle;
|
||||
private boolean mAllFingerprintAuthenticatorsRegistered;
|
||||
@@ -346,15 +345,6 @@ public class AuthController extends CoreStartable implements CommandQueue.Callba
|
||||
}
|
||||
}
|
||||
}
|
||||
if (mFaceProps == null) {
|
||||
Log.d(TAG, "handleEnrollmentsChanged, mFaceProps is null");
|
||||
} else {
|
||||
for (FaceSensorPropertiesInternal prop : mFaceProps) {
|
||||
if (prop.sensorId == sensorId) {
|
||||
mFaceEnrolledForUser.put(userId, hasEnrollments);
|
||||
}
|
||||
}
|
||||
}
|
||||
for (Callback cb : mCallbacks) {
|
||||
cb.onEnrollmentsChanged(modality);
|
||||
}
|
||||
@@ -719,7 +709,6 @@ public class AuthController extends CoreStartable implements CommandQueue.Callba
|
||||
mWindowManager = windowManager;
|
||||
mInteractionJankMonitor = jankMonitor;
|
||||
mUdfpsEnrolledForUser = new SparseBooleanArray();
|
||||
mFaceEnrolledForUser = new SparseBooleanArray();
|
||||
mVibratorHelper = vibrator;
|
||||
|
||||
mOrientationListener = new BiometricDisplayListener(
|
||||
@@ -1068,7 +1057,7 @@ public class AuthController extends CoreStartable implements CommandQueue.Callba
|
||||
return false;
|
||||
}
|
||||
|
||||
return mFaceEnrolledForUser.get(userId);
|
||||
return mFaceManager.hasEnrolledTemplates(userId);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -588,9 +588,8 @@ public class FaceService extends SystemService {
|
||||
}
|
||||
try {
|
||||
final SensorProps[] props = face.getSensorProps();
|
||||
final FaceProvider provider = new FaceProvider(getContext(),
|
||||
mBiometricStateCallback, props, instance, mLockoutResetDispatcher,
|
||||
BiometricContext.getInstance(getContext()));
|
||||
final FaceProvider provider = new FaceProvider(getContext(), props, instance,
|
||||
mLockoutResetDispatcher, BiometricContext.getInstance(getContext()));
|
||||
providers.add(provider);
|
||||
} catch (RemoteException e) {
|
||||
Slog.e(TAG, "Remote exception in getSensorProps: " + fqName);
|
||||
@@ -601,14 +600,14 @@ public class FaceService extends SystemService {
|
||||
}
|
||||
|
||||
@android.annotation.EnforcePermission(android.Manifest.permission.USE_BIOMETRIC_INTERNAL)
|
||||
@Override // Binder call
|
||||
public void registerAuthenticators(
|
||||
@NonNull List<FaceSensorPropertiesInternal> hidlSensors) {
|
||||
mRegistry.registerAll(() -> {
|
||||
final List<ServiceProvider> providers = new ArrayList<>();
|
||||
for (FaceSensorPropertiesInternal hidlSensor : hidlSensors) {
|
||||
providers.add(
|
||||
Face10.newInstance(getContext(), mBiometricStateCallback,
|
||||
hidlSensor, mLockoutResetDispatcher));
|
||||
Face10.newInstance(getContext(), hidlSensor, mLockoutResetDispatcher));
|
||||
}
|
||||
providers.addAll(getAidlProviders());
|
||||
return providers;
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
|
||||
package com.android.server.biometrics.sensors.face.aidl;
|
||||
|
||||
import static android.Manifest.permission.TEST_BIOMETRIC;
|
||||
|
||||
import android.annotation.NonNull;
|
||||
import android.content.Context;
|
||||
import android.hardware.biometrics.ITestSession;
|
||||
@@ -31,8 +33,8 @@ import android.os.RemoteException;
|
||||
import android.util.Slog;
|
||||
|
||||
import com.android.server.biometrics.HardwareAuthTokenUtils;
|
||||
import com.android.server.biometrics.Utils;
|
||||
import com.android.server.biometrics.sensors.BaseClientMonitor;
|
||||
import com.android.server.biometrics.sensors.BiometricStateCallback;
|
||||
import com.android.server.biometrics.sensors.ClientMonitorCallback;
|
||||
import com.android.server.biometrics.sensors.face.FaceUtils;
|
||||
|
||||
|
||||
@@ -52,10 +52,8 @@ import com.android.server.biometrics.log.BiometricContext;
|
||||
import com.android.server.biometrics.log.BiometricLogger;
|
||||
import com.android.server.biometrics.sensors.AuthenticationClient;
|
||||
import com.android.server.biometrics.sensors.BaseClientMonitor;
|
||||
import com.android.server.biometrics.sensors.BiometricStateCallback;
|
||||
import com.android.server.biometrics.sensors.ClientMonitorCallback;
|
||||
import com.android.server.biometrics.sensors.ClientMonitorCallbackConverter;
|
||||
import com.android.server.biometrics.sensors.ClientMonitorCompositeCallback;
|
||||
import com.android.server.biometrics.sensors.InvalidationRequesterClient;
|
||||
import com.android.server.biometrics.sensors.LockoutResetDispatcher;
|
||||
import com.android.server.biometrics.sensors.PerformanceTracker;
|
||||
@@ -82,7 +80,6 @@ public class FaceProvider implements IBinder.DeathRecipient, ServiceProvider {
|
||||
private boolean mTestHalEnabled;
|
||||
|
||||
@NonNull private final Context mContext;
|
||||
@NonNull private final BiometricStateCallback mBiometricStateCallback;
|
||||
@NonNull private final String mHalInstanceName;
|
||||
@NonNull @VisibleForTesting
|
||||
final SparseArray<Sensor> mSensors; // Map of sensors that this HAL supports
|
||||
@@ -124,14 +121,11 @@ public class FaceProvider implements IBinder.DeathRecipient, ServiceProvider {
|
||||
}
|
||||
}
|
||||
|
||||
public FaceProvider(@NonNull Context context,
|
||||
@NonNull BiometricStateCallback biometricStateCallback,
|
||||
@NonNull SensorProps[] props,
|
||||
public FaceProvider(@NonNull Context context, @NonNull SensorProps[] props,
|
||||
@NonNull String halInstanceName,
|
||||
@NonNull LockoutResetDispatcher lockoutResetDispatcher,
|
||||
@NonNull BiometricContext biometricContext) {
|
||||
mContext = context;
|
||||
mBiometricStateCallback = biometricStateCallback;
|
||||
mHalInstanceName = halInstanceName;
|
||||
mSensors = new SparseArray<>();
|
||||
mHandler = new Handler(Looper.getMainLooper());
|
||||
@@ -369,20 +363,9 @@ public class FaceProvider implements IBinder.DeathRecipient, ServiceProvider {
|
||||
BiometricsProtoEnums.CLIENT_UNKNOWN),
|
||||
mBiometricContext, maxTemplatesPerUser, debugConsent);
|
||||
scheduleForSensor(sensorId, client, new ClientMonitorCallback() {
|
||||
@Override
|
||||
public void onClientStarted(@NonNull BaseClientMonitor clientMonitor) {
|
||||
mBiometricStateCallback.onClientStarted(clientMonitor);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBiometricAction(int action) {
|
||||
mBiometricStateCallback.onBiometricAction(action);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClientFinished(@NonNull BaseClientMonitor clientMonitor,
|
||||
boolean success) {
|
||||
mBiometricStateCallback.onClientFinished(clientMonitor, success);
|
||||
if (success) {
|
||||
scheduleLoadAuthenticatorIdsForUser(sensorId, userId);
|
||||
scheduleInvalidationRequest(sensorId, userId);
|
||||
@@ -412,7 +395,7 @@ public class FaceProvider implements IBinder.DeathRecipient, ServiceProvider {
|
||||
token, id, callback, userId, opPackageName, sensorId,
|
||||
createLogger(BiometricsProtoEnums.ACTION_AUTHENTICATE, statsClient),
|
||||
mBiometricContext, isStrongBiometric);
|
||||
scheduleForSensor(sensorId, client, mBiometricStateCallback);
|
||||
scheduleForSensor(sensorId, client);
|
||||
});
|
||||
|
||||
return id;
|
||||
@@ -439,7 +422,7 @@ public class FaceProvider implements IBinder.DeathRecipient, ServiceProvider {
|
||||
mBiometricContext, isStrongBiometric,
|
||||
mUsageStats, mSensors.get(sensorId).getLockoutCache(),
|
||||
allowBackgroundAuthentication, isKeyguardBypassEnabled);
|
||||
scheduleForSensor(sensorId, client, mBiometricStateCallback);
|
||||
scheduleForSensor(sensorId, client);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -494,7 +477,7 @@ public class FaceProvider implements IBinder.DeathRecipient, ServiceProvider {
|
||||
BiometricsProtoEnums.CLIENT_UNKNOWN),
|
||||
mBiometricContext,
|
||||
mSensors.get(sensorId).getAuthenticatorIds());
|
||||
scheduleForSensor(sensorId, client, mBiometricStateCallback);
|
||||
scheduleForSensor(sensorId, client);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -582,8 +565,7 @@ public class FaceProvider implements IBinder.DeathRecipient, ServiceProvider {
|
||||
if (favorHalEnrollments) {
|
||||
client.setFavorHalEnrollments();
|
||||
}
|
||||
scheduleForSensor(sensorId, client, new ClientMonitorCompositeCallback(callback,
|
||||
mBiometricStateCallback));
|
||||
scheduleForSensor(sensorId, client, callback);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -57,7 +57,6 @@ import com.android.server.biometrics.log.BiometricLogger;
|
||||
import com.android.server.biometrics.sensors.AuthenticationConsumer;
|
||||
import com.android.server.biometrics.sensors.BaseClientMonitor;
|
||||
import com.android.server.biometrics.sensors.BiometricScheduler;
|
||||
import com.android.server.biometrics.sensors.BiometricStateCallback;
|
||||
import com.android.server.biometrics.sensors.EnumerateConsumer;
|
||||
import com.android.server.biometrics.sensors.ErrorConsumer;
|
||||
import com.android.server.biometrics.sensors.Interruptable;
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
|
||||
package com.android.server.biometrics.sensors.face.hidl;
|
||||
|
||||
import static android.Manifest.permission.TEST_BIOMETRIC;
|
||||
|
||||
import android.annotation.NonNull;
|
||||
import android.content.Context;
|
||||
import android.hardware.biometrics.ITestSession;
|
||||
@@ -28,8 +30,8 @@ import android.os.Binder;
|
||||
import android.os.RemoteException;
|
||||
import android.util.Slog;
|
||||
|
||||
import com.android.server.biometrics.Utils;
|
||||
import com.android.server.biometrics.sensors.BaseClientMonitor;
|
||||
import com.android.server.biometrics.sensors.BiometricStateCallback;
|
||||
import com.android.server.biometrics.sensors.ClientMonitorCallback;
|
||||
import com.android.server.biometrics.sensors.face.FaceUtils;
|
||||
|
||||
@@ -51,7 +53,6 @@ public class BiometricTestSessionImpl extends ITestSession.Stub {
|
||||
@NonNull private final Set<Integer> mEnrollmentIds;
|
||||
@NonNull private final Random mRandom;
|
||||
|
||||
|
||||
private final IFaceServiceReceiver mReceiver = new IFaceServiceReceiver.Stub() {
|
||||
@Override
|
||||
public void onEnrollResult(Face face, int remaining) {
|
||||
@@ -115,8 +116,7 @@ public class BiometricTestSessionImpl extends ITestSession.Stub {
|
||||
};
|
||||
|
||||
BiometricTestSessionImpl(@NonNull Context context, int sensorId,
|
||||
@NonNull ITestSessionCallback callback,
|
||||
@NonNull Face10 face10,
|
||||
@NonNull ITestSessionCallback callback, @NonNull Face10 face10,
|
||||
@NonNull Face10.HalResultController halResultController) {
|
||||
mContext = context;
|
||||
mSensorId = sensorId;
|
||||
|
||||
@@ -62,10 +62,8 @@ import com.android.server.biometrics.sensors.AuthenticationConsumer;
|
||||
import com.android.server.biometrics.sensors.BaseClientMonitor;
|
||||
import com.android.server.biometrics.sensors.BiometricNotificationUtils;
|
||||
import com.android.server.biometrics.sensors.BiometricScheduler;
|
||||
import com.android.server.biometrics.sensors.BiometricStateCallback;
|
||||
import com.android.server.biometrics.sensors.ClientMonitorCallback;
|
||||
import com.android.server.biometrics.sensors.ClientMonitorCallbackConverter;
|
||||
import com.android.server.biometrics.sensors.ClientMonitorCompositeCallback;
|
||||
import com.android.server.biometrics.sensors.EnumerateConsumer;
|
||||
import com.android.server.biometrics.sensors.ErrorConsumer;
|
||||
import com.android.server.biometrics.sensors.LockoutResetDispatcher;
|
||||
@@ -112,7 +110,6 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
private boolean mTestHalEnabled;
|
||||
|
||||
@NonNull private final FaceSensorPropertiesInternal mSensorProperties;
|
||||
@NonNull private final BiometricStateCallback mBiometricStateCallback;
|
||||
@NonNull private final Context mContext;
|
||||
@NonNull private final BiometricScheduler mScheduler;
|
||||
@NonNull private final Handler mHandler;
|
||||
@@ -339,7 +336,6 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
|
||||
@VisibleForTesting
|
||||
Face10(@NonNull Context context,
|
||||
@NonNull BiometricStateCallback biometricStateCallback,
|
||||
@NonNull FaceSensorPropertiesInternal sensorProps,
|
||||
@NonNull LockoutResetDispatcher lockoutResetDispatcher,
|
||||
@NonNull Handler handler,
|
||||
@@ -347,7 +343,6 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
@NonNull BiometricContext biometricContext) {
|
||||
mSensorProperties = sensorProps;
|
||||
mContext = context;
|
||||
mBiometricStateCallback = biometricStateCallback;
|
||||
mSensorId = sensorProps.sensorId;
|
||||
mScheduler = scheduler;
|
||||
mHandler = handler;
|
||||
@@ -371,12 +366,11 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
}
|
||||
|
||||
public static Face10 newInstance(@NonNull Context context,
|
||||
@NonNull BiometricStateCallback biometricStateCallback,
|
||||
@NonNull FaceSensorPropertiesInternal sensorProps,
|
||||
@NonNull LockoutResetDispatcher lockoutResetDispatcher) {
|
||||
final Handler handler = new Handler(Looper.getMainLooper());
|
||||
return new Face10(context, biometricStateCallback, sensorProps, lockoutResetDispatcher,
|
||||
handler, new BiometricScheduler(TAG, BiometricScheduler.SENSOR_TYPE_FACE,
|
||||
return new Face10(context, sensorProps, lockoutResetDispatcher, handler,
|
||||
new BiometricScheduler(TAG, BiometricScheduler.SENSOR_TYPE_FACE,
|
||||
null /* gestureAvailabilityTracker */),
|
||||
BiometricContext.getInstance(context));
|
||||
}
|
||||
@@ -620,20 +614,9 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
mBiometricContext);
|
||||
|
||||
mScheduler.scheduleClientMonitor(client, new ClientMonitorCallback() {
|
||||
@Override
|
||||
public void onClientStarted(@NonNull BaseClientMonitor clientMonitor) {
|
||||
mBiometricStateCallback.onClientStarted(clientMonitor);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBiometricAction(int action) {
|
||||
mBiometricStateCallback.onBiometricAction(action);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClientFinished(@NonNull BaseClientMonitor clientMonitor,
|
||||
boolean success) {
|
||||
mBiometricStateCallback.onClientFinished(clientMonitor, success);
|
||||
if (success) {
|
||||
// Update authenticatorIds
|
||||
scheduleUpdateActiveUserWithoutHandler(client.getTargetUserId());
|
||||
@@ -678,7 +661,7 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
createLogger(BiometricsProtoEnums.ACTION_AUTHENTICATE, statsClient),
|
||||
mBiometricContext, isStrongBiometric, mLockoutTracker,
|
||||
mUsageStats, allowBackgroundAuthentication, isKeyguardBypassEnabled);
|
||||
mScheduler.scheduleClientMonitor(client, mBiometricStateCallback);
|
||||
mScheduler.scheduleClientMonitor(client);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -713,7 +696,7 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
createLogger(BiometricsProtoEnums.ACTION_REMOVE,
|
||||
BiometricsProtoEnums.CLIENT_UNKNOWN),
|
||||
mBiometricContext, mAuthenticatorIds);
|
||||
mScheduler.scheduleClientMonitor(client, mBiometricStateCallback);
|
||||
mScheduler.scheduleClientMonitor(client);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -731,7 +714,7 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
createLogger(BiometricsProtoEnums.ACTION_REMOVE,
|
||||
BiometricsProtoEnums.CLIENT_UNKNOWN),
|
||||
mBiometricContext, mAuthenticatorIds);
|
||||
mScheduler.scheduleClientMonitor(client, mBiometricStateCallback);
|
||||
mScheduler.scheduleClientMonitor(client);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -823,15 +806,14 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
BiometricsProtoEnums.CLIENT_UNKNOWN),
|
||||
mBiometricContext, enrolledList,
|
||||
FaceUtils.getLegacyInstance(mSensorId), mAuthenticatorIds);
|
||||
mScheduler.scheduleClientMonitor(client, new ClientMonitorCompositeCallback(callback,
|
||||
mBiometricStateCallback));
|
||||
mScheduler.scheduleClientMonitor(client, callback);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void scheduleInternalCleanup(int sensorId, int userId,
|
||||
@Nullable ClientMonitorCallback callback) {
|
||||
scheduleInternalCleanup(userId, mBiometricStateCallback);
|
||||
scheduleInternalCleanup(userId, callback);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1029,7 +1011,7 @@ public class Face10 implements IHwBinder.DeathRecipient, ServiceProvider {
|
||||
@Override
|
||||
public ITestSession createTestSession(int sensorId, @NonNull ITestSessionCallback callback,
|
||||
@NonNull String opPackageName) {
|
||||
return new BiometricTestSessionImpl(mContext, mSensorId, callback,
|
||||
this, mHalResultController);
|
||||
return new BiometricTestSessionImpl(mContext, mSensorId, callback, this,
|
||||
mHalResultController);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,7 +39,6 @@ import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.server.biometrics.log.BiometricContext;
|
||||
import com.android.server.biometrics.sensors.BiometricScheduler;
|
||||
import com.android.server.biometrics.sensors.BiometricStateCallback;
|
||||
import com.android.server.biometrics.sensors.HalClientMonitor;
|
||||
import com.android.server.biometrics.sensors.LockoutResetDispatcher;
|
||||
|
||||
@@ -64,8 +63,6 @@ public class FaceProviderTest {
|
||||
private IFace mDaemon;
|
||||
@Mock
|
||||
private BiometricContext mBiometricContext;
|
||||
@Mock
|
||||
private BiometricStateCallback mBiometricStateCallback;
|
||||
|
||||
private SensorProps[] mSensorProps;
|
||||
private LockoutResetDispatcher mLockoutResetDispatcher;
|
||||
@@ -94,8 +91,8 @@ public class FaceProviderTest {
|
||||
|
||||
mLockoutResetDispatcher = new LockoutResetDispatcher(mContext);
|
||||
|
||||
mFaceProvider = new TestableFaceProvider(mDaemon, mContext, mBiometricStateCallback,
|
||||
mSensorProps, TAG, mLockoutResetDispatcher, mBiometricContext);
|
||||
mFaceProvider = new TestableFaceProvider(mDaemon, mContext, mSensorProps, TAG,
|
||||
mLockoutResetDispatcher, mBiometricContext);
|
||||
}
|
||||
|
||||
@SuppressWarnings("rawtypes")
|
||||
@@ -143,13 +140,11 @@ public class FaceProviderTest {
|
||||
|
||||
TestableFaceProvider(@NonNull IFace daemon,
|
||||
@NonNull Context context,
|
||||
@NonNull BiometricStateCallback biometricStateCallback,
|
||||
@NonNull SensorProps[] props,
|
||||
@NonNull String halInstanceName,
|
||||
@NonNull LockoutResetDispatcher lockoutResetDispatcher,
|
||||
@NonNull BiometricContext biometricContext) {
|
||||
super(context, biometricStateCallback, props, halInstanceName, lockoutResetDispatcher,
|
||||
biometricContext);
|
||||
super(context, props, halInstanceName, lockoutResetDispatcher, biometricContext);
|
||||
mDaemon = daemon;
|
||||
}
|
||||
|
||||
|
||||
@@ -43,7 +43,6 @@ import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.server.biometrics.log.BiometricContext;
|
||||
import com.android.server.biometrics.sensors.BiometricScheduler;
|
||||
import com.android.server.biometrics.sensors.BiometricStateCallback;
|
||||
import com.android.server.biometrics.sensors.LockoutResetDispatcher;
|
||||
|
||||
import org.junit.Before;
|
||||
@@ -74,8 +73,6 @@ public class Face10Test {
|
||||
private BiometricScheduler mScheduler;
|
||||
@Mock
|
||||
private BiometricContext mBiometricContext;
|
||||
@Mock
|
||||
private BiometricStateCallback mBiometricStateCallback;
|
||||
|
||||
private final Handler mHandler = new Handler(Looper.getMainLooper());
|
||||
private LockoutResetDispatcher mLockoutResetDispatcher;
|
||||
@@ -106,8 +103,8 @@ public class Face10Test {
|
||||
resetLockoutRequiresChallenge);
|
||||
|
||||
Face10.sSystemClock = Clock.fixed(Instant.ofEpochMilli(100), ZoneId.of("PST"));
|
||||
mFace10 = new Face10(mContext, mBiometricStateCallback, sensorProps,
|
||||
mLockoutResetDispatcher, mHandler, mScheduler, mBiometricContext);
|
||||
mFace10 = new Face10(mContext, sensorProps, mLockoutResetDispatcher, mHandler, mScheduler,
|
||||
mBiometricContext);
|
||||
mBinder = new Binder();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user