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:
@@ -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() {
|
||||
|
Reference in New Issue
Block a user