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

Commit 11178957 authored by Stanley Wang's avatar Stanley Wang Committed by Android (Google) Code Review
Browse files

Merge "Add log to capture the hardware status." into rvc-dev

parents c548288a f7e6c1e4
Loading
Loading
Loading
Loading
+21 −7
Original line number Diff line number Diff line
@@ -95,9 +95,20 @@ public class FaceSettings extends DashboardFragment {
    private final FaceSettingsEnrollButtonPreferenceController.Listener mEnrollListener = intent ->
            startActivityForResult(intent, ENROLL_REQUEST);

    public static boolean isAvailable(Context context) {
    /**
     * @param context
     * @return true if the Face hardware is detected.
     */
    public static boolean isFaceHardwareDetected(Context context) {
        FaceManager manager = Utils.getFaceManagerOrNull(context);
        return manager != null && manager.isHardwareDetected();
        boolean isHardwareDetected = false;
        if (manager == null) {
            Log.d(TAG, "FaceManager is null");
        } else {
            isHardwareDetected = manager.isHardwareDetected();
            Log.d(TAG, "FaceManager is not null. Hardware detected: " + isHardwareDetected);
        }
        return manager != null && isHardwareDetected;
    }

    @Override
@@ -126,7 +137,7 @@ public class FaceSettings extends DashboardFragment {
        super.onCreate(savedInstanceState);

        final Context context = getPrefContext();
        if (!isAvailable(context)) {
        if (!isFaceHardwareDetected(context)) {
            Log.w(TAG, "no faceManager, finish this");
            finish();
            return;
@@ -273,7 +284,7 @@ public class FaceSettings extends DashboardFragment {

    @Override
    protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
        if (!isAvailable(context)) {
        if (!isFaceHardwareDetected(context)) {
            return null;
        }
        mControllers = buildPreferenceControllers(context, getSettingsLifecycle());
@@ -314,7 +325,7 @@ public class FaceSettings extends DashboardFragment {
                @Override
                public List<AbstractPreferenceController> createPreferenceControllers(
                        Context context) {
                    if (isAvailable(context)) {
                    if (isFaceHardwareDetected(context)) {
                        return buildPreferenceControllers(context, null /* lifecycle */);
                    } else {
                        return null;
@@ -323,7 +334,7 @@ public class FaceSettings extends DashboardFragment {

                @Override
                protected boolean isPageSearchEnabled(Context context) {
                    if (isAvailable(context)) {
                    if (isFaceHardwareDetected(context)) {
                        return hasEnrolledBiometrics(context);
                    }

@@ -333,7 +344,10 @@ public class FaceSettings extends DashboardFragment {
                @Override
                public List<String> getNonIndexableKeys(Context context) {
                    final List<String> keys = super.getNonIndexableKeys(context);
                    if (isAvailable(context)) {
                    final boolean isFaceHardwareDetected = isFaceHardwareDetected(context);
                    Log.d(TAG, "Get non indexable keys. isFaceHardwareDetected: "
                            + isFaceHardwareDetected + ", size:" + keys.size());
                    if (isFaceHardwareDetected) {
                        final boolean hasEnrolled = hasEnrolledBiometrics(context);
                        keys.add(hasEnrolled ? PREF_KEY_ENROLL_FACE_UNLOCK
                                : PREF_KEY_DELETE_FACE_DATA);
+4 −4
Original line number Diff line number Diff line
@@ -22,10 +22,10 @@ import android.content.Context;
import android.hardware.face.FaceManager;
import android.provider.Settings;

import com.android.settings.Utils;

import androidx.preference.Preference;

import com.android.settings.Utils;

/**
 * Preference controller for Face settings page controlling the ability to use
 * Face authentication in apps (through BiometricPrompt).
@@ -51,7 +51,7 @@ public class FaceSettingsAppPreferenceController extends FaceSettingsPreferenceC

    @Override
    public boolean isChecked() {
        if (!FaceSettings.isAvailable(mContext)) {
        if (!FaceSettings.isFaceHardwareDetected(mContext)) {
            return false;
        }
        return Settings.Secure.getIntForUser(
@@ -67,7 +67,7 @@ public class FaceSettingsAppPreferenceController extends FaceSettingsPreferenceC
    @Override
    public void updateState(Preference preference) {
        super.updateState(preference);
        if (!FaceSettings.isAvailable(mContext)) {
        if (!FaceSettings.isFaceHardwareDetected(mContext)) {
            preference.setEnabled(false);
        } else if (!mFaceManager.hasEnrolledTemplates(getUserId())) {
            preference.setEnabled(false);
+1 −1
Original line number Diff line number Diff line
@@ -93,7 +93,7 @@ public class FaceSettingsAttentionPreferenceController extends FaceSettingsPrefe

    @Override
    public boolean isChecked() {
        if (!FaceSettings.isAvailable(mContext)) {
        if (!FaceSettings.isFaceHardwareDetected(mContext)) {
            return true;
        }
        // Set to disabled until we know the true value.
+1 −2
Original line number Diff line number Diff line
@@ -25,7 +25,6 @@ import android.provider.Settings;
import androidx.preference.Preference;

import com.android.settings.Utils;
import com.android.settings.core.TogglePreferenceController;

/**
 * Preference controller giving the user an option to always require confirmation.
@@ -65,7 +64,7 @@ public class FaceSettingsConfirmPreferenceController extends FaceSettingsPrefere
    @Override
    public void updateState(Preference preference) {
        super.updateState(preference);
        if (!FaceSettings.isAvailable(mContext)) {
        if (!FaceSettings.isFaceHardwareDetected(mContext)) {
            preference.setEnabled(false);
        } else if (!mFaceManager.hasEnrolledTemplates(getUserId())) {
            preference.setEnabled(false);
+2 −2
Original line number Diff line number Diff line
@@ -53,7 +53,7 @@ public class FaceSettingsKeyguardPreferenceController extends FaceSettingsPrefer

    @Override
    public boolean isChecked() {
        if (!FaceSettings.isAvailable(mContext)) {
        if (!FaceSettings.isFaceHardwareDetected(mContext)) {
            return false;
        } else if (getRestrictingAdmin() != null) {
            return false;
@@ -77,7 +77,7 @@ public class FaceSettingsKeyguardPreferenceController extends FaceSettingsPrefer
    public void updateState(Preference preference) {
        EnforcedAdmin admin;
        super.updateState(preference);
        if (!FaceSettings.isAvailable(mContext)) {
        if (!FaceSettings.isFaceHardwareDetected(mContext)) {
            preference.setEnabled(false);
        } else if ((admin = getRestrictingAdmin()) != null) {
            ((RestrictedSwitchPreference) preference).setDisabledByAdmin(admin);
Loading