Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 74bfec50 authored by Ilya Matyukhin's avatar Ilya Matyukhin
Browse files

Define face/ServiceProvider and prepare for migration

Bug: 171335732
Test: atest com.android.server.biometrics
Test: enrolled and authenticated face on device
Change-Id: I7dc7dfd666c488b7d5ce8767d88888264cbf1f9f
parent 78e7af30
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -419,6 +419,8 @@ public class FaceManager implements BiometricAuthenticator, BiometricFaceConstan
     *
     * @see com.android.server.locksettings.LockSettingsService
     *
     * TODO(b/171335732): should take userId
     *
     * @hide
     */
    @RequiresPermission(MANAGE_BIOMETRIC)
@@ -426,7 +428,7 @@ public class FaceManager implements BiometricAuthenticator, BiometricFaceConstan
        if (mService != null) {
            try {
                mGenerateChallengeCallback = callback;
                mService.generateChallenge(mToken, sensorId, mServiceReceiver,
                mService.generateChallenge(mToken, sensorId, 0 /* userId */, mServiceReceiver,
                        mContext.getOpPackageName());
            } catch (RemoteException e) {
                throw e.rethrowFromSystemServer();
@@ -470,13 +472,16 @@ public class FaceManager implements BiometricAuthenticator, BiometricFaceConstan
    /**
     * Invalidates the current challenge.
     *
     * TODO(b/171335732): should take userId and challenge
     *
     * @hide
     */
    @RequiresPermission(MANAGE_BIOMETRIC)
    public void revokeChallenge(int sensorId) {
        if (mService != null) {
            try {
                mService.revokeChallenge(mToken, sensorId, mContext.getOpPackageName());
                mService.revokeChallenge(mToken, sensorId, 0 /* userId */,
                        mContext.getOpPackageName(), 0 /* challenge */);
            } catch (RemoteException e) {
                throw e.rethrowFromSystemServer();
            }
+3 −3
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ interface IFaceService {
    List<FaceSensorPropertiesInternal> getSensorPropertiesInternal(String opPackageName);

    // Authenticate the given sessionId with a face
    void authenticate(IBinder token, long operationId, int userid, IFaceServiceReceiver receiver,
    void authenticate(IBinder token, long operationId, int userId, IFaceServiceReceiver receiver,
            String opPackageName);

    // Uses the face hardware to detect for the presence of a face, without giving details
@@ -83,10 +83,10 @@ interface IFaceService {
    boolean isHardwareDetected(String opPackageName);

    // Get a pre-enrollment authentication token
    void generateChallenge(IBinder token, int sensorId, IFaceServiceReceiver receiver, String opPackageName);
    void generateChallenge(IBinder token, int sensorId, int userId, IFaceServiceReceiver receiver, String opPackageName);

    // Finish an enrollment sequence and invalidate the authentication token
    void revokeChallenge(IBinder token, int sensorId, String opPackageName);
    void revokeChallenge(IBinder token, int sensorId, int userId, String opPackageName, long challenge);

    // Determine if a user has at least one enrolled face
    boolean hasEnrolledFaces(int userId, String opPackageName);
+188 −144

File changed.

Preview size limit exceeded, changes collapsed.

+236 −50

File changed.

Preview size limit exceeded, changes collapsed.

+113 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading