am 8d62eb4a: am 0008d219: Refactor to remove multiple in-loop Object[]->String[] castings
Merge commit '8d62eb4a51141f4464ba0b4c510cf0ec4198a56a'
* commit '8d62eb4a51141f4464ba0b4c510cf0ec4198a56a':
Refactor to remove multiple in-loop Object[]->String[] castings
diff --git a/Android.mk b/Android.mk
index d70d1ce..2eb779a 100644
--- a/Android.mk
+++ b/Android.mk
@@ -8,6 +8,8 @@
LOCAL_PACKAGE_NAME := Settings
LOCAL_CERTIFICATE := platform
+LOCAL_PROGUARD_FLAGS := -include $(LOCAL_PATH)/proguard.flags
+
include $(BUILD_PACKAGE)
# Use the folloing include to make our test apk.
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 7b15e3f..5f74558 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -231,12 +231,6 @@
</intent-filter>
</activity>
- <activity android:name="LocalePickerInSetupWizard" android:label="@string/language_picker_title">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- </intent-filter>
- </activity>
-
<activity android:name="LanguageSettings"
android:label="@string/language_keyboard_settings_title"
android:clearTaskOnLaunch="true"
@@ -729,11 +723,10 @@
</intent-filter>
</activity>
- <activity android:name="ProxySelector" android:label="@string/proxy_settings_label"
- android:theme="@android:style/Theme.Dialog">
+ <activity android:name="ProxySelector" android:label="@string/proxy_settings_label">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
+ <category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
diff --git a/proguard.flags b/proguard.flags
new file mode 100644
index 0000000..d37d2e0
--- /dev/null
+++ b/proguard.flags
@@ -0,0 +1,2 @@
+# Keep all Fragments in this package, which are used by reflection.
+-keep class com.android.settings.*Fragment
diff --git a/res/drawable-hdpi/ic_power_system.png b/res/drawable-hdpi/ic_power_system.png
new file mode 100644
index 0000000..5e7cf99
--- /dev/null
+++ b/res/drawable-hdpi/ic_power_system.png
Binary files differ
diff --git a/res/drawable/ic_power_system.png b/res/drawable-mdpi/ic_power_system.png
similarity index 100%
rename from res/drawable/ic_power_system.png
rename to res/drawable-mdpi/ic_power_system.png
Binary files differ
diff --git a/res/layout/locale_picker.xml b/res/layout/locale_picker.xml
index cc38278..7fef2ff 100644
--- a/res/layout/locale_picker.xml
+++ b/res/layout/locale_picker.xml
@@ -19,10 +19,10 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
- <ListView android:id="@android:id/list"
+ <fragment
+ android:id="@+id/locale_picker_fragment"
+ android:name="com.android.settings.LocalePickerFragment"
android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:drawSelectorOnTop="false"
- />
-
+ android:layout_height="0dip"
+ android:layout_weight="1" />
</LinearLayout>
diff --git a/res/layout/locale_picker_in_setupwizard.xml b/res/layout/locale_picker_in_setupwizard.xml
deleted file mode 100644
index d816f47..0000000
--- a/res/layout/locale_picker_in_setupwizard.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2008 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.
--->
-
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="match_parent"
- android:layout_height="match_parent">
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/select_your_language"
- android:layout_gravity="center_horizontal"
- android:paddingBottom="10dip"
- android:textAppearance="?android:attr/textAppearanceLarge"
- />
-
- <View
- android:layout_width="match_parent"
- android:layout_height="1dip"
- android:layout_marginTop="8dip"
- android:background="@android:drawable/divider_horizontal_dark"
- />
-
- <ListView android:id="@android:id/list"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:drawSelectorOnTop="false"
- />
-
-</LinearLayout>
diff --git a/res/layout/proxy.xml b/res/layout/proxy.xml
index 3ecbb80..76f200e 100644
--- a/res/layout/proxy.xml
+++ b/res/layout/proxy.xml
@@ -22,7 +22,8 @@
android:paddingLeft="6dip"
android:paddingRight="6dip"
android:paddingBottom="3dip"
- android:layout_width="match_parent" android:layout_height="wrap_content">
+ android:layout_width="match_parent" android:layout_height="wrap_content"
+ android:scrollbars="vertical" >
<TextView
android:textStyle="bold"
@@ -46,11 +47,27 @@
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="@string/proxy_port_label" />
- <EditText android:id="@+id/port"
+ <EditText android:id="@+id/port"
android:numeric="integer"
+ android:maxLines="1"
+ android:layout_marginTop="2dip"
+ android:layout_width="match_parent" android:layout_height="wrap_content"
+ android:scrollHorizontally="true" />
+
+ <TextView
+ android:textStyle="bold"
+ android:maxLines="1"
+ android:layout_marginTop="4dip"
+ android:layout_width="wrap_content" android:layout_height="wrap_content"
+ android:text="@string/proxy_exclusionlist_label" />
+
+ <EditText android:id="@+id/exclusionlist"
android:maxLines="1"
android:layout_marginTop="2dip"
android:layout_width="match_parent" android:layout_height="wrap_content"
+ android:autoText="false"
+ android:capitalize="none"
+ android:singleLine="true"
android:scrollHorizontally="true" />
<LinearLayout
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 3ecfc95..f96626d 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Spustit činnost <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Účet:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Vymazat"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Port"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Obnovit výchozí nastavení"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Uložit"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Název hostitele"</string>
<string name="proxy_error" msgid="8926675299638611451">"Upozornění"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Zadaný název hostitele není platný."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Je třeba vyplnit pole port."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Pokud je pole hostitel prázdné, musí být prázdné i pole port."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Zadaný port není platný."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Vyhledávání mediálních souborů na kartě SD..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Karta SD byla připojena pouze pro čtení."</string>
<string name="next_label" msgid="4693520878012668114">"Další"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Národní prostředí"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Zvolte jazyk"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Jazyk"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Zvolit činnost"</string>
<string name="device_info_label" msgid="6551553813651711205">"Info o zařízení"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Info o baterii"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Změnit bezpečnostní heslo"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Heslo musí obsahovat nejméně %d znaků"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"Kód PIN musí obsahovat nejméně %d znaků"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Po dokončení stiskněte tlačítko Pokračovat"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Po dokončení se dotkněte tlačítka Pokračovat"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Pokračovat"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"Kód PIN nemůže obsahovat více než %d číslic"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"Kód PIN nemůže obsahovat více než %d číslic"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"Kód PIN musí obsahovat pouze číslice 0 až 9."</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Správce zařízení nepovoluje použít nedávno použitý PIN"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Heslo obsahuje neplatný znak"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Heslo musí obsahovat nejméně jedno písmeno."</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Heslo musí obsahovat nejméně jednu číslici."</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Heslo musí obsahovat nejméně jeden symbol."</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Heslo musí obsahovat nejméně jedno písmeno"</item>
+ <item quantity="other" msgid="7278096339907683541">"Heslo musí obsahovat nejméně %d písmen"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Heslo musí obsahovat nejméně jedno malé písmeno"</item>
+ <item quantity="other" msgid="588499075580432178">"Heslo musí obsahovat nejméně %d malých písmen"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Heslo musí obsahovat nejméně jedno velké písmeno"</item>
+ <item quantity="other" msgid="2183090598541826806">"Heslo musí obsahovat nejméně %d velkých písmen"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Heslo musí obsahovat nejméně jednu číslici"</item>
+ <item quantity="other" msgid="995673409754935278">"Heslo musí obsahovat nejméně %d číslic"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Heslo musí obsahovat nejméně jeden zvláštní symbol"</item>
+ <item quantity="other" msgid="3047460862484105274">"Heslo musí obsahovat nejméně %d zvláštních symbolů"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Heslo musí obsahovat nejméně jeden znak jiný než písmeno"</item>
+ <item quantity="other" msgid="5574191164708145973">"Heslo musí obsahovat nejméně %d nepísmenných znaků"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Správce zařízení nepovoluje použít nedávno použité heslo"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Zrušit"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Správa zařízení"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Média"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefon"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Přenos"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Vstupní zařízení"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Připojeno ke zvukovému médiu"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Připojeno k náhlavní soupravě"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Připojeno k náhlavní soupravě a zvukovému médiu"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Připojeno ke vstupnímu zařízení"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Možnosti zařízení <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Připojit"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Umožňuje připojení zařízení s rozhraním Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Připojeno k náhlavní soupravě"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Připojeno k serveru pro přenos dat"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Nepřipojeno k serveru pro přenos souborů"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Připojeno ke vstupnímu zařízení"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Umožňuje připojení zvukového média"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Umožňuje připojení náhlavní soupravy"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Použít pro přenos souborů"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Použít pro vstup"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Nastavení doku"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Použít zvuk doku"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Jako telefon pro hlasitý poslech"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Aplikace"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Zástupce"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Zadávání textu"</string>
+ <string name="input_method" msgid="5434026103176856164">"Metoda zadávání dat"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Správa možností zadávání textu"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Nastavení modulu <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Nastavení klávesnice na obrazovce"</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 0ba04d8..bce5c12 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Start <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Konto:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Ryd"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Port"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Gendan standarder"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Gem"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Værtsnavn"</string>
<string name="proxy_error" msgid="8926675299638611451">"Bemærk"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Det indtastede værtsnavn er ikke gyldigt."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Du skal udfylde portfeltet."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Portfeltet skal være tomt, hvis værtsfeltet er tomt."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Den indtastede port er ikke gyldig."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Scanner SD-kort efter medier ..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"SD-kortet er monteret som skrivebeskyttet"</string>
<string name="next_label" msgid="4693520878012668114">"Næste"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Landestandard"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Vælg dit sprog"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Sprog"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Vælg aktivitet"</string>
<string name="device_info_label" msgid="6551553813651711205">"Enhedsoplysninger"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Batterioplysninger"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Skift adgangskode til at låse op"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Adgangskoden skal være på mindst %d tegn"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"Pinkoden skal være på mindst %d tegn"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Tryk på Fortsæt, når du er færdig"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Tryk på Fortsæt, når du er færdig"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Fortsæt"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"Pinkoden kan ikke være længere end %d cifre"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"PIN-koden kan ikke være længere end %d cifre"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"Pinkoden må kun indeholde cifrene 0-9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Enhedens administrator tillader ikke brug af nylig pinkode"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Adgangskoden indeholder et ulovligt tegn"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Adgangskoden skal indeholde mindst ét bogstav."</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Adgangskoden skal indeholde mindst ét tal"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Adgangskoden skal indeholde mindst ét symbol."</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Adgangskoden skal indeholde mindst ét bogstav."</item>
+ <item quantity="other" msgid="7278096339907683541">"Adgangskoden skal indeholde mindst %d bogstaver"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Adgangskoden skal indeholde mindst 1 lille bogstav."</item>
+ <item quantity="other" msgid="588499075580432178">"Adgangskoden skal indeholde mindst %d små bogstaver"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Adgangskoden skal indeholde mindst ét stort bogstav."</item>
+ <item quantity="other" msgid="2183090598541826806">"Adgangskoden skal indeholde mindst %d store bogstaver"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Adgangskoden skal indeholde mindst 1 tal"</item>
+ <item quantity="other" msgid="995673409754935278">"Adgangskoden skal indeholde mindst %d tal"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Adgangskoden skal indeholde mindst ét specialtegn."</item>
+ <item quantity="other" msgid="3047460862484105274">"Adgangskoden skal indeholde mindst %d symboler"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Adgangskoden skal indeholde mindst 1 tegn, der ikke er et bogstav"</item>
+ <item quantity="other" msgid="5574191164708145973">"Adgangskoden skal indeholde mindst %d tegn, der ikke er bogstaver"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Enhedens administrator tillader ikke brug af nylig adgangskode"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Annuller"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Enhedsadministration"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Medier"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefon"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Overfør"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Inputenhed"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Forbundet til medielyd"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Forbundet til telefonlyd"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Forbundet til telefon- og medielyd"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Forbundet til inputenhed"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Valgmuligheder for <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Forbind"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Opret forbindelse til Bluetooth-enhed"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Forbundet til telefonlyd"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Forbundet til filoverførselsserver"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Ikke forbundet til filoverførselsserver"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Forbundet til inputenhed"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Brug til medielyd"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Brug til telefonlyd"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Brug til filoverførsel"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Brug til input"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Indstillinger af Dock"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Brug dock til audio"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Som højttalertelefon"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Programmer"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Genveje"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Tekstinput"</string>
+ <string name="input_method" msgid="5434026103176856164">"Inputmetode"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Administrer valgmuligheder for tekstinput"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"<xliff:g id="IME_NAME">%1$s</xliff:g>-indstillinger"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Indstillinger for skærmens tastatur"</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index b40ac72..6c32e50 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"<xliff:g id="ACTIVITY">activity</xliff:g> starten"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Konto:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Löschen"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Port"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Standard wiederherstellen"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Speichern"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Hostname"</string>
<string name="proxy_error" msgid="8926675299638611451">"Achtung"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Der eingegebene Hostname ist ungültig."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Sie müssen das Feld für den Port ausfüllen."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Das Feld für den Port muss leer sein, wenn das Feld für den Host leer ist."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Der eingegebene Port ist ungültig."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"SD-Karte wird auf Medien gescannt..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"SD-Karte schreibgeschützt aktiviert"</string>
<string name="next_label" msgid="4693520878012668114">"Weiter"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Sprache"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Sprache auswählen"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Sprache"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Aktion auswählen"</string>
<string name="device_info_label" msgid="6551553813651711205">"Geräteinfo"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Akkuinfo"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Entsperrungspasswort ändern"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Das Passwort muss mindestens %d Zeichen enthalten."</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"Die PIN muss mindestens %d Zeichen enthalten."</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Wählen Sie \"Weiter\", wenn Sie fertig sind."</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Wählen Sie \"Weiter\", sobald Sie fertig sind."</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Weiter"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"Die PIN darf maximal %d Zeichen enthalten."</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"Die PIN darf maximal %d Zeichen enthalten."</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"PIN darf nur die Ziffern 0 - 9 enthalten."</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Geräteadministrator lässt die Verwendung einer früheren PIN nicht zu"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Das Passwort enthält ein ungültiges Zeichen."</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Das Passwort muss mindestens einen Buchstaben enthalten."</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Das Passwort muss mindestens eine Zahl enthalten."</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Das Passwort muss mindestens ein Symbol enthalten."</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Das Passwort muss mindestens einen Buchstaben enthalten."</item>
+ <item quantity="other" msgid="7278096339907683541">"Das Passwort muss mindestens %d Buchstaben enthalten."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Das Passwort muss mindestens einen Kleinbuchstaben enthalten."</item>
+ <item quantity="other" msgid="588499075580432178">"Das Passwort muss mindestens %d Kleinbuchstaben enthalten."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Das Passwort muss mindestens einen Großbuchstaben enthalten."</item>
+ <item quantity="other" msgid="2183090598541826806">"Das Passwort muss mindestens %d Großbuchstaben enthalten."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Das Passwort muss mindestens eine Ziffer enthalten."</item>
+ <item quantity="other" msgid="995673409754935278">"Das Passwort muss mindestens %d Ziffern enthalten."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Das Passwort muss mindestens ein Sonderzeichen enthalten."</item>
+ <item quantity="other" msgid="3047460862484105274">"Das Passwort muss mindestens %d Sonderzeichen enthalten."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Das Passwort muss mindestens ein Zeichen enthalten, das kein Buchstabe ist."</item>
+ <item quantity="other" msgid="5574191164708145973">"Das Passwort muss mindestens %d Zeichen enthalten, die keine Buchstaben sind."</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Geräteadministrator lässt die Verwendung eines früheren Passworts nicht zu"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Abbrechen"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Geräteverwaltung"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Medien"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefon"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Übertragung"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Eingabegerät"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Verbunden mit Audiosystem von Medien"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Verbunden mit Audiosystem des Telefons"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Verbunden mit Audiosystem von Telefon und Medien"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Mit einem Eingabegerät verbunden"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Optionen von <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Verbinden"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Mit Bluetooth-Gerät verbinden"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Verbunden mit Audiosystem des Telefons"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Mit Dateiübertragungsserver verbunden"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Nicht mit Dateiübertragungsserver verbunden"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Mit einem Eingabegerät verbunden"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Für Audiosystem von Medien verwenden"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Für Audiosystem des Telefons verwenden"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Für Dateiübertragung verwenden"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Für Eingabe verwenden"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Dock-Einstellungen"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Dock für Audio verwenden"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Als Lautsprechertelefon"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Anwendungen"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Tastenkombinationen"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Texteingabe"</string>
+ <string name="input_method" msgid="5434026103176856164">"Eingabemethode"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Optionen für Texteingabe verwalten"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"<xliff:g id="IME_NAME">%1$s</xliff:g>-Einstellungen"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Einstellungen der Bildschirmtastatur"</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index c13c509..c08b315 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Εκκίνηση <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Λογαριασμός:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Εκκαθάριση"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Θύρα"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Επαναφορά προεπιλογών"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Αποθ/ση"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Όνομα κεντρικού υπολογιστή"</string>
<string name="proxy_error" msgid="8926675299638611451">"Προσοχή"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Το όνομα κεντρικού υπολογιστή που πληκτρολογήσατε δεν είναι έγκυρο."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Πρέπει να συμπληρώσετε το πεδίο θύρας."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Το πεδίο θύρας θα πρέπει να είναι κενό αν το πεδίο κεντρικού υπολογιστή είναι κενό."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Η θύρα που πληκτρολογήσατε δεν είναι έγκυρη."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Σάρωση κάρτας SD για πολυμέσα..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Η κάρτα SD που προσαρτήθηκε είναι μόνο για ανάγνωση"</string>
<string name="next_label" msgid="4693520878012668114">"Επόμενο"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Τοπικές ρυθμίσεις"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Επιλέξτε γλώσσα"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Γλώσσα"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Επιλογή δραστηριότητας"</string>
<string name="device_info_label" msgid="6551553813651711205">"Πληροφορίες συσκευής"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Πληροφορίες μπαταρίας"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Αλλαγή κωδικού πρόσβασης ξεκλειδώματος"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Ο κωδικός πρόσβασης πρέπει να έχει τουλάχιστον %d χαρακτήρες"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"Ο αριθμός PIN πρέπει να έχει τουλάχιστον %d χαρακτήρες"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Πατήστε \"Συνέχεια\" όταν τελειώσετε"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Πατήστε \"Συνέχεια\" όταν τελειώσετε"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Συνέχεια"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"Ο αριθμός PIN δεν μπορεί να υπερβαίνει τα %d ψηφία"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"Ο αριθμός PIN δεν μπορεί να υπερβαίνει τα %d ψηφία"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"Ο αριθμός PIN πρέπει να περιέχει μόνο ψηφία από το 0 έως το 9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Ο διαχειριστής της συσκευής δεν επιτρέπει τη χρήση ενός πρόσφατου PIN"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Ο κωδικός πρόσβασης περιέχει ένα μη έγκυρο χαρακτήρα"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"O κωδικός πρόσβασης πρέπει να περιέχει τουλάχιστον ένα γράμμα"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Ο κωδικός πρόσβασης πρέπει να περιέχει τουλάχιστον ένα ψηφίο"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"O κωδικός πρόσβασης πρέπει να περιέχει τουλάχιστον ένα σύμβολο"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"O κωδικός πρόσβασης πρέπει να έχει τουλάχιστον ένα γράμμα"</item>
+ <item quantity="other" msgid="7278096339907683541">"Ο κωδικός πρόσβασης πρέπει να έχει τουλάχιστον %d γράμματα"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"O κωδικός πρόσβασης πρέπει να έχει τουλάχιστον ένα πεζό γράμμα"</item>
+ <item quantity="other" msgid="588499075580432178">"Ο κωδικός πρόσβασης πρέπει να έχει τουλάχιστον %d πεζά γράμματα"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"O κωδικός πρόσβασης πρέπει να έχει τουλάχιστον ένα κεφαλαίο γράμμα"</item>
+ <item quantity="other" msgid="2183090598541826806">"Ο κωδικός πρόσβασης πρέπει να έχει τουλάχιστον %d κεφαλαία γράμματα"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Ο κωδικός πρόσβασης πρέπει να περιέχει τουλάχιστον ένα αριθμητικό ψηφίο"</item>
+ <item quantity="other" msgid="995673409754935278">"Ο κωδικός πρόσβασης πρέπει να έχει τουλάχιστον %d αριθμητικά ψηφία"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"O κωδικός πρόσβασης πρέπει να έχει τουλάχιστον ένα ειδικό σύμβολο"</item>
+ <item quantity="other" msgid="3047460862484105274">"Ο κωδικός πρόσβασης πρέπει να έχει τουλάχιστον %d ειδικά σύμβολα"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Ο κωδικός πρόσβασης πρέπει να έχει τουλάχιστον ένα χαρακτήρα που δεν είναι γράμμα"</item>
+ <item quantity="other" msgid="5574191164708145973">"Ο κωδικός πρόσβασης πρέπει να έχει τουλάχιστον %d χαρακτήρες που δεν είναι γράμματα"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Ο διαχειριστής της συσκευής δεν επιτρέπει τη χρήση ενός πρόσφατου κωδικού πρόσβασης"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"ΟΚ"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Ακύρωση"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Διαχείριση συσκευής"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Πολυμέσα"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Τηλέφωνο"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Μεταφορά"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Συσκευή εισόδου"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Συνδέθηκε σε ήχο πολυμέσων"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Συνδεδεμένο στον ήχο τηλεφώνου"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Σύνδεση στο τηλέφωνο και στον ήχο πολυμέσων"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Συνδέθηκε σε συσκευή εισόδου"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> επιλογές"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Σύνδεση"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Σύνδεση σε συσκευή Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Συνδεδεμένο στον ήχο τηλεφώνου"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Συνδεδεμένο σε διακομιστή μεταφοράς αρχείων"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Δεν έχει συνδεθεί σε διακομιστή μεταφοράς αρχείων"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Συνδέθηκε σε συσκευή εισόδου"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Χρήση για ήχο πολυμέσων"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Χρήση για ήχο τηλεφώνου"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Χρήση για τη μεταφορά αρχείων"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Χρήση για είσοδο"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Ρυθμίσεις βάσης σύνδεσης αυτοκινήτου"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Χρησιμοποιήστε τη βάση σύνδεσης αυτοκινήτου για αναπαραγωγή ήχου"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Ως τηλέφωνο ανοιχτής συνομιλίας"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Εφαρμογές"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Συντομεύσεις"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Είσοδος κειμένου"</string>
+ <string name="input_method" msgid="5434026103176856164">"Μέθοδος εισόδου"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Διαχείριση επιλογών εισόδου κειμένου"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Ρυθμίσεις <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Ρυθμίσεις πληκτρολογίου οθόνης"</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 0b1dd8c..aa096b8 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Inicio <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Cuenta:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Borrar"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Puerto"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Restaurar configuraciones predeterminadas"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Guardar"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Nombre del servidor"</string>
<string name="proxy_error" msgid="8926675299638611451">"Atención"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"Aceptar"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"El nombre del servidor que has escrito no es válido."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Debes completar el campo de puerto."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"El campo del puerto debe estar vacío si el campo de servidor está vacío."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"El puerto que has escrito no es válido."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Explorando medios en la tarjeta SD..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Tarjeta SD montada para sólo lectura"</string>
<string name="next_label" msgid="4693520878012668114">"Siguiente"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"País"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Selecciona tu idioma"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Idioma"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Seleccionar actividad"</string>
<string name="device_info_label" msgid="6551553813651711205">"Información de dispositivo"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Información de la batería"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Cambiar la contraseña de desbloqueo"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"La contraseña debe tener al menos %d caracteres."</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"El PIN debe tener al menos %d caracteres."</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Presiona Continuar cuando hayas finalizado."</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Toca Continuar cuando hayas finalizado"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Continuar"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"El PIN no puede tener más de %d dígitos."</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"El PIN no puede tener más de %d dígitos."</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"El PIN debe contener de 0 a 9 dígitos únicamente."</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"El administrador de dispositivos no permite utilizar un PIN reciente"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"La contraseña tiene un caracter no admitido."</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"La contraseña debe contener al menos una letra."</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"La contraseña debe contener al menos un dígito."</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"La contraseña debe contener al menos un símbolo."</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"La contraseña debe tener al menos una letra"</item>
+ <item quantity="other" msgid="7278096339907683541">"La contraseña debe tener al menos %d letras"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"La contraseña debe contener al menos una letra minúscula"</item>
+ <item quantity="other" msgid="588499075580432178">"La contraseña debe tener al menos %d caracteres en minúscula"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"La contraseña debe tener al menos una letra mayúscula"</item>
+ <item quantity="other" msgid="2183090598541826806">"La contraseña debe tener al menos %d letras mayúsculas"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"La contraseña debe tener al menos un dígito"</item>
+ <item quantity="other" msgid="995673409754935278">"La contraseña debe tener al menos %d dígitos"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"La contraseña debe contener al menos un símbolo especial"</item>
+ <item quantity="other" msgid="3047460862484105274">"La contraseña debe tener al menos %d símbolos especiales"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"La contraseña debe tener al menos un carácter que no sea una letra"</item>
+ <item quantity="other" msgid="5574191164708145973">"La contraseña debe tener al menos %d caracteres que no sean letras"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"El administrador de dispositivos no permite utilizar una contraseña reciente."</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"Aceptar"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Cancelar"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Administración del dispositivo"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Medios"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Teléfono"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Transferir"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Dispositivo de entrada"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Conectado al audio de medios"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Conectado al audio del teléfono"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Conectado al audio del teléfono y los medios"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Conectado a dispositivo de entrada "</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"opciones de <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Conectar"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Conectar al dispositivo Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Conectado al audio del teléfono"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Conectado al servidor de transferencia de archivo"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"No conectado al servidor de transferencia de archivo"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Conectado a dispositivo de entrada "</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Utilizar para el audio de medios"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Utilizar para el audio del teléfono"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Utilizar para la transferencia de archivos"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Utilizar para entrada"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Configuración de la base"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Utilizar la base para el audio"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Como altavoz"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Aplicaciones"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Accesos directos"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Ingreso de texto"</string>
+ <string name="input_method" msgid="5434026103176856164">"Método de entrada"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Administrar opciones de ingreso de texto"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Configuración de <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Configuración del teclado en pantalla"</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 8a7f9f5..fd980b3 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Iniciar <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Cuenta:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Borrar"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Puerto"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Restaurar valores predeterminados"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Guardar"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Nombre de host"</string>
<string name="proxy_error" msgid="8926675299638611451">"Atención"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"Aceptar"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"El nombre de host introducido no es válido."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Debes completar el campo de puerto."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"El campo de portal debe estar vacío si el campo de host también lo está."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"El puerto introducido no es válido."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Buscando medios en tarjeta SD..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Tarjeta SD activada en modo de solo lectura"</string>
<string name="next_label" msgid="4693520878012668114">"Siguiente"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Configuración regional"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Selecciona el idioma que prefieras."</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Idioma"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Seleccionar actividad"</string>
<string name="device_info_label" msgid="6551553813651711205">"Información del dispositivo"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Información sobre la batería"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Cambiar contraseña de desbloqueo"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"La contraseña debe contener al menos %d caracteres."</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"El PIN debe contener al menos %d caracteres."</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Pulsar \"Continuar\" al terminar"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Tocar \"Continuar\" al terminar"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Continuar"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"El PIN no puede tener más de %d dígitos."</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"El PIN no puede tener más de %d dígitos."</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"El PIN solo debe contener dígitos comprendidos entre el cero y el nueve."</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Administrador de dispositivos no permite usar PIN reciente"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"La contraseña contiene un carácter no permitido."</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"La contraseña debe contener al menos una letra."</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"La contraseña debe contener al menos un dígito."</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"La contraseña debe contener al menos un símbolo."</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"La contraseña debe tener al menos una letra."</item>
+ <item quantity="other" msgid="7278096339907683541">"La contraseña debe tener al menos %d letras."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"La contraseña debe tener al menos una letra minúscula."</item>
+ <item quantity="other" msgid="588499075580432178">"La contraseña debe tener al menos %d letras minúsculas."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"La contraseña debe tener al menos una letra mayúscula."</item>
+ <item quantity="other" msgid="2183090598541826806">"La contraseña debe tener al menos %d letras mayúsculas."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"La contraseña debe tener al menos un dígito."</item>
+ <item quantity="other" msgid="995673409754935278">"La contraseña debe tener al menos %d dígitos."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"La contraseña debe tener al menos un símbolo especial."</item>
+ <item quantity="other" msgid="3047460862484105274">"La contraseña debe tener al menos %d símbolos especiales."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"La contraseña debe tener al menos un carácter no alfabético."</item>
+ <item quantity="other" msgid="5574191164708145973">"La contraseña debe tener al menos %d caracteres no alfabéticos."</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Administrador de dispositivos no permite contraseña reciente."</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"Aceptar"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Cancelar"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Administración de dispositivos"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Multimedia"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Teléfono"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Transferencia"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Dispositivo de entrada"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Conectado al audio del medio"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Conectado al audio del teléfono"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Conectado a audio de medio y del teléfono"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Conectado a dispositivo de entrada"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Opciones de <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Establecer conexión"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Establecer conexión con dispositivo Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Conectado al audio del teléfono"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Conectado con el servidor de transferencia de archivos"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Sin conexión con el servidor de transferencia de archivos"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Conectado a dispositivo de entrada"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Utilizar para audio de medio"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Utilizar para audio del teléfono"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Uso de la transferencia de archivos"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Usar para introducción"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Ajustes del conector"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Uso del conector para audio"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Como altavoz del teléfono"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Aplicaciones"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Accesos directos"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Introducción de texto"</string>
+ <string name="input_method" msgid="5434026103176856164">"Introducción de texto"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Administrar opciones de introducción de texto"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Ajustes de <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Ajustes de teclado en pantalla"</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index e3cd5f9..2b277e3 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Démarrer <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Compte :"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Effacer"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Port"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Rétablir les paramètres par défaut"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Enregistrer"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Nom de l\'hôte"</string>
<string name="proxy_error" msgid="8926675299638611451">"Avertissement"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Le nom d\'hôte saisi n\'est pas valide."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Vous devez renseigner le champ Port."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Le champ Port doit rester vide si le champ Hôte n\'est pas renseigné."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Le port indiqué n\'est pas valide."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Recherche de fichiers multimédias sur la carte SD…"</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Carte SD montée en lecture seule"</string>
<string name="next_label" msgid="4693520878012668114">"Suivant"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Paramètres régionaux"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Choisir la langue"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Langue"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Sélectionner une activité"</string>
<string name="device_info_label" msgid="6551553813651711205">"Informations sur l\'appareil"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Informations sur la batterie"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Modifier le mot de passe de déverrouillage"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Le mot de passe doit comporter au moins %d caractères."</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"Le code PIN doit comporter au moins %d caractères."</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Appuyez sur Continuer une fois l\'opération terminée."</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Appuyez sur Continuer une fois l\'opération terminée."</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Continuer"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"Le code PIN ne doit pas contenir plus de %d chiffres."</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"Le code PIN ne doit pas contenir plus de %d chiffres."</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"Le code PIN ne doit contenir que des chiffres compris entre 0 et 9."</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Code PIN récent refusé par admin. périphérique"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Le mot de passe contient un caractère non autorisé."</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Le mot de passe doit comporter au moins une lettre."</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Le mot de passe doit comporter au moins un chiffre."</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Le mot de passe doit comporter au moins un symbole."</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Le mot de passe doit comporter au moins une lettre."</item>
+ <item quantity="other" msgid="7278096339907683541">"Le mot de passe doit comporter au moins %d lettres."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Le mot de passe doit comporter au moins une lettre minuscule."</item>
+ <item quantity="other" msgid="588499075580432178">"Le mot de passe doit comporter au moins %d lettres minuscules."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Le mot de passe doit comporter au moins une lettre majuscule."</item>
+ <item quantity="other" msgid="2183090598541826806">"Le mot de passe doit comporter au moins %d lettres majuscules."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Le mot de passe doit comporter au moins un chiffre."</item>
+ <item quantity="other" msgid="995673409754935278">"Le mot de passe doit comporter au moins %d chiffres."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Le mot de passe doit comporter au moins un symbole."</item>
+ <item quantity="other" msgid="3047460862484105274">"Le mot de passe doit comporter au moins %d symboles."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Le mot de passe doit comporter au moins 1 caractère ne correspondant pas à une lettre."</item>
+ <item quantity="other" msgid="5574191164708145973">"Le mot de passe doit comporter au moins %d caractères ne correspondant pas à des lettres."</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Mot de passe récent refusé par admin. périphérique"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Annuler"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Administration du périphérique"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Multimédia"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Téléphone"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Transfert"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Périphérique d\'entrée"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Connecté aux paramètres audio du média"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Connecté aux paramètres audio du téléphone"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Connecté aux paramètres audio du téléphone et du média"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Connecté au périphérique d\'entrée"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Options de <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Se connecter"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Connecter à un appareil Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Connecté aux paramètres audio du téléphone"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Connexion au serveur de transfert de fichiers"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Connexion au serveur de transfert de fichiers non établie"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Connecté au périphérique d\'entrée"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Utiliser pour les paramètres audio du média"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Utiliser pour les paramètres audio du téléphone"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Utiliser pour le transfert de fichiers"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Utiliser comme entrée"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Paramètres de la station d\'accueil"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Utiliser station d\'accueil pour l\'audio"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Comme téléphone à haut-parleur"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Applications"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Raccourcis"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Saisie de texte"</string>
+ <string name="input_method" msgid="5434026103176856164">"Mode de saisie"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Gérer les options de saisie de texte"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Paramètres <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Paramètres du clavier intégré"</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 05d8261..3321bcb8 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Inizia <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Account:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Cancella"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Porta"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Ripristina predefinite"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Salva"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Nome host"</string>
<string name="proxy_error" msgid="8926675299638611451">"Attenzione"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Il nome host specificato non è valido."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Inserisci un valore nel campo Porta."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Il campo Porta deve essere vuoto se il campo Host è vuoto."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"La porta specificata non è valida."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Ricerca di media nella scheda SD..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"La scheda SD montata è di sola lettura"</string>
<string name="next_label" msgid="4693520878012668114">"Avanti"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Impostazioni internazionali"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Seleziona la lingua"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Lingua"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Seleziona attività"</string>
<string name="device_info_label" msgid="6551553813651711205">"Info dispositivo"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Info batteria"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Cambia password di sblocco"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"La password deve essere lunga almeno %d caratteri"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"Il PIN deve essere lungo almeno %d caratteri"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Al termine, premi Continua"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Al termine, tocca Continua"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Continua"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"Il PIN non può superare %d cifre"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"Il PIN non può superare %d cifre"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"Il PIN deve contenere solo cifre da 0 a 9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"L\'amministratore del dispositivo non consente l\'utilizzo di un PIN recente"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"La password contiene un carattere non valido"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"La password deve contenere almeno una lettera"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"La password deve contenere almeno una cifra"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"La password deve contenere almeno un simbolo"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"La password deve contenere almeno una lettera"</item>
+ <item quantity="other" msgid="7278096339907683541">"La password deve contenere almeno %d lettere"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"La password deve contenere almeno una lettera minuscola"</item>
+ <item quantity="other" msgid="588499075580432178">"La password deve contenere almeno %d lettere minuscole"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"La password deve contenere almeno una lettera maiuscola"</item>
+ <item quantity="other" msgid="2183090598541826806">"La password deve contenere almeno %d lettere maiuscole"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"La password deve contenere almeno una cifra numerica"</item>
+ <item quantity="other" msgid="995673409754935278">"La password deve contenere almeno %d cifre numeriche"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"La password deve contenere almeno un simbolo speciale"</item>
+ <item quantity="other" msgid="3047460862484105274">"La password deve contenere almeno %d simboli speciali"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"La password deve contenere almeno un carattere non costituito da una lettera"</item>
+ <item quantity="other" msgid="5574191164708145973">"La password deve essere lunga almeno %d caratteri non costituiti da lettere"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"L\'amministratore del dispositivo non consente l\'utilizzo di una password recente"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Annulla"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Amministrazione dispositivo"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Multimediali"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefono"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Trasferisci"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Dispositivo di input"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Collegato ad audio media"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Collegato ad audio telefono"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Collegato ad audio telefono e media"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Connesso a dispositivo di input"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Opzioni <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Connetti"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Connessione a dispositivo Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Collegato ad audio telefono"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Collegato al server di trasferimento file"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Non collegato al server di trasferimento file"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Connesso a dispositivo di input"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Usa per audio media"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Usa per audio telefono"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Usa per trasferimento file"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Utilizza per l\'input"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Impostazioni dock"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Usa dock per audio"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Come vivavoce"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Applicazioni"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Scorciatoie"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Inserimento testo"</string>
+ <string name="input_method" msgid="5434026103176856164">"Metodo inserimento"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Gestisci opzioni inserimento testo"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Impostazioni di <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Impostazioni tastiera sullo schermo"</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 3a4e621..7d587ed 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"<xliff:g id="ACTIVITY">activity</xliff:g>を開始"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"アカウント:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"消去"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"ポート"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"初期設定に戻す"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"保存"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"ホスト名"</string>
<string name="proxy_error" msgid="8926675299638611451">"注意"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"入力したホスト名は無効です。"</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"[ポート]フィールドに入力してください。"</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"[ホスト]フィールドが空の場合は、[ポート]フィールドも空にしてください。"</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"入力したポートは無効です。"</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"メディア用のSDカードをスキャン中..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"読み取り専用としてSDカードをマウントしました"</string>
<string name="next_label" msgid="4693520878012668114">"次へ"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"地域/言語"</string>
- <string name="select_your_language" msgid="1146235168951906084">"言語を選択"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"言語"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"操作の選択"</string>
<string name="device_info_label" msgid="6551553813651711205">"端末情報"</string>
<string name="battery_info_label" msgid="4132685016148679403">"電池情報"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"ロック解除パスワードの変更"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"パスワードを%d文字以上で入力してください"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"PINを%d文字以上で入力してください"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"終了後[次へ]をタップ"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"終了後[次へ]をタップ"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"次へ"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"PINは%d桁以内で指定してください"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"PINは%d桁以内で指定してください"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"PINに使用できるのは数字0~9のみです"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"最近使用されたPINは使用できません"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"パスワードに無効な文字が含まれています"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"パスワードには英字が1文字以上必要です"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"パスワードには数字が1つ以上必要です"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"パスワードには記号が1つ以上必要です"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"パスワードには英字が1文字以上必要です"</item>
+ <item quantity="other" msgid="7278096339907683541">"パスワードには英字が%d文字以上必要です"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"パスワードには小文字の英字が1文字以上必要です"</item>
+ <item quantity="other" msgid="588499075580432178">"パスワードには小文字の英字が%d文字以上必要です"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"パスワードには大文字の英字が1文字以上必要です"</item>
+ <item quantity="other" msgid="2183090598541826806">"パスワードには大文字の英字が%d文字以上必要です"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"パスワードには数字が1つ以上必要です"</item>
+ <item quantity="other" msgid="995673409754935278">"パスワードには数字が%d個以上必要です"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"パスワードには記号が1つ以上必要です"</item>
+ <item quantity="other" msgid="3047460862484105274">"パスワードには記号が%d個以上必要です"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"パスワードには記号または数字が1つ以上必要です"</item>
+ <item quantity="other" msgid="5574191164708145973">"パスワードには記号または数字が%d個以上必要です"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"最近使用されたパスワードは使用できません"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"キャンセル"</string>
<string name="device_admin_title" msgid="3562216873644263804">"デバイス管理"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"メディア"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"電話"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"転送"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"入力デバイス"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"メディアの音声に接続"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"携帯電話の音声に接続"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"携帯電話とメディアの音声に接続"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"入力デバイスに接続されています"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g>オプション"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"接続"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Bluetoothデバイスに接続"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"携帯電話の音声に接続"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"ファイル転送サーバーに接続"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"ファイル転送サーバーに接続しない"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"入力デバイスに接続されています"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"メディアの音声に使用"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"携帯電話の音声に使用"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"ファイル転送に使用"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"入力に使用"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"ドックの設定"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"音声にドックを使用"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"スピーカーフォン"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"アプリケーション"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"ショートカット"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"文字入力"</string>
+ <string name="input_method" msgid="5434026103176856164">"入力方法"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"テキスト入力オプションを管理"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"<xliff:g id="IME_NAME">%1$s</xliff:g>の設定"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"画面キーボードの設定"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 07944db..9683b1c 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"<xliff:g id="ACTIVITY">activity</xliff:g> 시작"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"계정:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"지우기"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"포트"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"기본값 복원"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"저장"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"호스트 이름"</string>
<string name="proxy_error" msgid="8926675299638611451">"주의"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"확인"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"입력한 호스트 이름이 잘못되었습니다."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"포트 필드를 입력해야 합니다."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"호스트 필드가 비어 있는 경우 포트 필드에 입력하면 안 됩니다."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"입력한 포트가 올바르지 않습니다."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"SD 카드에서 미디어 검색 중..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"SD 카드가 읽기전용으로 마운트됨"</string>
<string name="next_label" msgid="4693520878012668114">"다음"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"언어"</string>
- <string name="select_your_language" msgid="1146235168951906084">"언어 선택"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"언어"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"활동 선택"</string>
<string name="device_info_label" msgid="6551553813651711205">"장치정보"</string>
<string name="battery_info_label" msgid="4132685016148679403">"배터리 정보"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"잠금해제 비밀번호 변경"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"비밀번호는 %d자 이상이어야 합니다."</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"PIN은 %d자 이상이어야 합니다."</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"완료되면 계속을 누르세요."</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"완료되면 계속을 터치하세요."</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"계속"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"PIN은 %d자리 이하여야 합니다."</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"PIN은 %d자리 이하여야 합니다."</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"PIN에는 숫자 0-9만 사용할 수 있습니다."</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"장치 관리자가 최근 PIN 사용을 허용하지 않습니다."</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"비밀번호에 잘못된 글자가 들어 있습니다."</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"비밀번호에는 적어도 하나의 문자가 포함되어야 합니다."</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"비밀번호에는 적어도 하나의 숫자가 포함되어야 합니다."</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"비밀번호에는 적어도 하나의 기호가 포함되어야 합니다."</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"비밀번호에는 적어도 하나의 문자가 포함되어야 합니다."</item>
+ <item quantity="other" msgid="7278096339907683541">"비밀번호에는 적어도 %d개의 문자가 포함되어야 합니다."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"비밀번호에는 적어도 하나의 소문자가 포함되어야 합니다."</item>
+ <item quantity="other" msgid="588499075580432178">"비밀번호에는 적어도 %d개의 소문자가 포함되어야 합니다."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"비밀번호에는 적어도 하나의 대문자가 포함되어야 합니다."</item>
+ <item quantity="other" msgid="2183090598541826806">"비밀번호에는 적어도 %d개의 대문자가 포함되어야 합니다."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"비밀번호에는 적어도 하나의 숫자가 포함되어야 합니다."</item>
+ <item quantity="other" msgid="995673409754935278">"비밀번호에는 적어도 %d개의 숫자가 포함되어야 합니다."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"비밀번호에는 적어도 하나의 특수 기호가 포함되어야 합니다."</item>
+ <item quantity="other" msgid="3047460862484105274">"비밀번호에는 적어도 %d개의 특수 기호가 포함되어야 합니다."</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"비밀번호에는 글자가 아닌 문자가 한 개 이상 포함되어야 합니다."</item>
+ <item quantity="other" msgid="5574191164708145973">"비밀번호에는 적어도 %d개 이상의 글자가 아닌 문자가 포함되어야 합니다."</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"장치 관리자가 최근 비밀번호 사용을 허용하지 않습니다."</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"확인"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"취소"</string>
<string name="device_admin_title" msgid="3562216873644263804">"기기 관리"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"미디어"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"휴대전화"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"전송"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"입력 장치"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"미디어 오디오에 연결됨"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"휴대전화 오디오에 연결됨"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"휴대전화 및 미디어 오디오에 연결됨"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"입력 장치에 연결됨"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> 옵션"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"연결"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Bluetooth 장치에 연결"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"휴대전화 오디오에 연결됨"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"파일 전송 서버에 연결됨"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"파일 전송 서버에 연결되지 않았습니다."</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"입력 장치에 연결됨"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"미디어 오디오에 사용"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"휴대전화 오디오에 사용"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"파일 전송에 사용"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"입력에 사용"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"도크 설정"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"오디오에 도크 사용"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"스피커폰으로 사용"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"애플리케이션"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"바로가기"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"텍스트 입력"</string>
+ <string name="input_method" msgid="5434026103176856164">"입력 방법"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"텍스트 입력 옵션 관리"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"<xliff:g id="IME_NAME">%1$s</xliff:g> 설정"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"화면 키보드 설정"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 2e0e737..ce2ee63 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Start <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Konto:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Tøm"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Port"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Gjenopprett standardinnstillinger"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Lagre"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Vertsnavn"</string>
<string name="proxy_error" msgid="8926675299638611451">"NB"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Vertsnavnet er ikke gyldig."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Du må skrive inn et portnummer."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Feltet for portnummer må være tomt om feltet for vertsnavn er tomt."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Portnummeret er ikke gyldig."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Leter etter media på minnekortet…"</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Minnekortet ble montert skrivebeskyttet"</string>
<string name="next_label" msgid="4693520878012668114">"Neste"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Regionsinnstillinger"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Språk"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Språk"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Velg aktivitet"</string>
<string name="device_info_label" msgid="6551553813651711205">"Enhetsinformasjon"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Batteriinformasjon"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Endre passord for opplåsning"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Passord må bestå av minst %d tegn"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"PIN-koden må bestå av minst %d tegn"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Trykk på Fortsett når du er ferdig"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Trykk på Fortsett når du er ferdig"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Fortsett"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"PIN-koden kan ikke inneholde mer enn %d tegn"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"PIN-koden kan ikke inneholde mer enn %d tegn"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"PIN-koden kan kun inneholde tall fra 0 til 9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Enhetens administrator tillater ikke bruk av en nylig brukt personlig kode"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Passordet inneholder ugydige tegn"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Passordet må inneholde minst én bokstav"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Passordet må inneholde minst ett siffer"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Passordet må inneholde minst ett symbol"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Passordet må inneholde minst én bokstav"</item>
+ <item quantity="other" msgid="7278096339907683541">"Passordet må inneholde minst %d små bokstaver"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Passordet må inneholde minst én liten bokstav"</item>
+ <item quantity="other" msgid="588499075580432178">"Passordet må inneholde minst %d små bokstaver"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Passordet må inneholde minst én stor bokstav"</item>
+ <item quantity="other" msgid="2183090598541826806">"Passordet må inneholde minst %d store bokstaver"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Passordet må inneholde minst ett siffer"</item>
+ <item quantity="other" msgid="995673409754935278">"Passordet må inneholde minst %d sifre"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Passordet må inneholde minst ett spesialsymbol"</item>
+ <item quantity="other" msgid="3047460862484105274">"Passordet må inneholde minst %d spesialsymboler"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Passordet må inneholde minst ett annet tegn enn bokstaver"</item>
+ <item quantity="other" msgid="5574191164708145973">"Passordet må inneholde minst %d andre tegn enn bokstaver"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Enhetens administrator tillater ikke bruk av et nylig brukt passord"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Avbryt"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Enhetsadministrasjon"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Media"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefon"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Overfør"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Inndataenhet"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Koblet til medielyd"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Koblet til telefonlyd"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Koblet til medie- og telefonlyd"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Koblet til inndataenhet"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Innstillinger for <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Koble til"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Koble til Bluetooth-enhet"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Koblet til telefonlyd"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Koblet til tjener for filoverføring"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Ikke koblet til tjener for filoverføring"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Koblet til inndataenhet"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Bruk for medielyd"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Bruk for telefonlyd"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Bruk til filoverføring"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Bruk for inndata"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Innstillinger for forankringsstasjon"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Bruk forankring til lyd"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Som høyttalertelefon"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Applikasjoner"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Snarveier"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Skriving av tekst"</string>
+ <string name="input_method" msgid="5434026103176856164">"Inndatametode"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Innstillinger for skriving av tekst"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Innstillinger for <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Innstillinger for skjermtastatur"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 4d3acca..87ce674 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"<xliff:g id="ACTIVITY">activity</xliff:g> starten"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Account:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Wissen"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Poort"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Standaardwaarden herstellen"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Opslaan"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Hostnaam"</string>
<string name="proxy_error" msgid="8926675299638611451">"Let op"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"De hostnaam die u heeft ingevoerd, is ongeldig."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"U moet het poortveld invullen."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Het poortveld moet leeg zijn als het hostveld leeg is."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"De poort die u heeft ingevoerd, is ongeldig."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"SD-kaart scannen op media..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Gekoppelde SD-kaart alleen-lezen"</string>
<string name="next_label" msgid="4693520878012668114">"Volgende"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Landinstelling"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Uw taal selecteren"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Taal"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Activiteit selecteren"</string>
<string name="device_info_label" msgid="6551553813651711205">"Apparaatinfo"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Accu-info"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Ontgrendelingswachtwoord wijzigen"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Wachtwoord moet ten minste %d tekens lang zijn"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"PIN-code moet ten minste %d tekens lang zijn"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Druk op \'Doorgaan\' als u klaar bent"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Raak \'Doorgaan\' aan als u klaar bent"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Doorgaan"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"PIN-code mag niet langer zijn dan %d cijfers"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"PIN-code mag niet langer zijn dan %d cijfers"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"PIN-code mag alleen de cijfers 0-9 bevatten"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Apparaatbeheerder staat gebruik van een recente PIN-code niet toe"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Wachtwoord bevat een ongeldig teken"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Wachtwoord moet ten minste één letter bevatten"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Wachtwoord moet ten minste één cijfer bevatten"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Wachtwoord moet ten minste één symbool bevatten"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Wachtwoord moet ten minste één letter bevatten"</item>
+ <item quantity="other" msgid="7278096339907683541">"Wachtwoord moet ten minste %d letters bevatten"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Wachtwoord moet ten minste één kleine letter bevatten"</item>
+ <item quantity="other" msgid="588499075580432178">"Wachtwoord moet ten minste %d kleine letters bevatten"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Wachtwoord moet ten minste één hoofdletter bevatten"</item>
+ <item quantity="other" msgid="2183090598541826806">"Wachtwoord moet ten minste %d hoofdletters bevatten"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Wachtwoord moet ten minste één cijfer bevatten"</item>
+ <item quantity="other" msgid="995673409754935278">"Wachtwoord moet ten minste %d cijfers bevatten"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Wachtwoord moet ten minste één speciaal symbool bevatten"</item>
+ <item quantity="other" msgid="3047460862484105274">"Wachtwoord moet ten minste %d speciale symbolen bevatten"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Wachtwoord moet ten minste één ander teken dan letters bevatten"</item>
+ <item quantity="other" msgid="5574191164708145973">"Wachtwoord moet ten minste %d andere tekens dan letters bevatten"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Apparaatbeheerder staat gebruik van een recent wachtwoord niet toe"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Annuleren"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Apparaatbeheer"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Media"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefoon"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Overdracht"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Invoerapparaat"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Verbonden met audio van medium"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Verbonden met audio van telefoon"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Verbonden met audio van telefoon en medium"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Verbonden met invoerapparaat"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Opties voor <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Verbinden"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Verbinden met Bluetooth-apparaat"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Verbonden met audio van telefoon"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Verbonden met server voor bestandsoverdracht"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Niet verbonden met server voor bestandsoverdracht"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Verbonden met invoerapparaat"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Gebruiken voor audio van medium"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Gebruiken voor audio van telefoon"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Gebruiken voor bestandsoverdracht"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Gebruiken voor invoer"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Instellingen voor dockstation"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Dockstation gebruiken voor audio"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Als luidsprekertelefoon"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Toepassingen"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Sneltoetsen"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Tekstinvoer"</string>
+ <string name="input_method" msgid="5434026103176856164">"Invoermethode"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Opties voor tekstinvoer beheren"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Instellingen voor <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Instellingen voor schermtoetsenbord"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 34f321f..de06beb 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Rozpocznij <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Konto:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Wyczyść"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Port"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Przywróć ustawienia domyślne"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Zapisz"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Nazwa hosta"</string>
<string name="proxy_error" msgid="8926675299638611451">"Uwaga"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Wprowadzona nazwa hosta jest nieprawidłowa."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Należy uzupełnić pole port."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Pole port musi być puste, jeśli pole host jest puste."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Wprowadzony port jest nieprawidłowy."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Przeszukiwanie karty SD w poszukiwaniu multimediów..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Karta SD jest podłączona tylko do odczytu"</string>
<string name="next_label" msgid="4693520878012668114">"Dalej"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Ustawienia regionalne"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Wybierz język"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Język"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Wybierz czynność"</string>
<string name="device_info_label" msgid="6551553813651711205">"Informacje o urządzeniu"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Informacje o baterii"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Zmień hasło odblokowania"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Liczba znaków w haśle musi wynosić co najmniej %d"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"Liczba znaków w kodzie PIN musi wynosić co najmniej %d"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Po zakończeniu naciśnij przycisk Kontynuuj"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Po zakończeniu dotknij opcji Kontynuuj"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Kontynuuj"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"Liczba cyfr w kodzie PIN nie może przekraczać %d"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"Liczba cyfr w kodzie PIN nie może przekraczać %d"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"Kod PIN musi zawierać wyłącznie cyfry 0-9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Administrator urządzenia nie zezwala na używanie poprzedniego kodu PIN"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Hasło zawiera niedozwolony znak"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Hasło musi zawierać co najmniej jedną literę"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Hasło musi zawierać co najmniej jedną cyfrę"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Hasło musi zawierać co najmniej jeden symbol"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Hasło musi zawierać co najmniej jedną literę"</item>
+ <item quantity="other" msgid="7278096339907683541">"Hasło musi zawierać litery w liczbie co najmniej %d"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Hasło musi zawierać co najmniej jedną małą literę"</item>
+ <item quantity="other" msgid="588499075580432178">"Hasło musi zawierać małe litery w liczbie co najmniej %d"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Hasło musi zawierać co najmniej jedną wielką literę"</item>
+ <item quantity="other" msgid="2183090598541826806">"Hasło musi zawierać wielkie litery w liczbie co najmniej %d"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Hasło musi zawierać co najmniej jedną cyfrę"</item>
+ <item quantity="other" msgid="995673409754935278">"Hasło musi zawierać cyfry w liczbie co najmniej %d"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Hasło musi zawierać co najmniej jeden symbol specjalny"</item>
+ <item quantity="other" msgid="3047460862484105274">"Hasło musi zawierać symbole specjalne w liczbie co najmniej %d"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Hasło musi zawierać co najmniej jeden znak niebędący literą"</item>
+ <item quantity="other" msgid="5574191164708145973">"Hasło musi zawierać znaki niebędące literami w liczbie co najmniej %d"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Administrator urządzenia nie zezwala na używanie poprzedniego hasła"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Anuluj"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Administracja urządzeniem"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Multimedia"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefon"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Transfer"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Urządzenie wejściowe"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Połączono z funkcją audio multimediów"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Połączono z funkcją audio telefonu"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Połączono z funkcją audio telefonu i multimediów"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Podłączono do urządzenia wejściowego"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Opcje urządzenia <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Połącz"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Połącz z urządzeniem Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Połączono z funkcją audio telefonu"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Połączono z serwerem transferu plików"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Brak połączenia z serwerem transferu plików"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Podłączono do urządzenia wejściowego"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Użyj dla funkcji audio multimediów"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Użyj dla funkcji audio telefonu"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Użyj do transferu plików"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Użyj do wprowadzania"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Ustawienia podstawki"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Używaj podstawki na potrzeby dźwięku"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Jako telefon w trybie głośnika"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Aplikacje"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Skróty"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Wprowadzanie tekstu"</string>
+ <string name="input_method" msgid="5434026103176856164">"Metoda wprowadzania"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Zarządzaj opcjami wprowadzania tekstu"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Ustawienia <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Ustawienia klawiatury ekranowej"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index d965d56..5379744 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Iniciar <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Conta:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Limpar"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Porta"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Restaurar predefinições"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Guardar"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Nome de anfitrião"</string>
<string name="proxy_error" msgid="8926675299638611451">"Atenção"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"O nome de anfitrião que introduziu não é válido."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"É necessário preencher o campo referente à porta."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"O campo referente à porta tem de estar vazio se o campo do anfitrião estiver vazio."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"A porta que introduziu não é válida."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"A procurar ficheiros multimédia no cartão SD..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Cartão SD montado como só de leitura"</string>
<string name="next_label" msgid="4693520878012668114">"Seguinte"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Região"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Seleccione o seu idioma"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Idioma"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Seleccionar actividade"</string>
<string name="device_info_label" msgid="6551553813651711205">"Informações sobre o dispositivo"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Informações da bateria"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Alterar palavra-passe de desbloqueio"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"A palavra-passe tem de ter no mínimo %d caracteres"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"O PIN tem de ter no mínimo %d caracteres"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Prima Continuar quando terminar"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Toque em Continuar quando terminar"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Continuar"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"O PIN não pode ter mais de %d dígitos"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"O PIN não pode ter mais de %d dígitos"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"O PIN tem de conter apenas dígitos de 0 a 9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"O administrador do dispositivo proíbe a utilização de um PIN recente"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"A palavra-passe contém um carácter ilegal"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"A palavra-passe tem de conter, pelo menos, uma letra"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"A palavra-passe tem de conter, pelo menos, um dígito"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"A palavra-passe tem de conter, pelo menos, um símbolo"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"A palavra-passe tem de incluir, pelo menos, 1 letra"</item>
+ <item quantity="other" msgid="7278096339907683541">"A palavra-passe tem de incluir, pelo menos, %d letras"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"A palavra-passe tem de incluir, pelo menos, 1 letra minúscula"</item>
+ <item quantity="other" msgid="588499075580432178">"A palavra-passe tem de incluir, pelo menos, %d letras minúsculas"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"A palavra-passe tem de incluir, pelo menos, 1 letra maiúscula"</item>
+ <item quantity="other" msgid="2183090598541826806">"A palavra-passe tem de incluir, pelo menos, %d letras maiúsculas"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"A palavra-passe tem de incluir, pelo menos, 1 dígito numérico"</item>
+ <item quantity="other" msgid="995673409754935278">"A palavra-passe tem de incluir, pelo menos, %d dígitos numéricos"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"A palavra-passe tem de incluir, pelo menos, 1 símbolo especial"</item>
+ <item quantity="other" msgid="3047460862484105274">"A palavra-passe tem de incluir, pelo menos, %d caracteres especiais"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"A palavra-passe tem de incluir, pelo menos, 1 carácter que não seja uma letra"</item>
+ <item quantity="other" msgid="5574191164708145973">"A palavra-passe tem de incluir, pelo menos, %d caracteres que não sejam letras"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"O administrador do dispositivo proíbe a utilização de uma palavra-passe recente"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Cancelar"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Administração do dispositivo"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Multimédia"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefone"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Transferir"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Dispositivo de entrada"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Ligado ao áudio de multimédia"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Ligado ao áudio do telefone"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Ligado ao áudio do telefone e de multimédia"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Ligado a um dispositivo de entrada"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Opções do <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Ligar"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Ligar a dispositivo Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Ligado ao áudio do telefone"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Ligado ao servidor de transferência de ficheiros"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Não ligado ao servidor de transferência de ficheiros"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Ligado a um dispositivo de entrada"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Utilizar para áudio de multimédia"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Utilizar para áudio do telefone"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Utilizar para transferência de ficheiros"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Utilizar para entrada"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Definições da Estação de ancoragem"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Utilizar estação de ancoragem para áudio"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Como telefone com altifalante"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Aplicações"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Atalhos"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Entrada de texto"</string>
+ <string name="input_method" msgid="5434026103176856164">"Método de entrada"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Gerir opções de entrada de texto"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Definições de <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Definições do teclado no ecrã"</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index c72669b..72fd67c 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Iniciar <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Conta:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Limpar"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Porta"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Restaurar padrões"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Salvar"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Nome do host"</string>
<string name="proxy_error" msgid="8926675299638611451">"Atenção"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"O nome de host digitado não é válido."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Você deve completar o campo de porta."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"O campo da porta deverá estar vazio se o campo do host estiver vazio."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"A porta digitada não é válida."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Procurando mídia no cartão SD…"</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"Cartão SD montado como somente leitura"</string>
<string name="next_label" msgid="4693520878012668114">"Avançar"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Local"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Selecionar o seu idioma"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Idioma"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Selecionar atividade"</string>
<string name="device_info_label" msgid="6551553813651711205">"Informações do dispositivo"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Informações da bateria"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Alterar senha de desbloqueio"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"A senha deve ter no mínimo %d caracteres"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"O PIN deve ter no mínimo %d caracteres."</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Pressione Continuar quando terminar"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Toque em Continuar quando terminar"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Continuar"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"O PIN não pode ter mais do que %d dígitos"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"O PIN não pode ter mais do que %d dígitos"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"O PIN precisa conter apenas dígitos de 0 a 9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"O administrador do aparelho não permite o uso de um PIN recente"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"A senha contém um caractere ilegal"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"A senha precisa ter no mínimo uma letra."</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"A senha precisa ter no mínimo um dígito."</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"A senha precisa ter no mínimo um símbolo."</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"A senha deve conter pelo menos uma letra"</item>
+ <item quantity="other" msgid="7278096339907683541">"A senha deve conter pelo menos %d letras"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"A senha deve conter pelo menos uma letra minúscula"</item>
+ <item quantity="other" msgid="588499075580432178">"A senha deve conter pelo menos %d letras minúsculas"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"A senha deve conter pelo menos uma letra maiúscula"</item>
+ <item quantity="other" msgid="2183090598541826806">"A senha deve conter pelo menos %d letras maiúsculas"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"A senha deve conter pelo menos um dígito numérico"</item>
+ <item quantity="other" msgid="995673409754935278">"A senha deve conter pelo menos %d dígitos numéricos"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"A senha deve conter pelo menos um símbolo especial"</item>
+ <item quantity="other" msgid="3047460862484105274">"A senha deve conter pelo menos %d símbolos especiais"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"A senha deve conter pelo menos um caractere que não seja letra"</item>
+ <item quantity="other" msgid="5574191164708145973">"A senha deve conter pelo menos %d caracteres que não sejam letras"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"O administrador do aparelho não permite o uso de uma senha recente"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Cancelar"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Administração do dispositivo"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Mídia"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefone"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Transferir"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Dispositivo de entrada"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Conectado ao áudio da mídia"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Conectado ao áudio do telefone"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Conectado ao áudio do telefone e da mídia"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Conectado ao dispositivo de entrada"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"Opções de <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Conectar"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Conecta ao dispositivo Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Conectado ao áudio do telefone"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Conectado ao servidor de transferência de arquivo"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Não está conectado ao servidor de transferência de arquivo"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Conectado ao dispositivo de entrada"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Usar para áudio de mídia"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Usar para áudio do telefone"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Usado para transferência de arquivo"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Usar para entrada"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Configurações de dock"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Usar dock para áudio"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Como viva-voz"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Aplicativos"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Atalhos"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Entrada de texto"</string>
+ <string name="input_method" msgid="5434026103176856164">"Método de entrada"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Gerenciar opções de entrada de texto"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Configurações de <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Configurações do teclado virtual"</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index b644dc4..b3fab0f 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Начать <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Аккаунт:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Очистить"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Порт"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Восстановить настройки по умолчанию"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Сохранить"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Имя узла"</string>
<string name="proxy_error" msgid="8926675299638611451">"Внимание!"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"ОК"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Введено недействительное имя узла."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Необходимо заполнить поле порта."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Если поле хоста не заполнено, поле порта также следует оставить пустым."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Введен недействительный порт."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Поиск мультимедиа на SD-карте..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"SD-карта установлена только для чтения"</string>
<string name="next_label" msgid="4693520878012668114">"Далее"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Региональные настройки"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Выберите язык"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Язык"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Выбрать действие"</string>
<string name="device_info_label" msgid="6551553813651711205">"Сведения об устройстве"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Информация о батарее"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Изменить пароль разблокировки"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Пароль должен содержать не менее %d символов"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"ПИН-код должен содержать не менее %d символов"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"После завершения нажмите \"Продолжить\""</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"После завершения нажмите \"Продолжить\""</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Продолжить"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"ПИН-код не может быть длиннее %d симв."</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"ПИН-код не может быть длиннее %d симв."</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"ПИН-код должен состоять только из цифр от 0 до 9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Администратор устройства запрещает использование последнего PIN-кода"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Пароль содержит недопустимые символы"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Пароль должен содержать хотя бы одну букву."</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Пароль должен содержать хотя бы одну цифру."</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Пароль должен содержать хотя бы один символ."</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Пароль должен содержать хотя бы 1 букву"</item>
+ <item quantity="other" msgid="7278096339907683541">"Пароль должен содержать буквы (не менее %d)"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Пароль должен содержать хотя бы 1 строчную букву"</item>
+ <item quantity="other" msgid="588499075580432178">"Пароль должен содержать строчные символы (не менее %d)"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Пароль должен содержать хотя бы 1 заглавную букву"</item>
+ <item quantity="other" msgid="2183090598541826806">"Пароль должен содержать заглавные буквы (не менее %d)"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Пароль должен содержать хотя бы 1 цифру"</item>
+ <item quantity="other" msgid="995673409754935278">"Пароль должен содержать цифры (не менее %d)"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Пароль должен содержать хотя бы 1 специальный символ."</item>
+ <item quantity="other" msgid="3047460862484105274">"Пароль должен содержать специальные символы (не менее %d)"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Пароль должен содержать хотя бы 1 небуквенный символ."</item>
+ <item quantity="other" msgid="5574191164708145973">"Пароль должен содержать небуквенные символы (не менее %d)"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Администратор устройства запрещает использование последнего пароля"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"ОК"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Отмена"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Администрирование устройства"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Мультимедиа"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Телефон"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Передать"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Устройство ввода"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Подключено к мультимедийному аудиоустройству"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Подключено к аудиоустройству телефона"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Подключено к телефону и мультимедийному аудиоустройству"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Подключено к устройству ввода"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"параметры <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Подключить"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Подключиться к устройству Bluetooth"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Подключено к аудиоустройству телефона"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Установлено подключение к серверу передачи файлов"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Нет подключения к серверу передачи файлов"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Подключено к устройству ввода"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Использовать для мультимедийного аудиоустройства"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Использовать для аудиоустройства телефона"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Используется для передачи файлов"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Использовать для ввода"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Настройки док-станции"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Использовать док-станцию для звука"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Для громкой связи"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Приложения"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Ярлыки"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Ввод текста"</string>
+ <string name="input_method" msgid="5434026103176856164">"Способ ввода"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Задать параметры ввода текста"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"Настройки <xliff:g id="IME_NAME">%1$s</xliff:g>"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Настройки экранной клавиатуры"</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 54dd36c..a8cad6e 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"Starta <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Konto:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Rensa"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Port"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Återställ standardinställningar"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Spara"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Värdnamn"</string>
<string name="proxy_error" msgid="8926675299638611451">"Obs!"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Värdnamnet som du har angett är inte giltigt."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Du måste fylla i portfältet."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Portfältet måste vara tomt om värdfältet är tomt."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Porten som du har angett är inte giltig."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"Skannar SD-kort för media…"</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"SD-kortet har monterats som skrivskyddat"</string>
<string name="next_label" msgid="4693520878012668114">"Nästa"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Språkkod"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Välj språk"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Språk"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Välj aktivitet"</string>
<string name="device_info_label" msgid="6551553813651711205">"Enhetsinfo"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Batteriinformation"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Ändra lösenord för upplåsning"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Lösenordet måste innehålla minst %d tecken"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"PIN-koden måste innehålla minst %d tecken"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"Tryck på Fortsätt när du är färdig"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"Tryck på Fortsätt när du är färdig"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Fortsätt"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"PIN-koden får inte innehålla fler än %d siffror"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"PIN-koden får inte innehålla fler än %d siffror"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"PIN-koden får bara innehålla siffrorna 0 till 9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Enhetsadministratören tillåter inte att en PIN-kod som använts nyligen används igen"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Lösenordet innehåller ett ogiltigt tecken"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Lösenord måste innehålla minst en bokstav"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Lösenord måste innehålla minst en siffra"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Lösenord måste innehålla minst en symbol"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Lösenord måste innehålla minst en bokstav"</item>
+ <item quantity="other" msgid="7278096339907683541">"Lösenord måste innehålla minst %d bokstäver"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Lösenordet måste innehålla minst en liten bokstav"</item>
+ <item quantity="other" msgid="588499075580432178">"Lösenord måste innehålla minst %d små bokstäver"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Lösenord måste innehålla minst en stor bokstav"</item>
+ <item quantity="other" msgid="2183090598541826806">"Lösenord måste innehålla minst %d stora bokstäver"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Lösenord måste innehålla minst en siffra"</item>
+ <item quantity="other" msgid="995673409754935278">"Lösenord måste innehålla minst %d siffror"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Lösenord måste innehålla minst en specialsymbol"</item>
+ <item quantity="other" msgid="3047460862484105274">"Lösenordet måste innehålla minst %d specialsymboler"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Lösenordet måste innehålla minst ett tecken som inte är en bokstav"</item>
+ <item quantity="other" msgid="5574191164708145973">"Lösenordet måste innehålla minst %d tecken som inte är bokstäver"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Enhetsadministratören tillåter inte att ett lösenord som använts nyligen används igen"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"OK"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"Avbryt"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Enhetsadministration"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Media"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefon"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Överför"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Indataenhet"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Ansluten till medialjud"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Ansluten till telefonens ljud"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Ansluten till telefon- och medialjud"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Ansluten till indataenhet"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> alternativ"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Anslut"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Anslut till Bluetooth-enhet"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Ansluten till telefonens ljud"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Ansluten till filöverföringsserver"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Inte ansluten till filöverföringsserver"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Ansluten till indataenhet"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Använd för medialjud"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Använd för telefonens ljud"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Använd för filöverföring"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Använd för inmatning"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Dockningsinställningar"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Använd docka för ljud"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Som högtalartelefon"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Program"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Genvägar"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Textinmatning"</string>
+ <string name="input_method" msgid="5434026103176856164">"Indatametod"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Hantera textinmatningsalternativ"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"<xliff:g id="IME_NAME">%1$s</xliff:g>-inställningar"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Inställningar för tangentbordet på skärmen"</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 1da2e3c..7bfe8b1 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"<xliff:g id="ACTIVITY">activity</xliff:g> işlemini başlat"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"Hesap:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"Temizle"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"Bağlantı Noktası"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"Varsayılanları geri yükle"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"Kaydet"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"Ana makine adı"</string>
<string name="proxy_error" msgid="8926675299638611451">"Dikkat"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"Tamam"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"Yazdığınız ana makine adı geçersiz."</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"Bağlantı noktası alanını tamamlamalısınız."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Ana makine alanı boşsa, bağlantı noktası alanı boş olmalıdır."</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"Girdiğiniz bağlantı noktası geçersiz."</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"SD kartta medya aranıyor…"</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"SD kart salt okunur olarak bağlandı"</string>
<string name="next_label" msgid="4693520878012668114">"İleri"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"Yerel ayar"</string>
- <string name="select_your_language" msgid="1146235168951906084">"Dilinizi seçin"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"Dil"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"Etkinlik seç"</string>
<string name="device_info_label" msgid="6551553813651711205">"Cihaz bilgileri"</string>
<string name="battery_info_label" msgid="4132685016148679403">"Pil bilgileri"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"Kilit açma şifresini değiştir"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"Şifre en az %d karakter olmalıdır"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"PIN, en az %d karakter olmalıdır"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"İşlem tamamlandığında Devam düğmesine basın"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"İşlem tamamlandığında Devam düğmesine basın"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"Devam Et"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"PIN, en fazla %d rakamdan oluşabilir"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"PIN, en fazla %d rakamdan oluşabilir"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"PIN yalnızca 0-9 arasındaki rakamları içermelidir"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"Cihaz yöneticisi yakında kullanılmış PIN\'e izin vermiyor"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"Şifre geçersiz bir karakter içeriyor"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"Şifre en az bir harf içermelidir"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"Şifre, en az bir rakam içermelidir"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"Şifre en az bir sembol içermelidir"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"Şifre en az 1 harf içermelidir"</item>
+ <item quantity="other" msgid="7278096339907683541">"Şifre en az %d harf içermelidir"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"Şifre en az 1 küçük harf içermelidir"</item>
+ <item quantity="other" msgid="588499075580432178">"Şifre en az %d küçük harf içermelidir"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"Şifre en az 1 büyük harf içermelidir"</item>
+ <item quantity="other" msgid="2183090598541826806">"Şifre en az %d büyük harf içermelidir"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"Şifre, en az 1 rakam içermelidir"</item>
+ <item quantity="other" msgid="995673409754935278">"Şifre en az %d rakam içermelidir"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"Şifre en az 1 özel sembol içermelidir"</item>
+ <item quantity="other" msgid="3047460862484105274">"Şifre en az %d özel sembol içermelidir"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"Şifre harf olmayan en az 1 karakter içermelidir"</item>
+ <item quantity="other" msgid="5574191164708145973">"Şifre harf olmayan en az %d karakter içermelidir"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"Cihaz yöneticisi yakında kullanılmış şifreye izin vermiyor"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"Tamam"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"İptal"</string>
<string name="device_admin_title" msgid="3562216873644263804">"Cihaz yönetimi"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"Medya"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"Telefon"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"Aktar"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"Giriş Cihazı"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"Medya sesine bağlanıldı"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"Telefon sesine bağlandı"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"Telefon ve medya sesine bağlandı"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"Giriş cihazına bağlı"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> seçenek"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Bağlan"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Bluetooth cihazına bağlan"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"Telefon sesine bağlandı"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"Dosya aktarım sunucusuna bağlandı"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"Dosya aktarım sunucusuna bağlanmadı"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"Giriş cihazına bağlı"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"Medya sesi için kullan"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"Telefon sesi için kullan"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"Dosya aktarımı için kullan"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"Giriş için kullan"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"Yuva Ayarları"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"Ses öğesi için yuvayı kullan"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Telefon hoparlörü olarak"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"Uygulamalar"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"Kısayollar"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"Metin girişi"</string>
+ <string name="input_method" msgid="5434026103176856164">"Giriş yöntemi"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"Metin giriş seçeneklerini yönet"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"<xliff:g id="IME_NAME">%1$s</xliff:g> ayarları"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"Ekran klavyesi ayarları"</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 53c1577..aa8d871 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"启动<xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"帐户:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"清除"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"端口"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"恢复默认设置"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"保存"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"主机名"</string>
<string name="proxy_error" msgid="8926675299638611451">"注意"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"确定"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"您输入的主机名无效。"</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"您必须填写端口字段。"</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"如果主机字段为空,则端口字段必须为空。"</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"您输入的端口无效。"</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"正从 SD 卡扫描媒体..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"安装的 SD 卡为只读状态"</string>
<string name="next_label" msgid="4693520878012668114">"下一步"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"语言区域"</string>
- <string name="select_your_language" msgid="1146235168951906084">"选择您使用的语言"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"语言"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"选择活动"</string>
<string name="device_info_label" msgid="6551553813651711205">"设备信息"</string>
<string name="battery_info_label" msgid="4132685016148679403">"电池信息"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"更改解锁密码"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"密码必须至少包含 %d 个字符"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"PIN 必须至少包含 %d 个字符"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"完成后按“继续”"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"完成后触摸“继续”"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"继续"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"PIN 不得超过 %d 位数"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"PIN 不得超过 %d 位数"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"PIN 只能由 0-9 的数字组成"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"设备管理员不允许使用最近的 PIN"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"密码包含非法字符"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"密码中至少应包含一个字母"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"密码中至少应包含一个数字"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"密码中至少应包含一个符号"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"密码中至少应包含 1 个字母"</item>
+ <item quantity="other" msgid="7278096339907683541">"密码中至少应包含 %d 个字母"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"密码中至少应包含 1 个小写字母"</item>
+ <item quantity="other" msgid="588499075580432178">"密码中至少应包含 %d 个小写字母"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"密码中至少应包含 1 个大写字母"</item>
+ <item quantity="other" msgid="2183090598541826806">"密码中至少应包含 %d 个大写字母"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"密码中至少应包含 1 个数字"</item>
+ <item quantity="other" msgid="995673409754935278">"密码中至少应包含 %d 个数字"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"密码中至少应包含 1 个特殊符号"</item>
+ <item quantity="other" msgid="3047460862484105274">"密码中至少应包含 %d 个特殊符号"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"密码中至少应包含 1 个非字母字符"</item>
+ <item quantity="other" msgid="5574191164708145973">"密码中至少应包含 %d 个非字母字符"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"设备管理员不允许使用最近的密码"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"确定"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"取消"</string>
<string name="device_admin_title" msgid="3562216873644263804">"设备管理"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"媒体"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"电话"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"传输"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"输入设备"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"已连接到媒体音频"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"已连接到手机音频"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"已连接到手机和媒体音频"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"已连接到输入设备"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g>选项"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"连接"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"连接到蓝牙设备"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"已连接到手机音频"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"已连接到文件传输服务器"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"未连接到文件传输服务器"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"已连接到输入设备"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"用于媒体音频"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"用于手机音频"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"用于文件传输"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"用于输入"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"底座设置"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"底座用于音频"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"将底座用作免提电话"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"应用程序"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"快捷方式"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"文字输入"</string>
+ <string name="input_method" msgid="5434026103176856164">"输入法"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"管理文字输入选项"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"<xliff:g id="IME_NAME">%1$s</xliff:g> 设置"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"屏幕键盘设置"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 2c30a4d..ecfa124 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -130,14 +130,23 @@
<string name="intent_sender_startactivity_text" msgid="5080516029580421895">"開始 <xliff:g id="ACTIVITY">activity</xliff:g>"</string>
<string name="intent_sender_resource_label" msgid="6963659726895482829">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
<string name="intent_sender_account_label" msgid="465210404475603404">"帳戶:"</string>
+ <!-- no translation found for proxy_settings_title (6262282922722097473) -->
+ <skip />
+ <!-- no translation found for proxy_settings_summary (7898928000758321486) -->
+ <skip />
<string name="proxy_clear_text" msgid="5555400754952012657">"清除"</string>
<string name="proxy_port_label" msgid="2623639656638472491">"連接埠"</string>
+ <!-- no translation found for proxy_exclusionlist_label (204409815790850313) -->
+ <skip />
<string name="proxy_defaultView_text" msgid="6387985519141433291">"還原預設值"</string>
- <string name="proxy_action_text" msgid="477348175123635416">"儲存"</string>
+ <!-- no translation found for proxy_action_text (2957063145357903951) -->
+ <skip />
<string name="proxy_hostname_label" msgid="7531298584350977540">"主機名稱"</string>
<string name="proxy_error" msgid="8926675299638611451">"注意"</string>
<string name="proxy_error_dismiss" msgid="4993171795485460060">"確定"</string>
<string name="proxy_error_invalid_host" msgid="9120776460063182119">"您輸入的主機名稱無效。"</string>
+ <!-- no translation found for proxy_error_invalid_exclusion_list (4753810662233875893) -->
+ <skip />
<string name="proxy_error_empty_port" msgid="3525734169948795417">"您必須輸入連接埠欄位。"</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"若主機欄位空白,連接埠欄位也須空白。"</string>
<string name="proxy_error_invalid_port" msgid="1816315605424943626">"您輸入的連接埠無效。"</string>
@@ -189,8 +198,7 @@
<string name="sdcard_settings_scanning_status" msgid="2763464949274455656">"從 SD 卡掃描媒體中..."</string>
<string name="sdcard_settings_read_only_status" msgid="5706115860484118911">"SD 卡為唯讀狀態"</string>
<string name="next_label" msgid="4693520878012668114">"下一頁"</string>
- <string name="language_picker_title" msgid="4034157617842965844">"地區設定"</string>
- <string name="select_your_language" msgid="1146235168951906084">"選取語言"</string>
+ <string name="language_picker_title" msgid="5349877711342869319">"語言"</string>
<string name="activity_picker_label" msgid="4910700713930693329">"選取動作"</string>
<string name="device_info_label" msgid="6551553813651711205">"裝置資訊"</string>
<string name="battery_info_label" msgid="4132685016148679403">"電池資訊"</string>
@@ -257,15 +265,41 @@
<string name="unlock_change_lock_password_title" msgid="5606298470358768865">"變更解鎖密碼"</string>
<string name="lockpassword_password_too_short" msgid="7328975683669256660">"密碼必須有至少 %d 個字元"</string>
<string name="lockpassword_pin_too_short" msgid="2252847623267704683">"PIN 必須有至少 %d 個字元"</string>
- <string name="lockpassword_press_continue" msgid="6506047902828925216">"完成時請按 [繼續]"</string>
+ <string name="lockpassword_press_continue" msgid="122706614386757182">"完成時請輕觸 [繼續]"</string>
<string name="lockpassword_continue_label" msgid="4602203784934526940">"繼續"</string>
<string name="lockpassword_password_too_long" msgid="7354418473281442589">"PIN 不得超過 %d 位數"</string>
<string name="lockpassword_pin_too_long" msgid="6290317580664119373">"PIN 不得超過 %d 位數"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="3379277100136600632">"PIN 只能包含數字 0-9"</string>
+ <string name="lockpassword_pin_recently_used" msgid="2729073062730842496">"裝置管理員不允許使用近期的 PIN"</string>
<string name="lockpassword_illegal_character" msgid="6204396794254688549">"密碼包含不適用的字元"</string>
<string name="lockpassword_password_requires_alpha" msgid="5668524505560400449">"密碼必須包含至少 1 個字母"</string>
<string name="lockpassword_password_requires_digit" msgid="4840579514154254907">"密碼必須包含至少 1 個數字"</string>
<string name="lockpassword_password_requires_symbol" msgid="4140602725865312078">"密碼必須包含至少 1 個符號"</string>
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one" msgid="1462968118065694590">"密碼至少必須包含 1 個字母"</item>
+ <item quantity="other" msgid="7278096339907683541">"密碼至少必須包含 %d 個字母"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one" msgid="2048653993044269649">"密碼至少必須包含 1 個小寫字母"</item>
+ <item quantity="other" msgid="588499075580432178">"密碼至少必須包含 %d 個小寫字母"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one" msgid="7677454174080582601">"密碼至少必須包含 1 個大寫字母"</item>
+ <item quantity="other" msgid="2183090598541826806">"密碼至少必須包含 %d 個大寫字母"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one" msgid="8585088032818933985">"密碼至少必須包含 1 個數字"</item>
+ <item quantity="other" msgid="995673409754935278">"密碼至少必須包含 %d 個數字"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one" msgid="3930886641317826293">"密碼至少必須包含 1 個特殊符號"</item>
+ <item quantity="other" msgid="3047460862484105274">"密碼至少必須包含 %d 個特殊符號"</item>
+ </plurals>
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one" msgid="1716355580615489062">"密碼至少必須包含 1 個非字母字元"</item>
+ <item quantity="other" msgid="5574191164708145973">"密碼至少必須包含 %d 個非字母字元"</item>
+ </plurals>
+ <string name="lockpassword_password_recently_used" msgid="2739642871806935825">"裝置管理員不允許使用近期的密碼"</string>
<string name="lockpassword_ok_label" msgid="313822574062553672">"確定"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"取消"</string>
<string name="device_admin_title" msgid="3562216873644263804">"裝置管理"</string>
@@ -303,9 +337,11 @@
<string name="bluetooth_profile_a2dp" msgid="3259633293424539529">"媒體"</string>
<string name="bluetooth_profile_headset" msgid="1874975688666658946">"電話"</string>
<string name="bluetooth_profile_opp" msgid="3799470046565284440">"傳輸"</string>
+ <string name="bluetooth_profile_hid" msgid="3000858580917633478">"輸入裝置"</string>
<string name="bluetooth_summary_connected_to_a2dp" msgid="510833839847758664">"連接至媒體音訊"</string>
<string name="bluetooth_summary_connected_to_headset" msgid="4876496372728623918">"連接至電話音訊"</string>
<string name="bluetooth_summary_connected_to_a2dp_headset" msgid="3045032710457800891">"連接至電話和媒體音訊"</string>
+ <string name="bluetooth_summary_connected_to_hid" msgid="8147499644396475561">"已連線到輸入裝置"</string>
<string name="bluetooth_device_advanced_title" msgid="528816860793581131">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> 選項"</string>
<string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"連線"</string>
<string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"連接至藍牙裝置"</string>
@@ -314,9 +350,11 @@
<string name="bluetooth_headset_profile_summary_connected" msgid="7661070206715520671">"連接至電話音訊"</string>
<string name="bluetooth_opp_profile_summary_connected" msgid="2611913495968309066">"已連線到檔案傳輸伺服器"</string>
<string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"不要連線到檔案傳輸伺服器"</string>
+ <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"已連線到輸入裝置"</string>
<string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"用於媒體音訊"</string>
<string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"用於電話音訊"</string>
<string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"用於傳輸檔案"</string>
+ <string name="bluetooth_hid_profile_summary_use_for" msgid="232727040453645139">"用於輸入"</string>
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"座架設定"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"使用座架播放音訊"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"當成手機喇叭"</string>
@@ -824,6 +862,7 @@
<string name="quick_launch_display_mode_applications" msgid="3748789806447639039">"應用程式"</string>
<string name="quick_launch_display_mode_shortcuts" msgid="4177934019174169042">"快速鍵"</string>
<string name="input_methods_settings_title" msgid="6800066636850553887">"文字輸入法"</string>
+ <string name="input_method" msgid="5434026103176856164">"輸入方式"</string>
<string name="input_methods_settings_summary" msgid="7571173442946675205">"管理輸入法選項"</string>
<string name="input_methods_settings_label_format" msgid="6002887604815693322">"<xliff:g id="IME_NAME">%1$s</xliff:g> 設定"</string>
<string name="onscreen_keyboard_settings_summary" msgid="5841558383556238653">"螢幕鍵盤設定"</string>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index f5bcaaf..241022e 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -292,14 +292,20 @@
<!-- Used for diagnostic screens, precise translation is not necessary -->
<string name="intent_sender_account_label">Account: </string>
+ <!-- HTTP proxy settings title -->
+ <string name="proxy_settings_title">Proxy Settings</string>
+ <!-- HTTP proxy settings summary -->
+ <string name="proxy_settings_summary">Set the global HTTP proxy and exclusion lists</string>
<!-- HTTP proxy settings. Button to clear the proxy box. -->
<string name="proxy_clear_text">Clear</string>
<!-- HTTP proxy settings. The port number label. -->
<string name="proxy_port_label">Port</string>
+ <!-- HTTP proxy settings. The exclusion list label. -->
+ <string name="proxy_exclusionlist_label">No Proxy for</string>
<!-- HTTP proxy settings. The button to restore the defaults. -->
<string name="proxy_defaultView_text">Restore defaults</string>
<!-- HTTP proxy settings. The button to save. -->
- <string name="proxy_action_text">Save</string>
+ <string name="proxy_action_text">Done</string>
<!-- HTTP proxy settings. The text field for the hostname -->
<string name="proxy_hostname_label">Hostname</string>
<!-- HTTP proxy settings. Title if there is an error-->
@@ -308,6 +314,8 @@
<string name="proxy_error_dismiss">OK</string>
<!-- HTTP proxy settings. The error if the hostname is not valid -->
<string name="proxy_error_invalid_host">The hostname you typed is not valid.</string>
+ <!-- HTTP proxy settings. The error if the exclusion list is not valid -->
+ <string name="proxy_error_invalid_exclusion_list">The exclusion list you typed is not properly formatted. Please enter a comma-separated list of excluded domains.</string>
<!-- HTTP proxy settings. Error msg -->
<string name="proxy_error_empty_port">You must complete the port field.</string>
<!-- HTTP proxy settings. Error msg -->
@@ -419,9 +427,7 @@
<!-- LocalePicker -->
<!-- Title for the locale picker activity -->
- <string name="language_picker_title">Locale</string>
- <!-- Locale picker screen. Label for choosing the locale -->
- <string name="select_your_language">Select your language</string>
+ <string name="language_picker_title">Language</string>
<!-- The title of the dialog to pick an activity. This is shown when there are multiple activities that can do a particular action. For example, suppose you click on the "Share" menu item in the Browser. Since you can share the webpage URL via many communication methods, this dialog would come up with choices like "Email", "IM", etc. This is a generic message, and the previous example is a single possible scenario (so please don't assume it's for the browser or anything :) ). -->
<string name="activity_picker_label">Select activity</string>
@@ -592,7 +598,7 @@
<string name="lockpassword_pin_too_short">PIN must be at least %d characters</string>
<!-- Hint shown after minimum password criteria is met -->
- <string name="lockpassword_press_continue">Press Continue when done</string>
+ <string name="lockpassword_press_continue">Touch Continue when done</string>
<!-- Hint shown after minimum password criteria is met -->
<string name="lockpassword_continue_label">Continue</string>
@@ -605,6 +611,9 @@
<!-- Error shown when in PIN mode and user enters a non-digit -->
<string name="lockpassword_pin_contains_non_digits">PIN must contain only digits 0-9</string>
+ <!-- Error shown when in PIN mode and PIN has been used recently. Please keep this string short! -->
+ <string name="lockpassword_pin_recently_used">Device administrator disallows using a recent PIN</string>
+
<!-- Error shown when in PASSWORD mode and user enters an invalid character -->
<string name="lockpassword_illegal_character">Password contains an illegal character</string>
@@ -617,6 +626,45 @@
<!-- Error shown when in PASSWORD mode and password doesn't contain any symbols -->
<string name="lockpassword_password_requires_symbol">Password must contain at least one symbol</string>
+ <!-- Error shown when in PASSWORD mode and password doesn't contain the required number of letters -->
+ <plurals name="lockpassword_password_requires_letters">
+ <item quantity="one">Password must contain at least 1 letter</item>
+ <item quantity="other">Password must contain at least %d letters</item>
+ </plurals>
+
+ <!-- Error shown when in PASSWORD mode and password doesn't contain the required number of lowercase letters -->
+ <plurals name="lockpassword_password_requires_lowercase">
+ <item quantity="one">Password must contain at least 1 lowercase letter</item>
+ <item quantity="other">Password must contain at least %d lowercase letters</item>
+ </plurals>
+
+ <!-- Error shown when in PASSWORD mode and password doesn't contain the required number of uppercase letters -->
+ <plurals name="lockpassword_password_requires_uppercase">
+ <item quantity="one">Password must contain at least 1 uppercase letter</item>
+ <item quantity="other">Password must contain at least %d uppercase letters</item>
+ </plurals>
+
+ <!-- Error shown when in PASSWORD mode and password doesn't contain the required number of numerical digits -->
+ <plurals name="lockpassword_password_requires_numeric">
+ <item quantity="one">Password must contain at least 1 numerical digit</item>
+ <item quantity="other">Password must contain at least %d numerical digits</item>
+ </plurals>
+
+ <!-- Error shown when in PASSWORD mode and password doesn't contain the required number of special symbols -->
+ <plurals name="lockpassword_password_requires_symbols">
+ <item quantity="one">Password must contain at least 1 special symbol</item>
+ <item quantity="other">Password must contain at least %d special symbols</item>
+ </plurals>
+
+ <!-- Error shown when in PASSWORD mode and password doesn't contain the required number of non-letter characters -->
+ <plurals name="lockpassword_password_requires_nonletter">
+ <item quantity="one">Password must contain at least 1 non-letter character</item>
+ <item quantity="other">Password must contain at least %d non-letter characters</item>
+ </plurals>
+
+ <!-- Error shown when in PASSWORD mode and password has been used recently. Please keep this string short! -->
+ <string name="lockpassword_password_recently_used">Device administrator disallows using a recent password</string>
+
<!-- Label for ChoosePassword/PIN OK button -->
<string name="lockpassword_ok_label">OK</string>
@@ -714,6 +762,8 @@
<string name="bluetooth_profile_headset">Phone</string>
<!-- Bluetooth settings. The user-visible string that is used whenever referring to the OPP profile. -->
<string name="bluetooth_profile_opp">Transfer</string>
+ <!-- Bluetooth settings. The user-visible string that is used whenever referring to the HID profile. -->
+ <string name="bluetooth_profile_hid">Input Device</string>
<!-- Bluetooth settings. The summary string when a device is connected to the A2DP profile. -->
<string name="bluetooth_summary_connected_to_a2dp">Connected to media audio</string>
@@ -721,6 +771,8 @@
<string name="bluetooth_summary_connected_to_headset">Connected to phone audio</string>
<!-- Bluetooth settings. The summary string when a device is connected to the A2DP and headset profiles. -->
<string name="bluetooth_summary_connected_to_a2dp_headset">Connected to phone and media audio</string>
+ <!-- Bluetooth settings. The summary string when a device is connected to the HID profile. -->
+ <string name="bluetooth_summary_connected_to_hid">Connected to input device</string>
<!-- Bluetooth settings. Connection options screen. The title of the screen. -->
<string name="bluetooth_device_advanced_title"><xliff:g id="device_name">%1$s</xliff:g> options</string>
@@ -738,6 +790,8 @@
<string name="bluetooth_opp_profile_summary_connected">Connected to file transfer server</string>
<!-- Bluetooth settings. Connection options screen. The summary for the OPP checkbox preference when OPP is not connected. -->
<string name="bluetooth_opp_profile_summary_not_connected">Not connected to file transfer server</string>
+ <!-- Bluetooth settings. Connection options screen. The summary for the HID checkbox preference when HID is connected. -->
+ <string name="bluetooth_hid_profile_summary_connected">Connected to input device</string>
<!-- Bluetooth settings. Connection options screen. The summary for the A2DP checkbox preference that describes how checking it will set the A2DP profile as preferred. -->
<string name="bluetooth_a2dp_profile_summary_use_for">Use for media audio</string>
@@ -745,6 +799,10 @@
<string name="bluetooth_headset_profile_summary_use_for">Use for phone audio</string>
<!-- Bluetooth settings. Connection options screen. The summary for the OPP checkbox preference that describes how checking it will set the OPP profile as preferred. -->
<string name="bluetooth_opp_profile_summary_use_for">Use for file transfer</string>
+ <!-- Bluetooth settings. Connection options screen. The summary
+ for the HID checkbox preference that describes how checking it
+ will set the HID profile as preferred. -->
+ <string name="bluetooth_hid_profile_summary_use_for">Use for input</string>
<!-- Bluetooth settings. Dock Setting Title -->
<string name="bluetooth_dock_settings">Dock Settings</string>
@@ -1914,6 +1972,8 @@
<!-- Input methods Settings -->
<string name="input_methods_settings_title">Text input</string>
+ <!-- Setting name for Input Method chooser -->
+ <string name="input_method">Input method</string>
<string name="input_methods_settings_summary">Manage text input options</string>
<!-- Input Methods Settings localized format string for generating the appropriate "Foo settings" menu label for the Input Method named "Foo" -->
<string name="input_methods_settings_label_format"><xliff:g id="ime_name">%1$s</xliff:g> settings</string>
diff --git a/res/xml/language_settings.xml b/res/xml/language_settings.xml
index d3c0e02..3b94680 100644
--- a/res/xml/language_settings.xml
+++ b/res/xml/language_settings.xml
@@ -26,7 +26,13 @@
</PreferenceScreen>
<PreferenceCategory android:key="text_category"
- android:title="@string/text_category" />
+ android:title="@string/text_category">
+
+ <PreferenceScreen android:key="input_method"
+ android:title="@string/input_method"
+ android:widgetLayout="@*android:layout/preference_dialog" />
+
+ </PreferenceCategory>
<PreferenceScreen
android:key="hardkeyboard_category"
diff --git a/res/xml/wireless_settings.xml b/res/xml/wireless_settings.xml
index 7c91d50..13b8344 100644
--- a/res/xml/wireless_settings.xml
+++ b/res/xml/wireless_settings.xml
@@ -86,4 +86,14 @@
android:targetClass="com.android.phone.Settings" />
</PreferenceScreen>
+ <PreferenceScreen
+ android:key="proxy_settings"
+ android:title="@string/proxy_settings_title"
+ android:summary="@string/proxy_settings_summary" >
+ <intent
+ android:action="android.intent.action.MAIN"
+ android:targetPackage="com.android.settings"
+ android:targetClass="com.android.settings.ProxySelector" />
+ </PreferenceScreen>
+
</PreferenceScreen>
diff --git a/src/com/android/settings/AirplaneModeEnabler.java b/src/com/android/settings/AirplaneModeEnabler.java
index ff4b27d..ccfe541 100644
--- a/src/com/android/settings/AirplaneModeEnabler.java
+++ b/src/com/android/settings/AirplaneModeEnabler.java
@@ -64,8 +64,6 @@
public void resume() {
- // This is the widget enabled state, not the preference toggled state
- mCheckBoxPref.setEnabled(true);
mCheckBoxPref.setChecked(isAirplaneModeOn(mContext));
mPhoneStateReceiver.registerIntent();
@@ -84,13 +82,14 @@
private void setAirplaneModeOn(boolean enabling) {
- mCheckBoxPref.setEnabled(false);
mCheckBoxPref.setSummary(enabling ? R.string.airplane_mode_turning_on
: R.string.airplane_mode_turning_off);
// Change the system setting
Settings.System.putInt(mContext.getContentResolver(), Settings.System.AIRPLANE_MODE_ON,
enabling ? 1 : 0);
+ // Update the UI to reflect system setting
+ mCheckBoxPref.setChecked(enabling);
// Post the intent
Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
@@ -100,14 +99,17 @@
/**
* Called when we've received confirmation that the airplane mode was set.
+ * TODO: We update the checkbox summary when we get notified
+ * that mobile radio is powered up/down. We should not have dependency
+ * on one radio alone. We need to do the following:
+ * - handle the case of wifi/bluetooth failures
+ * - mobile does not send failure notification, fail on timeout.
*/
private void onAirplaneModeChanged() {
ServiceState serviceState = mPhoneStateReceiver.getServiceState();
boolean airplaneModeEnabled = serviceState.getState() == ServiceState.STATE_POWER_OFF;
- mCheckBoxPref.setChecked(airplaneModeEnabled);
mCheckBoxPref.setSummary(airplaneModeEnabled ? null :
mContext.getString(R.string.airplane_mode_summary));
- mCheckBoxPref.setEnabled(true);
}
/**
@@ -128,7 +130,7 @@
// update database based on the current checkbox state
setAirplaneModeOn(isAirplaneModeOn);
} else {
- // update checkbox state based on database value
+ // update summary
onAirplaneModeChanged();
}
}
diff --git a/src/com/android/settings/ChooseLockGeneric.java b/src/com/android/settings/ChooseLockGeneric.java
index 0672ad9..5247e79 100644
--- a/src/com/android/settings/ChooseLockGeneric.java
+++ b/src/com/android/settings/ChooseLockGeneric.java
@@ -138,7 +138,7 @@
} else if (KEY_UNLOCK_SET_PIN.equals(key)) {
enabled = quality <= DevicePolicyManager.PASSWORD_QUALITY_NUMERIC;
} else if (KEY_UNLOCK_SET_PASSWORD.equals(key)) {
- enabled = quality <= DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC;
+ enabled = quality <= DevicePolicyManager.PASSWORD_QUALITY_COMPLEX;
}
if (!enabled) {
pref.setSummary(R.string.unlock_set_unlock_disabled_summary);
diff --git a/src/com/android/settings/ChooseLockPassword.java b/src/com/android/settings/ChooseLockPassword.java
index b5e72d7..4d447f4 100644
--- a/src/com/android/settings/ChooseLockPassword.java
+++ b/src/com/android/settings/ChooseLockPassword.java
@@ -48,6 +48,12 @@
private TextView mPasswordEntry;
private int mPasswordMinLength = 4;
private int mPasswordMaxLength = 16;
+ private int mPasswordMinLetters = 0;
+ private int mPasswordMinUpperCase = 0;
+ private int mPasswordMinLowerCase = 0;
+ private int mPasswordMinSymbols = 0;
+ private int mPasswordMinNumeric = 0;
+ private int mPasswordMinNonLetter = 0;
private LockPatternUtils mLockPatternUtils;
private int mRequestedQuality = DevicePolicyManager.PASSWORD_QUALITY_NUMERIC;
private ChooseLockSettingsHelper mChooseLockSettingsHelper;
@@ -61,6 +67,12 @@
private Button mNextButton;
public static final String PASSWORD_MIN_KEY = "lockscreen.password_min";
public static final String PASSWORD_MAX_KEY = "lockscreen.password_max";
+ public static final String PASSWORD_MIN_LETTERS_KEY = "lockscreen.password_min_letters";
+ public static final String PASSWORD_MIN_LOWERCASE_KEY = "lockscreen.password_min_lowercase";
+ public static final String PASSWORD_MIN_UPPERCASE_KEY = "lockscreen.password_min_uppercase";
+ public static final String PASSWORD_MIN_NUMERIC_KEY = "lockscreen.password_min_numeric";
+ public static final String PASSWORD_MIN_SYMBOLS_KEY = "lockscreen.password_min_symbols";
+ public static final String PASSWORD_MIN_NONLETTER_KEY = "lockscreen.password_min_nonletter";
private static Handler mHandler = new Handler();
private static final int CONFIRM_EXISTING_REQUEST = 58;
static final int RESULT_FINISHED = RESULT_FIRST_USER;
@@ -101,19 +113,27 @@
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mLockPatternUtils = new LockPatternUtils(this);
- mRequestedQuality = getIntent().getIntExtra(LockPatternUtils.PASSWORD_TYPE_KEY, mRequestedQuality);
- mPasswordMinLength = getIntent().getIntExtra(PASSWORD_MIN_KEY, mPasswordMinLength);
+ mRequestedQuality = Math.max(getIntent().getIntExtra(LockPatternUtils.PASSWORD_TYPE_KEY,
+ mRequestedQuality), mLockPatternUtils.getRequestedPasswordQuality());
+ mPasswordMinLength = Math.max(
+ getIntent().getIntExtra(PASSWORD_MIN_KEY, mPasswordMinLength), mLockPatternUtils
+ .getRequestedMinimumPasswordLength());
mPasswordMaxLength = getIntent().getIntExtra(PASSWORD_MAX_KEY, mPasswordMaxLength);
-
+ mPasswordMinLetters = Math.max(getIntent().getIntExtra(PASSWORD_MIN_LETTERS_KEY,
+ mPasswordMinLetters), mLockPatternUtils.getRequestedPasswordMinimumLetters());
+ mPasswordMinUpperCase = Math.max(getIntent().getIntExtra(PASSWORD_MIN_UPPERCASE_KEY,
+ mPasswordMinUpperCase), mLockPatternUtils.getRequestedPasswordMinimumUpperCase());
+ mPasswordMinLowerCase = Math.max(getIntent().getIntExtra(PASSWORD_MIN_LOWERCASE_KEY,
+ mPasswordMinLowerCase), mLockPatternUtils.getRequestedPasswordMinimumLowerCase());
+ mPasswordMinNumeric = Math.max(getIntent().getIntExtra(PASSWORD_MIN_NUMERIC_KEY,
+ mPasswordMinNumeric), mLockPatternUtils.getRequestedPasswordMinimumNumeric());
+ mPasswordMinSymbols = Math.max(getIntent().getIntExtra(PASSWORD_MIN_SYMBOLS_KEY,
+ mPasswordMinSymbols), mLockPatternUtils.getRequestedPasswordMinimumSymbols());
+ mPasswordMinNonLetter = Math.max(getIntent().getIntExtra(PASSWORD_MIN_NONLETTER_KEY,
+ mPasswordMinNonLetter), mLockPatternUtils.getRequestedPasswordMinimumNonLetter());
final boolean confirmCredentials = getIntent().getBooleanExtra("confirm_credentials", true);
- int minMode = mLockPatternUtils.getRequestedPasswordQuality();
- if (mRequestedQuality < minMode) {
- mRequestedQuality = minMode;
- }
- int minLength = mLockPatternUtils.getRequestedMinimumPasswordLength();
- if (mPasswordMinLength < minLength) {
- mPasswordMinLength = minLength;
- }
+
+
initViews();
mChooseLockSettingsHelper = new ChooseLockSettingsHelper(this);
if (savedInstanceState == null) {
@@ -142,7 +162,8 @@
mPasswordEntry.addTextChangedListener(this);
mIsAlphaMode = DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC == mRequestedQuality
- || DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC == mRequestedQuality;
+ || DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC == mRequestedQuality
+ || DevicePolicyManager.PASSWORD_QUALITY_COMPLEX == mRequestedQuality;
mKeyboardHelper = new PasswordEntryKeyboardHelper(this, mKeyboardView, mPasswordEntry);
mKeyboardHelper.setKeyboardMode(mIsAlphaMode ?
PasswordEntryKeyboardHelper.KEYBOARD_MODE_ALPHA
@@ -212,9 +233,12 @@
R.string.lockpassword_password_too_long
: R.string.lockpassword_pin_too_long, mPasswordMaxLength);
}
- boolean hasAlpha = false;
- boolean hasDigit = false;
- boolean hasSymbol = false;
+ int letters = 0;
+ int numbers = 0;
+ int lowercase = 0;
+ int symbols = 0;
+ int uppercase = 0;
+ int nonletter = 0;
for (int i = 0; i < password.length(); i++) {
char c = password.charAt(i);
// allow non white space Latin-1 characters only
@@ -222,32 +246,65 @@
return getString(R.string.lockpassword_illegal_character);
}
if (c >= '0' && c <= '9') {
- hasDigit = true;
- } else if ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z')) {
- hasAlpha = true;
+ numbers++;
+ nonletter++;
+ } else if (c >= 'A' && c <= 'Z') {
+ letters++;
+ uppercase++;
+ } else if (c >= 'a' && c <= 'z') {
+ letters++;
+ lowercase++;
} else {
- hasSymbol = true;
+ symbols++;
+ nonletter++;
}
}
if (DevicePolicyManager.PASSWORD_QUALITY_NUMERIC == mRequestedQuality
- && (hasAlpha | hasSymbol)) {
- // This shouldn't be possible unless user finds some way to bring up soft keyboard
+ && (letters > 0 || symbols > 0)) {
+ // This shouldn't be possible unless user finds some way to bring up
+ // soft keyboard
return getString(R.string.lockpassword_pin_contains_non_digits);
+ } else if (DevicePolicyManager.PASSWORD_QUALITY_COMPLEX == mRequestedQuality) {
+ if (letters < mPasswordMinLetters) {
+ return String.format(getResources().getQuantityString(
+ R.plurals.lockpassword_password_requires_letters, mPasswordMinLetters),
+ mPasswordMinLetters);
+ } else if (numbers < mPasswordMinNumeric) {
+ return String.format(getResources().getQuantityString(
+ R.plurals.lockpassword_password_requires_numeric, mPasswordMinNumeric),
+ mPasswordMinNumeric);
+ } else if (lowercase < mPasswordMinLowerCase) {
+ return String.format(getResources().getQuantityString(
+ R.plurals.lockpassword_password_requires_lowercase, mPasswordMinLowerCase),
+ mPasswordMinLowerCase);
+ } else if (uppercase < mPasswordMinUpperCase) {
+ return String.format(getResources().getQuantityString(
+ R.plurals.lockpassword_password_requires_uppercase, mPasswordMinUpperCase),
+ mPasswordMinUpperCase);
+ } else if (symbols < mPasswordMinSymbols) {
+ return String.format(getResources().getQuantityString(
+ R.plurals.lockpassword_password_requires_symbols, mPasswordMinSymbols),
+ mPasswordMinSymbols);
+ } else if (nonletter < mPasswordMinNonLetter) {
+ return String.format(getResources().getQuantityString(
+ R.plurals.lockpassword_password_requires_nonletter, mPasswordMinNonLetter),
+ mPasswordMinNonLetter);
+ }
} else {
final boolean alphabetic = DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC
== mRequestedQuality;
final boolean alphanumeric = DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC
== mRequestedQuality;
- final boolean symbolic = false; // not yet
- if ((alphabetic || alphanumeric) && !hasAlpha) {
+ if ((alphabetic || alphanumeric) && letters == 0) {
return getString(R.string.lockpassword_password_requires_alpha);
}
- if (alphanumeric && !hasDigit) {
+ if (alphanumeric && numbers == 0) {
return getString(R.string.lockpassword_password_requires_digit);
}
- if (symbolic && !hasSymbol) {
- return getString(R.string.lockpassword_password_requires_symbol);
- }
+ }
+ if(mLockPatternUtils.checkPasswordHistory(password)) {
+ return getString(mIsAlphaMode ? R.string.lockpassword_password_recently_used
+ : R.string.lockpassword_pin_recently_used);
}
return null;
}
@@ -306,7 +363,7 @@
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
// Check if this was the result of hitting the enter key
- if (actionId == EditorInfo.IME_NULL) {
+ if (actionId == EditorInfo.IME_NULL && event.getAction() == KeyEvent.ACTION_DOWN) {
handleNext();
return true;
}
diff --git a/src/com/android/settings/ChooseLockPatternExample.java b/src/com/android/settings/ChooseLockPatternExample.java
index cba88b0..3c96d53 100644
--- a/src/com/android/settings/ChooseLockPatternExample.java
+++ b/src/com/android/settings/ChooseLockPatternExample.java
@@ -66,6 +66,7 @@
stopAnimation(mAnimation);
Intent intent = new Intent(this, ChooseLockPattern.class);
intent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
+ intent.putExtra("confirm_credentials", false);
startActivity(intent);
finish();
}
diff --git a/src/com/android/settings/ChooseLockPatternTutorial.java b/src/com/android/settings/ChooseLockPatternTutorial.java
index ee0019f..e699abf 100644
--- a/src/com/android/settings/ChooseLockPatternTutorial.java
+++ b/src/com/android/settings/ChooseLockPatternTutorial.java
@@ -35,6 +35,7 @@
if (savedInstanceState == null && lockPatternUtils.isPatternEverChosen()) {
Intent intent = new Intent(this, ChooseLockPattern.class);
intent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
+ intent.putExtra("confirm_credentials", false);
startActivity(intent);
finish();
} else {
diff --git a/src/com/android/settings/ChooseLockSettingsHelper.java b/src/com/android/settings/ChooseLockSettingsHelper.java
index ba83f8e..abcfc05 100644
--- a/src/com/android/settings/ChooseLockSettingsHelper.java
+++ b/src/com/android/settings/ChooseLockSettingsHelper.java
@@ -52,6 +52,7 @@
case DevicePolicyManager.PASSWORD_QUALITY_NUMERIC:
case DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC:
case DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC:
+ case DevicePolicyManager.PASSWORD_QUALITY_COMPLEX:
// TODO: update UI layout for ConfirmPassword to show message and details
launched = confirmPassword(request);
break;
diff --git a/src/com/android/settings/ConfirmLockPassword.java b/src/com/android/settings/ConfirmLockPassword.java
index 6bc135b..0e893fa 100644
--- a/src/com/android/settings/ConfirmLockPassword.java
+++ b/src/com/android/settings/ConfirmLockPassword.java
@@ -65,7 +65,8 @@
mKeyboardView = (PasswordEntryKeyboardView) findViewById(R.id.keyboard);
mHeaderText = (TextView) findViewById(R.id.headerText);
final boolean isAlpha = DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC == storedQuality
- || DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC == storedQuality;
+ || DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC == storedQuality
+ || DevicePolicyManager.PASSWORD_QUALITY_COMPLEX == storedQuality;
mHeaderText.setText(isAlpha ? R.string.lockpassword_confirm_your_password_header
: R.string.lockpassword_confirm_your_pin_header);
mKeyboardHelper = new PasswordEntryKeyboardHelper(this, mKeyboardView, mPasswordEntry);
diff --git a/src/com/android/settings/ConfirmLockPattern.java b/src/com/android/settings/ConfirmLockPattern.java
index eb9a4d8..8d44875 100644
--- a/src/com/android/settings/ConfirmLockPattern.java
+++ b/src/com/android/settings/ConfirmLockPattern.java
@@ -144,6 +144,11 @@
long deadline = mLockPatternUtils.getLockoutAttemptDeadline();
if (deadline != 0) {
handleAttemptLockout(deadline);
+ } else if (!mLockPatternView.isEnabled()) {
+ // The deadline has passed, but the timer was cancelled...
+ // Need to clean up.
+ mNumWrongConfirmAttempts = 0;
+ updateStage(Stage.NeedToUnlock);
}
}
diff --git a/src/com/android/settings/LanguageSettings.java b/src/com/android/settings/LanguageSettings.java
index 1252eec..6036ac3 100644
--- a/src/com/android/settings/LanguageSettings.java
+++ b/src/com/android/settings/LanguageSettings.java
@@ -44,6 +44,8 @@
public class LanguageSettings extends PreferenceActivity {
private static final String KEY_PHONE_LANGUAGE = "phone_language";
+ private static final String KEY_INPUT_METHOD = "input_method";
+
private boolean mHaveHardKeyboard;
private List<InputMethodInfo> mInputMethodProperties;
@@ -290,7 +292,10 @@
mLastTickedInputMethodId = null;
}
} else if (preference instanceof PreferenceScreen) {
- if (preference.getIntent() == null) {
+ if (KEY_INPUT_METHOD.equals(preference.getKey())) {
+ InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
+ imm.showInputMethodPicker();
+ } else if (preference.getIntent() == null) {
PreferenceScreen pref = (PreferenceScreen) preference;
String activityName = pref.getKey();
String packageName = activityName.substring(0, activityName
diff --git a/src/com/android/settings/LocalePicker.java b/src/com/android/settings/LocalePicker.java
index dcd6141..f669712 100644
--- a/src/com/android/settings/LocalePicker.java
+++ b/src/com/android/settings/LocalePicker.java
@@ -16,176 +16,13 @@
package com.android.settings;
-import android.app.ActivityManagerNative;
-import android.app.IActivityManager;
-import android.app.ListActivity;
-import android.app.backup.BackupManager;
-import android.content.res.Configuration;
+import android.app.Activity;
import android.os.Bundle;
-import android.os.RemoteException;
-import android.os.SystemProperties;
-import android.util.Log;
-import android.view.View;
-import android.widget.ArrayAdapter;
-import android.widget.ListView;
-import java.io.BufferedWriter;
-import java.io.FileOutputStream;
-import java.text.Collator;
-import java.util.Arrays;
-import java.util.Locale;
-
-public class LocalePicker extends ListActivity {
- private static final String TAG = "LocalePicker";
- private static final boolean DEBUG = false;
-
- Loc[] mLocales;
- String[] mSpecialLocaleCodes;
- String[] mSpecialLocaleNames;
-
- private static class Loc implements Comparable {
- static Collator sCollator = Collator.getInstance();
-
- String label;
- Locale locale;
-
- public Loc(String label, Locale locale) {
- this.label = label;
- this.locale = locale;
- }
-
- @Override
- public String toString() {
- return this.label;
- }
-
- public int compareTo(Object o) {
- return sCollator.compare(this.label, ((Loc) o).label);
- }
- }
-
- int getContentView() {
- return R.layout.locale_picker;
- }
-
+public class LocalePicker extends Activity {
@Override
- public void onCreate(Bundle icicle) {
- super.onCreate(icicle);
- setContentView(getContentView());
-
- mSpecialLocaleCodes = getResources().getStringArray(R.array.special_locale_codes);
- mSpecialLocaleNames = getResources().getStringArray(R.array.special_locale_names);
-
- String[] locales = getAssets().getLocales();
- Arrays.sort(locales);
-
- final int origSize = locales.length;
- Loc[] preprocess = new Loc[origSize];
- int finalSize = 0;
- for (int i = 0 ; i < origSize; i++ ) {
- String s = locales[i];
- int len = s.length();
- if (len == 5) {
- String language = s.substring(0, 2);
- String country = s.substring(3, 5);
- Locale l = new Locale(language, country);
-
- if (finalSize == 0) {
- if (DEBUG) {
- Log.v(TAG, "adding initial "+ toTitleCase(l.getDisplayLanguage(l)));
- }
- preprocess[finalSize++] =
- new Loc(toTitleCase(l.getDisplayLanguage(l)), l);
- } else {
- // check previous entry:
- // same lang and a country -> upgrade to full name and
- // insert ours with full name
- // diff lang -> insert ours with lang-only name
- if (preprocess[finalSize-1].locale.getLanguage().equals(
- language)) {
- if (DEBUG) {
- Log.v(TAG, "backing up and fixing "+
- preprocess[finalSize-1].label+" to "+
- getDisplayName(preprocess[finalSize-1].locale));
- }
- preprocess[finalSize-1].label = toTitleCase(
- getDisplayName(preprocess[finalSize-1].locale));
- if (DEBUG) {
- Log.v(TAG, " and adding "+ toTitleCase(getDisplayName(l)));
- }
- preprocess[finalSize++] =
- new Loc(toTitleCase(getDisplayName(l)), l);
- } else {
- String displayName;
- if (s.equals("zz_ZZ")) {
- displayName = "Pseudo...";
- } else {
- displayName = toTitleCase(l.getDisplayLanguage(l));
- }
- if (DEBUG) {
- Log.v(TAG, "adding "+displayName);
- }
- preprocess[finalSize++] = new Loc(displayName, l);
- }
- }
- }
- }
- mLocales = new Loc[finalSize];
- for (int i = 0; i < finalSize ; i++) {
- mLocales[i] = preprocess[i];
- }
- Arrays.sort(mLocales);
- int layoutId = R.layout.locale_picker_item;
- int fieldId = R.id.locale;
- ArrayAdapter<Loc> adapter =
- new ArrayAdapter<Loc>(this, layoutId, fieldId, mLocales);
- getListView().setAdapter(adapter);
- }
-
- private static String toTitleCase(String s) {
- if (s.length() == 0) {
- return s;
- }
-
- return Character.toUpperCase(s.charAt(0)) + s.substring(1);
- }
-
- private String getDisplayName(Locale l) {
- String code = l.toString();
-
- for (int i = 0; i < mSpecialLocaleCodes.length; i++) {
- if (mSpecialLocaleCodes[i].equals(code)) {
- return mSpecialLocaleNames[i];
- }
- }
-
- return l.getDisplayName(l);
- }
-
- @Override
- public void onResume() {
- super.onResume();
- getListView().requestFocus();
- }
-
- @Override
- protected void onListItemClick(ListView l, View v, int position, long id) {
- try {
- IActivityManager am = ActivityManagerNative.getDefault();
- Configuration config = am.getConfiguration();
-
- Loc loc = mLocales[position];
- config.locale = loc.locale;
-
- // indicate this isn't some passing default - the user wants this remembered
- config.userSetLocale = true;
-
- am.updateConfiguration(config);
- // Trigger the dirty bit for the Settings Provider.
- BackupManager.dataChanged("com.android.providers.settings");
- } catch (RemoteException e) {
- // Intentionally left blank
- }
- finish();
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.locale_picker);
}
}
diff --git a/src/com/android/settings/LocalePickerFragment.java b/src/com/android/settings/LocalePickerFragment.java
new file mode 100644
index 0000000..08f43d8
--- /dev/null
+++ b/src/com/android/settings/LocalePickerFragment.java
@@ -0,0 +1,193 @@
+/*
+ * Copyright (C) 2010 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.
+ */
+
+package com.android.settings;
+
+import android.app.Activity;
+import android.app.ActivityManagerNative;
+import android.app.IActivityManager;
+import android.app.ListFragment;
+import android.app.backup.BackupManager;
+import android.content.res.Configuration;
+import android.content.res.Resources;
+import android.os.Bundle;
+import android.os.RemoteException;
+import android.util.Log;
+import android.view.View;
+import android.widget.ArrayAdapter;
+import android.widget.ListView;
+
+import java.text.Collator;
+import java.util.Arrays;
+import java.util.Locale;
+
+public class LocalePickerFragment extends ListFragment {
+ private static final String TAG = "LocalePickerFragment";
+ private static final boolean DEBUG = false;
+
+ Loc[] mLocales;
+ String[] mSpecialLocaleCodes;
+ String[] mSpecialLocaleNames;
+
+ Activity mActivity;
+
+ private static class Loc implements Comparable<Loc> {
+ static Collator sCollator = Collator.getInstance();
+
+ String label;
+ Locale locale;
+
+ public Loc(String label, Locale locale) {
+ this.label = label;
+ this.locale = locale;
+ }
+
+ @Override
+ public String toString() {
+ return this.label;
+ }
+
+ @Override
+ public int compareTo(Loc another) {
+ return sCollator.compare(this.label, another.label);
+ }
+ }
+
+ private void setUpLocaleList() {
+ final Resources resources = mActivity.getResources();
+ mSpecialLocaleCodes = resources.getStringArray(R.array.special_locale_codes);
+ mSpecialLocaleNames = resources.getStringArray(R.array.special_locale_names);
+
+ final String[] locales = mActivity.getAssets().getLocales();
+ Arrays.sort(locales);
+ final int origSize = locales.length;
+ Loc[] preprocess = new Loc[origSize];
+ int finalSize = 0;
+ for (int i = 0 ; i < origSize; i++ ) {
+ String s = locales[i];
+ int len = s.length();
+ if (len == 5) {
+ String language = s.substring(0, 2);
+ String country = s.substring(3, 5);
+ Locale l = new Locale(language, country);
+
+ if (finalSize == 0) {
+ if (DEBUG) {
+ Log.v(TAG, "adding initial "+ toTitleCase(l.getDisplayLanguage(l)));
+ }
+ preprocess[finalSize++] =
+ new Loc(toTitleCase(l.getDisplayLanguage(l)), l);
+ } else {
+ // check previous entry:
+ // same lang and a country -> upgrade to full name and
+ // insert ours with full name
+ // diff lang -> insert ours with lang-only name
+ if (preprocess[finalSize-1].locale.getLanguage().equals(
+ language)) {
+ if (DEBUG) {
+ Log.v(TAG, "backing up and fixing "+
+ preprocess[finalSize-1].label+" to "+
+ getDisplayName(preprocess[finalSize-1].locale));
+ }
+ preprocess[finalSize-1].label = toTitleCase(
+ getDisplayName(preprocess[finalSize-1].locale));
+ if (DEBUG) {
+ Log.v(TAG, " and adding "+ toTitleCase(getDisplayName(l)));
+ }
+ preprocess[finalSize++] =
+ new Loc(toTitleCase(getDisplayName(l)), l);
+ } else {
+ String displayName;
+ if (s.equals("zz_ZZ")) {
+ displayName = "Pseudo...";
+ } else {
+ displayName = toTitleCase(l.getDisplayLanguage(l));
+ }
+ if (DEBUG) {
+ Log.v(TAG, "adding "+displayName);
+ }
+ preprocess[finalSize++] = new Loc(displayName, l);
+ }
+ }
+ }
+ }
+ mLocales = new Loc[finalSize];
+ for (int i = 0; i < finalSize ; i++) {
+ mLocales[i] = preprocess[i];
+ }
+ Arrays.sort(mLocales);
+ final int layoutId = R.layout.locale_picker_item;
+ final int fieldId = R.id.locale;
+ final ArrayAdapter<Loc> adapter =
+ new ArrayAdapter<Loc>(mActivity, layoutId, fieldId, mLocales);
+ setListAdapter(adapter);
+ }
+
+ @Override
+ public void onActivityCreated(final Bundle savedInstanceState) {
+ super.onActivityCreated(savedInstanceState);
+ mActivity = getActivity();
+ setUpLocaleList();
+ }
+
+ private static String toTitleCase(String s) {
+ if (s.length() == 0) {
+ return s;
+ }
+
+ return Character.toUpperCase(s.charAt(0)) + s.substring(1);
+ }
+
+ private String getDisplayName(Locale l) {
+ String code = l.toString();
+
+ for (int i = 0; i < mSpecialLocaleCodes.length; i++) {
+ if (mSpecialLocaleCodes[i].equals(code)) {
+ return mSpecialLocaleNames[i];
+ }
+ }
+
+ return l.getDisplayName(l);
+ }
+
+ @Override
+ public void onResume() {
+ super.onResume();
+ getListView().requestFocus();
+ }
+
+ @Override
+ public void onListItemClick(ListView l, View v, int position, long id) {
+ try {
+ IActivityManager am = ActivityManagerNative.getDefault();
+ Configuration config = am.getConfiguration();
+
+ Loc loc = mLocales[position];
+ config.locale = loc.locale;
+
+ // indicate this isn't some passing default - the user wants this remembered
+ config.userSetLocale = true;
+
+ am.updateConfiguration(config);
+ // Trigger the dirty bit for the Settings Provider.
+ BackupManager.dataChanged("com.android.providers.settings");
+ } catch (RemoteException e) {
+ // Intentionally left blank
+ }
+
+ mActivity.finish();
+ }
+}
\ No newline at end of file
diff --git a/src/com/android/settings/LocalePickerInSetupWizard.java b/src/com/android/settings/LocalePickerInSetupWizard.java
deleted file mode 100644
index b160e89..0000000
--- a/src/com/android/settings/LocalePickerInSetupWizard.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2007 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.
- */
-
-package com.android.settings;
-
-import android.app.ActivityManagerNative;
-import android.app.IActivityManager;
-import android.app.ListActivity;
-import android.content.res.Configuration;
-import android.os.Bundle;
-import android.os.RemoteException;
-import android.os.SystemProperties;
-import android.util.Log;
-import android.view.View;
-import android.widget.ArrayAdapter;
-import android.widget.ListView;
-
-import java.io.BufferedWriter;
-import java.io.FileOutputStream;
-import java.util.Arrays;
-import java.util.Locale;
-
-public class LocalePickerInSetupWizard extends LocalePicker {
-
- @Override
- int getContentView() {
- return R.layout.locale_picker_in_setupwizard;
- }
-
-}
diff --git a/src/com/android/settings/ProxySelector.java b/src/com/android/settings/ProxySelector.java
index 66c81c6..9e19600 100644
--- a/src/com/android/settings/ProxySelector.java
+++ b/src/com/android/settings/ProxySelector.java
@@ -18,8 +18,10 @@
import android.app.Activity;
import android.app.AlertDialog;
+import android.app.admin.DevicePolicyManager;
import android.app.Dialog;
import android.content.ContentResolver;
+import android.content.Context;
import android.content.Intent;
import android.net.Proxy;
import android.os.Bundle;
@@ -28,6 +30,7 @@
import android.text.Spannable;
import android.text.TextUtils;
import android.util.Log;
+import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnFocusChangeListener;
@@ -62,16 +65,24 @@
public class ProxySelector extends Activity
{
private final static String LOGTAG = "Settings";
+ private View mInitialView;
+ private LayoutInflater mInflater;
+ boolean mUserSetGlobalProxy;
EditText mHostnameField;
EditText mPortField;
+ EditText mExclusionListField;
Button mOKButton;
+ DevicePolicyManager mDPM;
// Matches blank input, ips, and domain names
private static final String HOSTNAME_REGEXP = "^$|^[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*(\\.[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*)*$";
private static final Pattern HOSTNAME_PATTERN;
+ private static final String EXCLLIST_REGEXP = "$|^(.?[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*(\\.[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*)*)+(,(.?[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*(\\.[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*)*))*$";
+ private static final Pattern EXCLLIST_PATTERN;
static {
HOSTNAME_PATTERN = Pattern.compile(HOSTNAME_REGEXP);
+ EXCLLIST_PATTERN = Pattern.compile(EXCLLIST_REGEXP);
}
private static final int ERROR_DIALOG_ID = 0;
@@ -81,8 +92,16 @@
if (android.util.Config.LOGV) Log.v(LOGTAG, "[ProxySelector] onStart");
- setContentView(R.layout.proxy);
+ mInflater = LayoutInflater.from(this);
+ if (mInitialView == null) {
+ mInitialView = mInflater.inflate(R.layout.proxy, null);
+ }
+ mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);
+ mUserSetGlobalProxy = (mDPM.getGlobalProxyAdmin() == null);
+
+ setContentView(mInitialView);
initView();
+ // TODO: Populate based on connection status
populateFields(false);
}
@@ -91,7 +110,8 @@
if (id == ERROR_DIALOG_ID) {
String hostname = mHostnameField.getText().toString().trim();
String portStr = mPortField.getText().toString().trim();
- String msg = getString(validate(hostname, portStr));
+ String exclList = mExclusionListField.getText().toString().trim();
+ String msg = getString(validate(hostname, portStr, exclList));
return new AlertDialog.Builder(this)
.setTitle(R.string.proxy_error)
@@ -109,7 +129,8 @@
if (id == ERROR_DIALOG_ID) {
String hostname = mHostnameField.getText().toString().trim();
String portStr = mPortField.getText().toString().trim();
- String msg = getString(validate(hostname, portStr));
+ String exclList = mExclusionListField.getText().toString().trim();
+ String msg = getString(validate(hostname, portStr, exclList));
((AlertDialog)dialog).setMessage(msg);
}
}
@@ -123,27 +144,41 @@
mPortField.setOnClickListener(mOKHandler);
mPortField.setOnFocusChangeListener(mOnFocusChangeHandler);
+ mExclusionListField = (EditText)findViewById(R.id.exclusionlist);
+ mExclusionListField.setOnFocusChangeListener(mOnFocusChangeHandler);
+
mOKButton = (Button)findViewById(R.id.action);
mOKButton.setOnClickListener(mOKHandler);
- Button b = (Button)findViewById(R.id.clear);
- b.setOnClickListener(mClearHandler);
+ Button clearButton = (Button)findViewById(R.id.clear);
+ clearButton.setOnClickListener(mClearHandler);
- b = (Button)findViewById(R.id.defaultView);
- b.setOnClickListener(mDefaultHandler);
- }
+ Button defButton = (Button)findViewById(R.id.defaultView);
+ defButton.setOnClickListener(mDefaultHandler);
+
+ // Disable UI if the Global Proxy is being controlled by a Device Admin
+ mHostnameField.setEnabled(mUserSetGlobalProxy);
+ mPortField.setEnabled(mUserSetGlobalProxy);
+ mExclusionListField.setEnabled(mUserSetGlobalProxy);
+ mOKButton.setEnabled(mUserSetGlobalProxy);
+ clearButton.setEnabled(mUserSetGlobalProxy);
+ defButton.setEnabled(mUserSetGlobalProxy);
+}
void populateFields(boolean useDefault) {
String hostname = null;
int port = -1;
+ String exclList = null;
if (useDefault) {
// Use the default proxy settings provided by the carrier
hostname = Proxy.getDefaultHost();
port = Proxy.getDefaultPort();
} else {
// Use the last setting given by the user
+ ContentResolver res = getContentResolver();
hostname = Proxy.getHost(this);
port = Proxy.getPort(this);
+ exclList = Settings.Secure.getString(res, Settings.Secure.HTTP_PROXY_EXCLUSION_LIST);
}
if (hostname == null) {
@@ -155,6 +190,8 @@
String portStr = port == -1 ? "" : Integer.toString(port);
mPortField.setText(portStr);
+ mExclusionListField.setText(exclList);
+
Intent intent = getIntent();
String buttonLabel = intent.getStringExtra("button-label");
@@ -172,11 +209,14 @@
* validate syntax of hostname and port entries
* @return 0 on success, string resource ID on failure
*/
- int validate(String hostname, String port) {
+ int validate(String hostname, String port, String exclList) {
Matcher match = HOSTNAME_PATTERN.matcher(hostname);
+ Matcher listMatch = EXCLLIST_PATTERN.matcher(exclList);
if (!match.matches()) return R.string.proxy_error_invalid_host;
+ if (!listMatch.matches()) return R.string.proxy_error_invalid_exclusion_list;
+
if (hostname.length() > 0 && port.length() == 0) {
return R.string.proxy_error_empty_port;
}
@@ -205,9 +245,10 @@
String hostname = mHostnameField.getText().toString().trim();
String portStr = mPortField.getText().toString().trim();
+ String exclList = mExclusionListField.getText().toString().trim();
int port = -1;
- int result = validate(hostname, portStr);
+ int result = validate(hostname, portStr, exclList);
if (result > 0) {
showDialog(ERROR_DIALOG_ID);
return false;
@@ -244,6 +285,7 @@
hostname += ':' + portStr;
}
Settings.Secure.putString(res, Settings.Secure.HTTP_PROXY, hostname);
+ Settings.Secure.putString(res, Settings.Secure.HTTP_PROXY_EXCLUSION_LIST, exclList);
sendBroadcast(new Intent(Proxy.PROXY_CHANGE_ACTION));
return true;
@@ -261,12 +303,14 @@
public void onClick(View v) {
mHostnameField.setText("");
mPortField.setText("");
+ mExclusionListField.setText("");
}
};
OnClickListener mDefaultHandler = new OnClickListener() {
public void onClick(View v) {
- populateFields(true);
+ // TODO: populate based on connection status
+ populateFields(false);
}
};
diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java
index 454ea60..f86af91 100644
--- a/src/com/android/settings/SecuritySettings.java
+++ b/src/com/android/settings/SecuritySettings.java
@@ -151,6 +151,7 @@
break;
case DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC:
case DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC:
+ case DevicePolicyManager.PASSWORD_QUALITY_COMPLEX:
addPreferencesFromResource(R.xml.security_settings_password);
break;
}
diff --git a/src/com/android/settings/TetherSettings.java b/src/com/android/settings/TetherSettings.java
index b924571..22377ab 100644
--- a/src/com/android/settings/TetherSettings.java
+++ b/src/com/android/settings/TetherSettings.java
@@ -82,7 +82,7 @@
(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
mUsbRegexs = cm.getTetherableUsbRegexs();
- if (mUsbRegexs.length == 0) {
+ if (mUsbRegexs.length == 0 || Utils.isMonkeyRunning()) {
getPreferenceScreen().removePreference(mUsbTether);
setTitle(R.string.tether_settings_title_wifi);
diff --git a/src/com/android/settings/UserDictionarySettings.java b/src/com/android/settings/UserDictionarySettings.java
index 6ffcb3d..8791e65 100644
--- a/src/com/android/settings/UserDictionarySettings.java
+++ b/src/com/android/settings/UserDictionarySettings.java
@@ -251,7 +251,9 @@
// TODO: present UI for picking whether to add word to all locales, or current.
UserDictionary.Words.addWord(this, word.toString(),
250, UserDictionary.Words.LOCALE_TYPE_ALL);
- mCursor.requery();
+ if (!mCursor.requery()) {
+ throw new IllegalStateException("can't requery on already-closed cursor.");
+ }
mAddedWordAlready = true;
}
diff --git a/src/com/android/settings/WirelessSettings.java b/src/com/android/settings/WirelessSettings.java
index 78cf8cf..853fe85 100644
--- a/src/com/android/settings/WirelessSettings.java
+++ b/src/com/android/settings/WirelessSettings.java
@@ -16,6 +16,7 @@
package com.android.settings;
+import android.app.admin.DevicePolicyManager;
import android.bluetooth.BluetoothAdapter;
import android.content.Context;
import android.content.Intent;
@@ -45,6 +46,7 @@
private static final String KEY_BT_SETTINGS = "bt_settings";
private static final String KEY_VPN_SETTINGS = "vpn_settings";
private static final String KEY_TETHER_SETTINGS = "tether_settings";
+ private static final String KEY_PROXY_SETTINGS = "proxy_settings";
public static final String EXIT_ECM_RESULT = "exit_ecm_result";
public static final int REQUEST_CODE_EXIT_ECM = 1;
@@ -118,6 +120,11 @@
findPreference(KEY_BT_SETTINGS).setEnabled(false);
}
+ // Enable Proxy selector settings if allowed.
+ Preference mGlobalProxy = findPreference(KEY_PROXY_SETTINGS);
+ DevicePolicyManager mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);
+ mGlobalProxy.setEnabled(mDPM.getGlobalProxyAdmin() == null);
+
// Disable Tethering if it's not allowed
ConnectivityManager cm =
(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
diff --git a/src/com/android/settings/bluetooth/BluetoothEventRedirector.java b/src/com/android/settings/bluetooth/BluetoothEventRedirector.java
index dbdf6c1..dc8ab78 100644
--- a/src/com/android/settings/bluetooth/BluetoothEventRedirector.java
+++ b/src/com/android/settings/bluetooth/BluetoothEventRedirector.java
@@ -24,6 +24,7 @@
import android.bluetooth.BluetoothClass;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothHeadset;
+import android.bluetooth.BluetoothInputDevice;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
@@ -119,6 +120,19 @@
mManager.getCachedDeviceManager().onProfileStateChanged(device,
Profile.A2DP, newState);
+ } else if (action.equals(BluetoothInputDevice.ACTION_INPUT_DEVICE_STATE_CHANGED)) {
+ final int newState = intent.getIntExtra(
+ BluetoothInputDevice.EXTRA_INPUT_DEVICE_STATE, 0);
+ final int oldState = intent.getIntExtra(
+ BluetoothInputDevice.EXTRA_PREVIOUS_INPUT_DEVICE_STATE, 0);
+ if (newState == BluetoothInputDevice.STATE_DISCONNECTED &&
+ oldState == BluetoothInputDevice.STATE_CONNECTING) {
+ Log.i(TAG, "Failed to connect BT HID");
+ }
+
+ mManager.getCachedDeviceManager().onProfileStateChanged(device,
+ Profile.HID, newState);
+
} else if (action.equals(BluetoothDevice.ACTION_CLASS_CHANGED)) {
mManager.getCachedDeviceManager().onBtClassChanged(device);
diff --git a/src/com/android/settings/bluetooth/CachedBluetoothDevice.java b/src/com/android/settings/bluetooth/CachedBluetoothDevice.java
index b78427b..bdaffca 100644
--- a/src/com/android/settings/bluetooth/CachedBluetoothDevice.java
+++ b/src/com/android/settings/bluetooth/CachedBluetoothDevice.java
@@ -559,6 +559,12 @@
Log.v(TAG, "opp classbits != uuid");
printUuids = true;
}
+
+ if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_HID) !=
+ mProfiles.contains(Profile.HID)) {
+ Log.v(TAG, "hid classbits != uuid");
+ printUuids = true;
+ }
}
if (printUuids) {
@@ -648,7 +654,10 @@
* @return A one-off summary that is applicable for the current state, or 0.
*/
private int getOneOffSummary() {
- boolean isA2dpConnected = false, isHeadsetConnected = false, isConnecting = false;
+ boolean isA2dpConnected = false;
+ boolean isHeadsetConnected = false;
+ boolean isHidConnected = false;
+ boolean isConnecting = false;
if (mProfiles.contains(Profile.A2DP)) {
LocalBluetoothProfileManager profileManager = LocalBluetoothProfileManager
@@ -666,6 +675,14 @@
isHeadsetConnected = profileManager.isConnected(mDevice);
}
+ if (mProfiles.contains(Profile.HID)) {
+ LocalBluetoothProfileManager profileManager = LocalBluetoothProfileManager
+ .getProfileManager(mLocalManager, Profile.HID);
+ isConnecting |= profileManager.getConnectionStatus(mDevice) ==
+ SettingsBtStatus.CONNECTION_STATUS_CONNECTING;
+ isHidConnected = profileManager.isConnected(mDevice);
+ }
+
if (isConnecting) {
// If any of these important profiles is connecting, prefer that
return SettingsBtStatus.getConnectionStatusSummary(
@@ -676,6 +693,8 @@
return R.string.bluetooth_summary_connected_to_a2dp;
} else if (isHeadsetConnected) {
return R.string.bluetooth_summary_connected_to_headset;
+ } else if (isHidConnected) {
+ return R.string.bluetooth_summary_connected_to_hid;
} else {
return 0;
}
@@ -692,7 +711,8 @@
}
private boolean isConnectableProfile(Profile profile) {
- return profile.equals(Profile.HEADSET) || profile.equals(Profile.A2DP);
+ return profile.equals(Profile.HEADSET) || profile.equals(Profile.A2DP) ||
+ profile.equals(Profile.HID);
}
public void onCreateContextMenu(ContextMenu menu) {
diff --git a/src/com/android/settings/bluetooth/ConnectSpecificProfilesActivity.java b/src/com/android/settings/bluetooth/ConnectSpecificProfilesActivity.java
index 2a8af5f..62c6f79 100644
--- a/src/com/android/settings/bluetooth/ConnectSpecificProfilesActivity.java
+++ b/src/com/android/settings/bluetooth/ConnectSpecificProfilesActivity.java
@@ -299,6 +299,8 @@
return R.string.bluetooth_a2dp_profile_summary_use_for;
case HEADSET:
return R.string.bluetooth_headset_profile_summary_use_for;
+ case HID:
+ return R.string.bluetooth_hid_profile_summary_use_for;
default:
return 0;
}
diff --git a/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java b/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java
index 01714fe..b09e144 100644
--- a/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java
+++ b/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java
@@ -21,6 +21,7 @@
import android.bluetooth.BluetoothA2dp;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothHeadset;
+import android.bluetooth.BluetoothInputDevice;
import android.bluetooth.BluetoothUuid;
import android.os.Handler;
import android.os.ParcelUuid;
@@ -55,6 +56,10 @@
BluetoothUuid.ObexObjectPush
};
+ /* package */ static final ParcelUuid[] HID_PROFILE_UUIDS = new ParcelUuid[] {
+ BluetoothUuid.Hid
+ };
+
/**
* An interface for notifying BluetoothHeadset IPC clients when they have
* been connected to the BluetoothHeadset service.
@@ -97,6 +102,9 @@
profileManager = new OppProfileManager(localManager);
sProfileMap.put(Profile.OPP, profileManager);
+
+ profileManager = new HidProfileManager(localManager);
+ sProfileMap.put(Profile.HID, profileManager);
}
}
}
@@ -161,6 +169,10 @@
if (BluetoothUuid.containsAnyUuid(uuids, OPP_PROFILE_UUIDS)) {
profiles.add(Profile.OPP);
}
+
+ if (BluetoothUuid.containsAnyUuid(uuids, HID_PROFILE_UUIDS)) {
+ profiles.add(Profile.HID);
+ }
}
protected LocalBluetoothProfileManager(LocalBluetoothManager localManager) {
@@ -195,7 +207,8 @@
public enum Profile {
HEADSET(R.string.bluetooth_profile_headset),
A2DP(R.string.bluetooth_profile_a2dp),
- OPP(R.string.bluetooth_profile_opp);
+ OPP(R.string.bluetooth_profile_opp),
+ HID(R.string.bluetooth_profile_hid);
public final int localizedString;
@@ -518,4 +531,86 @@
}
}
}
+
+ private static class HidProfileManager extends LocalBluetoothProfileManager {
+ private BluetoothInputDevice mService;
+
+ public HidProfileManager(LocalBluetoothManager localManager) {
+ super(localManager);
+ mService = new BluetoothInputDevice(localManager.getContext());
+ }
+
+ @Override
+ public boolean connect(BluetoothDevice device) {
+ return mService.connectInputDevice(device);
+ }
+
+ @Override
+ public int convertState(int hidState) {
+ switch (hidState) {
+ case BluetoothInputDevice.STATE_CONNECTED:
+ return SettingsBtStatus.CONNECTION_STATUS_CONNECTED;
+ case BluetoothInputDevice.STATE_CONNECTING:
+ return SettingsBtStatus.CONNECTION_STATUS_CONNECTING;
+ case BluetoothInputDevice.STATE_DISCONNECTED:
+ return SettingsBtStatus.CONNECTION_STATUS_DISCONNECTED;
+ case BluetoothInputDevice.STATE_DISCONNECTING:
+ return SettingsBtStatus.CONNECTION_STATUS_DISCONNECTING;
+ default:
+ return SettingsBtStatus.CONNECTION_STATUS_UNKNOWN;
+ }
+ }
+
+ @Override
+ public boolean disconnect(BluetoothDevice device) {
+ return mService.disconnectInputDevice(device);
+ }
+
+ @Override
+ public Set<BluetoothDevice> getConnectedDevices() {
+ return mService.getConnectedInputDevices();
+ }
+
+ @Override
+ public int getConnectionStatus(BluetoothDevice device) {
+ return convertState(mService.getInputDeviceState(device));
+ }
+
+ @Override
+ public int getPreferred(BluetoothDevice device) {
+ return mService.getInputDevicePriority(device);
+ }
+
+ @Override
+ public int getSummary(BluetoothDevice device) {
+ final int connectionStatus = getConnectionStatus(device);
+
+ if (SettingsBtStatus.isConnectionStatusConnected(connectionStatus)) {
+ return R.string.bluetooth_hid_profile_summary_connected;
+ } else {
+ return SettingsBtStatus.getConnectionStatusSummary(connectionStatus);
+ }
+ }
+
+ @Override
+ public boolean isPreferred(BluetoothDevice device) {
+ return mService.getInputDevicePriority(device) > BluetoothInputDevice.PRIORITY_OFF;
+ }
+
+ @Override
+ public boolean isProfileReady() {
+ return true;
+ }
+
+ @Override
+ public void setPreferred(BluetoothDevice device, boolean preferred) {
+ if (preferred) {
+ if (mService.getInputDevicePriority(device) < BluetoothInputDevice.PRIORITY_ON) {
+ mService.setInputDevicePriority(device, BluetoothInputDevice.PRIORITY_ON);
+ }
+ } else {
+ mService.setInputDevicePriority(device, BluetoothInputDevice.PRIORITY_OFF);
+ }
+ }
+ }
}
diff --git a/src/com/android/settings/wifi/WifiApDialog.java b/src/com/android/settings/wifi/WifiApDialog.java
index 43289d2..fde6efc 100644
--- a/src/com/android/settings/wifi/WifiApDialog.java
+++ b/src/com/android/settings/wifi/WifiApDialog.java
@@ -16,8 +16,6 @@
package com.android.settings.wifi;
-import com.android.settings.R;
-
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
@@ -28,16 +26,15 @@
import android.text.Editable;
import android.text.InputType;
import android.text.TextWatcher;
-import android.util.Log;
import android.view.View;
-import android.view.ViewGroup;
import android.widget.AdapterView;
-import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
+import com.android.settings.R;
+
/**
* Dialog to configure the SSID and security settings
* for Access Point operation
@@ -97,6 +94,7 @@
return null;
}
+ @Override
protected void onCreate(Bundle savedInstanceState) {
mView = getLayoutInflater().inflate(R.layout.wifi_ap_dialog, null);
@@ -167,7 +165,8 @@
validate();
}
- public void onItemSelected(AdapterView parent, View view, int position, long id) {
+ @Override
+ public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
if(position == OPEN_INDEX)
mSecurityType = AccessPoint.SECURITY_NONE;
else
@@ -176,7 +175,8 @@
validate();
}
- public void onNothingSelected(AdapterView parent) {
+ @Override
+ public void onNothingSelected(AdapterView<?> parent) {
}
private void showSecurityFields() {
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index d389cae..718b53e 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -24,6 +24,7 @@
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
+import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.NetworkInfo.DetailedState;
import android.net.wifi.ScanResult;
@@ -62,6 +63,9 @@
private static final int MENU_ID_FORGET = Menu.FIRST + 3;
private static final int MENU_ID_MODIFY = Menu.FIRST + 4;
+ // this boolean extra specifies whether to disable the Next button when not connected
+ private static final String EXTRA_ENABLE_NEXT_ON_CONNECT = "wifi_enable_next_on_connect";
+
private final IntentFilter mFilter;
private final BroadcastReceiver mReceiver;
private final Scanner mScanner;
@@ -74,20 +78,22 @@
private DetailedState mLastState;
private WifiInfo mLastInfo;
- private int mLastPriority;
- private boolean mResetNetworks = false;
private int mKeyStoreNetworkId = -1;
private AccessPoint mSelected;
private WifiDialog mDialog;
+ // should Next button only be enabled when we have a connection?
+ private boolean mEnableNextOnConnection;
+
public WifiSettings() {
mFilter = new IntentFilter();
mFilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
mFilter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
mFilter.addAction(WifiManager.NETWORK_IDS_CHANGED_ACTION);
mFilter.addAction(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION);
+ mFilter.addAction(WifiManager.SUPPLICANT_CONFIG_CHANGED_ACTION);
mFilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
mFilter.addAction(WifiManager.RSSI_CHANGED_ACTION);
@@ -107,6 +113,18 @@
mWifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
+ // if we're supposed to enable/disable the Next button based on our current connection
+ // state, start it off in the right state
+ mEnableNextOnConnection = getIntent().getBooleanExtra(EXTRA_ENABLE_NEXT_ON_CONNECT, false);
+ if (mEnableNextOnConnection && hasNextButton()) {
+ ConnectivityManager connectivity = (ConnectivityManager)
+ getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
+ if (connectivity != null) {
+ NetworkInfo info = connectivity.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
+ getNextButton().setEnabled(info.isConnected());
+ }
+ }
+
if (getIntent().getBooleanExtra("only_access_points", false)) {
addPreferencesFromResource(R.xml.wifi_access_points);
} else {
@@ -134,9 +152,10 @@
}
registerReceiver(mReceiver, mFilter);
if (mKeyStoreNetworkId != -1 && KeyStore.getInstance().test() == KeyStore.NO_ERROR) {
- connect(mKeyStoreNetworkId);
+ mWifiManager.connectNetwork(mKeyStoreNetworkId);
}
mKeyStoreNetworkId = -1;
+ updateAccessPoints();
}
@Override
@@ -151,9 +170,6 @@
mDialog.dismiss();
mDialog = null;
}
- if (mResetNetworks) {
- enableNetworks();
- }
}
@Override
@@ -211,22 +227,20 @@
case MENU_ID_CONNECT:
if (mSelected.networkId != -1) {
if (!requireKeyStore(mSelected.getConfig())) {
- connect(mSelected.networkId);
+ mWifiManager.connectNetwork(mSelected.networkId);
}
} else if (mSelected.security == AccessPoint.SECURITY_NONE) {
// Shortcut for open networks.
WifiConfiguration config = new WifiConfiguration();
config.SSID = AccessPoint.convertToQuotedString(mSelected.ssid);
config.allowedKeyManagement.set(KeyMgmt.NONE);
- int networkId = mWifiManager.addNetwork(config);
- mWifiManager.enableNetwork(networkId, false);
- connect(networkId);
+ mWifiManager.connectNetwork(config);
} else {
showDialog(mSelected, false);
}
return true;
case MENU_ID_FORGET:
- forget(mSelected.networkId);
+ mWifiManager.forgetNetwork(mSelected.networkId);
return true;
case MENU_ID_MODIFY:
showDialog(mSelected, true);
@@ -255,29 +269,23 @@
public void onClick(DialogInterface dialogInterface, int button) {
if (button == WifiDialog.BUTTON_FORGET && mSelected != null) {
- forget(mSelected.networkId);
+ mWifiManager.forgetNetwork(mSelected.networkId);
} else if (button == WifiDialog.BUTTON_SUBMIT && mDialog != null) {
WifiConfiguration config = mDialog.getConfig();
if (config == null) {
if (mSelected != null && !requireKeyStore(mSelected.getConfig())) {
- connect(mSelected.networkId);
+ mWifiManager.connectNetwork(mSelected.networkId);
}
} else if (config.networkId != -1) {
if (mSelected != null) {
- mWifiManager.updateNetwork(config);
- saveNetworks();
+ mWifiManager.saveNetwork(config);
}
} else {
- int networkId = mWifiManager.addNetwork(config);
- if (networkId != -1) {
- mWifiManager.enableNetwork(networkId, false);
- config.networkId = networkId;
- if (mDialog.edit || requireKeyStore(config)) {
- saveNetworks();
- } else {
- connect(networkId);
- }
+ if (mDialog.edit || requireKeyStore(config)) {
+ mWifiManager.saveNetwork(config);
+ } else {
+ mWifiManager.connectNetwork(config);
}
}
}
@@ -301,78 +309,12 @@
return false;
}
- private void forget(int networkId) {
- mWifiManager.removeNetwork(networkId);
- saveNetworks();
- }
-
- private void connect(int networkId) {
- if (networkId == -1) {
- return;
- }
-
- // Reset the priority of each network if it goes too high.
- if (mLastPriority > 1000000) {
- for (int i = mAccessPoints.getPreferenceCount() - 1; i >= 0; --i) {
- AccessPoint accessPoint = (AccessPoint) mAccessPoints.getPreference(i);
- if (accessPoint.networkId != -1) {
- WifiConfiguration config = new WifiConfiguration();
- config.networkId = accessPoint.networkId;
- config.priority = 0;
- mWifiManager.updateNetwork(config);
- }
- }
- mLastPriority = 0;
- }
-
- // Set to the highest priority and save the configuration.
- WifiConfiguration config = new WifiConfiguration();
- config.networkId = networkId;
- config.priority = ++mLastPriority;
- mWifiManager.updateNetwork(config);
- saveNetworks();
-
- // Connect to network by disabling others.
- mWifiManager.enableNetwork(networkId, true);
- mWifiManager.reconnect();
- mResetNetworks = true;
- }
-
- private void enableNetworks() {
- for (int i = mAccessPoints.getPreferenceCount() - 1; i >= 0; --i) {
- WifiConfiguration config = ((AccessPoint) mAccessPoints.getPreference(i)).getConfig();
- if (config != null && config.status != Status.ENABLED) {
- mWifiManager.enableNetwork(config.networkId, false);
- }
- }
- mResetNetworks = false;
- }
-
- private void saveNetworks() {
- // Always save the configuration with all networks enabled.
- enableNetworks();
- mWifiManager.saveConfiguration();
- updateAccessPoints();
- }
-
private void updateAccessPoints() {
List<AccessPoint> accessPoints = new ArrayList<AccessPoint>();
List<WifiConfiguration> configs = mWifiManager.getConfiguredNetworks();
if (configs != null) {
- mLastPriority = 0;
for (WifiConfiguration config : configs) {
- if (config.priority > mLastPriority) {
- mLastPriority = config.priority;
- }
-
- // Shift the status to make enableNetworks() more efficient.
- if (config.status == Status.CURRENT) {
- config.status = Status.ENABLED;
- } else if (mResetNetworks && config.status == Status.DISABLED) {
- config.status = Status.CURRENT;
- }
-
AccessPoint accessPoint = new AccessPoint(this, config);
accessPoint.update(mLastInfo, mLastState);
accessPoints.add(accessPoint);
@@ -411,19 +353,19 @@
if (WifiManager.WIFI_STATE_CHANGED_ACTION.equals(action)) {
updateWifiState(intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE,
WifiManager.WIFI_STATE_UNKNOWN));
- } else if (WifiManager.SCAN_RESULTS_AVAILABLE_ACTION.equals(action)) {
- updateAccessPoints();
- } else if (WifiManager.NETWORK_IDS_CHANGED_ACTION.equals(action)) {
- if (mSelected != null && mSelected.networkId != -1) {
- mSelected = null;
- }
+ } else if (WifiManager.SCAN_RESULTS_AVAILABLE_ACTION.equals(action) ||
+ WifiManager.SUPPLICANT_CONFIG_CHANGED_ACTION.equals(action)) {
updateAccessPoints();
} else if (WifiManager.SUPPLICANT_STATE_CHANGED_ACTION.equals(action)) {
updateConnectionState(WifiInfo.getDetailedStateOf((SupplicantState)
intent.getParcelableExtra(WifiManager.EXTRA_NEW_STATE)));
} else if (WifiManager.NETWORK_STATE_CHANGED_ACTION.equals(action)) {
- updateConnectionState(((NetworkInfo) intent.getParcelableExtra(
- WifiManager.EXTRA_NETWORK_INFO)).getDetailedState());
+ NetworkInfo info = (NetworkInfo) intent.getParcelableExtra(
+ WifiManager.EXTRA_NETWORK_INFO);
+ if (mEnableNextOnConnection && hasNextButton()) {
+ getNextButton().setEnabled(info.isConnected());
+ }
+ updateConnectionState(info.getDetailedState());
} else if (WifiManager.RSSI_CHANGED_ACTION.equals(action)) {
updateConnectionState(null);
}
@@ -450,18 +392,11 @@
for (int i = mAccessPoints.getPreferenceCount() - 1; i >= 0; --i) {
((AccessPoint) mAccessPoints.getPreference(i)).update(mLastInfo, mLastState);
}
-
- if (mResetNetworks && (state == DetailedState.CONNECTED ||
- state == DetailedState.DISCONNECTED || state == DetailedState.FAILED)) {
- updateAccessPoints();
- enableNetworks();
- }
}
private void updateWifiState(int state) {
if (state == WifiManager.WIFI_STATE_ENABLED) {
mScanner.resume();
- updateAccessPoints();
} else {
mScanner.pause();
mAccessPoints.removeAll();
@@ -494,7 +429,8 @@
return;
}
mAccessPoints.setProgress(mRetry != 0);
- sendEmptyMessageDelayed(0, 6000);
+ // Combo scans can take 5-6s to complete. Increase interval to 10s.
+ sendEmptyMessageDelayed(0, 10000);
}
}
}
diff --git a/tests/res/values-cs/strings.xml b/tests/res/values-cs/strings.xml
index 6a6855f..595df44 100644
--- a/tests/res/values-cs/strings.xml
+++ b/tests/res/values-cs/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Viditelné"</string>
<string name="start_scan" msgid="6035699220942169744">"Zahájit vyhledávání"</string>
<string name="stop_scan" msgid="527546916633745779">"Zastavit vyhledávání"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Ahoj operátore!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operátor"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Háček výrobce, který lze použít ke spuštění vybrané činnosti"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Ahoj výrobce!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Výrobce"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Háček výrobce, který lze použít ke spuštění vybrané činnosti"</string>
</resources>
diff --git a/tests/res/values-da/strings.xml b/tests/res/values-da/strings.xml
index f050a6d..b35af40 100644
--- a/tests/res/values-da/strings.xml
+++ b/tests/res/values-da/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Søgbar"</string>
<string name="start_scan" msgid="6035699220942169744">"Start scanning"</string>
<string name="stop_scan" msgid="527546916633745779">"Stop scanning"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Hej udbyder!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Udbyder"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Udbydergenvej, der kan bruges til at starte en aktivitet"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Hej producent!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Producent"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Producentgenvej, der kan bruges til at starte en aktivitet"</string>
</resources>
diff --git a/tests/res/values-de/strings.xml b/tests/res/values-de/strings.xml
index e6b624b..787a1d9 100644
--- a/tests/res/values-de/strings.xml
+++ b/tests/res/values-de/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Sichtbar"</string>
<string name="start_scan" msgid="6035699220942169744">"Scan starten"</string>
<string name="stop_scan" msgid="527546916633745779">"Scan stoppen"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Hallo Operator!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operator"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Aufhänger des Operators, mit dem eine gewünschte Aktivität gestartet werden kann"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Hallo Hersteller!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Hersteller"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Aufhänger des Herstellers, mit dem eine gewünschte Aktivität gestartet werden kann"</string>
</resources>
diff --git a/tests/res/values-el/strings.xml b/tests/res/values-el/strings.xml
index 58c9131..04e7134 100644
--- a/tests/res/values-el/strings.xml
+++ b/tests/res/values-el/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Ανιχνεύσιμο"</string>
<string name="start_scan" msgid="6035699220942169744">"Έναρξη σάρωσης"</string>
<string name="stop_scan" msgid="527546916633745779">"Διακοπή σάρωσης"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Γεια σου χειριστή!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Χειριστής"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Hook χειριστή που μπορεί να χρησιμοποιηθεί για την έναρξη της επιλεγμένης δραστηριότητας"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Γεια σου κατασκευαστή!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Κατασκευαστής"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Hook κατασκευαστή που μπορεί να χρησιμοποιηθεί για την έναρξη της επιλεγμένης δραστηριότητας"</string>
</resources>
diff --git a/tests/res/values-es-rUS/strings.xml b/tests/res/values-es-rUS/strings.xml
index 9af4411..8fa1745 100644
--- a/tests/res/values-es-rUS/strings.xml
+++ b/tests/res/values-es-rUS/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Visible"</string>
<string name="start_scan" msgid="6035699220942169744">"Comenzar lectura"</string>
<string name="stop_scan" msgid="527546916633745779">"Detener lectura"</string>
+ <string name="operator_hello" msgid="292208161864910159">"¡Hola operador!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operador"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Vínculo del operador que puede utilizarse para iniciar la actividad que elijas"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"¡Hola fabricante!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Fabricante"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Vínculo del fabricante que puede utilizarse para iniciar la actividad que elijas"</string>
</resources>
diff --git a/tests/res/values-es/strings.xml b/tests/res/values-es/strings.xml
index 59e26f7..0251e89 100644
--- a/tests/res/values-es/strings.xml
+++ b/tests/res/values-es/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Visible"</string>
<string name="start_scan" msgid="6035699220942169744">"Iniciar búsqueda"</string>
<string name="stop_scan" msgid="527546916633745779">"Detener búsqueda"</string>
+ <string name="operator_hello" msgid="292208161864910159">"¡Hola, operador!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operador"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Enlace del operador que se puede utilizar para iniciar la selección"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"¡Hola, fabricante!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Fabricante"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Enlace del fabricante que se puede utilizar para iniciar la selección"</string>
</resources>
diff --git a/tests/res/values-fr/strings.xml b/tests/res/values-fr/strings.xml
index 35dbfd8..215706f 100644
--- a/tests/res/values-fr/strings.xml
+++ b/tests/res/values-fr/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Identifiable"</string>
<string name="start_scan" msgid="6035699220942169744">"Démarrer la recherche"</string>
<string name="stop_scan" msgid="527546916633745779">"Arrêter la recherche"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Hello Operator!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Opérateur"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Accroche opérateur pouvant servir à démarrer l\'opération souhaitée"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Hello Manufacturer!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Fabricant"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Accroche fabricant pouvant servir à démarrer l\'opération souhaitée"</string>
</resources>
diff --git a/tests/res/values-it/strings.xml b/tests/res/values-it/strings.xml
index fb1516c..9603f17 100644
--- a/tests/res/values-it/strings.xml
+++ b/tests/res/values-it/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Rilevabile"</string>
<string name="start_scan" msgid="6035699220942169744">"Inizia scansione"</string>
<string name="stop_scan" msgid="527546916633745779">"Interrompi scansione"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Ciao operatore!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operatore"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Collegamento all\'operatore utilizzabile per avviare l\'attività di propria scelta"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Ciao produttore!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Produttore"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Collegamento al produttore utilizzabile per avviare l\'attività di propria scelta"</string>
</resources>
diff --git a/tests/res/values-ja/strings.xml b/tests/res/values-ja/strings.xml
index 8393110..b076771 100644
--- a/tests/res/values-ja/strings.xml
+++ b/tests/res/values-ja/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"検出可能"</string>
<string name="start_scan" msgid="6035699220942169744">"スキャンを開始"</string>
<string name="stop_scan" msgid="527546916633745779">"スキャンを停止"</string>
+ <string name="operator_hello" msgid="292208161864910159">"オペレーター"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"オペレーター"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"選択した操作を開始するためのオペレーターフック"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"メーカー"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"メーカー"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"選択した操作を開始するためのメーカーフック"</string>
</resources>
diff --git a/tests/res/values-ko/strings.xml b/tests/res/values-ko/strings.xml
index 31516c6..2fde7ac 100644
--- a/tests/res/values-ko/strings.xml
+++ b/tests/res/values-ko/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"검색 가능"</string>
<string name="start_scan" msgid="6035699220942169744">"검색 시작"</string>
<string name="stop_scan" msgid="527546916633745779">"검색 중지"</string>
+ <string name="operator_hello" msgid="292208161864910159">"운영자님, 안녕하세요."</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"운영자"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"선택한 활동을 시작하는 데 사용할 수 있는 운영자 판촉물"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"제조업자님, 안녕하세요."</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"제조업체"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"선택한 활동을 시작하는 데 사용할 수 있는 제조업체 판촉물"</string>
</resources>
diff --git a/tests/res/values-nb/strings.xml b/tests/res/values-nb/strings.xml
index c33b4ca..8e5629d 100644
--- a/tests/res/values-nb/strings.xml
+++ b/tests/res/values-nb/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Synlig"</string>
<string name="start_scan" msgid="6035699220942169744">"Start skanning"</string>
<string name="stop_scan" msgid="527546916633745779">"Stopp skanning"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Hallo operator!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operator"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Operatoraktivering som kan brukes til å starte en ønsket aktivitet"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Hallo produsent!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Produsent"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Produsentaktivering som kan brukes til å starte en ønsket aktivitet"</string>
</resources>
diff --git a/tests/res/values-nl/strings.xml b/tests/res/values-nl/strings.xml
index 970cf8a..3bd4ae0 100644
--- a/tests/res/values-nl/strings.xml
+++ b/tests/res/values-nl/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Vindbaar"</string>
<string name="start_scan" msgid="6035699220942169744">"Scan starten"</string>
<string name="stop_scan" msgid="527546916633745779">"Scan stoppen"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Hallo operator!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operator"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Hook van operator die kan worden gebruikt om de gewenste activiteit te starten"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Hallo fabrikant!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Fabrikant"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Hook van fabrikant die kan worden gebruikt om de gewenste activiteit te starten"</string>
</resources>
diff --git a/tests/res/values-pl/strings.xml b/tests/res/values-pl/strings.xml
index 151a1f3..81fc086 100644
--- a/tests/res/values-pl/strings.xml
+++ b/tests/res/values-pl/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Wykrywalny"</string>
<string name="start_scan" msgid="6035699220942169744">"Rozpocznij skanowanie"</string>
<string name="stop_scan" msgid="527546916633745779">"Zatrzymaj skanowanie"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Witaj operatorze!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operator"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Interfejs operatora umożliwiający uruchomienie wybranego działania"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Witaj producencie!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Producent"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Interfejs producenta umożliwiający uruchomienie wybranego działania"</string>
</resources>
diff --git a/tests/res/values-pt-rPT/strings.xml b/tests/res/values-pt-rPT/strings.xml
index 5b31f6f..bc84a85 100644
--- a/tests/res/values-pt-rPT/strings.xml
+++ b/tests/res/values-pt-rPT/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Detectável"</string>
<string name="start_scan" msgid="6035699220942169744">"Iniciar análise"</string>
<string name="stop_scan" msgid="527546916633745779">"Parar análise"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Olá Operador!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operador"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Símbolo do operador que pode ser utilizado para iniciar uma actividade à escolha"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Olá Fabricante!!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Fabricante"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Símbolo do fabricante que pode ser utilizado para iniciar uma actividade à escolha"</string>
</resources>
diff --git a/tests/res/values-pt/strings.xml b/tests/res/values-pt/strings.xml
index 2db3708..7373ea8 100644
--- a/tests/res/values-pt/strings.xml
+++ b/tests/res/values-pt/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Detectável"</string>
<string name="start_scan" msgid="6035699220942169744">"Iniciar verificação"</string>
<string name="stop_scan" msgid="527546916633745779">"Parar verificação"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Olá, operador!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operador"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Ferramenta do operador que pode ser usada para iniciar a atividade que você escolher"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Olá, fabricante!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Fabricante"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Ferramenta do fabricante que pode ser usada para iniciar a atividade que você escolher"</string>
</resources>
diff --git a/tests/res/values-ru/strings.xml b/tests/res/values-ru/strings.xml
index c0378b5..1cd6334 100644
--- a/tests/res/values-ru/strings.xml
+++ b/tests/res/values-ru/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Видимый"</string>
<string name="start_scan" msgid="6035699220942169744">"Начать поиск"</string>
<string name="stop_scan" msgid="527546916633745779">"Остановить поиск"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Привет, оператор!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Оператор"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Уловка оператора, побуждающая к совершению действия"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Привет, производитель!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Производитель"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Уловка производителя, побуждающая к совершению действия"</string>
</resources>
diff --git a/tests/res/values-sv/strings.xml b/tests/res/values-sv/strings.xml
index 0dce252..f06b188 100644
--- a/tests/res/values-sv/strings.xml
+++ b/tests/res/values-sv/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Synlighet"</string>
<string name="start_scan" msgid="6035699220942169744">"Starta sökning"</string>
<string name="stop_scan" msgid="527546916633745779">"Stoppa sökningen"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Hej operatör!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operatör"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Operatörsfunktion som kan användas för att starta en valfri aktivitet"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Hej tillverkare!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Tillverkare"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Tillverkarfunktion som kan användas för att starta en valfri aktivitet"</string>
</resources>
diff --git a/tests/res/values-tr/strings.xml b/tests/res/values-tr/strings.xml
index cd415e2..841943c 100644
--- a/tests/res/values-tr/strings.xml
+++ b/tests/res/values-tr/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"Keşfedilebilir"</string>
<string name="start_scan" msgid="6035699220942169744">"Taramayı başlat"</string>
<string name="stop_scan" msgid="527546916633745779">"Taramayı durdur"</string>
+ <string name="operator_hello" msgid="292208161864910159">"Merhaba Operatör!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"Operatör"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"Seçilen etkinliğin başlatılmasında kullanılabilen operatör kancası"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"Merhaba Üretici!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"Üretici"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"Seçilen etkinliğin başlatılmasında kullanılabilen üretici kancası"</string>
</resources>
diff --git a/tests/res/values-zh-rCN/strings.xml b/tests/res/values-zh-rCN/strings.xml
index d17ee92..186877d 100644
--- a/tests/res/values-zh-rCN/strings.xml
+++ b/tests/res/values-zh-rCN/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"可检测性"</string>
<string name="start_scan" msgid="6035699220942169744">"开始扫描"</string>
<string name="stop_scan" msgid="527546916633745779">"停止扫描"</string>
+ <string name="operator_hello" msgid="292208161864910159">"运营商,您好!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"运营商"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"可用于启动所选活动的运营商钩子"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"制造商,您好!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"制造商"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"可用于启动所选活动的制造商钩子"</string>
</resources>
diff --git a/tests/res/values-zh-rTW/strings.xml b/tests/res/values-zh-rTW/strings.xml
index d570132..d7ce5d8 100644
--- a/tests/res/values-zh-rTW/strings.xml
+++ b/tests/res/values-zh-rTW/strings.xml
@@ -19,4 +19,10 @@
<string name="discoverable" msgid="3169265480789026010">"可偵測性"</string>
<string name="start_scan" msgid="6035699220942169744">"開始掃瞄"</string>
<string name="stop_scan" msgid="527546916633745779">"停止掃瞄"</string>
+ <string name="operator_hello" msgid="292208161864910159">"電信業者您好!"</string>
+ <string name="operator_settings_title" msgid="1410094511974808567">"電信業者"</string>
+ <string name="operator_settings_summary" msgid="5916597343019392258">"可用來啟動所選活動的電信業者勾點"</string>
+ <string name="manufacturer_hello" msgid="7525744633645544137">"製造商您好!"</string>
+ <string name="manufacturer_settings_title" msgid="2503105049808838612">"製造商"</string>
+ <string name="manufacturer_settings_summary" msgid="766746044826063472">"可用來啟動所選活動的製造商勾點"</string>
</resources>