Merge "Fixed biometric setting crash." into main

This commit is contained in:
Joshua Mccloskey
2023-12-08 20:22:59 +00:00
committed by Android (Google) Code Review
2 changed files with 10 additions and 0 deletions

View File

@@ -93,6 +93,7 @@ import com.android.settingslib.widget.TwoTargetPreference;
import com.google.android.setupdesign.util.DeviceHelper;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
@@ -876,6 +877,8 @@ public class FingerprintSettings extends SubSettings {
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
if (!isFingerprintHardwareDetected(context)) {
Log.e(TAG, "Fingerprint hardware is not detected");
mControllers = Collections.emptyList();
return null;
}

View File

@@ -262,6 +262,13 @@ public class FingerprintSettingsFragmentTest {
mFragment.onResume();
}
@Test
public void testFragmentVisibleWhenNoHardwareDetected() {
doReturn(false).when(mFingerprintManager).isHardwareDetected();
setUpFragment(false);
assertThat(mFragment.isVisible()).isTrue();
}
private void setSensor(@FingerprintSensorProperties.SensorType int sensorType) {
final ArrayList<FingerprintSensorPropertiesInternal> props = new ArrayList<>();
props.add(new FingerprintSensorPropertiesInternal(