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

Commit ab50807d authored by Jeff Sharkey's avatar Jeff Sharkey
Browse files

Offer a null FignerprintManager.

Settings likes null.

Test: builds
Bug: 32060380
Change-Id: I5ba19bccfd48916d4e581518928a6aee19e84a77
parent b2cca091
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -142,8 +142,7 @@ public class ChooseLockGeneric extends SettingsActivity {
            super.onCreate(savedInstanceState);

            String chooseLockAction = getActivity().getIntent().getAction();
            mFingerprintManager =
                (FingerprintManager) getActivity().getSystemService(Context.FINGERPRINT_SERVICE);
            mFingerprintManager = Utils.getFingerprintManagerOrNull(getActivity());
            mDPM = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
            mKeyStore = KeyStore.getInstance();
            mChooseLockSettingsHelper = new ChooseLockSettingsHelper(this.getActivity());
+1 −2
Original line number Diff line number Diff line
@@ -904,8 +904,7 @@ public class SecuritySettings extends SettingsPreferenceFragment
            }

            // Fingerprint
            FingerprintManager fpm =
                    (FingerprintManager) context.getSystemService(Context.FINGERPRINT_SERVICE);
            final FingerprintManager fpm = Utils.getFingerprintManagerOrNull(context);
            if (fpm != null && fpm.isHardwareDetected()) {
                // This catches the title which can be overloaded in an overlay
                data = new SearchIndexableRaw(context);
+9 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ import android.content.res.TypedArray;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.hardware.fingerprint.FingerprintManager;
import android.net.ConnectivityManager;
import android.net.LinkProperties;
import android.net.Uri;
@@ -1175,4 +1176,12 @@ public final class Utils extends com.android.settingslib.Utils {
        }
        return null;
    }

    public static FingerprintManager getFingerprintManagerOrNull(Context context) {
        if (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FINGERPRINT)) {
            return context.getSystemService(FingerprintManager.class);
        } else {
            return null;
        }
    }
}
+2 −1
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ import com.android.settings.Settings.FingerprintSuggestionActivity;
import com.android.settings.Settings.ScreenLockSuggestionActivity;
import com.android.settings.Settings.WifiCallingSuggestionActivity;
import com.android.settings.Settings.ZenModeAutomationSuggestionActivity;
import com.android.settings.Utils;
import com.android.settings.WallpaperSuggestionActivity;
import com.android.settingslib.drawer.Tile;

@@ -75,7 +76,7 @@ public class SuggestionsChecks {
    }

    private boolean isNotSingleFingerprintEnrolled() {
        FingerprintManager manager = mContext.getSystemService(FingerprintManager.class);
        FingerprintManager manager = Utils.getFingerprintManagerOrNull(mContext);
        return manager == null || manager.getEnrolledFingerprints().size() != 1;
    }

+3 −2
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import android.os.UserHandle;
import com.android.internal.logging.MetricsProto.MetricsEvent;
import com.android.settings.ChooseLockSettingsHelper;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.fingerprint.FingerprintEnrollSidecar.Listener;

/**
@@ -155,7 +156,7 @@ public class FingerprintEnrollFindSensor extends FingerprintEnrollBase {
                setResult(RESULT_TIMEOUT);
                finish();
            } else {
                FingerprintManager fpm = getSystemService(FingerprintManager.class);
                FingerprintManager fpm = Utils.getFingerprintManagerOrNull(this);
                int enrolled = fpm.getEnrolledFingerprints().size();
                int max = getResources().getInteger(
                        com.android.internal.R.integer.config_fingerprintMaxTemplatesPerUser);
@@ -172,7 +173,7 @@ public class FingerprintEnrollFindSensor extends FingerprintEnrollBase {
    }

    private void launchConfirmLock() {
        long challenge = getSystemService(FingerprintManager.class).preEnroll();
        long challenge = Utils.getFingerprintManagerOrNull(this).preEnroll();
        ChooseLockSettingsHelper helper = new ChooseLockSettingsHelper(this);
        boolean launchedConfirmationActivity = false;
        if (mUserId == UserHandle.USER_NULL) {
Loading