Merge "Added sensorPrivacyDialog to face settings" into sc-v2-dev am: af87b942f6

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16276448

Change-Id: I94b47b11890b5e7751fad60378128f1f2ee17802
This commit is contained in:
Joshua Mccloskey
2021-12-08 07:26:21 +00:00
committed by Automerger Merge Worker

View File

@@ -19,10 +19,12 @@ package com.android.settings.biometrics.face;
import android.app.admin.DevicePolicyManager;
import android.app.settings.SettingsEnums;
import android.content.Intent;
import android.hardware.SensorPrivacyManager;
import android.hardware.biometrics.BiometricAuthenticator;
import android.hardware.face.FaceManager;
import android.hardware.face.FaceSensorPropertiesInternal;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
@@ -34,10 +36,12 @@ import androidx.annotation.StringRes;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.biometrics.BiometricEnrollActivity;
import com.android.settings.biometrics.BiometricEnrollIntroduction;
import com.android.settings.biometrics.BiometricUtils;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.utils.SensorPrivacyManagerHelper;
import com.android.settingslib.RestrictedLockUtilsInternal;
import com.google.android.setupcompat.template.FooterButton;
@@ -57,6 +61,7 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
private FaceFeatureProvider mFaceFeatureProvider;
@Nullable private FooterButton mPrimaryFooterButton;
@Nullable private FooterButton mSecondaryFooterButton;
@Nullable private SensorPrivacyManager mSensorPrivacyManager;
@Override
protected void onCancelButtonClick(View view) {
@@ -150,6 +155,14 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
});
}
}
mSensorPrivacyManager = getApplicationContext()
.getSystemService(SensorPrivacyManager.class);
final SensorPrivacyManagerHelper helper = SensorPrivacyManagerHelper
.getInstance(getApplicationContext());
final boolean cameraPrivacyEnabled = helper
.isSensorBlocked(SensorPrivacyManager.Sensors.CAMERA, mUserId);
Log.v(TAG, "cameraPrivacyEnabled : " + cameraPrivacyEnabled);
}
protected boolean generateChallengeOnCreate() {
@@ -308,6 +321,28 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
return BiometricAuthenticator.TYPE_FACE;
}
@Override
protected void onNextButtonClick(View view) {
final boolean parentelConsentRequired =
getIntent()
.getBooleanExtra(BiometricEnrollActivity.EXTRA_REQUIRE_PARENTAL_CONSENT, false);
final boolean cameraPrivacyEnabled = SensorPrivacyManagerHelper
.getInstance(getApplicationContext())
.isSensorBlocked(SensorPrivacyManager.Sensors.CAMERA, mUserId);
final boolean isSetupWizard = WizardManagerHelper.isAnySetupWizard(getIntent());
final boolean isSettingUp = isSetupWizard || (parentelConsentRequired
&& !WizardManagerHelper.isUserSetupComplete(this));
if (cameraPrivacyEnabled && !isSettingUp) {
if (mSensorPrivacyManager == null) {
mSensorPrivacyManager = getApplicationContext()
.getSystemService(SensorPrivacyManager.class);
}
mSensorPrivacyManager.showSensorUseDialog(SensorPrivacyManager.Sensors.CAMERA);
} else {
super.onNextButtonClick(view);
}
}
@Override
@NonNull
protected FooterButton getPrimaryFooterButton() {