Display the correct encryption settings.
* You can no longer try to encrypt the device when it is encrypted. * Moved the encryption section below the lock screen section. It will be more common to change the lock screen settings. * If the device doesn't support encryption don't display the encryption section. Bug: 3384074 Change-Id: I172f5894a3cea57b1b8d03a84f1ecf0ee500c1f3
This commit is contained in:
@@ -583,11 +583,17 @@
|
|||||||
<string name="security_passwords_title">Passwords</string>
|
<string name="security_passwords_title">Passwords</string>
|
||||||
|
|
||||||
<string name="crypt_keeper_settings_title">Device encryption</string>
|
<string name="crypt_keeper_settings_title">Device encryption</string>
|
||||||
|
|
||||||
<string name="crypt_keeper_encrypt_title">Encrypt data on device</string>
|
<string name="crypt_keeper_encrypt_title">Encrypt data on device</string>
|
||||||
<string name="crypt_keeper_encrypt_summary">Requires you to set a device unlock pin or password</string>
|
<string name="crypt_keeper_encrypt_summary">Requires you to set a device unlock pin or password</string>
|
||||||
<string name="crypt_keeper_confirm_title">Confirm encrypt</string>
|
<string name="crypt_keeper_encrypted_summary">Encrypted</string>
|
||||||
|
|
||||||
|
<string name="crypt_keeper_confirm_title">Confirm encryption</string>
|
||||||
|
|
||||||
|
|
||||||
<string name="crypt_keeper_desc">You can encrypt your accounts, settings, downloaded applications and their data, media, and other files. Once you encrypt your tablet, you can\'t unencrypt it except by performing a factory data reset, erasing all the data on your tablet.\n\nEncryption takes up to an hour. You must start with a charged battery and keep your tablet plugged in until encryption is complete. If you interrupt the encryption process, you will lose some or all of your data.</string>
|
<string name="crypt_keeper_desc" product="tablet">You can encrypt your accounts, settings, downloaded applications and their data, media, and other files. Once you encrypt your tablet, you can\'t unencrypt it except by performing a factory data reset, erasing all the data on your tablet.\n\nEncryption takes up to an hour. You must start with a charged battery and keep your tablet plugged in until encryption is complete. If you interrupt the encryption process, you will lose some or all of your data.</string>
|
||||||
|
<string name="crypt_keeper_desc" product="default">You can encrypt your accounts, settings, downloaded applications and their data, media, and other files. Once you encrypt your phone, you can\'t unencrypt it except by performing a factory data reset, erasing all the data on your phone.\n\nEncryption takes up to an hour. You must start with a charged battery and keep your phone plugged in until encryption is complete. If you interrupt the encryption process, you will lose some or all of your data.</string>
|
||||||
|
|
||||||
|
|
||||||
<string name="crypt_keeper_button_text" product="tablet">Encrypt tablet</string>
|
<string name="crypt_keeper_button_text" product="tablet">Encrypt tablet</string>
|
||||||
<string name="crypt_keeper_button_text" product="default">Encrypt phone</string>
|
<string name="crypt_keeper_button_text" product="default">Encrypt phone</string>
|
||||||
|
32
res/xml/security_settings_encrypted.xml
Normal file
32
res/xml/security_settings_encrypted.xml
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Copyright (C) 2011 The Android Open Source Project
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
|
||||||
|
<PreferenceCategory
|
||||||
|
android:key="security_category"
|
||||||
|
android:title="@string/crypt_keeper_settings_title"
|
||||||
|
>
|
||||||
|
<Preference
|
||||||
|
style="?android:preferenceInformationStyle"
|
||||||
|
android:title="@string/crypt_keeper_encrypt_title"
|
||||||
|
android:summary="@string/crypt_keeper_encrypted_summary"
|
||||||
|
/>
|
||||||
|
|
||||||
|
</PreferenceCategory>
|
||||||
|
|
||||||
|
|
||||||
|
</PreferenceScreen>
|
@@ -29,6 +29,7 @@ import android.content.Intent;
|
|||||||
import android.database.Cursor;
|
import android.database.Cursor;
|
||||||
import android.location.LocationManager;
|
import android.location.LocationManager;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.os.SystemProperties;
|
||||||
import android.os.Vibrator;
|
import android.os.Vibrator;
|
||||||
import android.preference.CheckBoxPreference;
|
import android.preference.CheckBoxPreference;
|
||||||
import android.preference.ListPreference;
|
import android.preference.ListPreference;
|
||||||
@@ -50,7 +51,6 @@ import java.util.Observer;
|
|||||||
*/
|
*/
|
||||||
public class SecuritySettings extends SettingsPreferenceFragment
|
public class SecuritySettings extends SettingsPreferenceFragment
|
||||||
implements OnPreferenceChangeListener {
|
implements OnPreferenceChangeListener {
|
||||||
private static final String KEY_ENCRYPTION = "encryption";
|
|
||||||
|
|
||||||
// Lock Settings
|
// Lock Settings
|
||||||
private static final String KEY_UNLOCK_SET_OR_CHANGE = "unlock_set_or_change";
|
private static final String KEY_UNLOCK_SET_OR_CHANGE = "unlock_set_or_change";
|
||||||
@@ -161,12 +161,6 @@ public class SecuritySettings extends SettingsPreferenceFragment
|
|||||||
mUseLocation = useLocation;
|
mUseLocation = useLocation;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add options for device encryption
|
|
||||||
// TODO: It still needs to be determined how a device specifies that it supports
|
|
||||||
// encryption. That mechanism needs to be checked before adding the following code
|
|
||||||
|
|
||||||
addPreferencesFromResource(R.xml.security_settings_encryption);
|
|
||||||
|
|
||||||
// Add options for lock/unlock screen
|
// Add options for lock/unlock screen
|
||||||
int resid = 0;
|
int resid = 0;
|
||||||
if (!mLockPatternUtils.isSecure()) {
|
if (!mLockPatternUtils.isSecure()) {
|
||||||
@@ -192,6 +186,19 @@ public class SecuritySettings extends SettingsPreferenceFragment
|
|||||||
}
|
}
|
||||||
addPreferencesFromResource(resid);
|
addPreferencesFromResource(resid);
|
||||||
|
|
||||||
|
|
||||||
|
// Add options for device encryption
|
||||||
|
|
||||||
|
String status = SystemProperties.get("ro.crypto.state", "unsupported");
|
||||||
|
if ("encrypted".equalsIgnoreCase(status)) {
|
||||||
|
// The device is currently encrypted
|
||||||
|
addPreferencesFromResource(R.xml.security_settings_encrypted);
|
||||||
|
} else if ("unencrypted".equalsIgnoreCase(status)) {
|
||||||
|
// This device support encryption but isn't encrypted
|
||||||
|
addPreferencesFromResource(R.xml.security_settings_unencrypted);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// lock after preference
|
// lock after preference
|
||||||
mLockAfter = (ListPreference) root.findPreference(KEY_LOCK_AFTER_TIMEOUT);
|
mLockAfter = (ListPreference) root.findPreference(KEY_LOCK_AFTER_TIMEOUT);
|
||||||
if (mLockAfter != null) {
|
if (mLockAfter != null) {
|
||||||
|
Reference in New Issue
Block a user