<item quantity="one"><xliff:g id="count">%1$d</xliff:g> fingerprint set up</item>
<item quantity="other"><xliff:g id="count">%1$d</xliff:g> fingerprints set up</item>
</plurals>
- <!-- Introduction title shown in fingerprint enrollment dialog [CHAR LIMIT=22] -->
+ <!-- message shown in summary field when no fingerprints are registered -->
+ <string name="security_settings_fingerprint_preference_summary_none"></string>
+ <!-- Introduction title shown in fingerprint enrollment dialog [CHAR LIMIT=29] -->
<string name="security_settings_fingerprint_enroll_onboard_title">Fingerprint setup</string>
<!-- Introduction message shown in fingerprint enrollment dialog when the user needs to choose an
alternate screen unlock (pin, pattern or password) as a backup to fingerprint. -->
<!-- Introduction message shown in fingerprint enrollment dialog, second item to describe what
the user needs to do. -->
<string name="security_settings_fingerprint_enroll_onboard_message_2">Add your fingerprint</string>
- <!-- Introduction title shown in fingerprint enrollment to introduce the fingerprint feature[CHAR LIMIT=22] -->
+ <!-- Introduction title shown in fingerprint enrollment to introduce the fingerprint feature[CHAR LIMIT=29] -->
<string name="security_settings_fingerprint_enroll_introduction_title">Unlock with fingerprint</string>
<!-- Introduction detail message shown in fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
<string name="security_settings_fingerprint_enroll_introduction_message">Just touch the fingerprint sensor to unlock your phone, authorize purchases, or sign in to apps. Be careful whose fingerprints you add - any fingerprints added will be able to do these things.</string>
<string name="security_settings_fingerprint_enroll_introduction_cancel">Cancel</string>
<!-- Button text to continue to the next screen from the introduction [CHAR LIMIT=22] -->
<string name="security_settings_fingerprint_enroll_introduction_continue">Continue</string>
- <!-- Introduction title shown in fingerprint enrollment dialog to locate the sensor [CHAR LIMIT=22] -->
+ <!-- Introduction title shown in fingerprint enrollment dialog to locate the sensor [CHAR LIMIT=29] -->
<string name="security_settings_fingerprint_enroll_find_sensor_title">Find the sensor</string>
<!-- Message shown in fingerprint enrollment dialog to locate the sensor -->
<string name="security_settings_fingerprint_enroll_find_sensor_message">
<string name="security_settings_fingerprint_enroll_dialog_ok">OK</string>
<!-- Button text shown in fingerprint dialog that allows the user to delete the fingerprint template [CHAR LIMIT=22] -->
<string name="security_settings_fingerprint_enroll_dialog_delete">Delete</string>
- <!-- Title shown in fingerprint enrollment dialog to begin enrollment [CHAR LIMIT=22]-->
+ <!-- Title shown in fingerprint enrollment dialog to begin enrollment [CHAR LIMIT=29]-->
<string name="security_settings_fingerprint_enroll_start_title">Let\u2019s start!</string>
<!-- Message shown in fingerprint enrollment dialog to begin enrollment [CHAR LIMIT=NONE] -->
<string name="security_settings_fingerprint_enroll_start_message">Put your finger on the sensor and lift after you feel a vibration</string>
- <!-- Title shown in fingerprint enrollment dialog to repeat touching the fingerprint sensor [CHAR LIMIT=28] -->
+ <!-- Title shown in fingerprint enrollment dialog to repeat touching the fingerprint sensor [CHAR LIMIT=29] -->
<string name="security_settings_fingerprint_enroll_repeat_title">Great! Now repeat</string>
<!-- Message shown in fingerprint enrollment dialog to repeat touching the fingerprint sensor [CHAR LIMIT=NONE] -->
<string name="security_settings_fingerprint_enroll_repeat_message">Move your finger slightly to add all the different parts of your fingerprint</string>
- <!-- Title shown in fingerprint enrollment dialog once enrollment is completed [CHAR LIMIT=22] -->
+ <!-- Title shown in fingerprint enrollment dialog once enrollment is completed [CHAR LIMIT=29] -->
<string name="security_settings_fingerprint_enroll_finish_title">Fingerprint added!</string>
<!-- Message shown in fingerprint enrollment dialog once enrollment is completed -->
<string name="security_settings_fingerprint_enroll_finish_message">Whenever you see this icon, you can use your fingerprint for identification or to authorize a purchase.</string>
<string name="setup_fingerprint_enroll_finish_message">Just touch the fingerprint sensor to wake and unlock your device.</string>
<!-- Message shown when fingerprint enrollment is completed, telling user about the fingerprint icon that will be shown whenever they can use their fingerprint [CHAR LIMIT=NONE] -->
<string name="setup_fingerprint_enroll_finish_message_secondary">When you see this icon, you can use your fingerprint.</string>
+ <!-- Title of the dialog shown when the user tries to skip fingerprint setup, asking them to confirm the action [CHAR LIMIT=40] -->
+ <string name="setup_fingerprint_enroll_enrolling_skip_title">Skip fingerprint setup?</string>
+ <!-- Content of the dialog shown when the user tries to skip fingerprint setup, asking them to confirm the action [CHAR LIMIT=NONE] -->
+ <string name="setup_fingerprint_enroll_enrolling_skip_message">You\u2019ve chosen to use your fingerprint as one way to unlock your phone. If you skip now, you\u2019ll need to set this up later. Setup takes only a minute or so.</string>
+
<!-- Button text to setup screen lock in onboard dialog [CHAR LIMIT=34] -->
<string name="security_settings_fingerprint_enroll_setup_screen_lock">Set up screen lock</string>
<!-- Button text to exit fingerprint wizard after everything is done [CHAR LIMIT=15] -->
<string name="security_settings_fingerprint_enroll_touch_dialog_title">Whoops, that\u2019s not the sensor</string>
<!-- Dialog message for dialog which shows when user touches the icon on the screen, instead of the sensor at the back [CHAR LIMIT=45] -->
<string name="security_settings_fingerprint_enroll_touch_dialog_message">Use the fingerprint sensor on your device.</string>
+ <!-- Dialog message for dialog which shows when finger cannot be enrolled. [CHAR LIMIT=45] -->
+ <string name="security_settings_fingerprint_enroll_error_dialog_title">Enrollment was not completed</string>
+ <!-- Dialog message for dialog which shows when finger cannot be enrolled due to being idle too long. -->
+ <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message">Fingerprint enrollment time limit reached. Try again.</string>
+ <!-- Dialog message for dialog which shows when finger cannot be enrolled due to an internal error or fingerprint can't be read. -->
+ <string name="security_settings_fingerprint_enroll_error_generic_dialog_message">Fingerprint enrollment didn\'t work. Try again or use a different finger.</string>
<!-- Button text shown at the end of enrollment that allows the user to add another fingerprint -->
<string name="fingerprint_enroll_button_add">Add another</string>
<!-- Button text shown at the end of enrollment that allows the user to move to the next step -->
<string name="legal_information">Legal information</string>
<!-- About phone settings screen, setting option name to see a list of contributors -->
<string name="contributors_title">Contributors</string>
+ <!-- About phone settings screen, setting option name to show Manual [CHAR LIMIT=25] -->
+ <string name="manual">Manual</string>
<!-- About phone settings screen, setting option name to show regulatory information [CHAR LIMIT=25] -->
<string name="regulatory_information">Regulatory information</string>
<!-- Note: this may be replaced by a more-specific title of the activity that will get launched --> <skip />
<!-- About phone settings screen, setting option name to see wallpapers attributions values -->
<string name="wallpaper_attributions_values">Satellite imagery providers:\n©2014 CNES / Astrium, DigitalGlobe, Bluesky</string>
+ <!-- Phone Manual -->
+ <string name="settings_manual_activity_title">Manual</string>
+ <!-- About phone settings screen, Manual dialog message when manual cannot be loaded -->
+ <string name="settings_manual_activity_unavailable">There is a problem loading the manual.</string>
+
<!-- Title for actual Settings license activity. --> <skip />
<!-- About phone settings, Legal information setting option name and title of dialog box holding license info -->
<string name="settings_license_activity_title">Open source licenses</string>
<string name="keywords_app_permissions">apps permissions security</string>
<string name="keywords_default_apps">apps default</string>
<string name="keywords_ignore_optimizations">ignore optimizations doze app standby</string>
+ <string name="keywords_color_mode">vibrant rgb srgb color natural standard</string>
<!-- Search keywords for different screen unlock modes : slide to unlock, password, pattern and PIN [CHAR LIMIT=none] -->
<string name="keywords_lockscreen">slide password pattern pin</string>
<!-- Description of setting that controls gesture to open camera [CHAR LIMIT=NONE] -->
<string name="camera_gesture_desc">Open the camera app by twisting your wrist twice</string>
+ <!-- Title of setting that controls gesture to open camera by double tapping the power button [CHAR LIMIT=40] -->
+ <string name="camera_double_tap_power_gesture_title">Press power button twice for camera</string>
+
+ <!-- Description of setting that controls gesture to open camera by double tapping the power button [CHAR LIMIT=NONE] -->
+ <string name="camera_double_tap_power_gesture_desc">Quickly open camera without unlocking your screen</string>
+
+ <!-- Name of each color mode for the display. [CHAR LIMIT=40] -->
+ <string-array name="color_mode_names">
+ <item>Vibrant (default)</item>
+ <item>Natural</item>
+ <item>Standard</item>
+ </string-array>
+
+ <!-- Description of each color mode for the display. [CHAR LIMIT=NONE] -->
+ <string-array name="color_mode_descriptions">
+ <item>Enhanced colors</item>
+ <item>Natural colors as seen by the eye</item>
+ <item>Colors optimized for digital content</item>
+ </string-array>
+
+ <!-- Name of feature to change color setting for the display [CHAR LIMIT=60] -->
+ <string name="picture_color_mode">Picture color mode</string>
+
+ <!-- Description of feature to change color setting for the display [CHAR LIMIT=NONE] -->
+ <string name="picture_color_mode_desc">Use sRGB</string>
</resources>
import android.provider.Settings;
import android.telephony.CarrierConfigManager;
import android.text.TextUtils;
+import android.text.format.DateFormat;
import android.util.Log;
import android.widget.Toast;
+
import com.android.internal.logging.MetricsLogger;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Index;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Date;
import java.util.List;
+import java.util.Locale;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
private static final String FILENAME_PROC_VERSION = "/proc/version";
private static final String FILENAME_MSV = "/sys/board_properties/soc/msv";
+ private static final String KEY_MANUAL = "manual";
private static final String KEY_REGULATORY_INFO = "regulatory_info";
private static final String KEY_SYSTEM_UPDATE_SETTINGS = "system_update_settings";
private static final String PROPERTY_URL_SAFETYLEGAL = "ro.url.safetylegal";
findPreference(KEY_FIRMWARE_VERSION).setEnabled(true);
String patch = Build.VERSION.SECURITY_PATCH;
if (!"".equals(patch)) {
+ try {
+ SimpleDateFormat template = new SimpleDateFormat("yyyy-MM-dd");
+ Date patchDate = template.parse(patch);
+ String format = DateFormat.getBestDateTimePattern(Locale.getDefault(), "dMMMMyyyy");
+ patch = DateFormat.format(format, patchDate).toString();
+ } catch (ParseException e) {
+ // broken parse; fall through and use the raw string
+ }
setStringSummary(KEY_SECURITY_PATCH, patch);
} else {
getPreferenceScreen().removePreference(findPreference(KEY_SECURITY_PATCH));
removePreferenceIfBoolFalse(KEY_UPDATE_SETTING,
R.bool.config_additional_system_update_setting_enable);
+ // Remove manual entry if none present.
+ removePreferenceIfBoolFalse(KEY_MANUAL, R.bool.config_show_manual);
+
// Remove regulatory information if none present.
final Intent intent = new Intent(Settings.ACTION_SHOW_REGULATORY_INFO);
if (getPackageManager().queryIntentActivities(intent, 0).isEmpty()) {