From: Danielle Millett Date: Mon, 19 Mar 2012 22:05:26 +0000 (-0400) Subject: Added a liveliness check box preference for Face Unlock. X-Git-Tag: android-x86-4.4-r1~1676^2 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=a87a25bdec7b991bfa6ef3ea9dfacd0ed162044e;p=android-x86%2Fpackages-apps-Settings.git Added a liveliness check box preference for Face Unlock. This will be used to enable or disable liveliness detection. Change-Id: I0be735724aed4cadbd5c37d895a7f80ad4f4ee09 --- diff --git a/res/values/strings.xml b/res/values/strings.xml index 71564c5ade..5beeace43e 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -639,6 +639,13 @@ Improve face matching + + Require eye blink + + Prevent others from using a photo of you to unlock your phone + + Prevent others from using a photo of you to unlock your tablet + Automatically lock diff --git a/res/xml/security_settings_biometric_weak.xml b/res/xml/security_settings_biometric_weak.xml index 080fbc9a50..4a414318df 100644 --- a/res/xml/security_settings_biometric_weak.xml +++ b/res/xml/security_settings_biometric_weak.xml @@ -31,6 +31,11 @@ android:title="@string/biometric_weak_improve_matching_title"/> + + diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java index adf8c37769..df4baf6cfd 100644 --- a/src/com/android/settings/SecuritySettings.java +++ b/src/com/android/settings/SecuritySettings.java @@ -53,6 +53,7 @@ public class SecuritySettings extends SettingsPreferenceFragment private static final String KEY_UNLOCK_SET_OR_CHANGE = "unlock_set_or_change"; private static final String KEY_BIOMETRIC_WEAK_IMPROVE_MATCHING = "biometric_weak_improve_matching"; + private static final String KEY_BIOMETRIC_WEAK_LIVELINESS = "biometric_weak_liveliness"; private static final String KEY_LOCK_ENABLED = "lockenabled"; private static final String KEY_VISIBLE_PATTERN = "visiblepattern"; private static final String KEY_TACTILE_FEEDBACK_ENABLED = "unlock_tactile_feedback"; @@ -74,6 +75,7 @@ public class SecuritySettings extends SettingsPreferenceFragment private LockPatternUtils mLockPatternUtils; private ListPreference mLockAfter; + private CheckBoxPreference mBiometricWeakLiveliness; private CheckBoxPreference mVisiblePattern; private CheckBoxPreference mTactileFeedback; @@ -155,6 +157,10 @@ public class SecuritySettings extends SettingsPreferenceFragment updateLockAfterPreferenceSummary(); } + // biometric weak liveliness + mBiometricWeakLiveliness = + (CheckBoxPreference) root.findPreference(KEY_BIOMETRIC_WEAK_LIVELINESS); + // visible pattern mVisiblePattern = (CheckBoxPreference) root.findPreference(KEY_VISIBLE_PATTERN); @@ -322,6 +328,10 @@ public class SecuritySettings extends SettingsPreferenceFragment createPreferenceHierarchy(); final LockPatternUtils lockPatternUtils = mChooseLockSettingsHelper.utils(); + if (mBiometricWeakLiveliness != null) { + mBiometricWeakLiveliness.setChecked( + lockPatternUtils.isBiometricWeakLivelinessEnabled()); + } if (mVisiblePattern != null) { mVisiblePattern.setChecked(lockPatternUtils.isVisiblePatternEnabled()); } @@ -354,6 +364,8 @@ public class SecuritySettings extends SettingsPreferenceFragment CONFIRM_EXISTING_FOR_BIOMETRIC_IMPROVE_REQUEST, null, null)) { startBiometricWeakImprove(); // no password set, so no need to confirm } + } else if (KEY_BIOMETRIC_WEAK_LIVELINESS.equals(key)) { + lockPatternUtils.setBiometricWeakLivelinessEnabled(isToggled(preference)); } else if (KEY_LOCK_ENABLED.equals(key)) { lockPatternUtils.setLockPatternEnabled(isToggled(preference)); } else if (KEY_VISIBLE_PATTERN.equals(key)) {