Do not request confirmation by default for private space unlocks
Fix face unlock confirmation button behavior to respect "always require confirmation" setting. Adjust the description of the confirmation toggle in private space face unlock settings to reflect this change. Screenshot: https://screenshot.googleplex.com/4uHfm9Z3ZE56ZaT.png Bug: 342383195 Test: Tested manually by flashing local build Change-Id: I0f742839a862fe66cacad9f5704dbe8b0df3a0c2
This commit is contained in:
@@ -1262,6 +1262,8 @@
|
||||
<string name="private_space_face_settings_require_attention_details">To unlock private space, your eyes must be open. For best results, take off sunglasses.</string>
|
||||
<!-- Text shown in face settings in private space explaining what your face can be used for. [CHAR LIMIT=NONE] -->
|
||||
<string name="private_space_face_settings_footer">Use your face to unlock your private space.\n\nKeep in mind:\nYou can only have one face set up at a time. To add another face, delete the current one.\n\nLooking at the phone can unlock it when you don\u2019t intend to.\n\nYour private space can be unlocked by someone else if your device is held up to your face.\n\nYour private space can be unlocked by someone who looks a lot like you, like an identical sibling.</string>
|
||||
<!-- Text shown on the details of a toggle which enables/disables confirmation (i.e. confirm button) each time face unlock is used for private space. [CHAR LIMIT=90] -->
|
||||
<string name="private_space_face_settings_require_confirmation_details">When using Face Unlock, always require confirmation step</string>
|
||||
<!-- Biometric category title - biometric options for unlocking the device. [CHAR LIMIT=50] -->
|
||||
<string name="private_space_category_ways_to_unlock">Ways to unlock</string>
|
||||
<!-- Summary for one lock when device screen lock is used as private profile lock. [CHAR LIMIT=40] -->
|
||||
|
@@ -26,6 +26,7 @@ import android.provider.Settings;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
|
||||
import java.util.List;
|
||||
@@ -76,6 +77,11 @@ public class FaceSettingsConfirmPreferenceController extends FaceSettingsPrefere
|
||||
preference.setEnabled(false);
|
||||
} else {
|
||||
preference.setEnabled(true);
|
||||
// Update summary for private space face settings toggle
|
||||
if (Utils.isPrivateProfile(getUserId(), mContext)) {
|
||||
preference.setSummary(mContext.getString(
|
||||
R.string.private_space_face_settings_require_confirmation_details));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -313,7 +313,7 @@ public class ConfirmDeviceCredentialActivity extends FragmentActivity {
|
||||
mForceVerifyPath = userProperties.isCredentialShareableWithParent();
|
||||
if (android.multiuser.Flags.enableBiometricsToUnlockPrivateSpace()
|
||||
&& isBiometricAllowed(effectiveUserId, mUserId)) {
|
||||
promptInfo.setUseParentProfileForDeviceCredential(true);
|
||||
setBiometricPromptPropertiesForPrivateProfile(promptInfo);
|
||||
showBiometricPrompt(promptInfo, effectiveUserId);
|
||||
launchedBiometric = true;
|
||||
} else {
|
||||
@@ -344,6 +344,11 @@ public class ConfirmDeviceCredentialActivity extends FragmentActivity {
|
||||
}
|
||||
}
|
||||
|
||||
private static void setBiometricPromptPropertiesForPrivateProfile(PromptInfo promptInfo) {
|
||||
promptInfo.setUseParentProfileForDeviceCredential(true);
|
||||
promptInfo.setConfirmationRequested(false);
|
||||
}
|
||||
|
||||
private String getTitleFromCredentialType(@LockPatternUtils.CredentialType int credentialType,
|
||||
boolean isEffectiveUserManagedProfile) {
|
||||
switch (credentialType) {
|
||||
|
Reference in New Issue
Block a user