am 65037654: Merge "Added support for DO_NOT_ASK_CREDENTIALS_ON_BOOT DPM flag" into mnc-dev

* commit '65037654623752e2336044390946c59ac8cfa128':
  Added support for DO_NOT_ASK_CREDENTIALS_ON_BOOT DPM flag
This commit is contained in:
Andrei Kapishnikov
2015-04-29 14:29:20 +00:00
committed by Android Git Automerger
2 changed files with 19 additions and 3 deletions

View File

@@ -189,7 +189,9 @@ public class ChooseLockGeneric extends SettingsActivity {
// TODO: why does this take disabled, its always called with a quality higher than
// what makes sense with disabled == true
private void maybeEnableEncryption(int quality, boolean disabled) {
if (Process.myUserHandle().isOwner() && LockPatternUtils.isDeviceEncryptionEnabled()) {
DevicePolicyManager dpm = (DevicePolicyManager) getSystemService(DEVICE_POLICY_SERVICE);
if (Process.myUserHandle().isOwner() && LockPatternUtils.isDeviceEncryptionEnabled()
&& !dpm.getDoNotAskCredentialsOnBoot()) {
mEncryptionRequestQuality = quality;
mEncryptionRequestDisabled = disabled;
final Context context = getActivity();

View File

@@ -39,6 +39,8 @@ import com.android.internal.logging.MetricsLogger;
public class CryptKeeperSettings extends InstrumentedFragment {
private static final String TAG = "CryptKeeper";
private static final String TYPE = "type";
private static final String PASSWORD = "password";
private static final int KEYGUARD_REQUEST = 55;
@@ -194,8 +196,20 @@ public class CryptKeeperSettings extends InstrumentedFragment {
Preference preference = new Preference(getActivity());
preference.setFragment(CryptKeeperConfirm.class.getName());
preference.setTitle(R.string.crypt_keeper_confirm_title);
preference.getExtras().putInt("type", type);
preference.getExtras().putString("password", password);
addEncryptionInfoToPreference(preference, type, password);
((SettingsActivity) getActivity()).onPreferenceStartFragment(null, preference);
}
private void addEncryptionInfoToPreference(Preference preference, int type, String password) {
Activity activity = getActivity();
DevicePolicyManager dpm = (DevicePolicyManager)
activity.getSystemService(Context.DEVICE_POLICY_SERVICE);
if (dpm.getDoNotAskCredentialsOnBoot()) {
preference.getExtras().putInt(TYPE, StorageManager.CRYPT_TYPE_DEFAULT);
preference.getExtras().putString(PASSWORD, "");
} else {
preference.getExtras().putInt(TYPE, type);
preference.getExtras().putString(PASSWORD, password);
}
}
}