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

Commit d12d8be5 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Remove FingerprintManagerWrapper" into pi-dev

parents e6a18f81 1b9b1a23
Loading
Loading
Loading
Loading
+0 −16
Original line number Diff line number Diff line
@@ -58,7 +58,6 @@ import android.os.BatteryManager;
import android.os.Bundle;
import android.os.IBinder;
import android.os.INetworkManagementService;
import android.os.Looper;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.UserHandle;
@@ -75,8 +74,6 @@ import android.provider.Settings;
import android.support.annotation.StringRes;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceGroup;
import android.support.v7.preference.PreferenceManager;
import android.support.v7.preference.PreferenceScreen;
import android.telephony.TelephonyManager;
import android.text.Spannable;
import android.text.SpannableString;
@@ -86,7 +83,6 @@ import android.text.style.TtsSpan;
import android.util.ArraySet;
import android.util.IconDrawableFactory;
import android.util.Log;
import android.util.TypedValue;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -99,11 +95,8 @@ import com.android.internal.util.ArrayUtils;
import com.android.internal.widget.LockPatternUtils;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.wrapper.DevicePolicyManagerWrapper;
import com.android.settings.wrapper.FingerprintManagerWrapper;
import com.android.settingslib.core.instrumentation.VisibilityLoggerMixin;

import java.net.InetAddress;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
@@ -815,15 +808,6 @@ public final class Utils extends com.android.settingslib.Utils {
        }
    }

    public static FingerprintManagerWrapper getFingerprintManagerWrapperOrNull(Context context) {
        FingerprintManager fingerprintManager = getFingerprintManagerOrNull(context);
        if (fingerprintManager != null) {
            return new FingerprintManagerWrapper(fingerprintManager);
        } else {
            return null;
        }
    }

    public static boolean hasFingerprintHardware(Context context) {
        FingerprintManager fingerprintManager = getFingerprintManagerOrNull(context);
        return fingerprintManager != null && fingerprintManager.isHardwareDetected();
+2 −3
Original line number Diff line number Diff line
@@ -29,7 +29,6 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.Utils;
import com.android.settings.core.InstrumentedFragment;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.wrapper.FingerprintManagerWrapper;

import java.util.ArrayList;

@@ -47,7 +46,7 @@ public class FingerprintEnrollSidecar extends InstrumentedFragment {
    private byte[] mToken;
    private boolean mDone;
    private int mUserId;
    private FingerprintManagerWrapper mFingerprintManager;
    private FingerprintManager mFingerprintManager;
    private ArrayList<QueuedEvent> mQueuedEvents;

    private abstract class QueuedEvent {
@@ -109,7 +108,7 @@ public class FingerprintEnrollSidecar extends InstrumentedFragment {
    @Override
    public void onAttach(Activity activity) {
        super.onAttach(activity);
        mFingerprintManager = Utils.getFingerprintManagerWrapperOrNull(activity);
        mFingerprintManager = Utils.getFingerprintManagerOrNull(activity);
        mToken = activity.getIntent().getByteArrayExtra(
                ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE_TOKEN);
        mUserId = activity.getIntent().getIntExtra(Intent.EXTRA_USER_ID, UserHandle.USER_NULL);
+4 −9
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@ package com.android.settings.password;
import static android.app.admin.DevicePolicyManager.ACTION_SET_NEW_PASSWORD;
import static android.app.admin.DevicePolicyManager.KEYGUARD_DISABLE_FINGERPRINT;
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_SOMETHING;

import static com.android.internal.util.Preconditions.checkNotNull;

import android.annotation.Nullable;
@@ -36,7 +35,6 @@ import android.os.UserManager;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.widget.LockPatternUtils;
import com.android.settings.Utils;
import com.android.settings.wrapper.FingerprintManagerWrapper;

/**
 * Business logic for {@link SetNewPasswordActivity}.
@@ -57,7 +55,8 @@ final class SetNewPasswordController {
     */
    private final int mTargetUserId;
    private final PackageManager mPackageManager;
    @Nullable private final FingerprintManagerWrapper mFingerprintManager;
    @Nullable
    private final FingerprintManager mFingerprintManager;
    private final DevicePolicyManager mDevicePolicyManager;
    private final Ui mUi;

@@ -78,13 +77,9 @@ final class SetNewPasswordController {
        }
        // Create a wrapper of FingerprintManager for testing, see IFingerPrintManager for details.
        final FingerprintManager fingerprintManager = Utils.getFingerprintManagerOrNull(context);
        final FingerprintManagerWrapper fingerprintManagerWrapper =
                fingerprintManager == null
                        ? null
                        : new FingerprintManagerWrapper(fingerprintManager);
        return new SetNewPasswordController(userId,
                context.getPackageManager(),
                fingerprintManagerWrapper,
                fingerprintManager,
                (DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE), ui);
    }

@@ -92,7 +87,7 @@ final class SetNewPasswordController {
    SetNewPasswordController(
            int targetUserId,
            PackageManager packageManager,
            FingerprintManagerWrapper fingerprintManager,
            FingerprintManager fingerprintManager,
            DevicePolicyManager devicePolicyManager,
            Ui ui) {
        mTargetUserId = targetUserId;
+0 −66
Original line number Diff line number Diff line
/*
 * Copyright (C) 2016 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.settings.wrapper;

import android.annotation.NonNull;
import android.hardware.fingerprint.FingerprintManager;
import android.hardware.fingerprint.FingerprintManager.EnrollmentCallback;
import android.os.CancellationSignal;

import com.android.internal.util.Preconditions;

/**
 * Wrapper of {@link FingerprintManager}. Workaround for robolectic testing.
 *
 * This is the workaround to allow us test {@link SetNewPasswordController} which uses a new hidden
 * API {@link android.hardware.fingerprint.FingerprintManager#hasEnrolledFingerprints(int)} that
 * robolectric does not support yet. Having robolectic to support latest platform API is tracked
 * in b/30995831.
 */
public class FingerprintManagerWrapper {
    private @NonNull FingerprintManager mFingerprintManager;

    public FingerprintManagerWrapper(@NonNull FingerprintManager fingerprintManager) {
        Preconditions.checkNotNull(fingerprintManager);
        mFingerprintManager = fingerprintManager;
    }

    public boolean isHardwareDetected() {
        return mFingerprintManager.isHardwareDetected();
    }

    public boolean hasEnrolledFingerprints(int userId) {
        return mFingerprintManager.hasEnrolledFingerprints(userId);
    }

    public long preEnroll() {
        return mFingerprintManager.preEnroll();
    }

    public void setActiveUser(int userId) {
        mFingerprintManager.setActiveUser(userId);
    }

    public void enroll(
            byte[] token,
            CancellationSignal cancel,
            int flags,
            int userId,
            EnrollmentCallback callback) {
        mFingerprintManager.enroll(token, cancel, flags, userId, callback);
    }
}
+1 −2
Original line number Diff line number Diff line
@@ -39,7 +39,6 @@ import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResourcesImpl;
import com.android.settings.testutils.shadow.ShadowUtils;
import com.android.settings.testutils.shadow.ShadowVibrator;
import com.android.settings.wrapper.FingerprintManagerWrapper;

import org.junit.After;
import org.junit.Before;
@@ -62,7 +61,7 @@ import java.util.concurrent.TimeUnit;
public class FingerprintEnrollEnrollingTest {

    @Mock
    private FingerprintManagerWrapper mFingerprintManager;
    private FingerprintManager mFingerprintManager;

    private FingerprintEnrollEnrolling mActivity;

Loading