Update to use ParentalControlsUtilsInternal for common logic
Bug: 188847063
Test: atest ParentalControlsUtilsTest
Change-Id: I14ba3683f846ad7ff6e9f2eb5013d9033556e706
diff --git a/src/com/android/settings/biometrics/ParentalControlsUtils.java b/src/com/android/settings/biometrics/ParentalControlsUtils.java
index 1d7cf6a..35db6f4 100644
--- a/src/com/android/settings/biometrics/ParentalControlsUtils.java
+++ b/src/com/android/settings/biometrics/ParentalControlsUtils.java
@@ -20,6 +20,7 @@
import android.content.ComponentName;
import android.content.Context;
import android.hardware.biometrics.BiometricAuthenticator;
+import android.hardware.biometrics.ParentalControlsUtilsInternal;
import android.os.Build;
import android.os.UserHandle;
import android.provider.Settings;
@@ -71,38 +72,12 @@
static RestrictedLockUtils.EnforcedAdmin parentConsentRequiredInternal(
@NonNull DevicePolicyManager dpm, @BiometricAuthenticator.Modality int modality,
@NonNull UserHandle userHandle) {
- final ComponentName cn = dpm.getProfileOwnerOrDeviceOwnerSupervisionComponent(userHandle);
- if (cn == null) {
- return null;
- }
-
- final int keyguardDisabledFeatures = dpm.getKeyguardDisabledFeatures(cn);
- final boolean dpmFpDisabled = containsFlag(keyguardDisabledFeatures,
- DevicePolicyManager.KEYGUARD_DISABLE_FINGERPRINT);
- final boolean dpmFaceDisabled = containsFlag(keyguardDisabledFeatures,
- DevicePolicyManager.KEYGUARD_DISABLE_FACE);
- final boolean dpmIrisDisabled = containsFlag(keyguardDisabledFeatures,
- DevicePolicyManager.KEYGUARD_DISABLE_IRIS);
-
- final boolean consentRequired;
- if (containsFlag(modality, BiometricAuthenticator.TYPE_FINGERPRINT) && dpmFpDisabled) {
- consentRequired = true;
- } else if (containsFlag(modality, BiometricAuthenticator.TYPE_FACE) && dpmFaceDisabled) {
- consentRequired = true;
- } else if (containsFlag(modality, BiometricAuthenticator.TYPE_IRIS) && dpmIrisDisabled) {
- consentRequired = true;
- } else {
- consentRequired = false;
- }
-
- if (consentRequired) {
+ if (ParentalControlsUtilsInternal.parentConsentRequired(dpm, modality, userHandle)) {
+ final ComponentName cn =
+ ParentalControlsUtilsInternal.getSupervisionComponentName(dpm, userHandle);
return new RestrictedLockUtils.EnforcedAdmin(cn, userHandle);
} else {
return null;
}
}
-
- private static boolean containsFlag(int haystack, int needle) {
- return (haystack & needle) != 0;
- }
}