summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Android.mk2
-rw-r--r--AndroidManifest.xml64
-rwxr-xr-xres/drawable/border_item_thumbnail.pngbin0 -> 230 bytes
-rw-r--r--res/drawable/ic_bluetooth_connected.pngbin1581 -> 0 bytes
-rw-r--r--res/drawable/ic_bluetooth_discovered.pngbin1812 -> 0 bytes
-rw-r--r--res/drawable/ic_bluetooth_paired.pngbin1828 -> 0 bytes
-rw-r--r--res/drawable/ic_bluetooth_paired_not_nearby.pngbin1761 -> 0 bytes
-rwxr-xr-xres/drawable/ic_bt_cellphone.pngbin0 -> 810 bytes
-rwxr-xr-xres/drawable/ic_bt_headphones_a2dp.pngbin0 -> 742 bytes
-rw-r--r--res/drawable/ic_bt_headset_hfp.pngbin0 -> 737 bytes
-rwxr-xr-xres/drawable/ic_bt_laptop.pngbin0 -> 3226 bytes
-rw-r--r--res/drawable/ic_btn_finish.pngbin867 -> 0 bytes
-rw-r--r--res/drawable/ic_menu_scan_bluetooth.pngbin2284 -> 0 bytes
-rwxr-xr-xres/drawable/ic_wifi_lock_signal_0.pngbin1579 -> 0 bytes
-rwxr-xr-xres/drawable/ic_wifi_signal_0.pngbin1381 -> 0 bytes
-rw-r--r--res/layout/bluetooth_pin_entry.xml38
-rwxr-xr-xres/layout/compute_sizes.xml24
-rw-r--r--res/layout/installed_app_details.xml132
-rwxr-xr-xres/layout/manage_applications_item.xml39
-rw-r--r--res/layout/preference_bluetooth.xml56
-rw-r--r--res/layout/preference_dialog_ringervolume.xml71
-rw-r--r--res/layout/preference_progress_category.xml2
-rw-r--r--res/values-cs/strings.xml1322
-rw-r--r--res/values-de-rDE/strings.xml700
-rw-r--r--res/values-de/arrays.xml39
-rw-r--r--res/values-de/strings.xml729
-rw-r--r--res/values-en-rGB/strings.xml1256
-rw-r--r--res/values-es-rUS/strings.xml1577
-rw-r--r--res/values-fr-rFR/strings.xml700
-rw-r--r--res/values-it-rIT/strings.xml700
-rw-r--r--res/values-ja/arrays.xml39
-rw-r--r--res/values-ja/strings.xml729
-rw-r--r--res/values-nl-rNL/strings.xml1322
-rw-r--r--res/values-zh-rTW/strings.xml700
-rw-r--r--res/values/arrays.xml56
-rw-r--r--res/values/strings.xml1052
-rw-r--r--res/xml/application_settings.xml1
-rw-r--r--res/xml/bluetooth_device_advanced.xml36
-rw-r--r--res/xml/bluetooth_settings.xml50
-rw-r--r--res/xml/date_time_prefs.xml4
-rw-r--r--res/xml/development_prefs.xml5
-rw-r--r--res/xml/device_info_settings.xml7
-rw-r--r--res/xml/device_info_status.xml2
-rw-r--r--res/xml/input_methods_prefs.xml23
-rw-r--r--res/xml/ip_settings.xml16
-rw-r--r--res/xml/language_settings.xml10
-rw-r--r--res/xml/sound_and_display_settings.xml11
-rw-r--r--res/xml/wireless_settings.xml2
-rw-r--r--src/com/android/settings/AirplaneModeEnabler.java7
-rw-r--r--src/com/android/settings/ApnEditor.java10
-rw-r--r--src/com/android/settings/ApnSettings.java17
-rw-r--r--src/com/android/settings/ApplicationSettings.java15
-rw-r--r--src/com/android/settings/BatteryInfo.java2
-rw-r--r--src/com/android/settings/BluetoothDataEntry.java93
-rw-r--r--src/com/android/settings/BluetoothListItem.java72
-rw-r--r--src/com/android/settings/BluetoothPINEntry.java77
-rw-r--r--src/com/android/settings/BluetoothPinRequest.java80
-rw-r--r--src/com/android/settings/BluetoothSettings.java1035
-rw-r--r--src/com/android/settings/ChooseLockPattern.java16
-rw-r--r--src/com/android/settings/ChooseLockPatternExample.java14
-rw-r--r--src/com/android/settings/ChooseLockPatternTutorial.java19
-rw-r--r--src/com/android/settings/DateTimeSettings.java6
-rw-r--r--src/com/android/settings/DevelopmentSettings.java18
-rw-r--r--src/com/android/settings/DeviceInfoSettings.java5
-rw-r--r--src/com/android/settings/InputMethodsSettings.java191
-rw-r--r--src/com/android/settings/InstalledAppDetails.java315
-rw-r--r--src/com/android/settings/LocalePicker.java83
-rw-r--r--src/com/android/settings/ManageApplications.java1321
-rw-r--r--src/com/android/settings/ProxySelector.java2
-rw-r--r--src/com/android/settings/RadioInfo.java42
-rw-r--r--src/com/android/settings/RingerVolumePreference.java129
-rw-r--r--src/com/android/settings/SecuritySettings.java22
-rw-r--r--src/com/android/settings/SettingsLicenseActivity.java24
-rw-r--r--src/com/android/settings/SoundAndDisplaySettings.java39
-rw-r--r--src/com/android/settings/WirelessSettings.java146
-rw-r--r--src/com/android/settings/bluetooth/BluetoothDevicePreference.java122
-rw-r--r--src/com/android/settings/bluetooth/BluetoothDiscoverableEnabler.java192
-rw-r--r--src/com/android/settings/bluetooth/BluetoothEnabler.java149
-rw-r--r--src/com/android/settings/bluetooth/BluetoothEventRedirector.java159
-rw-r--r--src/com/android/settings/bluetooth/BluetoothNamePreference.java79
-rw-r--r--src/com/android/settings/bluetooth/BluetoothPinDialog.java112
-rw-r--r--src/com/android/settings/bluetooth/BluetoothPinRequest.java96
-rw-r--r--src/com/android/settings/bluetooth/BluetoothSettings.java258
-rw-r--r--src/com/android/settings/bluetooth/ConnectSpecificProfilesActivity.java297
-rw-r--r--src/com/android/settings/bluetooth/LocalBluetoothDevice.java558
-rw-r--r--src/com/android/settings/bluetooth/LocalBluetoothDeviceManager.java209
-rw-r--r--src/com/android/settings/bluetooth/LocalBluetoothManager.java260
-rw-r--r--src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java312
-rw-r--r--src/com/android/settings/bluetooth/SettingsBtStatus.java85
-rw-r--r--src/com/android/settings/deviceinfo/Memory.java28
-rw-r--r--src/com/android/settings/deviceinfo/Status.java6
-rw-r--r--src/com/android/settings/quicklaunch/QuickLaunchSettings.java2
-rw-r--r--src/com/android/settings/wifi/AccessPointDialog.java11
-rw-r--r--src/com/android/settings/wifi/AccessPointState.java16
-rw-r--r--src/com/android/settings/wifi/IpSettings.java86
-rw-r--r--src/com/android/settings/wifi/WifiLayer.java6
-rw-r--r--src/com/android/settings/wifi/WifiSettings.java10
97 files changed, 11369 insertions, 7000 deletions
diff --git a/Android.mk b/Android.mk
index dedda01..0955671 100644
--- a/Android.mk
+++ b/Android.mk
@@ -1,7 +1,7 @@
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
-LOCAL_MODULE_TAGS := user
+LOCAL_MODULE_TAGS := user development
LOCAL_SRC_FILES := $(call all-java-files-under, src)
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 7dece18..aed3252 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -5,9 +5,11 @@
<uses-permission android:name="com.google.android.providers.gmail.permission.WRITE_GMAIL" />
<uses-permission android:name="com.google.android.providers.gmail.permission.READ_GMAIL" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
+ <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.VIBRATE" />
+ <uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.HARDWARE_TEST" />
<uses-permission android:name="android.permission.CALL_PHONE" />
@@ -51,7 +53,9 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.WIRELESS_SETTINGS" />
+ <action android:name="android.settings.AIRPLANE_MODE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -65,6 +69,7 @@
<action android:name="android.settings.WIFI_SETTINGS" />
<action android:name="android.net.wifi.PICK_WIFI_NETWORK" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -72,6 +77,8 @@
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
+ <action android:name="android.settings.WIFI_IP_SETTINGS" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -81,16 +88,17 @@
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.APN_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
- <activity android:name="BluetoothSettings"
+ <activity android:name=".bluetooth.BluetoothSettings"
android:label="@string/bluetooth_settings_title"
- android:configChanges="keyboardHidden|orientation"
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.BLUETOOTH_SETTINGS" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -99,6 +107,7 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.DATE_SETTINGS" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -114,6 +123,7 @@
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.LOCALE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -131,6 +141,15 @@
</intent-filter>
</activity>
+ <activity android:name="InputMethodsSettings" android:icon="@drawable/app_settings"
+ android:label="@string/input_methods_settings_title"
+ android:theme="@android:style/Theme.NoTitleBar">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
+ </intent-filter>
+ </activity>
+
<activity android:name="SoundAndDisplaySettings" android:label="@string/sound_and_display_settings"
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
@@ -138,6 +157,7 @@
<action android:name="com.android.settings.SOUND_SETTINGS" />
<action android:name="com.android.settings.DISPLAY_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -146,6 +166,7 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -164,6 +185,7 @@
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.APPLICATION_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -171,8 +193,10 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.MANAGE_PACKAGE_STORAGE" />
+ <action android:name="android.settings.MANAGE_APPLICATIONS_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.MONKEY" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -180,6 +204,7 @@
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -190,6 +215,7 @@
<action android:name="android.settings.SECURITY_SETTINGS" />
<action android:name="android.settings.LOCATION_SOURCE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -199,6 +225,7 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -233,12 +260,13 @@
<activity android:name="ZoneList" android:label="@string/choose_timezone" />
- <activity android:name=".deviceinfo.Status" android:label="@string/device_status"
+ <activity android:name=".deviceinfo.Status" android:label="@string/device_status_activity_title"
android:process="com.android.phone"
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -246,7 +274,10 @@
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
+ <action android:name="android.settings.INTERNAL_STORAGE_SETTINGS" />
+ <action android:name="android.settings.MEMORY_CARD_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -275,12 +306,15 @@
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
+ <action android:name="com.android.settings.QUICK_LAUNCH_SETTINGS" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
<activity android:name=".quicklaunch.BookmarkPicker" android:label="@string/quick_launch_title">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -289,6 +323,7 @@
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
+ <action android:name="com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
</intent-filter>
</activity>
@@ -308,22 +343,26 @@
</intent-filter>
</receiver>
- <activity android:name="BluetoothPINEntry"
+ <!-- Bluetooth stuff -->
+
+ <activity android:name=".bluetooth.ConnectSpecificProfilesActivity"
+ android:label="@string/bluetooth_connect_specific_profiles_title" />
+
+ <activity android:name=".bluetooth.BluetoothPinDialog"
android:label="@string/bluetooth_pin_entry"
- android:theme="@android:style/Theme.Dialog">
- <!--intent-filter>
+ android:theme="@*android:style/Theme.Dialog.Alert">
+ <intent-filter>
<action android:name="android.bluetooth.intent.action.PAIRING_REQUEST" />
<category android:name="android.intent.category.DEFAULT" />
- </intent-filter-->
+ </intent-filter>
</activity>
- <!-- Ignore Bluetooth Pairing Requests when not in BluetoothSettings
- <receiver android:name="BluetoothPinRequest">
+ <receiver android:name=".bluetooth.BluetoothPinRequest">
<intent-filter>
<action android:name="android.bluetooth.intent.action.PAIRING_REQUEST" />
+ <action android:name="android.bluetooth.intent.action.PAIRING_CANCEL" />
</intent-filter>
</receiver>
- -->
<activity android:name="ActivityPicker" android:label="@string/activity_picker_label">
<intent-filter>
@@ -349,6 +388,7 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -363,6 +403,7 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -386,6 +427,7 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -394,6 +436,7 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
@@ -404,6 +447,7 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
</activity>
diff --git a/res/drawable/border_item_thumbnail.png b/res/drawable/border_item_thumbnail.png
new file mode 100755
index 0000000..6454138
--- /dev/null
+++ b/res/drawable/border_item_thumbnail.png
Binary files differ
diff --git a/res/drawable/ic_bluetooth_connected.png b/res/drawable/ic_bluetooth_connected.png
deleted file mode 100644
index 0db03e1..0000000
--- a/res/drawable/ic_bluetooth_connected.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/ic_bluetooth_discovered.png b/res/drawable/ic_bluetooth_discovered.png
deleted file mode 100644
index f24addc..0000000
--- a/res/drawable/ic_bluetooth_discovered.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/ic_bluetooth_paired.png b/res/drawable/ic_bluetooth_paired.png
deleted file mode 100644
index 7b5911b..0000000
--- a/res/drawable/ic_bluetooth_paired.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/ic_bluetooth_paired_not_nearby.png b/res/drawable/ic_bluetooth_paired_not_nearby.png
deleted file mode 100644
index 8fb916a..0000000
--- a/res/drawable/ic_bluetooth_paired_not_nearby.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/ic_bt_cellphone.png b/res/drawable/ic_bt_cellphone.png
new file mode 100755
index 0000000..4bf7ba5
--- /dev/null
+++ b/res/drawable/ic_bt_cellphone.png
Binary files differ
diff --git a/res/drawable/ic_bt_headphones_a2dp.png b/res/drawable/ic_bt_headphones_a2dp.png
new file mode 100755
index 0000000..b9bfec6
--- /dev/null
+++ b/res/drawable/ic_bt_headphones_a2dp.png
Binary files differ
diff --git a/res/drawable/ic_bt_headset_hfp.png b/res/drawable/ic_bt_headset_hfp.png
new file mode 100644
index 0000000..cd91841
--- /dev/null
+++ b/res/drawable/ic_bt_headset_hfp.png
Binary files differ
diff --git a/res/drawable/ic_bt_laptop.png b/res/drawable/ic_bt_laptop.png
new file mode 100755
index 0000000..49a71c9
--- /dev/null
+++ b/res/drawable/ic_bt_laptop.png
Binary files differ
diff --git a/res/drawable/ic_btn_finish.png b/res/drawable/ic_btn_finish.png
deleted file mode 100644
index 18a4d23..0000000
--- a/res/drawable/ic_btn_finish.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/ic_menu_scan_bluetooth.png b/res/drawable/ic_menu_scan_bluetooth.png
deleted file mode 100644
index c1184ad..0000000
--- a/res/drawable/ic_menu_scan_bluetooth.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/ic_wifi_lock_signal_0.png b/res/drawable/ic_wifi_lock_signal_0.png
deleted file mode 100755
index 19ca926..0000000
--- a/res/drawable/ic_wifi_lock_signal_0.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/ic_wifi_signal_0.png b/res/drawable/ic_wifi_signal_0.png
deleted file mode 100755
index 4063b7b..0000000
--- a/res/drawable/ic_wifi_signal_0.png
+++ /dev/null
Binary files differ
diff --git a/res/layout/bluetooth_pin_entry.xml b/res/layout/bluetooth_pin_entry.xml
index 6969cb7..6739f84 100644
--- a/res/layout/bluetooth_pin_entry.xml
+++ b/res/layout/bluetooth_pin_entry.xml
@@ -16,12 +16,34 @@
** limitations under the License.
*/
-->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_height="wrap_content"
+
+<ScrollView
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_height="fill_parent"
android:layout_width="fill_parent">
- <EditText android:id="@+id/text"
- android:layout_height="wrap_content"
- android:layout_width="fill_parent"
- android:layout_marginLeft="20dip"
- android:layout_marginRight="20dip" />
-</LinearLayout>
+
+ <LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_height="fill_parent"
+ android:layout_width="fill_parent"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/message"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:gravity="center_horizontal"
+ android:textAppearance="?android:attr/textAppearanceMedium" />
+
+ <EditText
+ android:id="@+id/text"
+ android:layout_height="wrap_content"
+ android:layout_width="fill_parent"
+ android:layout_marginTop="20dip"
+ android:layout_marginLeft="20dip"
+ android:layout_marginRight="20dip"
+ android:singleLine="true" />
+
+ </LinearLayout>
+
+</ScrollView> \ No newline at end of file
diff --git a/res/layout/compute_sizes.xml b/res/layout/compute_sizes.xml
index c781227..bba8c63 100755
--- a/res/layout/compute_sizes.xml
+++ b/res/layout/compute_sizes.xml
@@ -14,25 +14,25 @@
limitations under the License.
-->
-<RelativeLayout
+<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
-
- <TextView
- android:id="@+id/center_text"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerVertical="true"
- android:textSize="18sp"
- android:textStyle="bold"
- android:padding="2dip"
- android:text="@string/computing_size"/>
<ListView
android:id="@android:id/list"
+ android:layout_weight="1"
+ android:drawSelectorOnTop="false"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</ListView>
-</RelativeLayout>
+ <TextView android:id="@android:id/empty"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:paddingLeft="20dip"
+ android:paddingTop="5dip"
+ android:text="@string/empty_list_msg"
+ android:textSize="15sp" />
+</LinearLayout>
diff --git a/res/layout/installed_app_details.xml b/res/layout/installed_app_details.xml
index c9c00a7..6ca92d2 100644
--- a/res/layout/installed_app_details.xml
+++ b/res/layout/installed_app_details.xml
@@ -62,13 +62,7 @@
<TextView
style="?android:attr/listSeparatorTextViewStyle"
- android:text="@string/storage_label"
- android:background="@*android:drawable/settings_header"
- android:textSize="18sp"
- android:paddingTop="6dip"
- android:paddingLeft="6dip"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content" />
+ android:text="@string/storage_label" />
<LinearLayout
android:layout_width="fill_parent"
@@ -84,8 +78,7 @@
<TextView
android:id="@+id/total_size_prefix"
android:text="@string/total_size_label"
- android:textColor="?android:attr/textColorPrimary"
- android:textSize="18sp"
+ android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:maxLines="1"
@@ -105,10 +98,9 @@
android:scaleType="center" />
<TextView
android:id="@+id/total_size_text"
- android:textSize="18sp"
android:paddingTop="6dip"
android:paddingRight="6dip"
- android:textColor="?android:attr/textColorPrimary"
+ android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:maxLines="1" />
@@ -123,8 +115,7 @@
<TextView
android:id="@+id/application_size_prefix"
android:text="@string/application_size_label"
- android:textColor="?android:attr/textColorPrimary"
- android:textSize="18sp"
+ android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:maxLines="1"
@@ -143,10 +134,9 @@
android:scaleType="center" />
<TextView
android:id="@+id/application_size_text"
- android:textSize="18sp"
+ android:textAppearance="?android:attr/textAppearanceMedium"
android:paddingTop="6dip"
android:paddingRight="6dip"
- android:textColor="?android:attr/textColorPrimary"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:maxLines="1" />
@@ -162,8 +152,7 @@
<TextView
android:id="@+id/data_size_prefix"
android:text="@string/data_size_label"
- android:textColor="?android:attr/textColorPrimary"
- android:textSize="18sp"
+ android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:maxLines="1"
@@ -182,10 +171,9 @@
android:scaleType="center" />
<TextView
android:id="@+id/data_size_text"
- android:textSize="18sp"
+ android:textAppearance="?android:attr/textAppearanceMedium"
android:paddingTop="6dip"
android:paddingRight="6dip"
- android:textColor="?android:attr/textColorPrimary"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:maxLines="1" />
@@ -223,20 +211,73 @@
android:layout_height="wrap_content"/>
</LinearLayout>
</LinearLayout>
+
+ <!-- Clear cache section -->
+ <RelativeLayout
+ android:id="@+id/cache_panel"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content" >
+ <TextView
+ android:id="@+id/cache_header"
+ style="?android:attr/listSeparatorTextViewStyle"
+ android:text="@string/cache_header_label" />
+ <LinearLayout
+ android:id="@+id/cache_size"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal"
+ android:baselineAligned="true"
+ android:layout_below="@id/cache_header"
+ android:paddingTop="-1dip">
+ <TextView
+ android:text="@string/cache_size_label"
+ android:layout_height="wrap_content"
+ android:layout_width="wrap_content"
+ android:maxLines="1"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:paddingTop="6dip"
+ android:gravity="center_vertical"
+ android:paddingLeft="6dip"/>
+ <ImageView
+ android:src="@drawable/dotted_line_480px"
+ android:layout_width="0dip"
+ android:layout_weight="1"
+ android:layout_height="1px"
+ android:layout_gravity="bottom"
+ android:layout_marginLeft="1dip"
+ android:layout_marginRight="1dip"
+ android:layout_marginBottom="4dip"
+ android:scaleType="center" />
+ <TextView
+ android:id="@+id/cache_size_text"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:paddingTop="6dip"
+ android:paddingRight="6dip"
+ android:layout_height="wrap_content"
+ android:layout_width="wrap_content"
+ android:maxLines="1" />
+ </LinearLayout>
+
+ <Button android:id="@+id/clear_cache_button"
+ android:layout_alignParentRight="true"
+ android:layout_below="@id/cache_size"
+ android:layout_centerHorizontal="true"
+ android:layout_width="150dip"
+ android:text="@string/clear_cache_btn_text"
+ android:layout_height="wrap_content" />
+ </RelativeLayout>
+
+ <!-- Prefered activities section -->
<TextView
style="?android:attr/listSeparatorTextViewStyle"
- android:text="@string/auto_launch_label"
- android:background="@*android:drawable/settings_header"
- android:paddingTop="6dip"
- android:paddingLeft="6dip"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content" />
+ android:text="@string/auto_launch_label" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical">
<TextView android:id="@+id/auto_launch"
+ android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_alignParentLeft="true"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
@@ -251,29 +292,30 @@
android:text="@string/clear_activities"
android:layout_height="wrap_content" />
</RelativeLayout>
+
<!-- Permissions section -->
- <TextView
- style="?android:attr/listSeparatorTextViewStyle"
- android:text="@string/permissions_label"
- android:background="@*android:drawable/settings_header"
- android:textSize="18sp"
- android:paddingTop="6dip"
- android:paddingLeft="6dip"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content" />
- <TextView
- android:text="@string/security_settings_desc"
- android:textSize="14sp"
- android:paddingTop="6dip"
- android:paddingLeft="6dip"
- android:paddingBottom="6dip"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content" />
- <LinearLayout
- android:id="@+id/security_settings_list"
+ <LinearLayout
+ android:id="@+id/permissions_section"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
- android:orientation="vertical"/>
+ android:orientation="vertical">
+ <TextView
+ style="?android:attr/listSeparatorTextViewStyle"
+ android:text="@string/permissions_label" />
+ <TextView
+ android:text="@string/security_settings_desc"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:paddingTop="6dip"
+ android:paddingLeft="6dip"
+ android:paddingBottom="6dip"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content" />
+ <LinearLayout
+ android:id="@+id/security_settings_list"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:orientation="vertical"/>
+ </LinearLayout>
</LinearLayout>
</ScrollView>
diff --git a/res/layout/manage_applications_item.xml b/res/layout/manage_applications_item.xml
index fb77d29..78addc9 100755
--- a/res/layout/manage_applications_item.xml
+++ b/res/layout/manage_applications_item.xml
@@ -27,36 +27,29 @@
android:layout_width="@android:dimen/app_icon_size"
android:layout_height="@android:dimen/app_icon_size"
android:layout_alignParentLeft="true"
- android:paddingLeft="6dip"
- android:paddingTop="6dip"
- android:paddingBottom="6dip"
- android:scaleType="fitCenter" />
+ android:layout_marginTop="6dip"
+ android:layout_marginBottom="6dip"
+ android:background="@drawable/border_item_thumbnail" />
- <TextView android:id="@+id/app_name"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:textAppearance="?android:attr/textAppearanceLarge"
- android:textColor="?android:attr/textColorPrimary"
- android:layout_toRightOf="@id/app_icon"
- android:paddingLeft="6dip"
- android:paddingTop="6dip"/>
-
- <TextView android:id="@+id/app_description"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:textAppearance="?android:attr/textAppearanceSmall"
- android:layout_below="@+id/app_name"
- android:layout_toRightOf="@id/app_icon"
- android:paddingLeft="6dip"
- android:paddingBottom="6dip"/>
<TextView android:id="@+id/app_size"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_alignParentRight="true"
- android:layout_below="@+id/app_name"
android:paddingRight="6dip"
+ android:paddingLeft="12dip"
+ android:paddingTop="16dip"
android:maxLines="1" />
+ <TextView android:id="@+id/app_name"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceLarge"
+ android:textColor="?android:attr/textColorPrimary"
+ android:layout_toRightOf="@id/app_icon"
+ android:layout_toLeftOf="@id/app_size"
+ android:layout_alignTop="@id/app_icon"
+ android:paddingLeft="2dip"
+ android:paddingTop="6dip"/>
</RelativeLayout>
diff --git a/res/layout/preference_bluetooth.xml b/res/layout/preference_bluetooth.xml
new file mode 100644
index 0000000..e832f20
--- /dev/null
+++ b/res/layout/preference_bluetooth.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2006 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:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:minHeight="?android:attr/listPreferredItemHeight"
+ android:gravity="center_vertical"
+ android:paddingLeft="16dip"
+ android:paddingRight="?android:attr/scrollbarSize">
+
+ <RelativeLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginRight="6dip"
+ android:layout_marginTop="6dip"
+ android:layout_marginBottom="6dip"
+ android:layout_weight="1">
+
+ <TextView android:id="@+android:id/title"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:singleLine="true"
+ android:textAppearance="?android:attr/textAppearanceLarge" />
+
+ <TextView android:id="@+android:id/summary"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_below="@android:id/title"
+ android:layout_alignLeft="@android:id/title"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:maxLines="2" />
+
+ </RelativeLayout>
+
+ <ImageView
+ android:id="@+id/btClass"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginRight="12dip"
+ android:layout_gravity="center_vertical" />
+
+</LinearLayout>
diff --git a/res/layout/preference_dialog_ringervolume.xml b/res/layout/preference_dialog_ringervolume.xml
new file mode 100644
index 0000000..63cc97a
--- /dev/null
+++ b/res/layout/preference_dialog_ringervolume.xml
@@ -0,0 +1,71 @@
+<?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:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:orientation="vertical"
+ android:gravity="center_horizontal"
+ android:paddingBottom="20dip">
+
+ <ImageView android:id="@android:id/icon"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:paddingTop="20dip" />
+
+ <TextView
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/incoming_call_volume_title"
+ android:paddingTop="20dip"
+ android:paddingLeft="20dip"
+ android:paddingRight="20dip" />
+
+ <!-- Used for the ring volume. This is what the superclass VolumePreference uses. -->
+ <SeekBar android:id="@*android:id/seekbar"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="6dip"
+ android:paddingLeft="20dip"
+ android:paddingRight="20dip" />
+
+ <CheckBox android:id="@+id/same_notification_volume"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/checkbox_notification_same_as_incoming_call"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:layout_marginTop="6dip"
+ android:layout_marginLeft="20dip"
+ android:layout_marginRight="20dip" />
+
+ <TextView android:id="@+id/notification_volume_title"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/notification_volume_title"
+ android:paddingTop="6dip"
+ android:paddingLeft="20dip"
+ android:paddingRight="20dip" />
+
+ <!-- Used for the notification volume -->
+ <SeekBar android:id="@+id/notification_volume_seekbar"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="6dip"
+ android:paddingLeft="20dip"
+ android:paddingRight="20dip" />
+
+</LinearLayout>
+
diff --git a/res/layout/preference_progress_category.xml b/res/layout/preference_progress_category.xml
index 01c7b15..f2f2c9d 100644
--- a/res/layout/preference_progress_category.xml
+++ b/res/layout/preference_progress_category.xml
@@ -32,7 +32,7 @@
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
- android:layout_marginRight="5sp"
+ android:layout_marginRight="?android:attr/scrollbarSize"
style="?android:attr/progressBarStyleSmallTitle"
/>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index f68a0ed..9cc1cff 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -1,445 +1,883 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="activity_picker_label">Vybrat činnost</string>
- <string name="airplane_mode">Režim Letadlo</string>
- <string name="android_id_label">ID Android</string>
- <string name="apn_apn">APN</string>
- <string name="apn_edit">Upravit přístupový bod</string>
- <string name="apn_http_port">Port</string>
- <string name="apn_http_proxy">Proxy</string>
- <string name="apn_label">APN</string>
- <string name="apn_mcc">MCC</string>
- <string name="apn_mms_port">Port MMS</string>
- <string name="apn_mms_proxy">Proxy MMS</string>
- <string name="apn_mmsc">MMSC</string>
- <string name="apn_mnc">MNC</string>
- <string name="apn_name">Název</string>
- <string name="apn_not_set">&lt;Nenastaveno&gt;</string>
- <string name="apn_password">Heslo</string>
- <string name="apn_server">Server</string>
- <string name="apn_settings">APN</string>
- <string name="apn_user">Uživatelské jméno</string>
- <string name="app_launcher_newView_text">Nový panel spouštění aplikací</string>
- <string name="band_mode_failed">Neúspěch</string>
- <string name="band_mode_loading">Načítá se seznam pásem\u2026</string>
- <string name="band_mode_set">Nastavit</string>
- <string name="band_mode_succeeded">Úspěch</string>
- <string name="band_mode_title">Nastavit pásmo GSM/UMTS</string>
- <string name="baseband_version">Verze základního pásma</string>
- <string name="basic_settings_title">Základní nastavení</string>
- <string name="battery_info_health_dead">Vybitá</string>
- <string name="battery_info_health_good">Dobrý</string>
- <string name="battery_info_health_label">Stav baterie:</string>
- <string name="battery_info_health_over_voltage">Přepětí</string>
- <string name="battery_info_health_overheat">Přehřátí</string>
- <string name="battery_info_health_unknown">Neznámý</string>
- <string name="battery_info_health_unspecified_failure">Nespecifikované selhání</string>
- <string name="battery_info_label">Informace o baterii</string>
- <string name="battery_info_level_label">Úroveň nabití baterie:</string>
- <string name="battery_info_scale_label">Stupnice baterie:</string>
- <string name="battery_info_status_charging">Nabíjení</string>
- <string name="battery_info_status_charging_ac">(STŘ)</string>
- <string name="battery_info_status_charging_usb">(USB)</string>
- <string name="battery_info_status_discharging">Vybíjení</string>
- <string name="battery_info_status_full">Plná</string>
- <string name="battery_info_status_label">Stav baterie:</string>
- <string name="battery_info_status_not_charging">Bez nabíjení</string>
- <string name="battery_info_status_unknown">Neznámý</string>
- <string name="battery_info_technology_label">Technologie baterie:</string>
- <string name="battery_info_temperature_label">Teplota baterie:</string>
- <string name="battery_info_temperature_units">\u00B0 C</string>
- <string name="battery_info_voltage_label">Napětí baterie:</string>
- <string name="battery_info_voltage_units">mV</string>
- <string name="bluetooth">Bluetooth</string>
- <string name="bluetooth_clear_list">Vymazat seznam zařízení</string>
- <string name="bluetooth_connectable">Pouze připojitelné</string>
- <string name="bluetooth_connected">Připojeno</string>
- <string name="bluetooth_connecting">Připojování\u2026</string>
- <string name="bluetooth_device">handsfree / sluchátko s mikrofonem</string>
- <string name="bluetooth_device_info">Informace o zařízení Bluetooth</string>
- <string name="bluetooth_device_info_alias">Název zařízení</string>
- <string name="bluetooth_device_info_delete">Odebrat zařízení</string>
- <string name="bluetooth_device_info_no_alias">Zde zadejte název\u2026</string>
- <string name="bluetooth_device_info_sdp">Seznam podporovaných služeb</string>
- <string name="bluetooth_device_name">Název zařízení</string>
- <string name="bluetooth_devices">Zařízení Bluetooth</string>
- <string name="bluetooth_disabled">Připojení Bluetooth je vypnuto</string>
- <string name="bluetooth_disconnect_blank">Odpojit %1$s?</string>
- <string name="bluetooth_discoverability_panel_title">Zjišťování zařízení\u2026</string>
- <string name="bluetooth_discoverable">Zjistitelné a připojitelné</string>
- <string name="bluetooth_enable_text">Prázdné tlačítko\u2026</string>
- <string name="bluetooth_enabled">Připojení Bluetooth je zapnuto</string>
- <string name="bluetooth_enabling">Aktivace připojení Bluetooth\u2026</string>
- <string name="bluetooth_enter_pin_msg">Zadejte kód PIN pro </string>
- <string name="bluetooth_is_discoverable">Zařízení je zjistitelné</string>
- <string name="bluetooth_name_not_set">Název není nastaven, používá se název účtu</string>
- <string name="bluetooth_neither">Nezjistitelné a nepřipojitelné</string>
- <string name="bluetooth_new_data">Zadejte nová data</string>
- <string name="bluetooth_new_data_cancel">Storno</string>
- <string name="bluetooth_new_data_confirm">OK</string>
- <string name="bluetooth_not_connected">Nepřipojeno</string>
- <string name="bluetooth_not_discoverable">Zařízení není zjistitelné</string>
- <string name="bluetooth_paired">Spárováno</string>
- <string name="bluetooth_pairing_msg">Párování\u2026</string>
- <string name="bluetooth_pin_entry">Zadání kódu PIN Bluetooth</string>
- <string name="bluetooth_quick_toggle_title">Bluetooth</string>
- <string name="bluetooth_scan_for_devices">Vyhledat zařízení Bluetooth</string>
- <string name="bluetooth_scan_for_new_devices">Probíhá vyhledávání nových zařízení\u2026</string>
- <string name="bluetooth_scan_text">Prázdné tlačítko\u2026</string>
- <string name="bluetooth_settings_text">Prázdné tlačítko\u2026</string>
- <string name="bluetooth_settings_title">Nastavení Bluetooth</string>
- <string name="bluetooth_starting">Spouštění připojení Bluetooth\u2026</string>
- <string name="bluetooth_stopping">Ukončování připojení Bluetooth\u2026</string>
- <string name="bluetooth_title">Bluetooth</string>
- <string name="bluetooth_unknown">Neznámý</string>
- <string name="bluetooth_visibility">Viditelnost</string>
- <string name="bootloader_version">Verze spouštěcího zavaděče</string>
- <string name="brightness">Jas</string>
- <string name="build_date_label">Sestavit datum</string>
- <string name="build_description_label">Sestavit popis</string>
- <string name="build_host_label">Sestavit hostitele</string>
- <string name="build_id_label">Sestavit ID</string>
- <string name="build_type_label">Sestavit typ</string>
- <string name="build_user_label">Sestavit uživatele</string>
- <string name="call_settings_title">Nastavení volání</string>
- <string name="cancel">Storno</string>
- <string name="checkin_button_label">Zjistit aktualizace</string>
- <string name="checkin_download_failed_status">Stažení se nezdařilo</string>
- <string name="checkin_download_label">Stav stahování</string>
- <string name="checkin_download_ongoing_status">Stahování\u2026</string>
- <string name="checkin_download_succeeded_status">Stažení bylo úspěšné, ověřování\u2026</string>
- <string name="checkin_download_suspended_status">Stahování pozastaveno</string>
- <string name="checkin_download_unknown_status">Neznámý stav</string>
- <string name="checkin_failures_label">Nezdařené pokusy od posledního úspěchu</string>
- <string name="checkin_last_time_label">Poslední úspěšné odbavení</string>
- <string name="checkin_status_label">Stav odbavení</string>
- <string name="checkin_time_never">(nikdy)</string>
- <string name="checkin_upgrade_label">Aktualizace čekající na dokončení</string>
- <string name="choose_timezone">Vybrat časové pásmo</string>
- <string name="choose_timezone_region">Vybrat oblast</string>
- <string name="connect">Připojit</string>
- <string name="connect_to_blank">Připojit k %1$s</string>
- <string name="date_and_time">Datum a čas</string>
- <string name="date_and_time_settings_title">Datum a čas</string>
- <string name="date_time_24hour">24hodinový formát</string>
- <string name="date_time_auto">Automaticky</string>
- <string name="date_time_auto_summaryOff">Použít hodnoty vybrané uživatelem</string>
- <string name="date_time_auto_summaryOn">Použít hodnoty zjištěné ze sítě</string>
- <string name="date_time_changeDate_text">Změnit datum</string>
- <string name="date_time_changeTime_text">Změnit čas</string>
- <string name="date_time_dateDisplay_text">3. listopadu 1997</string>
- <string name="date_time_date_format">Nastavit formát data</string>
- <string name="date_time_set_date">Nastavit datum</string>
- <string name="date_time_set_time">Nastavit čas</string>
- <string name="date_time_set_timezone">Nastavit časové pásmo</string>
- <string name="date_time_setzone_text">Změnit časové pásmo</string>
- <string name="date_time_timeDisplay_text">11:45 dop.</string>
- <string name="date_time_timezone_label">Časové pásmo:</string>
- <string name="debug_intent_sender_label">Debug intent sender</string>
- <string name="default_date_format">dd.MM.yyyy</string>
- <string name="default_keyboard_device_label">Výchozí zařízení klávesnice</string>
- <string name="device_info_asleeptime">Čas přechodu do režimu spánku</string>
- <string name="device_info_awaketime">Čas probuzení</string>
- <string name="device_info_default">Neznámý</string>
- <string name="device_info_label">Informace o zařízení</string>
- <string name="device_info_settings">Informace o zařízení</string>
- <string name="device_info_uptime">Doba provozu</string>
- <string name="device_memory">Paměť</string>
- <string name="device_memory_summary">Vnitřní paměť, paměťová karta SD</string>
- <string name="device_status">Stav</string>
- <string name="device_status_summary">IMEI, telefonní číslo, signál atd.</string>
- <string name="dim_screen">Ztlumit obrazovku</string>
- <string name="disconnect_ums">Odpojit velkokapacitní paměťové zařízení USB</string>
- <string name="display_font_size_label">Velikost písma:</string>
- <string name="display_label">Displej</string>
- <string name="display_preview_label">Náhled:</string>
- <string name="display_settings">Displej</string>
- <string name="done">OK</string>
- <string name="error_apn_empty">Název přístupového bodu nemůže být prázdný</string>
- <string name="error_connecting">Chyba při připojování k síti</string>
- <string name="error_mcc_not3">Pole MCC musí obsahovat 3 číslice</string>
- <string name="error_mnc_not23">Pole MNC musí obsahovat 2 nebo 3 číslice</string>
- <string name="error_name_empty">Název nemůže být prázdný</string>
- <string name="error_saving">Chyba při ukládání sítě</string>
- <string name="error_scanning">Chyba při vyhledávání sítí</string>
- <string name="error_starting">Chyba při spouštění Wi-Fi</string>
- <string name="error_stopping">Chyba při ukončování Wi-Fi</string>
- <string name="error_title">Neplatná data</string>
- <string name="failed_to_connect">Chyba při připojování k\u0020</string>
- <string name="favorites_label">Oblíbené položky</string>
- <string name="firmware_version">Verze firmwaru</string>
- <string name="font_size_preview_text">Servez à ce monsieur une bière et des kiwis.</string>
- <string name="font_size_save">OK</string>
- <string name="forget_network">Zapomenout</string>
- <string name="fragment_status_authenticating">Ověřování u %1$s</string>
- <string name="fragment_status_connected">Připojeno k %1$s</string>
- <string name="fragment_status_connecting">Připojování k %1$s</string>
- <string name="fragment_status_disconnected">Odpojeno</string>
- <string name="fragment_status_disconnecting">Odpojování od %1$s</string>
- <string name="fragment_status_failed">Neúspěch</string>
- <string name="fragment_status_obtaining_ip">Získávání adresy IP od %1$s</string>
- <string name="fragment_status_scanning">Vyhledávání</string>
- <string name="gsm_version_baseband_label">Verze základního pásma</string>
- <string name="gsm_version_ril_impl_label">Verze RIL Impl</string>
- <string name="intent_sender_account_label">Účet: </string>
- <string name="intent_sender_action_label">Akce:</string>
- <string name="intent_sender_data_label">Data:</string>
- <string name="intent_sender_resource_label">Prostředek: </string>
- <string name="intent_sender_sendbroadcast_text">Odeslat vysílání</string>
- <string name="intent_sender_startactivity_text">Zahájit činnost</string>
- <string name="ip_address">Adresa IP</string>
- <string name="kernel_version_label">Verze jádra Linux</string>
- <string name="keyguard_label">Zámek kláves</string>
- <string name="keyguard_password_button_text">OK</string>
- <string name="keyguard_password_confirm_new_label">Potvrzení nového hesla:</string>
- <string name="keyguard_password_mismatch_error_text">Zadaná hesla neodpovídají! Zadejte hesla znovu</string>
- <string name="keyguard_password_new_label">Nové heslo:</string>
- <string name="keyguard_password_old_label">Původní heslo:</string>
- <string name="keyguard_password_old_password_error_text">Zadané původní heslo je nesprávné! Opakujte akci</string>
- <string name="keyguard_pin_mod_text">Změnit kód PIN</string>
- <string name="keyguard_pw_mod_text">Vybrat vzor pro uzamčení</string>
- <string name="keyguard_sim_pin_label">Kód PIN karty SIM</string>
- <string name="language_picker_title">Jazyk</string>
- <string name="large_font">Velký</string>
- <string name="location_gps">Podle GPS</string>
- <string name="location_label">Poskytovatel polohy:</string>
- <string name="location_neighborhood_level">Přesnost na úroveň okolí</string>
- <string name="location_network_based">Podle sítě</string>
- <string name="location_source">Přesnost polohy</string>
- <string name="location_status">Stav:</string>
- <string name="location_street_level">Přesnost na úroveň ulic</string>
- <string name="lock_settings_title">Speciální tah pro uzamčení</string>
- <string name="lockpattern_change_lock_pattern_label">Změnit vzor pro uzamčení</string>
- <string name="lockpattern_confirm_button_text">Potvrdit</string>
- <string name="lockpattern_need_to_unlock">Potvrzení uloženého vzoru:</string>
- <string name="lockpattern_need_to_unlock_wrong">Nesprávně! Opakujte akci:</string>
- <string name="lockpattern_pattern_confirmed_header">Nový vzor pro uzamčení:</string>
- <string name="lockpattern_pattern_entered_header">Vybrali jste:</string>
- <string name="lockpattern_recording_incorrect_less_than_three">Nesprávně! Musíte táhnout přes nejméně tři body</string>
- <string name="lockpattern_recording_inprogress">Po skončení uvolněte prst</string>
- <string name="lockpattern_recording_intro_footer">Stisknutím tlačítka Nabídka zobrazíte nápovědu</string>
- <string name="lockpattern_recording_intro_header">Nakreslete vzor, který bude použit jako kódový zámek:</string>
- <string name="lockpattern_restart_button_text">Restartovat</string>
- <string name="lockpattern_settings_change_lock_pattern">Změnit vzor speciálního tahu pro uzamčení</string>
- <string name="lockpattern_settings_choose_lock_pattern">Vybrat vzor speciálního tahu pro uzamčení</string>
- <string name="lockpattern_settings_enable_summary">K odemčení požadovat speciální tah</string>
- <string name="lockpattern_settings_enable_title">Speciální tah pro uzamčení</string>
- <string name="lockpattern_settings_enable_visible_pattern_title">Použít viditelný vzor</string>
- <string name="lockpattern_settings_help_how_to_record">Jak zaznamenat vzor pro uzamčení</string>
- <string name="lockpattern_settings_title">Speciální tah pro uzamčení</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_footer">Opakujte akci za <xliff:g id="number">%d</xliff:g> sekund</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_header">Příliš mnoho nesprávných pokusů o potvrzení</string>
- <string name="master_clear_button_text">Resetujte zařízení</string>
- <string name="master_clear_desc">Resetuje zařízení do původního stavu z výroby, vymaže všechna data a stažené aplikace</string>
- <string name="master_clear_failed">Reset nebyl proveden, protože služba Vymazání systému není k dispozici</string>
- <string name="master_clear_final_button_text">Vymazat vše</string>
- <string name="master_clear_final_desc">Chcete resetovat zařízení a vymazat všechna data a aplikace? Tuto akci nelze vrátit zpět!</string>
- <string name="master_clear_gesture_explanation">Reset zařízení je nutné potvrdit nakreslením vzoru pro uzamčení</string>
- <string name="master_clear_gesture_prompt">Nakreslete vzor pro uzamčení</string>
- <string name="master_clear_title">Hlavní vymazání</string>
- <string name="medium_font">Střední</string>
- <string name="menu_cancel">Zrušit</string>
- <string name="menu_delete">Odstranit APN</string>
- <string name="menu_new">Nový APN</string>
- <string name="menu_save">Uložit</string>
- <string name="mobile_network">Mobilní síť</string>
- <string name="network_settings_title">Nastavení sítě</string>
- <string name="next_label">Další</string>
- <string name="notification_sound_dialog_title">Vybrat vyzváněcí tóny oznámení</string>
- <string name="notification_sound_title">Vyzváněcí tóny oznámení</string>
- <string name="phone_info_label">Informace o telefonu</string>
- <string name="please_type_passphrase">Zadejte heslo bezdrátového připojení</string>
- <string name="power_management_label">Řízení spotřeby</string>
- <string name="progress_scanning">Vyhledávání</string>
- <string name="proxy_action_text">Uložit</string>
- <string name="proxy_clear_text">Vymazat</string>
- <string name="proxy_defaultView_text">Obnovit výchozí</string>
- <string name="proxy_error">Upozornění!</string>
- <string name="proxy_error_dismiss">OK</string>
- <string name="proxy_error_empty_host_set_port">Pokud je pole hostitele prázdné, pole portu musí být rovněž prázdné</string>
- <string name="proxy_error_empty_port">Je nutné vyplnit pole portu</string>
- <string name="proxy_error_invalid_host">Zadaný název hostitele není platný</string>
- <string name="proxy_error_invalid_port">Zadaný port není platný</string>
- <string name="proxy_hostname_label">Název hostitele</string>
- <string name="proxy_port_label">Port</string>
- <string name="proxy_settings_label">Nastavení serveru proxy</string>
- <string name="radioInfo_cid">CID</string>
- <string name="radioInfo_data_connected">Připojeno</string>
- <string name="radioInfo_data_connecting">Připojování</string>
- <string name="radioInfo_data_disconnected">Odpojeno</string>
- <string name="radioInfo_display_asu">asu</string>
- <string name="radioInfo_display_bytes">bajtů</string>
- <string name="radioInfo_display_dbm">dBm</string>
- <string name="radioInfo_display_packets">paketů</string>
- <string name="radioInfo_lac">LAC</string>
- <string name="radioInfo_menu_disableData">Zakázat datové připojení</string>
- <string name="radioInfo_menu_enableData">Povolit datové připojení</string>
- <string name="radioInfo_menu_getPDP">Získání seznamu PDP</string>
- <string name="radioInfo_menu_viewADN">Zobrazit adresář karty SIM</string>
- <string name="radioInfo_menu_viewFDN">Zobrazit povolená čísla</string>
- <string name="radioInfo_menu_viewSDN">Zobrazit čísla servisu</string>
- <string name="radioInfo_phone_idle">Nečinný</string>
- <string name="radioInfo_phone_offhook">Probíhá hovor</string>
- <string name="radioInfo_phone_ringing">Vyzvánění</string>
- <string name="radioInfo_roaming_in">Roaming</string>
- <string name="radioInfo_roaming_not">Bez roamingu</string>
- <string name="radioInfo_service_emergency">Pouze tísňová volání</string>
- <string name="radioInfo_service_in">V provozu</string>
- <string name="radioInfo_service_off">Rádio vypnuto</string>
- <string name="radioInfo_service_out">Mimo provoz</string>
- <string name="radioInfo_unknown">neznámý</string>
- <string name="radio_info_band_mode_label">Vybrat rádiové pásmo</string>
- <string name="radio_info_call_redirect_label">Přesměrování hovoru:</string>
- <string name="radio_info_call_status_label">Stav hovoru:</string>
- <string name="radio_info_current_network_label">Aktuální síť:</string>
- <string name="radio_info_data_attempts_label">Pokusy o přenos dat:</string>
- <string name="radio_info_data_successes_label">Úspěšné (data):</string>
- <string name="radio_info_gprs_service_label">Služba GPRS:</string>
- <string name="radio_info_gsm_disconnects_label">Odpojení sítě GSM:</string>
- <string name="radio_info_gsm_service_label">Služba GSM:</string>
- <string name="radio_info_imei_label">IMEI:</string>
- <string name="radio_info_imsi_label">IMSI:</string>
- <string name="radio_info_message_waiting_label">Čekající zpráva:</string>
- <string name="radio_info_neighboring_location_label">Sousední CID:</string>
- <string name="radio_info_network_type_label">Typ sítě:</string>
- <string name="radio_info_phone_number_label">Telefonní číslo:</string>
- <string name="radio_info_ppp_received_label">Přijaté PPP:</string>
- <string name="radio_info_ppp_resets_label">Počet resetování PPP od spuštění:</string>
- <string name="radio_info_ppp_sent_label">Odeslané PPP:</string>
- <string name="radio_info_radio_resets_label">Resetování rádia:</string>
- <string name="radio_info_roaming_label">Roaming:</string>
- <string name="radio_info_set_perferred_label">Nastavte upřednostňovaný typ sítě:</string>
- <string name="radio_info_signal_location_label">Umístění:</string>
- <string name="radio_info_signal_strength_label">Síla signálu:</string>
- <string name="read_only">\u0020(jen pro čtení)</string>
- <string name="ring_volume_title">Hlasitost vyzvánění</string>
- <string name="ringer_volume_instructions">Hlasitost vyzvánění lze nastavit tlačítky pro hlasitost</string>
- <string name="ringer_volume_ringer_mode_label">Režim vyzvánění</string>
- <string name="ringer_volume_ringtone_label">Vyzv. tón</string>
- <string name="ringer_volume_screen_increasing_text">Zesilující vyzvánění</string>
- <string name="ringtone_title">Vyzváněcí tón telefonu</string>
- <string name="scan_wifi">Vyhledat</string>
- <string name="screen_off_timeout_label">Časový limit pro vypnutí obrazovky</string>
- <string name="sd_card_settings_label">Karta SD</string>
- <string name="sd_unavailable">Nedostupný</string>
- <string name="sdcard_changes_instructions">Změny se projeví po opětovném připojení kabelu USB</string>
- <string name="sdcard_removal_alert_ok">OK</string>
- <string name="sdcard_removal_alert_scolding">Karta SD byla vyjmuta během používání!
- Chcete-li zamezit poškození karty SD, před vyjmutím ji odinstalujte na obrazovce Nastavení karty SD</string>
- <string name="sdcard_removal_alert_title">Nesprávné vyjmutí karty SD</string>
- <string name="sdcard_setting">Karta SD</string>
- <string name="sdcard_settings_available_bytes_label">Bajty k dispozici:</string>
- <string name="sdcard_settings_bad_removal_status">Karta SD byla vyjmuta během používání!</string>
- <string name="sdcard_settings_mass_storage_status">Karta SD se právě používá jako velkokapacitní paměťové zařízení</string>
- <string name="sdcard_settings_not_present_status">Karta SD chybí</string>
- <string name="sdcard_settings_read_only_status">Vložená karta SD je pouze pro čtení</string>
- <string name="sdcard_settings_scanning_status">Vyhledávání médií na kartě SD\u2026</string>
- <string name="sdcard_settings_screen_mass_storage_text">Povolit velkokapacitní paměťové zařízení USB</string>
- <string name="sdcard_settings_total_bytes_label">Celkem bajtů:</string>
- <string name="sdcard_settings_unmounted_status">Nyní můžete kartu SD bezpečně vyjmout ze zařízení</string>
- <string name="sdcard_settings_used_bytes_label">Použité bajty:</string>
- <string name="sdcard_unmount">Odinstalovat kartu SD</string>
- <string name="sdcard_unmountable_alert_ok">OK</string>
- <string name="sdcard_unmountable_alert_title">Karta SD je nečitelná</string>
- <string name="sdcard_unmountable_message">Kartu SD nelze přečíst.
- Pravděpodobně je poškozen systém souborů nebo je karta vadná</string>
- <string name="security">Zabezpečení</string>
- <string name="security_label">Zabezpečení</string>
- <string name="settings_chooser_pick_string">
- Předat dál ikonu nastavení:
-</string>
- <string name="settings_label">Nastavení</string>
- <string name="signal">Síla signálu</string>
- <string name="silent_mode_title">Tichý režim</string>
- <string name="sim_bad_pin">Upozornění: Nesprávný kód PIN</string>
- <string name="sim_change_failed">Změna kódu PIN se nezdařila\nPravděpodobně nesprávný kód PIN</string>
- <string name="sim_change_pin">Změnit kód PIN karty SIM</string>
- <string name="sim_change_succeeded">Kód PIN karty SIM úspěšně změněn</string>
- <string name="sim_disable_sim_lock">Zakázat zámek karty SIM</string>
- <string name="sim_enable_sim_lock">Povolit zámek karty SIM</string>
- <string name="sim_enter_cancel">Storno</string>
- <string name="sim_enter_new">Zadejte nový kód PIN</string>
- <string name="sim_enter_ok">OK</string>
- <string name="sim_enter_old">Zadejte původní kód PIN</string>
- <string name="sim_enter_pin">Zadejte kód PIN karty SIM</string>
- <string name="sim_lock_failed">Změna stavu zámku karty SIM se nezdařila\nPravděpodobně nesprávný kód PIN</string>
- <string name="sim_lock_off">Zámek karty SIM je vypnutý</string>
- <string name="sim_lock_on">Zámek karty SIM je zapnutý</string>
- <string name="sim_lock_settings">Zámek karty SIM</string>
- <string name="sim_lock_settings_title">Nastavení zámku karty SIM</string>
- <string name="sim_pin_change">Změnit kód PIN</string>
- <string name="sim_pin_toggle">Zámek karty SIM</string>
- <string name="sim_pins_dont_match">Upozornění: Kódy PIN neodpovídají</string>
- <string name="sim_reenter_new">Zadejte nový kód PIN znovu</string>
- <string name="small_font">Malá</string>
- <string name="software_version">Verze softwaru</string>
- <string name="sound_and_alerts_settings">Zvuk</string>
- <string name="status_authenticating">Ověřování</string>
- <string name="status_awake_time">Čas probuzení</string>
- <string name="status_connected">Připojeno</string>
- <string name="status_connecting">Připojování</string>
- <string name="status_data_state">Přístup k datům</string>
- <string name="status_disconnected">Odpojeno</string>
- <string name="status_disconnecting">Odpojování</string>
- <string name="status_failed">Neúspěch</string>
- <string name="status_imei">IMEI</string>
- <string name="status_imsi">IMSI</string>
- <string name="status_network_type">Typ sítě</string>
- <string name="status_number">Telefonní číslo</string>
- <string name="status_obtaining_ip">Získávání adresy IP</string>
- <string name="status_operator">Síť</string>
- <string name="status_roaming">Roaming</string>
- <string name="status_scanning">Vyhledávání</string>
- <string name="status_service_state">Stav služby</string>
- <string name="status_signal_strength">Síla signálu</string>
- <string name="status_up_time">Doba provozu</string>
- <string name="stay_on">Během připojení nevypínejte zařízení</string>
- <string name="summary_not_in_range">Není v dosahu</string>
- <string name="summary_remembered">Zapamatováno</string>
- <string name="sync_calendar">Kalendář</string>
- <string name="sync_contacts">Kontakty</string>
- <string name="sync_disabled">Vypnuto</string>
- <string name="sync_enabled">Synchronizace se serverem Google povolena</string>
- <string name="sync_gmail">Gmail</string>
- <string name="sync_menu_sync_cancel">Zrušit synchronizaci</string>
- <string name="sync_menu_sync_now">Synchronizovat</string>
- <string name="sync_settings">Synchronizace</string>
- <string name="target_build_field_label">Požadované sestavení typu</string>
- <string name="telephony_apn_label">APN:</string>
- <string name="telephony_mcc_label">MCC:</string>
- <string name="telephony_mmsc_label">MMSC:</string>
- <string name="telephony_mmsport_label">Port MMS:</string>
- <string name="telephony_mmsproxy_label">Proxy MMS:</string>
- <string name="telephony_mnc_label">MNC:</string>
- <string name="telephony_name_label">Jméno:</string>
- <string name="telephony_password_label">Heslo:</string>
- <string name="telephony_port_label">Port:</string>
- <string name="telephony_proxy_label">Proxy:</string>
- <string name="telephony_server_label">Server:</string>
- <string name="telephony_user_label">Uživatel:</string>
- <string name="turn_off_qxdm">Zakázat protokol QXDM SD</string>
- <string name="turn_off_radio">Vypnout rádio</string>
- <string name="turn_on_qxdm">Povolit protokol QXDM SD</string>
- <string name="turn_on_radio">Zapnout rádio</string>
- <string name="underdeveloped_settings_label">Underdeveloped settings</string>
- <string name="wallpaper_label">Tapeta</string>
- <string name="wifi">Wi-Fi</string>
- <string name="wifi_access_points">Sítě</string>
- <string name="wifi_dns_label">dns:</string>
- <string name="wifi_gateway_label">brána:</string>
- <string name="wifi_host_ip">IP hostitele:</string>
- <string name="wifi_netmask_label">maska sítě:</string>
- <string name="wifi_prefer_wifi">Upřednostňovat Wi-Fi</string>
- <string name="wifi_screen_activate_text">Aktivovat</string>
- <string name="wifi_screen_dhcp_text">automaticky</string>
- <string name="wifi_screen_dns_text">209.81.59.2</string>
- <string name="wifi_screen_gateway_text">192.168.20.1</string>
- <string name="wifi_screen_ip_text">192.168.20.10</string>
- <string name="wifi_screen_manual_text">ručně</string>
- <string name="wifi_screen_netmask_text">255.255.255.0</string>
- <string name="wifi_screen_status_text">Wi-Fi je v provozu</string>
- <string name="wifi_screen_test_text">Test</string>
- <string name="wifi_settings">Nastavení Wi-Fi</string>
- <string name="wifi_wlan_id">Id sítě wlan:</string>
+ <string name="device_info_default">"Neznámý"</string>
+ <string name="device_info_uptime">"Doba provozu"</string>
+ <string name="device_info_awaketime">"Čas probuzení"</string>
+ <string name="device_info_asleeptime">"Čas přechodu do režimu spánku"</string>
+ <string name="turn_on_radio">"Zapnout rádio"</string>
+ <string name="turn_off_radio">"Vypnout rádio"</string>
+ <string name="turn_on_qxdm">"Povolit protokol QXDM SD"</string>
+ <string name="turn_off_qxdm">"Zakázat protokol QXDM SD"</string>
+ <string name="radioInfo_menu_viewADN">"Zobrazit adresář karty SIM"</string>
+ <string name="radioInfo_menu_viewFDN">"Zobrazit povolená čísla"</string>
+ <string name="radioInfo_menu_viewSDN">"Zobrazit čísla servisu"</string>
+ <string name="radioInfo_menu_getPDP">"Získání seznamu PDP"</string>
+ <string name="radioInfo_menu_enableData">"Povolit datové připojení"</string>
+ <string name="radioInfo_menu_disableData">"Zakázat datové připojení"</string>
+ <!-- no translation found for radioInfo_menu_enableDataOnBoot (1926825935390738605) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_disableDataOnBoot (1229911918312837466) -->
+ <skip />
+ <string name="radioInfo_service_in">"V provozu"</string>
+ <string name="radioInfo_service_out">"Mimo provoz"</string>
+ <string name="radioInfo_service_emergency">"Pouze tísňová volání"</string>
+ <string name="radioInfo_service_off">"Rádio vypnuto"</string>
+ <string name="radioInfo_roaming_in">"Roaming"</string>
+ <string name="radioInfo_roaming_not">"Bez roamingu"</string>
+ <string name="radioInfo_phone_idle">"Nečinný"</string>
+ <string name="radioInfo_phone_ringing">"Vyzvánění"</string>
+ <string name="radioInfo_phone_offhook">"Probíhá hovor"</string>
+ <string name="radioInfo_data_disconnected">"Odpojeno"</string>
+ <string name="radioInfo_data_connecting">"Připojování"</string>
+ <string name="radioInfo_data_connected">"Připojeno"</string>
+ <!-- no translation found for radioInfo_data_suspended (4953150687356763202) -->
+ <skip />
+ <string name="radioInfo_unknown">"neznámý"</string>
+ <string name="radioInfo_display_packets">"paketů"</string>
+ <string name="radioInfo_display_bytes">"bajtů"</string>
+ <string name="radioInfo_display_dbm">"dBm"</string>
+ <string name="radioInfo_display_asu">"asu"</string>
+ <string name="radioInfo_lac">"LAC"</string>
+ <string name="radioInfo_cid">"CID"</string>
+ <string name="sdcard_unmount">"Odinstalovat kartu SD"</string>
+ <string name="small_font">"Malá"</string>
+ <string name="medium_font">"Střední"</string>
+ <string name="large_font">"Velký"</string>
+ <string name="font_size_save">"OK"</string>
+ <string name="sdcard_setting">"Karta SD"</string>
+ <string name="screen_off_timeout_label">"Časový limit pro vypnutí obrazovky"</string>
+ <string name="stay_on">"Během připojení nevypínejte zařízení"</string>
+ <string name="app_launcher_newView_text">"Nový panel spouštění aplikací"</string>
+ <string name="battery_info_status_label">"Stav baterie:"</string>
+ <string name="battery_info_scale_label">"Stupnice baterie:"</string>
+ <string name="battery_info_level_label">"Úroveň nabití baterie:"</string>
+ <string name="battery_info_health_label">"Stav baterie:"</string>
+ <string name="battery_info_technology_label">"Technologie baterie:"</string>
+ <string name="battery_info_voltage_label">"Napětí baterie:"</string>
+ <string name="battery_info_voltage_units">"mV"</string>
+ <string name="battery_info_temperature_label">"Teplota baterie:"</string>
+ <string name="battery_info_temperature_units">"° C"</string>
+ <!-- no translation found for battery_info_uptime (1195623257533912354) -->
+ <skip />
+ <!-- no translation found for battery_info_awake_battery (1529944627925423756) -->
+ <skip />
+ <!-- no translation found for battery_info_awake_plugged (7272044960586959459) -->
+ <skip />
+ <!-- no translation found for battery_info_screen_on (832651425042656482) -->
+ <skip />
+ <string name="battery_info_status_unknown">"Neznámý"</string>
+ <string name="battery_info_status_charging">"Nabíjení"</string>
+ <string name="battery_info_status_charging_ac">"(STŘ)"</string>
+ <string name="battery_info_status_charging_usb">"(USB)"</string>
+ <string name="battery_info_status_discharging">"Vybíjení"</string>
+ <string name="battery_info_status_not_charging">"Bez nabíjení"</string>
+ <string name="battery_info_status_full">"Plná"</string>
+ <string name="battery_info_health_unknown">"Neznámý"</string>
+ <string name="battery_info_health_good">"Dobrý"</string>
+ <string name="battery_info_health_overheat">"Přehřátí"</string>
+ <string name="battery_info_health_dead">"Vybitá"</string>
+ <string name="battery_info_health_over_voltage">"Přepětí"</string>
+ <string name="battery_info_health_unspecified_failure">"Nespecifikované selhání"</string>
+ <string name="bluetooth">"Bluetooth"</string>
+ <string name="bluetooth_stopping">"Ukončování připojení Bluetooth…"</string>
+ <string name="bluetooth_disabled">"Připojení Bluetooth je vypnuto"</string>
+ <string name="bluetooth_enabled">"Připojení Bluetooth je zapnuto"</string>
+ <string name="bluetooth_enabling">"Aktivace připojení Bluetooth…"</string>
+ <string name="bluetooth_visibility">"Viditelnost"</string>
+ <string name="bluetooth_is_discoverable">"Zařízení je zjistitelné"</string>
+ <string name="bluetooth_not_discoverable">"Zařízení není zjistitelné"</string>
+ <string name="bluetooth_devices">"Zařízení Bluetooth"</string>
+ <string name="bluetooth_device_name">"Název zařízení"</string>
+ <string name="bluetooth_name_not_set">"Název není nastaven, používá se název účtu"</string>
+ <string name="bluetooth_scan_for_devices">"Vyhledat zařízení Bluetooth"</string>
+ <string name="bluetooth_clear_list">"Vymazat seznam zařízení"</string>
+ <string name="bluetooth_disconnect_blank">"Odpojit %1$s?"</string>
+ <string name="bluetooth_connected">"Připojeno"</string>
+ <!-- no translation found for bluetooth_disconnected (779512372559332317) -->
+ <skip />
+ <!-- no translation found for bluetooth_disconnecting (613305857810977890) -->
+ <skip />
+ <string name="bluetooth_connecting">"Připojování…"</string>
+ <string name="bluetooth_unknown">"Neznámý"</string>
+ <string name="bluetooth_not_connected">"Nepřipojeno"</string>
+ <!-- no translation found for bluetooth_failed_to_enable (10261849074413402) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing (8284273555047880444) -->
+ <skip />
+ <!-- no translation found for failed_to_pair (5265027255173301781) -->
+ <skip />
+ <string name="failed_to_connect">"Chyba při připojování k "</string>
+ <string name="bluetooth_paired">"Spárováno"</string>
+ <!-- no translation found for bluetooth_paired_not_nearby (2890021978719716438) -->
+ <skip />
+ <string name="bluetooth_device">"handsfree / sluchátko s mikrofonem"</string>
+ <!-- no translation found for bluetooth_disconnect (4070053533691322466) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect (6123567524009555372) -->
+ <skip />
+ <!-- no translation found for bluetooth_unpair (6786377316984999718) -->
+ <skip />
+ <!-- no translation found for bluetooth_pair (6433088623778842494) -->
+ <skip />
+ <string name="progress_scanning">"Vyhledávání"</string>
+ <!-- no translation found for bluetooth_notif_ticker (6269529534945974964) -->
+ <skip />
+ <!-- no translation found for bluetooth_notif_title (3790273649365187417) -->
+ <skip />
+ <!-- no translation found for bluetooth_notif_message (3713615470961259613) -->
+ <skip />
+ <string name="date_and_time">"Datum a čas"</string>
+ <!-- no translation found for date_time_12_hour_sample (3346099183513673921) -->
+ <skip />
+ <!-- no translation found for date_time_24_hour_sample (2930431568836213699) -->
+ <skip />
+ <string name="choose_timezone">"Vybrat časové pásmo"</string>
+ <string name="display_preview_label">"Náhled:"</string>
+ <string name="display_font_size_label">"Velikost písma:"</string>
+ <string name="intent_sender_data_label">"Data:"</string>
+ <string name="intent_sender_sendbroadcast_text">"Odeslat vysílání"</string>
+ <string name="intent_sender_action_label">"Akce:"</string>
+ <string name="intent_sender_startactivity_text">"Zahájit činnost"</string>
+ <string name="intent_sender_resource_label">"Prostředek:"</string>
+ <string name="intent_sender_account_label">"Účet:"</string>
+ <string name="keyguard_pw_mod_text">"Vybrat vzor pro uzamčení"</string>
+ <string name="keyguard_pin_mod_text">"Změnit kód PIN"</string>
+ <string name="keyguard_label">"Zámek kláves"</string>
+ <string name="keyguard_sim_pin_label">"Kód PIN karty SIM"</string>
+ <string name="keyguard_password_old_password_error_text">"Zadané původní heslo je nesprávné! Opakujte akci"</string>
+ <string name="keyguard_password_button_text">"OK"</string>
+ <string name="keyguard_password_confirm_new_label">"Potvrzení nového hesla:"</string>
+ <string name="keyguard_password_new_label">"Nové heslo:"</string>
+ <string name="keyguard_password_old_label">"Původní heslo:"</string>
+ <string name="keyguard_password_mismatch_error_text">"Zadaná hesla neodpovídají! Zadejte hesla znovu"</string>
+ <string name="proxy_clear_text">"Vymazat"</string>
+ <string name="proxy_port_label">"Port"</string>
+ <string name="proxy_defaultView_text">"Obnovit výchozí"</string>
+ <string name="proxy_action_text">"Uložit"</string>
+ <string name="proxy_hostname_label">"Název hostitele"</string>
+ <string name="proxy_error">"Upozornění!"</string>
+ <string name="proxy_error_dismiss">"OK"</string>
+ <string name="proxy_error_invalid_host">"Zadaný název hostitele není platný"</string>
+ <string name="proxy_error_empty_port">"Je nutné vyplnit pole portu"</string>
+ <string name="proxy_error_empty_host_set_port">"Pokud je pole hostitele prázdné, pole portu musí být rovněž prázdné"</string>
+ <string name="proxy_error_invalid_port">"Zadaný port není platný"</string>
+ <string name="radio_info_signal_location_label">"Umístění:"</string>
+ <string name="radio_info_neighboring_location_label">"Sousední CID:"</string>
+ <string name="radio_info_data_attempts_label">"Pokusy o přenos dat:"</string>
+ <string name="radio_info_imsi_label">"IMSI:"</string>
+ <string name="radio_info_gprs_service_label">"Služba GPRS:"</string>
+ <string name="radio_info_roaming_label">"Roaming:"</string>
+ <string name="radio_info_imei_label">"IMEI:"</string>
+ <string name="radio_info_call_redirect_label">"Přesměrování hovoru:"</string>
+ <string name="radio_info_ppp_resets_label">"Počet resetování PPP od spuštění:"</string>
+ <string name="radio_info_gsm_disconnects_label">"Odpojení sítě GSM:"</string>
+ <string name="radio_info_current_network_label">"Aktuální síť:"</string>
+ <string name="radio_info_data_successes_label">"Úspěšné (data):"</string>
+ <string name="radio_info_ppp_received_label">"Přijaté PPP:"</string>
+ <string name="radio_info_gsm_service_label">"Služba GSM:"</string>
+ <string name="radio_info_signal_strength_label">"Síla signálu:"</string>
+ <string name="radio_info_call_status_label">"Stav hovoru:"</string>
+ <string name="radio_info_ppp_sent_label">"Odeslané PPP:"</string>
+ <string name="radio_info_radio_resets_label">"Resetování rádia:"</string>
+ <string name="radio_info_message_waiting_label">"Čekající zpráva:"</string>
+ <string name="radio_info_phone_number_label">"Telefonní číslo:"</string>
+ <string name="radio_info_band_mode_label">"Vybrat rádiové pásmo"</string>
+ <string name="radio_info_network_type_label">"Typ sítě:"</string>
+ <string name="radio_info_set_perferred_label">"Nastavte upřednostňovaný typ sítě:"</string>
+ <!-- no translation found for radio_info_ping_ipaddr (7229811664688502621) -->
+ <skip />
+ <!-- no translation found for radio_info_ping_hostname (7817617877155199848) -->
+ <skip />
+ <!-- no translation found for radio_info_http_client_test (5100483824350561339) -->
+ <skip />
+ <!-- no translation found for radio_info_toggle_ciph_label (2705975697585878388) -->
+ <skip />
+ <!-- no translation found for ping_test_label (99396772665008247) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_label (6577522217730406517) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_update_label (6471155265532972448) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_refresh_label (4334057389927982364) -->
+ <skip />
+ <string name="band_mode_title">"Nastavit pásmo GSM/UMTS"</string>
+ <string name="band_mode_loading">"Načítá se seznam pásem…"</string>
+ <string name="band_mode_set">"Nastavit"</string>
+ <string name="band_mode_failed">"Neúspěch"</string>
+ <string name="band_mode_succeeded">"Úspěch"</string>
+ <string name="ringer_volume_ringer_mode_label">"Režim vyzvánění"</string>
+ <string name="ringer_volume_screen_increasing_text">"Zesilující vyzvánění"</string>
+ <string name="ringer_volume_ringtone_label">"Vyzv. tón"</string>
+ <string name="ringer_volume_instructions">"Hlasitost vyzvánění lze nastavit tlačítky pro hlasitost"</string>
+ <string name="sdcard_changes_instructions">"Změny se projeví po opětovném připojení kabelu USB"</string>
+ <string name="sdcard_settings_screen_mass_storage_text">"Povolit velkokapacitní paměťové zařízení USB"</string>
+ <string name="sdcard_settings_total_bytes_label">"Celkem bajtů:"</string>
+ <string name="sdcard_settings_not_present_status">"Karta SD chybí"</string>
+ <string name="sdcard_settings_available_bytes_label">"Bajty k dispozici:"</string>
+ <string name="sdcard_settings_mass_storage_status">"Karta SD se právě používá jako velkokapacitní paměťové zařízení"</string>
+ <string name="sdcard_settings_unmounted_status">"Nyní můžete kartu SD bezpečně vyjmout ze zařízení"</string>
+ <string name="sdcard_settings_bad_removal_status">"Karta SD byla vyjmuta během používání!"</string>
+ <string name="sdcard_settings_used_bytes_label">"Použité bajty:"</string>
+ <string name="sdcard_settings_scanning_status">"Vyhledávání médií na kartě SD…"</string>
+ <string name="sdcard_settings_read_only_status">"Vložená karta SD je pouze pro čtení"</string>
+ <string name="sdcard_removal_alert_title">"Nesprávné vyjmutí karty SD"</string>
+ <string name="sdcard_unmountable_alert_title">"Karta SD je nečitelná"</string>
+ <string name="telephony_user_label">"Uživatel:"</string>
+ <string name="telephony_server_label">"Server:"</string>
+ <string name="telephony_name_label">"Jméno:"</string>
+ <string name="telephony_mmsc_label">"MMSC:"</string>
+ <string name="telephony_apn_label">"APN:"</string>
+ <string name="telephony_mcc_label">"MCC:"</string>
+ <string name="telephony_port_label">"Port:"</string>
+ <string name="telephony_password_label">"Heslo:"</string>
+ <string name="telephony_proxy_label">"Proxy:"</string>
+ <string name="telephony_mnc_label">"MNC:"</string>
+ <string name="telephony_mmsproxy_label">"Proxy MMS:"</string>
+ <string name="telephony_mmsport_label">"Port MMS:"</string>
+ <string name="next_label">"Další"</string>
+ <string name="language_picker_title">"Jazyk"</string>
+ <!-- no translation found for select_your_language (9081963472187973531) -->
+ <skip />
+ <string name="activity_picker_label">"Vybrat činnost"</string>
+ <string name="device_info_label">"Informace o zařízení"</string>
+ <string name="battery_info_label">"Informace o baterii"</string>
+ <string name="display_label">"Displej"</string>
+ <string name="phone_info_label">"Informace o telefonu"</string>
+ <string name="sd_card_settings_label">"Karta SD"</string>
+ <string name="proxy_settings_label">"Nastavení serveru proxy"</string>
+ <string name="cancel">"Storno"</string>
+ <string name="settings_label">"Nastavení"</string>
+ <string name="airplane_mode">"Režim Letadlo"</string>
+ <!-- no translation found for airplane_mode_summary (3500557633417506553) -->
+ <skip />
+ <!-- no translation found for airplane_mode_turning_on (1243134862683209663) -->
+ <skip />
+ <!-- no translation found for airplane_mode_turning_off (2291183932542256190) -->
+ <skip />
+ <!-- no translation found for radio_controls_title (4981652151494753702) -->
+ <skip />
+ <!-- no translation found for radio_controls_summary (9105526969569292926) -->
+ <skip />
+ <string name="date_and_time_settings_title">"Datum a čas"</string>
+ <!-- no translation found for date_and_time_settings_summary (3489093199543794055) -->
+ <skip />
+ <string name="date_time_auto">"Automaticky"</string>
+ <string name="date_time_auto_summaryOn">"Použít hodnoty zjištěné ze sítě"</string>
+ <string name="date_time_auto_summaryOff">"Použít hodnoty vybrané uživatelem"</string>
+ <string name="date_time_24hour">"24hodinový formát"</string>
+ <string name="date_time_set_time">"Nastavit čas"</string>
+ <string name="date_time_set_timezone">"Nastavit časové pásmo"</string>
+ <string name="date_time_set_date">"Nastavit datum"</string>
+ <string name="date_time_date_format">"Nastavit formát data"</string>
+ <!-- no translation found for zone_list_menu_sort_alphabetically (8983103881342552870) -->
+ <skip />
+ <!-- no translation found for zone_list_menu_sort_by_timezone (7025442915093990469) -->
+ <skip />
+ <!-- no translation found for security_settings_title (969550777120624897) -->
+ <skip />
+ <!-- no translation found for security_settings_summary (3202445632951595923) -->
+ <skip />
+ <!-- no translation found for security_passwords_title (4466520735598079063) -->
+ <skip />
+ <string name="bluetooth_quick_toggle_title">"Bluetooth"</string>
+ <!-- no translation found for bluetooth_quick_toggle_summary (2292894901949724405) -->
+ <skip />
+ <!-- no translation found for bluetooth_settings (1545097653816106117) -->
+ <skip />
+ <string name="bluetooth_settings_title">"Nastavení Bluetooth"</string>
+ <!-- no translation found for bluetooth_settings_summary (1419697742707330821) -->
+ <skip />
+ <string name="bluetooth_pin_entry">"Zadání kódu PIN Bluetooth"</string>
+ <string name="bluetooth_device_info">"Informace o zařízení Bluetooth"</string>
+ <string name="bluetooth_pairing_msg">"Párování…"</string>
+ <string name="bluetooth_enter_pin_msg">"Zadejte kód PIN pro"</string>
+ <string name="bluetooth_new_data">"Zadejte nová data"</string>
+ <string name="bluetooth_new_data_confirm">"OK"</string>
+ <string name="bluetooth_new_data_cancel">"Storno"</string>
+ <string name="bluetooth_scan_for_new_devices">"Probíhá vyhledávání nových zařízení…"</string>
+ <string name="bluetooth_discoverability_panel_title">"Zjišťování zařízení…"</string>
+ <string name="bluetooth_discoverable">"Zjistitelné a připojitelné"</string>
+ <string name="bluetooth_connectable">"Pouze připojitelné"</string>
+ <string name="bluetooth_neither">"Nezjistitelné a nepřipojitelné"</string>
+ <!-- no translation found for bluetooth_preference_scan_title (5457824526570506576) -->
+ <skip />
+ <!-- no translation found for bluetooth_preference_scan_summary (4169248439102381141) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect (1360133741981139570) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect (3848550418295778426) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_pair_connect (3526057462723016574) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_unpair (1842004154350000288) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect_unpair (302606151874724466) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect_advanced (5004355397163127842) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect_specific_profiles_title (8557599374974072579) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_a2dp (6848174297822591204) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_headset (8660680578951214915) -->
+ <skip />
+ <string name="wifi">"Wi-Fi"</string>
+ <!-- no translation found for wifi_quick_toggle_title (4404851801229148146) -->
+ <skip />
+ <!-- no translation found for wifi_quick_toggle_summary (5254705029759236850) -->
+ <skip />
+ <string name="wifi_settings">"Nastavení Wi-Fi"</string>
+ <!-- no translation found for wifi_settings_category (610287013958209636) -->
+ <skip />
+ <!-- no translation found for wifi_settings_summary (8789964612748859011) -->
+ <skip />
+ <string name="forget_network">"Zapomenout"</string>
+ <!-- no translation found for wifi_status (4374358089273446404) -->
+ <skip />
+ <!-- no translation found for wifi_link_speed (8766462457818203791) -->
+ <skip />
+ <!-- no translation found for wifi_signal_3 (1264702582845283580) -->
+ <skip />
+ <!-- no translation found for wifi_signal_2 (3765197678751351272) -->
+ <skip />
+ <!-- no translation found for wifi_signal_1 (3469786868912545422) -->
+ <skip />
+ <!-- no translation found for wifi_signal_0 (7285670709111185231) -->
+ <skip />
+ <string name="security">"Zabezpečení"</string>
+ <!-- no translation found for wifi_security_open (6529463996240023139) -->
+ <skip />
+ <!-- no translation found for wifi_security_wep (8543279149057388909) -->
+ <skip />
+ <!-- no translation found for wifi_security_wpa (7229647924366572707) -->
+ <skip />
+ <!-- no translation found for wifi_security_wpa2 (641020427516679969) -->
+ <skip />
+ <!-- no translation found for wifi_security_unknown (7700764937580224930) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_open (7105261201983314526) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wep (2018232984976185738) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wpa (7240649761750328761) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wpa2 (5470387821577814216) -->
+ <skip />
+ <string name="ip_address">"Adresa IP"</string>
+ <string name="signal">"Síla signálu"</string>
+ <!-- no translation found for wifi_starting (380585178092358776) -->
+ <skip />
+ <!-- no translation found for wifi_stopping (1130828572786743854) -->
+ <skip />
+ <!-- no translation found for wifi_error (7223451684597210919) -->
+ <skip />
+ <string name="error_starting">"Chyba při spouštění Wi-Fi"</string>
+ <string name="error_stopping">"Chyba při ukončování Wi-Fi"</string>
+ <string name="error_scanning">"Chyba při vyhledávání sítí"</string>
+ <string name="error_connecting">"Chyba při připojování k síti"</string>
+ <string name="error_saving">"Chyba při ukládání sítě"</string>
+ <string name="connect">"Připojit"</string>
+ <string name="connect_to_blank">"Připojit k %1$s"</string>
+ <string name="please_type_passphrase">"Zadejte heslo bezdrátového připojení"</string>
+ <!-- no translation found for please_type_hex_key (3792966437690051423) -->
+ <skip />
+ <!-- no translation found for wifi_show_password (2142204324333077532) -->
+ <skip />
+ <string name="scan_wifi">"Vyhledat"</string>
+ <string name="summary_not_in_range">"Není v dosahu"</string>
+ <string name="summary_remembered">"Zapamatováno"</string>
+ <!-- no translation found for summary_connection_failed (5466501123715222542) -->
+ <skip />
+ <string name="wifi_access_points">"Sítě"</string>
+ <!-- no translation found for wifi_type_ssid (4389276980911820577) -->
+ <skip />
+ <!-- no translation found for wifi_security (8115513846744543151) -->
+ <skip />
+ <!-- no translation found for wifi_save_config (1041957548332322297) -->
+ <skip />
+ <!-- no translation found for wifi_password_unchanged (5583782979192657008) -->
+ <skip />
+ <!-- no translation found for wifi_add_other_network (914072465709281633) -->
+ <skip />
+ <!-- no translation found for wifi_notify_open_networks (3091942233631075516) -->
+ <skip />
+ <!-- no translation found for wifi_notify_open_networks_summary (1793737931132127488) -->
+ <skip />
+ <!-- no translation found for wifi_password_incorrect_error (8656138222468900361) -->
+ <skip />
+ <!-- no translation found for wifi_generic_connection_error (4414845075108763948) -->
+ <skip />
+ <!-- no translation found for wifi_menu_advanced (7729886219986221918) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_titlebar (6646153875184353089) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_menu_save (5525488681356054899) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_menu_cancel (4123436217014637229) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_invalid_ip (1648124374575025870) -->
+ <skip />
+ <!-- no translation found for wifi_use_static_ip (4076793026334955338) -->
+ <skip />
+ <!-- no translation found for wifi_ip_address (6067958502872259392) -->
+ <skip />
+ <!-- no translation found for wifi_dns1 (7502077213876989613) -->
+ <skip />
+ <!-- no translation found for wifi_dns2 (3296825469895827273) -->
+ <skip />
+ <!-- no translation found for wifi_gateway (393330487055540831) -->
+ <skip />
+ <!-- no translation found for wifi_netmask (6024777305439519433) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_connect (3348366738100644008) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_forget (5844111744505938081) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_change_password (7074463790535015442) -->
+ <skip />
+ <!-- no translation found for wifi_advanced_titlebar (7352048185262676955) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_title (4302664253747096207) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_summary (5137058932628594680) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_error (581404310349899492) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_channel_phrase (8341967925173918983) -->
+ <skip />
+ <string name="fragment_status_scanning">"Vyhledávání"</string>
+ <string name="fragment_status_connecting">"Připojování k %1$s"</string>
+ <string name="fragment_status_authenticating">"Ověřování u %1$s"</string>
+ <string name="fragment_status_obtaining_ip">"Získávání adresy IP od %1$s"</string>
+ <string name="fragment_status_connected">"Připojeno k %1$s"</string>
+ <string name="fragment_status_disconnecting">"Odpojování od %1$s"</string>
+ <string name="fragment_status_disconnected">"Odpojeno"</string>
+ <string name="fragment_status_failed">"Neúspěch"</string>
+ <string name="status_scanning">"Vyhledávání"</string>
+ <string name="status_connecting">"Připojování"</string>
+ <string name="status_authenticating">"Ověřování"</string>
+ <string name="status_obtaining_ip">"Získávání adresy IP"</string>
+ <string name="status_connected">"Připojeno"</string>
+ <string name="status_disconnecting">"Odpojování"</string>
+ <string name="status_disconnected">"Odpojeno"</string>
+ <string name="status_failed">"Neúspěch"</string>
+ <!-- no translation found for sound_and_display_settings (4749118288236939460) -->
+ <skip />
+ <!-- no translation found for sound_settings (2706184235211157339) -->
+ <skip />
+ <!-- no translation found for sound_and_display_settings_summary (3672623202659031178) -->
+ <skip />
+ <string name="silent_mode_title">"Tichý režim"</string>
+ <!-- no translation found for silent_mode_summary (6135093989634963053) -->
+ <skip />
+ <string name="ringtone_title">"Vyzváněcí tón telefonu"</string>
+ <!-- no translation found for ringtone_summary (1766080371183553822) -->
+ <skip />
+ <string name="ring_volume_title">"Hlasitost vyzvánění"</string>
+ <!-- no translation found for ring_volume_summary (8107485240454889544) -->
+ <skip />
+ <!-- no translation found for vibrate_title (4376574310180696114) -->
+ <skip />
+ <!-- no translation found for vibrate_summary (6788068739601216797) -->
+ <skip />
+ <string name="notification_sound_title">"Vyzváněcí tóny oznámení"</string>
+ <!-- no translation found for notification_sound_summary (7617168477811163700) -->
+ <skip />
+ <string name="notification_sound_dialog_title">"Vybrat vyzváněcí tóny oznámení"</string>
+ <!-- no translation found for media_volume_title (1693540506432790482) -->
+ <skip />
+ <!-- no translation found for media_volume_summary (7399719776785079493) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_title (5173416183471867551) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_summary_on (7206798183944836534) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_summary_off (1555390648905350809) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_title (1955885794556255214) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_summary_on (1491009278452582375) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_summary_off (1932117674347216086) -->
+ <skip />
+ <string name="sync_settings">"Synchronizace"</string>
+ <!-- no translation found for sync_settings_summary (2105151329390814783) -->
+ <skip />
+ <!-- no translation found for sync_too_many_deletes (5404332736593108449) -->
+ <skip />
+ <!-- no translation found for sync_automatically (1757054007777364379) -->
+ <skip />
+ <string name="sync_enabled">"Synchronizace se serverem Google povolena"</string>
+ <string name="sync_disabled">"Vypnuto"</string>
+ <string name="sync_menu_sync_now">"Synchronizovat"</string>
+ <string name="sync_menu_sync_cancel">"Zrušit synchronizaci"</string>
+ <string name="sync_gmail">"Gmail"</string>
+ <string name="sync_calendar">"Kalendář"</string>
+ <string name="sync_contacts">"Kontakty"</string>
+ <!-- no translation found for sync_too_many_deletes_desc (4152554451720380120) -->
+ <skip />
+ <!-- no translation found for sync_really_delete (8529530859370540061) -->
+ <skip />
+ <!-- no translation found for sync_undo_deletes (5506677219430968015) -->
+ <skip />
+ <!-- no translation found for sync_do_nothing (8346666920786786758) -->
+ <skip />
+ <!-- no translation found for sync_is_failing (427555999473172925) -->
+ <skip />
+ <!-- no translation found for sync_plug (7544937220884084907) -->
+ <skip />
+ <string name="display_settings">"Displej"</string>
+ <!-- no translation found for animations_title (8735876378664711924) -->
+ <skip />
+ <!-- no translation found for animations_summary_on (4910047473170373768) -->
+ <skip />
+ <!-- no translation found for animations_summary_off (7454248311417075336) -->
+ <skip />
+ <string name="brightness">"Jas"</string>
+ <!-- no translation found for screen_timeout (8939204183998677539) -->
+ <skip />
+ <string name="dim_screen">"Ztlumit obrazovku"</string>
+ <string name="sim_lock_settings">"Zámek karty SIM"</string>
+ <!-- no translation found for sim_lock_settings_category (5039441655358781230) -->
+ <skip />
+ <string name="sim_lock_settings_title">"Nastavení zámku karty SIM"</string>
+ <string name="sim_pin_toggle">"Zámek karty SIM"</string>
+ <string name="sim_lock_on">"Zámek karty SIM je zapnutý"</string>
+ <string name="sim_lock_off">"Zámek karty SIM je vypnutý"</string>
+ <string name="sim_pin_change">"Změnit kód PIN"</string>
+ <string name="sim_enter_pin">"Zadejte kód PIN karty SIM"</string>
+ <string name="sim_enable_sim_lock">"Povolit zámek karty SIM"</string>
+ <string name="sim_disable_sim_lock">"Zakázat zámek karty SIM"</string>
+ <string name="sim_enter_old">"Zadejte původní kód PIN"</string>
+ <string name="sim_enter_new">"Zadejte nový kód PIN"</string>
+ <string name="sim_reenter_new">"Zadejte nový kód PIN znovu"</string>
+ <string name="sim_change_pin">"Změnit kód PIN karty SIM"</string>
+ <string name="sim_bad_pin">"Upozornění: Nesprávný kód PIN"</string>
+ <string name="sim_pins_dont_match">"Upozornění: Kódy PIN neodpovídají"</string>
+ <string name="sim_change_failed">"Změna kódu PIN se nezdařila"\n"Pravděpodobně nesprávný kód PIN"</string>
+ <string name="sim_change_succeeded">"Kód PIN karty SIM úspěšně změněn"</string>
+ <string name="sim_lock_failed">"Změna stavu zámku karty SIM se nezdařila"\n"Pravděpodobně nesprávný kód PIN"</string>
+ <string name="sim_enter_ok">"OK"</string>
+ <string name="sim_enter_cancel">"Storno"</string>
+ <string name="device_info_settings">"Informace o zařízení"</string>
+ <!-- no translation found for system_update_settings_list_item_title (6730200310196695815) -->
+ <skip />
+ <!-- no translation found for system_update_settings_list_item_summary (6739352515982816664) -->
+ <skip />
+ <string name="firmware_version">"Verze firmwaru"</string>
+ <!-- no translation found for model_number (4107796374489189882) -->
+ <skip />
+ <string name="baseband_version">"Verze základního pásma"</string>
+ <!-- no translation found for kernel_version (55378504731737055) -->
+ <skip />
+ <!-- no translation found for build_number (1198654854394859525) -->
+ <skip />
+ <!-- no translation found for device_info_not_available (6218382614449625943) -->
+ <skip />
+ <!-- no translation found for device_status_activity_title (7855799759928692423) -->
+ <skip />
+ <string name="device_status">"Stav"</string>
+ <string name="device_status_summary">"IMEI, telefonní číslo, signál atd."</string>
+ <!-- no translation found for storage_settings_title (7861753874184164833) -->
+ <skip />
+ <!-- no translation found for storage_settings_summary (1416818376253802300) -->
+ <skip />
+ <string name="status_number">"Telefonní číslo"</string>
+ <string name="status_network_type">"Typ sítě"</string>
+ <string name="status_data_state">"Přístup k datům"</string>
+ <string name="status_service_state">"Stav služby"</string>
+ <string name="status_signal_strength">"Síla signálu"</string>
+ <string name="status_roaming">"Roaming"</string>
+ <string name="status_operator">"Síť"</string>
+ <!-- no translation found for status_wifi_mac_address (6992831729694423293) -->
+ <skip />
+ <!-- no translation found for status_bt_address (504373592762785867) -->
+ <skip />
+ <!-- no translation found for status_unavailable (6051510065892966154) -->
+ <skip />
+ <string name="status_up_time">"Doba provozu"</string>
+ <string name="status_awake_time">"Čas probuzení"</string>
+ <!-- no translation found for internal_memory (7561409402817962159) -->
+ <skip />
+ <!-- no translation found for sd_memory (1795406535114313767) -->
+ <skip />
+ <!-- no translation found for memory_available (2899158225295363424) -->
+ <skip />
+ <!-- no translation found for memory_size (427803224818498885) -->
+ <skip />
+ <!-- no translation found for sd_eject (5921913949386442101) -->
+ <skip />
+ <string name="sd_unavailable">"Nedostupný"</string>
+ <string name="read_only">" (jen pro čtení)"</string>
+ <!-- no translation found for battery_status_title (4908729478929871241) -->
+ <skip />
+ <!-- no translation found for battery_level_title (7696801820825704716) -->
+ <skip />
+ <string name="apn_settings">"APN"</string>
+ <string name="apn_edit">"Upravit přístupový bod"</string>
+ <string name="apn_not_set">"&lt;Nenastaveno&gt;"</string>
+ <string name="apn_name">"Název"</string>
+ <string name="apn_apn">"APN"</string>
+ <string name="apn_http_proxy">"Proxy"</string>
+ <string name="apn_http_port">"Port"</string>
+ <string name="apn_user">"Uživatelské jméno"</string>
+ <string name="apn_password">"Heslo"</string>
+ <string name="apn_server">"Server"</string>
+ <string name="apn_mmsc">"MMSC"</string>
+ <string name="apn_mms_proxy">"Proxy MMS"</string>
+ <string name="apn_mms_port">"Port MMS"</string>
+ <string name="apn_mcc">"MCC"</string>
+ <string name="apn_mnc">"MNC"</string>
+ <!-- no translation found for apn_type (2506383481268652319) -->
+ <skip />
+ <string name="menu_delete">"Odstranit APN"</string>
+ <string name="menu_new">"Nový APN"</string>
+ <string name="menu_save">"Uložit"</string>
+ <string name="menu_cancel">"Zrušit"</string>
+ <string name="error_title">"Neplatná data"</string>
+ <string name="error_name_empty">"Název nemůže být prázdný"</string>
+ <string name="error_apn_empty">"Název přístupového bodu nemůže být prázdný"</string>
+ <string name="error_mcc_not3">"Pole MCC musí obsahovat 3 číslice"</string>
+ <string name="error_mnc_not23">"Pole MNC musí obsahovat 2 nebo 3 číslice"</string>
+ <string name="master_clear_title">"Hlavní vymazání"</string>
+ <!-- no translation found for master_clear_summary (2468534382451112879) -->
+ <skip />
+ <string name="master_clear_desc">"Resetuje zařízení do původního stavu z výroby, vymaže všechna data a stažené aplikace"</string>
+ <string name="master_clear_button_text">"Resetujte zařízení"</string>
+ <string name="master_clear_final_desc">"Chcete resetovat zařízení a vymazat všechna data a aplikace? Tuto akci nelze vrátit zpět!"</string>
+ <string name="master_clear_final_button_text">"Vymazat vše"</string>
+ <string name="master_clear_gesture_prompt">"Nakreslete vzor pro uzamčení"</string>
+ <string name="master_clear_gesture_explanation">"Reset zařízení je nutné potvrdit nakreslením vzoru pro uzamčení"</string>
+ <string name="master_clear_failed">"Reset nebyl proveden, protože služba Vymazání systému není k dispozici"</string>
+ <string name="call_settings_title">"Nastavení volání"</string>
+ <!-- no translation found for call_settings_summary (3446216896482844237) -->
+ <skip />
+ <string name="network_settings_title">"Nastavení sítě"</string>
+ <!-- no translation found for network_settings_summary (8031949240036716110) -->
+ <skip />
+ <!-- no translation found for location_title (4501749309437121375) -->
+ <skip />
+ <string name="location_network_based">"Podle sítě"</string>
+ <!-- no translation found for location_networks_disabled (7048471014395968941) -->
+ <skip />
+ <string name="location_neighborhood_level">"Přesnost na úroveň okolí"</string>
+ <string name="location_gps">"Podle GPS"</string>
+ <string name="location_street_level">"Přesnost na úroveň ulic"</string>
+ <!-- no translation found for location_gps_disabled (4004885356658024277) -->
+ <skip />
+ <!-- no translation found for about_settings (1468182090257585152) -->
+ <skip />
+ <!-- no translation found for about_settings_summary (7669309646592260587) -->
+ <skip />
+ <!-- no translation found for legal_information (6712607847710471677) -->
+ <skip />
+ <!-- no translation found for contributors_title (4798193298012318879) -->
+ <skip />
+ <!-- no translation found for copyright_title (2179228277436615247) -->
+ <skip />
+ <!-- no translation found for license_title (819526735187376873) -->
+ <skip />
+ <!-- no translation found for terms_title (7807601861320706623) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_title (7912723098716795094) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_unavailable (2081311778550755077) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_loading (1663818560123999889) -->
+ <skip />
+ <string name="lock_settings_title">"Speciální tah pro uzamčení"</string>
+ <string name="lockpattern_change_lock_pattern_label">"Změnit vzor pro uzamčení"</string>
+ <string name="lockpattern_need_to_unlock">"Potvrzení uloženého vzoru:"</string>
+ <string name="lockpattern_need_to_unlock_wrong">"Nesprávně! Opakujte akci:"</string>
+ <string name="lockpattern_recording_intro_header">"Nakreslete vzor, který bude použit jako kódový zámek:"</string>
+ <string name="lockpattern_recording_intro_footer">"Stisknutím tlačítka Nabídka zobrazíte nápovědu"</string>
+ <string name="lockpattern_recording_inprogress">"Po skončení uvolněte prst"</string>
+ <!-- no translation found for lockpattern_recording_incorrect_too_short (8234374450664107990) -->
+ <skip />
+ <string name="lockpattern_pattern_entered_header">"Vybrali jste:"</string>
+ <!-- no translation found for lockpattern_need_to_confirm (6414172006294337771) -->
+ <skip />
+ <string name="lockpattern_pattern_confirmed_header">"Nový vzor pro uzamčení:"</string>
+ <string name="lockpattern_confirm_button_text">"Potvrdit"</string>
+ <string name="lockpattern_restart_button_text">"Restartovat"</string>
+ <!-- no translation found for lockpattern_retry_button_text (7695474740059017745) -->
+ <skip />
+ <!-- no translation found for lockpattern_continue_button_text (1077275957953266837) -->
+ <skip />
+ <string name="lockpattern_settings_title">"Speciální tah pro uzamčení"</string>
+ <string name="lockpattern_settings_enable_title">"Speciální tah pro uzamčení"</string>
+ <string name="lockpattern_settings_enable_summary">"K odemčení požadovat speciální tah"</string>
+ <string name="lockpattern_settings_enable_visible_pattern_title">"Použít viditelný vzor"</string>
+ <string name="lockpattern_settings_choose_lock_pattern">"Vybrat vzor speciálního tahu pro uzamčení"</string>
+ <string name="lockpattern_settings_change_lock_pattern">"Změnit vzor speciálního tahu pro uzamčení"</string>
+ <string name="lockpattern_settings_help_how_to_record">"Jak zaznamenat vzor pro uzamčení"</string>
+ <string name="lockpattern_too_many_failed_confirmation_attempts_header">"Příliš mnoho nesprávných pokusů o potvrzení"</string>
+ <string name="lockpattern_too_many_failed_confirmation_attempts_footer">"Opakujte akci za <xliff:g id="NUMBER">%d</xliff:g> sekund"</string>
+ <!-- no translation found for skip_button_label (4850708311344393218) -->
+ <skip />
+ <!-- no translation found for next_button_label (3149701380025478958) -->
+ <skip />
+ <!-- no translation found for lock_title (999106562425756837) -->
+ <skip />
+ <!-- no translation found for lock_intro_message (2382351248538397170) -->
+ <skip />
+ <!-- no translation found for lock_example_title (6261868148302088973) -->
+ <skip />
+ <!-- no translation found for lock_example_message (2583534765034914458) -->
+ <skip />
+ <!-- no translation found for manageapplications_settings_title (3359899792647354589) -->
+ <skip />
+ <!-- no translation found for applications_settings (6104314134883460574) -->
+ <skip />
+ <!-- no translation found for applications_settings_summary (7666960391957493763) -->
+ <skip />
+ <!-- no translation found for applications_settings_header (6167136604757235210) -->
+ <skip />
+ <!-- no translation found for install_applications (8586540661161378543) -->
+ <skip />
+ <!-- no translation found for install_unknown_applications (8694019339326383901) -->
+ <skip />
+ <!-- no translation found for install_all_warning (5826871395153503952) -->
+ <skip />
+ <!-- no translation found for manage_applications_title (8288310040777485758) -->
+ <skip />
+ <!-- no translation found for application_info_label (605192869687093760) -->
+ <skip />
+ <!-- no translation found for storage_label (8765276782501761971) -->
+ <skip />
+ <!-- no translation found for auto_launch_label (3546876666453498673) -->
+ <skip />
+ <!-- no translation found for permissions_label (3244346920180368862) -->
+ <skip />
+ <!-- no translation found for total_size_label (5016115699600749568) -->
+ <skip />
+ <!-- no translation found for application_size_label (5378963933449396413) -->
+ <skip />
+ <!-- no translation found for data_size_label (6038126657652457179) -->
+ <skip />
+ <!-- no translation found for uninstall_text (2322009518449651787) -->
+ <skip />
+ <!-- no translation found for clear_user_data_text (3586758620250813061) -->
+ <skip />
+ <!-- no translation found for auto_launch_enable_text (8228619838865933982) -->
+ <skip />
+ <!-- no translation found for auto_launch_disable_text (4696687016762486484) -->
+ <skip />
+ <!-- no translation found for clear_activities (2399981667625036009) -->
+ <skip />
+ <!-- no translation found for unknown (7966307317466394761) -->
+ <skip />
+ <!-- no translation found for sort_order_alpha (210746743398042077) -->
+ <skip />
+ <!-- no translation found for sort_order_size (2716777274377923612) -->
+ <skip />
+ <!-- no translation found for manage_space_text (3118726017144542336) -->
+ <skip />
+ <!-- no translation found for filter_apps_all (5819127882791374920) -->
+ <skip />
+ <!-- no translation found for filter_apps_third_party (8693065498520334174) -->
+ <skip />
+ <!-- no translation found for filter_apps_running (2019159142681656258) -->
+ <skip />
+ <!-- no translation found for loading (5170696093820794830) -->
+ <skip />
+ <!-- no translation found for recompute_size (8376294373548662083) -->
+ <skip />
+ <!-- no translation found for clear_data_dlg_title (2115093619616088799) -->
+ <skip />
+ <!-- no translation found for clear_data_dlg_text (3004273956481932846) -->
+ <skip />
+ <!-- no translation found for dlg_ok (2225130755859653348) -->
+ <skip />
+ <!-- no translation found for dlg_cancel (8597172015374919396) -->
+ <skip />
+ <!-- no translation found for app_not_found_dlg_title (6649900521951617898) -->
+ <skip />
+ <!-- no translation found for app_not_found_dlg_text (6893475426667174751) -->
+ <skip />
+ <!-- no translation found for clear_data_failed (3040984234884359027) -->
+ <skip />
+ <!-- no translation found for security_settings_desc (5898339748632998613) -->
+ <skip />
+ <!-- no translation found for default_app_desc (3475613003133497043) -->
+ <skip />
+ <!-- no translation found for computing_size (7350089935999085554) -->
+ <skip />
+ <!-- no translation found for invalid_size_value (3054945647487201471) -->
+ <skip />
+ <!-- no translation found for language_settings (7247557040404006341) -->
+ <skip />
+ <!-- no translation found for language_settings_summary (721948806318958691) -->
+ <skip />
+ <!-- no translation found for language_category (6646529166552376418) -->
+ <skip />
+ <!-- no translation found for text_category (3133311779500246731) -->
+ <skip />
+ <!-- no translation found for phone_language (4084332836028530631) -->
+ <skip />
+ <!-- no translation found for auto_replace (6134508433464846627) -->
+ <skip />
+ <!-- no translation found for auto_replace_summary (1016177921245107750) -->
+ <skip />
+ <!-- no translation found for auto_caps (6021984352657087728) -->
+ <skip />
+ <!-- no translation found for auto_caps_summary (4783973594319542220) -->
+ <skip />
+ <!-- no translation found for auto_punctuate (2819742922158924703) -->
+ <skip />
+ <!-- no translation found for auto_punctuate_summary (2664143621323054924) -->
+ <skip />
+ <!-- no translation found for show_password (2353636034424349266) -->
+ <skip />
+ <!-- no translation found for show_password_summary (3920555488855590831) -->
+ <skip />
+ <!-- no translation found for testing (555268605244514909) -->
+ <skip />
+ <!-- no translation found for testing_phone_info (8718517606602144606) -->
+ <skip />
+ <!-- no translation found for testing_battery_info (3826036256683980425) -->
+ <skip />
+ <!-- no translation found for quick_launch_title (5423323579273213815) -->
+ <skip />
+ <!-- no translation found for quick_launch_summary (1272194567210324017) -->
+ <skip />
+ <!-- no translation found for quick_launch_assign_application (5949445664563354321) -->
+ <skip />
+ <!-- no translation found for quick_launch_no_shortcut (5958195604101558965) -->
+ <skip />
+ <!-- no translation found for quick_launch_shortcut (1115195051591830635) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_dialog_title (5217130241215296612) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_dialog_message (3420665419624963430) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_ok_button (2442832413597511429) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_cancel_button (1437354385792055993) -->
+ <skip />
+ <!-- no translation found for quick_launch_display_mode_applications (6570683843184675363) -->
+ <skip />
+ <!-- no translation found for quick_launch_display_mode_shortcuts (6642750364678074004) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_title (1752662012056721926) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_summary (5481367119142131313) -->
+ <skip />
+ <!-- no translation found for development_settings_title (4671731485005432632) -->
+ <skip />
+ <!-- no translation found for development_settings_summary (5518361138194831299) -->
+ <skip />
+ <!-- no translation found for enable_adb (7770070343289262572) -->
+ <skip />
+ <!-- no translation found for enable_adb_summary (1498997582065835981) -->
+ <skip />
+ <!-- no translation found for keep_screen_on (5805533478834516956) -->
+ <skip />
+ <!-- no translation found for keep_screen_on_summary (5703353541069794974) -->
+ <skip />
+ <!-- no translation found for allow_mock_location (6204808904743157937) -->
+ <skip />
+ <!-- no translation found for allow_mock_location_summary (3154837501223277592) -->
+ <skip />
</resources>
diff --git a/res/values-de-rDE/strings.xml b/res/values-de-rDE/strings.xml
deleted file mode 100644
index c6940e9..0000000
--- a/res/values-de-rDE/strings.xml
+++ /dev/null
@@ -1,700 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="about_settings">Telefon Info</string>
- <string name="about_settings_summary">Rechtliche Hinweise, Telefonstatus und Softwareversion anzeigen</string>
- <string name="activity_picker_label">Aktivität auswählen</string>
- <string name="airplane_mode">Flugmodus</string>
- <string name="airplane_mode_summary">Wählen Sie dies, um alle Drahtlosverbindungen zu deaktivieren</string>
- <string name="airplane_mode_turning_off">Drahtlosverbindungen werden aktiviert\u2026</string>
- <string name="airplane_mode_turning_on">Drahtlosverbindungen werden deaktiviert\u2026</string>
- <string name="android_id_label">Android-ID</string>
- <string name="apn_apn">APN</string>
- <string name="apn_edit">Zugangspunkt bearbeiten</string>
- <string name="apn_http_port">Anschluss</string>
- <string name="apn_http_proxy">Proxy</string>
- <string name="apn_label">APN</string>
- <string name="apn_mcc">MCC</string>
- <string name="apn_mms_port">MMS-Anschluss</string>
- <string name="apn_mms_proxy">MMS-Proxy</string>
- <string name="apn_mmsc">MMSC</string>
- <string name="apn_mnc">MNC</string>
- <string name="apn_name">Name</string>
- <string name="apn_not_set">&lt;Nicht eingestellt&gt;</string>
- <string name="apn_password">Kennwort</string>
- <string name="apn_server">Server</string>
- <string name="apn_settings">APNs</string>
- <string name="apn_type">APN-Typ</string>
- <string name="apn_user">Benutzername</string>
- <string name="app_launcher_newView_text">Neuer AppLauncher</string>
- <string name="app_not_found_dlg_text"> Die Anwendung wurde nicht
-in der Liste installierter Anwendungen gefunden.</string>
- <string name="app_not_found_dlg_title">Anwendung nicht gefunden</string>
- <string name="application_info_label">Anwendungsinformationen</string>
- <string name="application_size_label">Anwendung</string>
- <string name="applications_settings">Anwendungen</string>
- <string name="applications_settings_header">Anwendungseinstellungen</string>
- <string name="applications_settings_summary">Anwendungen verwalten und Startverknüpfungen einrichten</string>
- <string name="auto_caps">Automatische Großschreibung</string>
- <string name="auto_caps_summary">Ersten Buchstaben in Sätzen großschreiben</string>
- <string name="auto_launch_disable_text">Keine Standardwerte eingestellt.</string>
- <string name="auto_launch_enable_text">Sie haben ausgewählt, diese Anwendungen für bestimmte Aktionen automatisch zu starten.</string>
- <string name="auto_launch_label">Standardmäßig starten</string>
- <string name="auto_punctuate">Automatisch interpunktieren</string>
- <string name="auto_punctuate_summary">Für Eingabe Leertaste zweimal drücken \u0022.\u0022</string>
- <string name="auto_replace">Automatisch ersetzen</string>
- <string name="auto_replace_summary">Falsch geschriebene Wörter korrigieren</string>
- <string name="autorotate">Automatisch drehen</string>
- <string name="autorotate_summary_off">Bei Änderung der Displayausrichtung die Anwendung nicht drehen</string>
- <string name="autorotate_summary_on">Bei Änderung der Displayausrichtung die Anwendung drehen</string>
- <string name="b_text">B</string>
- <string name="band_mode_failed">Nicht erfolgreich</string>
- <string name="band_mode_loading">Laden von Bandliste\u2026</string>
- <string name="band_mode_set">Einstellen</string>
- <string name="band_mode_succeeded">Erfolgreich</string>
- <string name="band_mode_title">GSM/UMTS-Band einstellen</string>
- <string name="baseband_version">Basisbandversion</string>
- <string name="basic_settings_title">Telefongrundlagen</string>
- <string name="battery_info_awake_battery">Wachzeit für Akku:</string>
- <string name="battery_info_awake_plugged">Wachzeit beim Laden:</string>
- <string name="battery_info_health_dead">Nicht aktiv</string>
- <string name="battery_info_health_good">Gut</string>
- <string name="battery_info_health_label">Akkuzustand:</string>
- <string name="battery_info_health_over_voltage">Überspannung</string>
- <string name="battery_info_health_overheat">Überhitzung</string>
- <string name="battery_info_health_unknown">Unbekannt</string>
- <string name="battery_info_health_unspecified_failure">Unbekannter Fehler</string>
- <string name="battery_info_label">Akkuinfo</string>
- <string name="battery_info_level_label">Akkuladung:</string>
- <string name="battery_info_scale_label">Akkuskala:</string>
- <string name="battery_info_screen_on">Display-Ein-Zeit:</string>
- <string name="battery_info_status_charging">Lädt</string>
- <string name="battery_info_status_charging_ac">(Netzstrom)</string>
- <string name="battery_info_status_charging_usb">(USB)</string>
- <string name="battery_info_status_discharging">Entladung</string>
- <string name="battery_info_status_full">Voll</string>
- <string name="battery_info_status_label">Akkustatus:</string>
- <string name="battery_info_status_not_charging">Kein Laden</string>
- <string name="battery_info_status_unknown">Unbekannt</string>
- <string name="battery_info_technology_label">Akkutechnologie:</string>
- <string name="battery_info_temperature_label">Akkutemperatur:</string>
- <string name="battery_info_temperature_units">\u00B0 C</string>
- <string name="battery_info_uptime">Zeit seit Start:</string>
- <string name="battery_info_voltage_label">Akkuspannung:</string>
- <string name="battery_info_voltage_units">mV</string>
- <string name="battery_level_title">Akkuladung</string>
- <string name="battery_status_title">Akkustatus</string>
- <string name="bluetooth">Bluetooth</string>
- <string name="bluetooth_clear_list">Geräteliste löschen</string>
- <string name="bluetooth_connect">Verbinden</string>
- <string name="bluetooth_connectable">Nur verbindbar</string>
- <string name="bluetooth_connected">Verbunden</string>
- <string name="bluetooth_connecting">Verbindet\u2026</string>
- <string name="bluetooth_device">Freisprechen/Headset</string>
- <string name="bluetooth_device_info">Bluetooth-Geräteinfo</string>
- <string name="bluetooth_device_info_alias">Anderer Gerätename</string>
- <string name="bluetooth_device_info_delete">Dieses Gerät entfernen</string>
- <string name="bluetooth_device_info_no_alias">Anderen Namen hier eingeben\u2026</string>
- <string name="bluetooth_device_info_sdp">Unterstützte Dienste auflisten</string>
- <string name="bluetooth_device_name">Gerätename</string>
- <string name="bluetooth_devices">Bluetooth-Geräte</string>
- <string name="bluetooth_disabled">Auswählen, um Bluetooth zu aktivieren</string>
- <string name="bluetooth_disconnect">Trennen</string>
- <string name="bluetooth_disconnect_blank"><xliff:g id="device_name">%1$s</xliff:g> wird getrennt</string>
- <string name="bluetooth_discoverability_panel_title">Folgenden Zustand aktivieren\u2026</string>
- <string name="bluetooth_discoverable">Erkennbar für %1$s Sekunden</string>
- <string name="bluetooth_enable_text">Leere Taste\u2026</string>
- <string name="bluetooth_enabled">Auswählen, um Bluetooth zu aktivieren</string>
- <string name="bluetooth_enabling">Bluetooth einschalten\u2026</string>
- <string name="bluetooth_enter_pin_msg">PIN-Eingabe für\u0020</string>
- <string name="bluetooth_failed_to_enable">Bluetooth kann nicht aktiviert werden</string>
- <string name="bluetooth_is_discoverable">Erkennbar für %1$s Sekunden\u2026</string>
- <string name="bluetooth_name_not_set">Keine Name eingestellt; Kontoname wird verwendet</string>
- <string name="bluetooth_neither">Weder auffindbar noch verbindbar</string>
- <string name="bluetooth_new_data">Neue Daten eingeben</string>
- <string name="bluetooth_new_data_cancel">Abbrechen</string>
- <string name="bluetooth_new_data_confirm">OK</string>
- <string name="bluetooth_not_connected">Mit diesem Gerät koppeln</string>
- <string name="bluetooth_not_discoverable">Auswählen, um Gerät erkennbar zu machen</string>
- <string name="bluetooth_notif_message">Auswahl zur Kopplung mit\u0020</string>
- <string name="bluetooth_notif_ticker">Anfrage für Bluetooth-Kopplung</string>
- <string name="bluetooth_notif_title">Anfrage für Bluetooth-Kopplung</string>
- <string name="bluetooth_pair">Koppeln</string>
- <string name="bluetooth_paired">Gekoppelt</string>
- <string name="bluetooth_paired_not_nearby">Gekoppelt</string>
- <string name="bluetooth_pairing">Wird gekoppelt\u2026</string>
- <string name="bluetooth_pairing_msg">Wird gekoppelt\u2026</string>
- <string name="bluetooth_pin_entry">Bluetooth-PIN-Eingabe</string>
- <string name="bluetooth_quick_toggle_summary">Auswählen, um Bluetooth zu aktivieren</string>
- <string name="bluetooth_quick_toggle_title">Bluetooth</string>
- <string name="bluetooth_scan_for_devices">Nach Geräten suchen</string>
- <string name="bluetooth_scan_for_new_devices">Nach neuen Geräten suchen\u2026</string>
- <string name="bluetooth_scan_text">Leere Taste\u2026</string>
- <string name="bluetooth_settings">Bluetooth-Einstellungen</string>
- <string name="bluetooth_settings_summary">Verbindungen verwalten, Gerätenamen und Erkennbarkeit einstellen</string>
- <string name="bluetooth_settings_text">Leere Taste\u2026</string>
- <string name="bluetooth_settings_title">Bluetooth-Einstellungen</string>
- <string name="bluetooth_starting">Starten von Bluetooth\u2026</string>
- <string name="bluetooth_stopping">Stoppen von Bluetooth\u2026</string>
- <string name="bluetooth_unknown">Unbekannt</string>
- <string name="bluetooth_unpair">Entkoppeln</string>
- <string name="bluetooth_visibility">Erkennbar</string>
- <string name="bootloader_version">Boot-Loader-Version</string>
- <string name="brightness">Helligkeit</string>
- <string name="build_date_label">Herstellungsdatum</string>
- <string name="build_description_label">Herstellungsbeschreibung</string>
- <string name="build_host_label">Herstellungshost</string>
- <string name="build_id_label">Herstellungs-ID</string>
- <string name="build_number">Herstellungsnummer</string>
- <string name="build_type_label">Herstellungstyp</string>
- <string name="build_user_label">Herstellungsanwender</string>
- <string name="call_settings_summary">Mobilbox, Rufumleitung, Anklopfen, Anrufer-ID einrichten</string>
- <string name="call_settings_title">Anrufeinstellungen</string>
- <string name="cancel">Abbrechen</string>
- <string name="checkin_button_label">Nach Upgrade suchen</string>
- <string name="checkin_download_failed">Nicht erfolgreich</string>
- <string name="checkin_download_label">Status Herunterladen</string>
- <string name="checkin_download_ongoing">Wird heruntergeladen</string>
- <string name="checkin_download_pending">Hängend</string>
- <string name="checkin_download_succeeded">Abgeschlossen</string>
- <string name="checkin_download_suspended">Ausgesetzt</string>
- <string name="checkin_download_unknown">Unbekannter Status</string>
- <string name="checkin_failures_label">Fehler seit letztem Erfolg</string>
- <string name="checkin_last_time_label">Letzter erfolgreicher Check-in</string>
- <string name="checkin_started_message">Check-in gestartet\u2026</string>
- <string name="checkin_status_label">Check-in-Status</string>
- <string name="checkin_time_never">(nie)</string>
- <string name="checkin_upgrade_label">Ausstehendes Upgrade</string>
- <string name="choose_timezone">Zeitzone auswählen</string>
- <string name="choose_timezone_region">Region auswählen</string>
- <string name="clear_activities">Standardwerte löschen</string>
- <string name="clear_data_dlg_text">Alle Daten, die Sie in dieser Anwendung gespeichert haben, werden dauerhaft gelöscht.</string>
- <string name="clear_data_dlg_title">Löschen</string>
- <string name="clear_data_failed">Anwendungsdaten können nicht gelöscht werden.</string>
- <string name="clear_user_data_text">Daten löschen</string>
- <string name="computing_size">Berechung von Anwendungsgrößen\u2026</string>
- <string name="connect">Verbinden</string>
- <string name="connect_to_blank">Verbinden mit <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="contributors_title">Tragen bei</string>
- <string name="copyright_title">Copyright</string>
- <string name="data_settings">Dateneinstellungen</string>
- <string name="data_settings_summary">SD-Karte und Telefonspeicher, Datensynchronisierung</string>
- <string name="data_settings_title">Daten</string>
- <string name="data_size_label">Daten</string>
- <string name="date_and_time">Datum- &amp; Uhrzeit-Einstellungen</string>
- <string name="date_and_time_settings_summary">Datum, Uhrzeit, Zeitzone und Formate einstellen</string>
- <string name="date_and_time_settings_title">Datum &amp; Uhrzeit</string>
- <string name="date_time_24hour">24-Stunden-Format verwenden</string>
- <string name="date_time_auto">Automatisch</string>
- <string name="date_time_auto_summaryOff">Vom Netz bereitgestellte Werte verwenden</string>
- <string name="date_time_auto_summaryOn">Vom Netz bereitgestellte Werte verwenden</string>
- <string name="date_time_changeDate_text">Datum ändern</string>
- <string name="date_time_changeTime_text">Uhrzeit ändern</string>
- <string name="date_time_dateDisplay_text">3. Nov. 1997</string>
- <string name="date_time_date_format">Datumsformat auswählen</string>
- <string name="date_time_set_date">Datum einstellen</string>
- <string name="date_time_set_time">Uhrzeit einstellen</string>
- <string name="date_time_set_timezone">Zeitzone einstellen</string>
- <string name="date_time_setzone_text">Zeitzone ändern</string>
- <string name="date_time_timeDisplay_text">11 Uhr 45 </string>
- <string name="date_time_timezone_label">Zeitzone:</string>
- <string name="debug_intent_sender_label">Debug-Intent-Sender</string>
- <string name="default_date_format">TT/MM/JJJJ</string>
- <string name="default_keyboard_device_label">Standard-Tastatur</string>
- <string name="development_settings_summary">Einstellungen für Anwendungsentwicklung</string>
- <string name="development_settings_title">Entwicklung</string>
- <string name="device_info_asleeptime">Schlafzeit</string>
- <string name="device_info_awaketime">Wachzeit</string>
- <string name="device_info_default">Unbekannt</string>
- <string name="device_info_label">Geräteinfo</string>
- <string name="device_info_not_available">Nicht verfügbar</string>
- <string name="device_info_settings">Telefonstatus</string>
- <string name="device_info_uptime">Auf-Zeit</string>
- <string name="device_status">Status</string>
- <string name="device_status_summary">IMEI, Telefonnummer, Signal usw.</string>
- <string name="dim_screen">Display abdunkeln</string>
- <string name="disconnect_ums">USB-Massenspeicher trennen</string>
- <string name="display_font_size_label">Schriftgröße:</string>
- <string name="display_label">Anzeige</string>
- <string name="display_preview_label">Vorschau:</string>
- <string name="display_settings">Anzeigeeinstellungen</string>
- <string name="dlg_cancel">Abbrechen</string>
- <string name="dlg_ok">OK</string>
- <string name="done">OK</string>
- <string name="dtmf_tone_enable_summary_off">Bei Verwendung der Wähltastatur Töne wiedergeben</string>
- <string name="dtmf_tone_enable_summary_on">Bei Verwendung der Wähltastatur Töne wiedergeben</string>
- <string name="dtmf_tone_enable_title">Töne beim Touch-Screen-Tippen</string>
- <string name="enable_adb">USB-Debugging</string>
- <string name="enable_adb_summary">Debug-Modus wenn USB angeschlossen ist</string>
- <string name="error_apn_empty">Der APN (Zugangspunkt-Name) darf nicht leer sein.</string>
- <string name="error_connecting">Verbindung mit dem Netz nicht möglich</string>
- <string name="error_mcc_not3">MCC-Feld muss aus drei Stellen bestehen.</string>
- <string name="error_mnc_not23">MNC-Feld muss aus zwei oder drei Stellen bestehen.</string>
- <string name="error_name_empty">Das Namensfeld darf nicht leer sein.</string>
- <string name="error_saving">Netz kann nicht gespeichert werden</string>
- <string name="error_scanning">Suche nach Netzen nicht möglich</string>
- <string name="error_starting">Starten von Wi-Fi nicht möglich</string>
- <string name="error_stopping">Stoppen von Wi-Fi nicht möglich</string>
- <string name="error_title">Achtung</string>
- <string name="failed_to_connect">Verbindung zu <xliff:g id="device_name">%1$s</xliff:g> kann nicht hergestellt werden</string>
- <string name="failed_to_pair">Kopplung mit <xliff:g id="device_name">%1$s</xliff:g> nicht möglich</string>
- <string name="favorites_label">Favoriten</string>
- <string name="firmware_version">Firmwareversion</string>
- <string name="font_size_preview_text">Servez à ce monsieur une bière et des kiwis.</string>
- <string name="font_size_save">OK</string>
- <string name="forget_network">Vergessen</string>
- <string name="fragment_status_authenticating">Authentifizieren mit <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_connected">Verbunden mit <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="fragment_status_connecting">Verbinden mit <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_disconnected">Getrennt</string>
- <string name="fragment_status_disconnecting">Trennen von <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_failed">Nicht erfolgreich</string>
- <string name="fragment_status_obtaining_ip">Beziehen von IP-Adresse von <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_scanning">Durchsuchen\u2026</string>
- <string name="gsm_version_baseband_label">Basisbandversion</string>
- <string name="gsm_version_ril_impl_label">RIL-(Firmware-)Impl-Version</string>
- <string name="install_all_warning">Das Telefon und persönliche Daten können leichter von Anwendungen
- unbekannter Quellen angegriffen werden. Sie erklären hiermit, dass Sie allein für jegliche
- Schäden am Telefon oder Verlust an Daten verantwortlich sind, die auf die Verwendung
- dieser Anwendungen zurückgeführt werden können.</string>
- <string name="install_applications">Unbekannte Quellen</string>
- <string name="install_unknown_applications">Installation von Anwendungen erlauben, die nicht aus dem Markt stammen</string>
- <string name="intent_sender_account_label">Konto: </string>
- <string name="intent_sender_action_label">Aktion:</string>
- <string name="intent_sender_data_label">Daten:</string>
- <string name="intent_sender_resource_label">Ressource: </string>
- <string name="intent_sender_sendbroadcast_text">Übertragung senden</string>
- <string name="intent_sender_startactivity_text">Aktivität starten</string>
- <string name="internal_memory">Interner Telefonspeicher</string>
- <string name="ip_address">IP-Adresse</string>
- <string name="kb_text">KB</string>
- <string name="keep_screen_on">Aktiv bleiben</string>
- <string name="keep_screen_on_summary">Display während Ladevorgang stets aktiv</string>
- <string name="kernel_version">Kernel-Version</string>
- <string name="kernel_version_label">Linux-Kernel-Version</string>
- <string name="keyguard_label">Keyguard</string>
- <string name="keyguard_password_button_text">OK</string>
- <string name="keyguard_password_confirm_new_label">Neues Kennwort bestätigen:</string>
- <string name="keyguard_password_mismatch_error_text">Die zwei Kennworte stimmen nicht überein. Geben Sie sie erneut ein.</string>
- <string name="keyguard_password_new_label">Neues Kennwort:</string>
- <string name="keyguard_password_old_label">Altes Kennwort:</string>
- <string name="keyguard_password_old_password_error_text">Das eingegebene alte Kennwort ist nicht korrekt. Versuchen Sie es noch einmal.</string>
- <string name="keyguard_pin_mod_text">PIN ändern</string>
- <string name="keyguard_pw_mod_text">Sperrmuster auswählen</string>
- <string name="keyguard_sim_pin_label">SIM PIN</string>
- <string name="language_category">Spracheinstellung</string>
- <string name="language_picker_title">Ort</string>
- <string name="language_settings">Text</string>
- <string name="language_settings_summary">Optionen für automatische Textkorrektur auswählen</string>
- <string name="large_font">Groß</string>
- <string name="legal_information">Rechtliche Hinweise</string>
- <string name="legal_information_summary">Bestimmungen und Bedingungen anzeigen</string>
- <string name="license_title">Lizenz</string>
- <string name="location_gps">GPS-Satelliten aktivieren</string>
- <string name="location_gps_disabled">Lokalisierung auf Straßenebene (benötigt zusätzlichen Akkustrom und eine freie Sicht zum Himmel)</string>
- <string name="location_label">Sitz des Anbieters:</string>
- <string name="location_neighborhood_level">Ort wird über Wi-Fi und/oder Mobilnetze ermittelt</string>
- <string name="location_network_based">Drahtlosnetze verwenden</string>
- <string name="location_networks_disabled">Ort in Anwendungen (z. B. Karten) mit Hilfe drahtlose Netze ansehen</string>
- <string name="location_source">Hier bin ich</string>
- <string name="location_source_summary">Quellen für Ortsbestimmung auswählen</string>
- <string name="location_status">Status:</string>
- <string name="location_street_level">Bei Ortsbestimmung auf Straßenebene genau (Auswahl aufheben, um Akkustrom zu speichern)</string>
- <string name="location_title">Quellen für eigenen Ort</string>
- <string name="lock_example_message">Verbinden Sie mindestens vier Punkte.\n
- \nWählen Sie \u201CWeiter\u201D, wenn Sie zum Zeichnen Ihres eigenen Musters bereit sind.
- </string>
- <string name="lock_example_title">Beispielmuster</string>
- <string name="lock_settings_title">Entsperrmuster für Display</string>
- <string name="lock_title">Sicherung Ihre Telefons</string>
- <string name="lockpattern_change_lock_pattern_label">Entsperrmuster ändern</string>
- <string name="lockpattern_confirm_button_text">Bestätigen</string>
- <string name="lockpattern_continue_button_text">Fortfahren</string>
- <string name="lockpattern_need_to_confirm">Muster zur Bestätigung neu zeichnen:</string>
- <string name="lockpattern_need_to_unlock">Gespeichertes Muster bestätigen:</string>
- <string name="lockpattern_need_to_unlock_wrong">Versuchen Sie es bitte erneut:</string>
- <string name="lockpattern_pattern_confirmed_header">Neues Entsperrmuster:</string>
- <string name="lockpattern_pattern_entered_header">Muster aufgenommen!</string>
- <string name="lockpattern_recording_incorrect_too_short">Verbinden Sie mindestens <xliff:g id="number">%d</xliff:g> Punkte. Versuchen Sie es erneut:</string>
- <string name="lockpattern_recording_inprogress">Heben Sie den Finger ab, wenn Sie fertig sind.</string>
- <string name="lockpattern_recording_intro_footer">Drücken Sie auf Menü für Hilfe.</string>
- <string name="lockpattern_recording_intro_header">Zeichnen Sie ein Entsperrmuster:</string>
- <string name="lockpattern_restart_button_text">Neu zeichnen</string>
- <string name="lockpattern_retry_button_text">Erneut versuchen</string>
- <string name="lockpattern_settings_change_lock_pattern">Entsperrmuster ändern</string>
- <string name="lockpattern_settings_choose_lock_pattern">Entsperrmuster einrichten</string>
- <string name="lockpattern_settings_enable_summary">Muster zeichnen, um Display zu entsperren</string>
- <string name="lockpattern_settings_enable_title">Muster erforderlich</string>
- <string name="lockpattern_settings_enable_visible_pattern_title">Sichtbares Muster verwenden</string>
- <string name="lockpattern_settings_help_how_to_record">Wie man ein Entsperrmuster zeichnet:</string>
- <string name="lockpattern_settings_title">Entsperrmuster</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_footer">Versuchen Sie es in <xliff:g id="number">%d</xliff:g> Sekunden erneut.</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_header">Zu viele Fehlversuche!</string>
- <string name="manage_applications_title">Anwendungen verwalten</string>
- <string name="manage_space_text">Speicherplatz verwalten</string>
- <string name="manageapplications_settings_title">Anwendungen verwalten</string>
- <string name="mass_storage">Für USB-Speicher verwenden</string>
- <string name="master_clear_button_text">Telefon zurücksetzen</string>
- <string name="master_clear_desc">Diese Aktion setzt das Telefon auf die Werkseinstellungen zurück. Dabei werden alle Daten und heruntergeladenen Anwendungen gelöscht!</string>
- <string name="master_clear_failed">Es wurde keine Zurücksetzung durchgeführt, da der System Clear-Dienst nicht verfügbar ist.</string>
- <string name="master_clear_final_button_text">Alles löschen</string>
- <string name="master_clear_final_desc">Telefon zurücksetzen und alle Daten und Anwendungen löschen? Aktion kann nicht rückgängig gemacht werden!</string>
- <string name="master_clear_gesture_explanation">Sie müssen das Entsperrmuster zeichnen, um eine Telefonzurücksetzung zu bestätigen.</string>
- <string name="master_clear_gesture_prompt">Zeichnen Sie das Entsperrmuster:</string>
- <string name="master_clear_summary">Löscht alle Daten auf dem Telefon</string>
- <string name="master_clear_title">Auf Werkseinstellung zurücksetzen</string>
- <string name="mb_text">MB</string>
- <string name="media_volume_summary">Lautstärke für Musik und Videos einstellen</string>
- <string name="media_volume_title">Medienlautstärke</string>
- <string name="medium_font">Mittel</string>
- <string name="memory_available">Verfügbarer Speicherplatz</string>
- <string name="memory_size">Gesamtspeicherplatz</string>
- <string name="menu_cancel">Verwerfen</string>
- <string name="menu_delete">APN löschen</string>
- <string name="menu_new">Neuer APN</string>
- <string name="menu_save">Speichern</string>
- <string name="model_number">Modellnummer</string>
- <string name="network_settings_summary">Optionen für Roaming, Netze, APNs einstellen</string>
- <string name="network_settings_title">Mobile Netze</string>
- <string name="networks">Betreiberauswahl</string>
- <string name="networks_title">Netzeinstellungen</string>
- <string name="next_button_label">Weiter</string>
- <string name="next_label">Weiter</string>
- <string name="notification_sound_dialog_title">Klingelton für Benachrichtigung auswählen</string>
- <string name="notification_sound_summary">Standard-Klingelton für Benachrichtigungen einrichten</string>
- <string name="notification_sound_title">Klingelton für Benachrichtigungen</string>
- <string name="permissions_label">Genehmigungen</string>
- <string name="phone_info_label">Telefoninfo</string>
- <string name="phone_language">Sprache auswählen</string>
- <string name="ping_test_label">Ping-Test durchführen</string>
- <string name="please_type_hex_key">WEP-Hex-Schlüssel (0-9, A-F)</string>
- <string name="please_type_passphrase">Drahtloskennwort</string>
- <string name="product_brand_label">Produktmarke</string>
- <string name="product_device_label">Telefontyp</string>
- <string name="progress_scanning">Suchen</string>
- <string name="proxy_action_text">Speichern</string>
- <string name="proxy_clear_text">Löschen</string>
- <string name="proxy_defaultView_text">Standardwerte wiederherstellen</string>
- <string name="proxy_error">Achtung</string>
- <string name="proxy_error_dismiss">OK</string>
- <string name="proxy_error_empty_host_set_port">Das Anschluss-Feld muss leer sein, wenn dass Host-Feld leer ist.</string>
- <string name="proxy_error_empty_port">Sie müssen das Anschluss-Feld ausfüllen.</string>
- <string name="proxy_error_invalid_host">Sie haben einen ungültigen Hostnamen eingegeben.</string>
- <string name="proxy_error_invalid_port">Sie haben einen ungültigen Anschluss eingegeben.</string>
- <string name="proxy_hostname_label">Hostname</string>
- <string name="proxy_port_label">Anschluss</string>
- <string name="proxy_settings_label">Proxy-Einstellungen</string>
- <string name="quick_launch_assign_application">Anwendung zuweisen</string>
- <string name="quick_launch_clear_cancel_button">Abbrechen</string>
- <string name="quick_launch_clear_dialog_message">Ihre Verknüpfung für <xliff:g id="shortcut_letter">%1$s</xliff:g> (<xliff:g id="application_name">%2$s</xliff:g>) wird gelöscht.</string>
- <string name="quick_launch_clear_dialog_title">Löschen</string>
- <string name="quick_launch_clear_ok_button">OK</string>
- <string name="quick_launch_display_mode_applications">Anwendungen</string>
- <string name="quick_launch_display_mode_shortcuts">Schnellaufruf</string>
- <string name="quick_launch_no_shortcut">Kein Schnellaufruf</string>
- <string name="quick_launch_shortcut">Suchen + <xliff:g id="shortcut_letter">%1$s</xliff:g></string>
- <string name="quick_launch_summary">Tastaturkürzel für Start von Anwendungen einrichten</string>
- <string name="quick_launch_title">Schellstart</string>
- <string name="radioInfo_cid">CID</string>
- <string name="radioInfo_data_connected">Verbunden</string>
- <string name="radioInfo_data_connecting">Verbinden</string>
- <string name="radioInfo_data_disconnected">Getrennt</string>
- <string name="radioInfo_data_suspended">Ausgesetzt</string>
- <string name="radioInfo_display_asu">asu</string>
- <string name="radioInfo_display_bytes">Bytes</string>
- <string name="radioInfo_display_dbm">dBm</string>
- <string name="radioInfo_display_packets">pkts</string>
- <string name="radioInfo_lac">LAC</string>
- <string name="radioInfo_menu_disableData">Datenverbindung deaktivieren</string>
- <string name="radioInfo_menu_disableDataOnBoot">Daten beim Hochfahren deaktivieren</string>
- <string name="radioInfo_menu_enableData">Datenverbindung aktivieren</string>
- <string name="radioInfo_menu_enableDataOnBoot">Daten beim Hochfahren aktivieren</string>
- <string name="radioInfo_menu_getPDP">PDP-Liste einlesen</string>
- <string name="radioInfo_menu_viewADN">SIM-Adressbuch anzeigen</string>
- <string name="radioInfo_menu_viewFDN">Feste Rufnummern anzeigen</string>
- <string name="radioInfo_menu_viewSDN">Rufnummern für Dienste anzeigen</string>
- <string name="radioInfo_phone_idle">Leerlauf</string>
- <string name="radioInfo_phone_offhook">Aktiver Anruf</string>
- <string name="radioInfo_phone_ringing">Klingeln</string>
- <string name="radioInfo_roaming_in">Roaming</string>
- <string name="radioInfo_roaming_not">Kein Roaming</string>
- <string name="radioInfo_service_emergency">Nur Notrufe</string>
- <string name="radioInfo_service_in">Im Dienst</string>
- <string name="radioInfo_service_off">Funkempfang aus</string>
- <string name="radioInfo_service_out">Kein Dienst</string>
- <string name="radioInfo_unknown">unbekannt</string>
- <string name="radio_controls_summary">Wi-Fi, Bluetooth, Flugmodus &amp; mobile Netze verwalten</string>
- <string name="radio_controls_title">Drahtlos-Bedienelemente</string>
- <string name="radio_info_band_mode_label">Funkband auswählen</string>
- <string name="radio_info_call_redirect_label">Anruf umleiten:</string>
- <string name="radio_info_call_status_label">Anrufstatus:</string>
- <string name="radio_info_current_network_label">Aktuelles Netz:</string>
- <string name="radio_info_data_attempts_label">Datenversuche:</string>
- <string name="radio_info_data_successes_label">Datenerfolge:</string>
- <string name="radio_info_gprs_service_label">GPRS-Dienst:</string>
- <string name="radio_info_gsm_disconnects_label">GSM wird getrennt:</string>
- <string name="radio_info_gsm_service_label">GSM-Dienst:</string>
- <string name="radio_info_http_client_test">HTTP-Client-Test:</string>
- <string name="radio_info_imei_label">IMEI:</string>
- <string name="radio_info_imsi_label">IMSI:</string>
- <string name="radio_info_message_waiting_label">Wartende Nachricht:</string>
- <string name="radio_info_neighboring_location_label">Benachbarte CID:</string>
- <string name="radio_info_network_type_label">Netztyp:</string>
- <string name="radio_info_phone_number_label">Telefonnummer:</string>
- <string name="radio_info_ping_hostname">Ping-Hostname (www.google.com):</string>
- <string name="radio_info_ping_ipaddr">Ping-IpAddr:</string>
- <string name="radio_info_ppp_received_label">PPP empfangen:</string>
- <string name="radio_info_ppp_resets_label">Anzahl von PPP-Zurücksetzungen seit Booten:</string>
- <string name="radio_info_ppp_sent_label">PPP gesendet:</string>
- <string name="radio_info_radio_resets_label">Funkzurücksetzungen:</string>
- <string name="radio_info_roaming_label">Roaming:</string>
- <string name="radio_info_set_perferred_label">Bevorzugten Netztyp einstellen:</string>
- <string name="radio_info_signal_location_label">Ort:</string>
- <string name="radio_info_signal_strength_label">Signalstärke:</string>
- <string name="radio_info_smsc_label">SMSC (SMS-Centre):</string>
- <string name="radio_info_smsc_refresh_label">Aktualisieren</string>
- <string name="radio_info_smsc_update_label">Aktualisieren</string>
- <string name="radio_info_toggle_ciph_label">Verschlüsselung wechseln</string>
- <string name="read_only">\u0020(Schreibgeschützt)</string>
- <string name="recompute_size">Neuberechnung der Größe\u2026</string>
- <string name="ring_volume_summary">Lautstärke für eingehende Anrufe einrichten</string>
- <string name="ring_volume_title">Klingellautstärke</string>
- <string name="ringer_volume_instructions">Klingellautstärke mit Lautstärkentasten einstellen</string>
- <string name="ringer_volume_ringer_mode_label">Klingelmodus</string>
- <string name="ringer_volume_ringtone_label">Klingelton</string>
- <string name="ringer_volume_screen_increasing_text">Ansteigendes Klingeln</string>
- <string name="ringtone_summary">Standard-Klingelton für eingehende Anrufe einrichten</string>
- <string name="ringtone_title">Telefonklingelton</string>
- <string name="roaming">Datenroaming</string>
- <string name="roaming_disable">Verbindung herstellen zu Datendiensten während Roaming</string>
- <string name="roaming_enable">Verbindung herstellen zu Datendiensten während Roaming</string>
- <string name="roaming_reenable_message">Sie haben die Datenverbindung verloren, da Sie das Heimatnetz mit ausgeschaltetem Datenroaming verlassen haben.</string>
- <string name="roaming_reenable_title">Achtung</string>
- <string name="roaming_turn_it_on_button">Schalten Sie es ein</string>
- <string name="roaming_warning">Datenroaming erlauben? Dabei können erhebliche Gebühren anfallen!</string>
- <string name="scan_wifi">Suchen</string>
- <string name="screen_off_timeout_label">Niemals Timeout während Ladevorgang</string>
- <string name="screen_timeout">Display-Timeout</string>
- <string name="sd_card_settings_label">SD-Karte</string>
- <string name="sd_eject">SD-Karte entnehmen</string>
- <string name="sd_memory">SD-Karte</string>
- <string name="sd_unavailable">Nicht verfügbar</string>
- <string name="sdcard_changes_instructions">Änderungen werden wirksam, wenn das USB-Kabel wieder angeschlossen wird.</string>
- <string name="sdcard_removal_alert_ok">OK</string>
- <string name="sdcard_removal_alert_scolding">Die SD-Karte wurde entfernt, während sie noch benutzt wurde!
- Um eine Beschädigung der Karte zu vermeiden, deaktivieren Sie die Karte im Fenster SD-Karten-Einstellungen, bevor Sie sie entfernen.</string>
- <string name="sdcard_removal_alert_title">Unsicheres Entfernen der SD-Karte!</string>
- <string name="sdcard_setting">SD-Karte</string>
- <string name="sdcard_settings_available_bytes_label">Verfügbare Bytes:</string>
- <string name="sdcard_settings_bad_removal_status">SD-Karte wurde während ihrer Verwendung entfernt!</string>
- <string name="sdcard_settings_mass_storage_status">SD-Karte wird als Massenspeicher verwendet</string>
- <string name="sdcard_settings_not_present_status">Keine SD-Karte</string>
- <string name="sdcard_settings_read_only_status">Eingesetzte SD-Karte ist schreibgeschützt</string>
- <string name="sdcard_settings_scanning_status">Suche nach Medien auf SD-Karte\u2026</string>
- <string name="sdcard_settings_screen_mass_storage_text">USB-Massenspeicher aktivieren</string>
- <string name="sdcard_settings_total_bytes_label">Bytes insgesamt:</string>
- <string name="sdcard_settings_unmounted_status">Die SD-Karte kann jetzt sicher entfernt werden</string>
- <string name="sdcard_settings_used_bytes_label">Genutzte Bytes:</string>
- <string name="sdcard_unmount">SD-Karte deaktivieren</string>
- <string name="sdcard_unmountable_alert_ok">OK</string>
- <string name="sdcard_unmountable_alert_title">SD-Karte nicht lesbar</string>
- <string name="sdcard_unmountable_message">Die SD-Karte konnte nicht gelesen werden.
- Das Dateisystem ist möglicherweise fehlerhaft oder die Karte ist beschädigt.</string>
- <string name="security">Sicherheit</string>
- <string name="security_and_data_label">Sicherheit &amp; Daten</string>
- <string name="security_passwords_title">Kennwort</string>
- <string name="security_settings_desc">Diese Anwendung kann auf Folgendes auf dem Telefon zugreifen:</string>
- <string name="security_settings_summary">Eigener Aufenthalt, Display-Entsperrung, SIM-Karten-Sperre</string>
- <string name="security_settings_title">Sicherheit &amp; Ort</string>
- <string name="select_your_language">Wählen Sie eine Sprache aus</string>
- <string name="set_lock_pattern_label">Zeichnen Sie Ihr Entsperrmuster:</string>
- <string name="settings_chooser_pick_string">
- Einstellungen-Symbol sollte vorgehen nach:
- </string>
- <string name="settings_label">Einstellungen</string>
- <string name="settings_license_activity_loading">Ladung\u2026</string>
- <string name="settings_license_activity_title">Quellenlizenzen öffnen</string>
- <string name="settings_license_activity_unavailable">Es gibt ein Problem beim Laden der Lizenzen.</string>
- <string name="show_password">Sichtbare Kennworte</string>
- <string name="show_password_summary">Kennwort bei Eingabe anzeigen</string>
- <string name="signal">Signalstärke</string>
- <string name="silent_mode_summary">Alle Töne außer für Medien sind deaktiviert</string>
- <string name="silent_mode_title">Lautlosmodus</string>
- <string name="sim_bad_pin">Falsche PIN!</string>
- <string name="sim_change_failed">PIN kann nicht geändert werden.\nMöglicherweise falsche PIN.</string>
- <string name="sim_change_pin">SIM PIN ändern</string>
- <string name="sim_change_succeeded">SIM PIN wurde erfolgreich geändert</string>
- <string name="sim_disable_sim_lock">SIM-Karten-Sperre deaktivieren</string>
- <string name="sim_enable_sim_lock">SIM-Karten-Sperre aktivieren</string>
- <string name="sim_enter_cancel">Abbrechen</string>
- <string name="sim_enter_new">Neue PIN eingeben</string>
- <string name="sim_enter_ok">OK</string>
- <string name="sim_enter_old">Alte PIN eingeben</string>
- <string name="sim_enter_pin">SIM PIN eingeben</string>
- <string name="sim_lock_failed">SIM-Karten-Sperrzustand kann nicht geändert werden.\nMöglicherweise falsche PIN.</string>
- <string name="sim_lock_off">PIN für Verwendung des Telefons erforderlich</string>
- <string name="sim_lock_on">PIN für Verwendung des Telefons erforderlich</string>
- <string name="sim_lock_settings">Einstellungen für SIM-Karten-Sperre</string>
- <string name="sim_lock_settings_category">SIM-Karten-Sperre einrichten</string>
- <string name="sim_lock_settings_title">SIM-Karten-Sperre</string>
- <string name="sim_pin_change">PIN-Code ändern</string>
- <string name="sim_pin_toggle">SIM-Karte sperren</string>
- <string name="sim_pins_dont_match">PINs stimmen nicht überein!</string>
- <string name="sim_reenter_new">PIN neu eingeben</string>
- <string name="skip_button_label">Abbrechen</string>
- <string name="small_font">Klein</string>
- <string name="software_version">Softwareversion</string>
- <string name="sort_order_alpha">Alphabetisch sortieren</string>
- <string name="sort_order_size">Nach Größe sortieren (absteigend)</string>
- <string name="sound_and_display_settings">Ton &amp; Display</string>
- <string name="sound_and_display_settings_summary">Klingeltöne, Benachrichtigungen, Displayhelligkeit einstellen</string>
- <string name="sound_effects_enable_summary_off">Sound bei Auswahl auf Display</string>
- <string name="sound_effects_enable_summary_on">Sound bei Auswahl auf Display</string>
- <string name="sound_effects_enable_title">Hörbare Auswahl</string>
- <string name="sound_settings">Klangeinstellungen</string>
- <string name="status_authenticating">Authentifizieren\u2026</string>
- <string name="status_awake_time">Wachzeit</string>
- <string name="status_bt_address">Bluetooth-Adresse</string>
- <string name="status_connected">Verbunden</string>
- <string name="status_connecting">Verbindet\u2026</string>
- <string name="status_data_state">Datenzugriff</string>
- <string name="status_disconnected">Getrennt</string>
- <string name="status_disconnecting">Trennt\u2026</string>
- <string name="status_failed">Nicht erfolgreich</string>
- <string name="status_imei">IMEI</string>
- <string name="status_imei_sv">IMEI SV</string>
- <string name="status_imsi">IMSI</string>
- <string name="status_network_type">Netztyp</string>
- <string name="status_number">Telefonnummer</string>
- <string name="status_obtaining_ip">Adresse beziehen\u2026</string>
- <string name="status_operator">Netz</string>
- <string name="status_roaming">Roaming</string>
- <string name="status_scanning">Scannen\u2026</string>
- <string name="status_service_state">Dienststatus</string>
- <string name="status_signal_strength">Signalstärke</string>
- <string name="status_unavailable">Nicht verfügbar</string>
- <string name="status_up_time">Auf-Zeit</string>
- <string name="status_wifi_mac_address">Wi-Fi MAC-Adresse</string>
- <string name="stay_on">Display während Ladevorgang immer aktiv</string>
- <string name="storage_label">Speicher</string>
- <string name="storage_settings_summary">SD-Karte entnehmen, verfügbaren Speicher anzeigen</string>
- <string name="storage_settings_title">SD-Karte &amp; Telefonspeicher</string>
- <string name="sum_carrier_select">Wählen Sie einen Netzbetreiber aus</string>
- <string name="summary_connection_failed">Verbindung fehlgeschlagen; auswählen, um es erneut zu versuchen</string>
- <string name="summary_not_in_range">Nicht in Reichweite</string>
- <string name="summary_remembered">Erinnert</string>
- <string name="sync_automatically">Automatische Synchronisierung</string>
- <string name="sync_calendar">Kalender</string>
- <string name="sync_contacts">Kontakte</string>
- <string name="sync_disabled">Auswählen, um Daten automatisch zu synchronisieren</string>
- <string name="sync_do_nothing">Diesmal nichts tun.</string>
- <string name="sync_enabled">Daten automatisch synchronisieren</string>
- <string name="sync_gmail">Gmail</string>
- <string name="sync_is_failing">Bei der Synchronisierung gibt es derzeit Probleme. Wird in Kürze fortgesetzt.</string>
- <string name="sync_menu_sync_cancel">Synchr. abbrechen</string>
- <string name="sync_menu_sync_now">Jetzt synchronisieren</string>
- <string name="sync_really_delete">Diese Elemente löschen.</string>
- <string name="sync_settings">Datensynchronisierung</string>
- <string name="sync_settings_summary">Auswählen, welche Anwendungen synchronisiert werden</string>
- <string name="sync_too_many_deletes">Limit für Löschung überschritten</string>
- <string name="sync_too_many_deletes_desc">Es gibt %d gelöschte Elemente für %s, Konto %s. Was möchten Sie tun?</string>
- <string name="sync_undo_deletes">Löschungen rückgängig machen.</string>
- <string name="target_build_field_label">Geforderter Herstellungstyp</string>
- <string name="team_title">Team</string>
- <string name="telephony_apn_label">APN:</string>
- <string name="telephony_mcc_label">MCC:</string>
- <string name="telephony_mmsc_label">MMSC:</string>
- <string name="telephony_mmsport_label">MMS-Anschluss:</string>
- <string name="telephony_mmsproxy_label">MMS-Proxy:</string>
- <string name="telephony_mnc_label">MNC:</string>
- <string name="telephony_name_label">Name:</string>
- <string name="telephony_password_label">Kennwort:</string>
- <string name="telephony_port_label">Anschluss:</string>
- <string name="telephony_proxy_label">Proxy:</string>
- <string name="telephony_server_label">Server:</string>
- <string name="telephony_user_label">Benutzer:</string>
- <string name="terms_title">Bestimmungen und Bedingungen</string>
- <string name="testing">Test</string>
- <string name="testing_battery_info">Akkuinformationen</string>
- <string name="testing_phone_info">Telefoninformationen</string>
- <string name="testing_sim_toolkit">SIM-Toolkit</string>
- <string name="text_category">Texteinstellungen</string>
- <string name="total_size_label">Gesamt</string>
- <string name="turn_off_qxdm">QXDM SD-Log deaktivieren</string>
- <string name="turn_off_radio">Mobilfunk ausschalten</string>
- <string name="turn_on_qxdm">QXDM SD-Log aktivieren</string>
- <string name="turn_on_radio">Mobilfunk einschalten</string>
- <string name="underdeveloped_settings_label">Nicht ausreichende Einstellungen</string>
- <string name="uninstall_failed">Anwendung kann nicht deinstalliert werden.</string>
- <string name="uninstall_text">Deinstallieren</string>
- <string name="unknown">Unbekannt</string>
- <string name="vibrate_summary">Telefon bei eingehenden Anrufen vibrieren</string>
- <string name="vibrate_title">Telefonvibrierung</string>
- <string name="wallpaper_label">Bildschirmhintergrund</string>
- <string name="wifi">Wi-Fi</string>
- <string name="wifi_access_points">Wi-Fi-Netze</string>
- <string name="wifi_add_other_network">Wi-Fi-Netz hinzufügen</string>
- <string name="wifi_context_menu_change_password">Kennwort ändern</string>
- <string name="wifi_context_menu_connect">Verbindung mit Netz</string>
- <string name="wifi_context_menu_forget">Netz vergessen</string>
- <string name="wifi_dhcp_timeout_error">Es gibt ein Problem beim Beziehen der IP-Adresse.</string>
- <string name="wifi_dns1">DNS 1</string>
- <string name="wifi_dns2">DNS 2</string>
- <string name="wifi_dns3">DNS 3</string>
- <string name="wifi_dns_label">Dns:</string>
- <string name="wifi_error">Fehler</string>
- <string name="wifi_gateway">Gateway</string>
- <string name="wifi_gateway_label">Gateway:</string>
- <string name="wifi_generic_connection_error">Es gibt ein Problem bei der Verbindungsherstellung mit dem Netz. Versuchen Sie es erneut.</string>
- <string name="wifi_host_ip">Host-IP:</string>
- <string name="wifi_ip_address">IP-Adresse</string>
- <string name="wifi_ip_settings_invalid_ip">Geben Sie eine gültige IP-Adresse an.</string>
- <string name="wifi_ip_settings_menu_cancel">Abbrechen</string>
- <string name="wifi_ip_settings_menu_save">Speichern</string>
- <string name="wifi_ip_settings_titlebar">IP-Einstellungen</string>
- <string name="wifi_link_speed">Geschwindigkeit</string>
- <string name="wifi_menu_advanced">Erweitert</string>
- <string name="wifi_netmask">Netzmaske</string>
- <string name="wifi_netmask_label">Netzmaske:</string>
- <string name="wifi_notify_open_networks">Netzbenachrichtigung</string>
- <string name="wifi_notify_open_networks_summary">Benachrichtigen, wenn offenes Netz verfügbar ist</string>
- <string name="wifi_password_incorrect_error">Das eingegeben Netzkennwort ist falsch. Versuchen Sie es noch einmal.</string>
- <string name="wifi_password_unchanged">(unverändert)</string>
- <string name="wifi_prefer_wifi">Wi-Fi bevorzugen</string>
- <string name="wifi_quick_toggle_summary">Auswählen, um Wi-Fi einzuschalten</string>
- <string name="wifi_quick_toggle_title">Wi-Fi</string>
- <string name="wifi_save_config">Speichern</string>
- <string name="wifi_screen_activate_text">Aktivieren</string>
- <string name="wifi_screen_dhcp_text">Automatisch</string>
- <string name="wifi_screen_dns_text">209.81.59.2</string>
- <string name="wifi_screen_gateway_text">192.168.20.1</string>
- <string name="wifi_screen_ip_text">192.168.20.10</string>
- <string name="wifi_screen_manual_text">Manuell</string>
- <string name="wifi_screen_netmask_text">255.255.255.0</string>
- <string name="wifi_screen_status_text">Wi-Fi ist aktiv</string>
- <string name="wifi_screen_test_text">Test</string>
- <string name="wifi_security">Sicherheit</string>
- <string name="wifi_security_open">Öffnen</string>
- <string name="wifi_security_unknown">Unbekannt</string>
- <string name="wifi_security_verbose_open">Offenes Netz</string>
- <string name="wifi_security_verbose_wep">Gesichert mit WEP</string>
- <string name="wifi_security_verbose_wpa">Gesichert mit WPA</string>
- <string name="wifi_security_verbose_wpa2">Gesichert mit WPA2</string>
- <string name="wifi_security_wep">WEP</string>
- <string name="wifi_security_wpa">WPA</string>
- <string name="wifi_security_wpa2">WPA2</string>
- <string name="wifi_settings">Wi-Fi-Einstellungen</string>
- <string name="wifi_settings_category">Wi-Fi-Einstellungen</string>
- <string name="wifi_settings_summary">Drahtlos-Zugangspunkte einrichten und verwalten</string>
- <string name="wifi_show_password">Kennwort anzeigen.</string>
- <string name="wifi_signal_0">Schlecht</string>
- <string name="wifi_signal_1">Befriedigend</string>
- <string name="wifi_signal_2">Gut</string>
- <string name="wifi_signal_3">Hervorragend</string>
- <string name="wifi_starting">Einschalten\u2026</string>
- <string name="wifi_status">Status</string>
- <string name="wifi_stopping">Ausschalten\u2026</string>
- <string name="wifi_type_ssid">Netz-SSID eingeben:</string>
- <string name="wifi_use_static_ip">Statische IP verwenden</string>
- <string name="wifi_wlan_id">WLAN-ID:</string>
-</resources>
diff --git a/res/values-de/arrays.xml b/res/values-de/arrays.xml
new file mode 100644
index 0000000..959f1bd
--- /dev/null
+++ b/res/values-de/arrays.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string-array name="timezone_filters">
+ <item>"Amerika"</item>
+ <item>"Europa"</item>
+ <item>"Afrika"</item>
+ <item>"Asien"</item>
+ <item>"Australien"</item>
+ <item>"Pacific"</item>
+ <item>"Alle"</item>
+ </string-array>
+ <string-array name="screen_timeout_entries">
+ <item>"15 Sekunden"</item>
+ <item>"30 Sekunden"</item>
+ <item>"1 Minute"</item>
+ <item>"2 Minuten"</item>
+ <item>"10 Minuten"</item>
+ <item>"Kein Timeout"</item>
+ </string-array>
+ <string-array name="wifi_security_entries">
+ <item>"Autom."</item>
+ <item>"Keine"</item>
+ <item>"WEP"</item>
+ <item>"WPA Personal"</item>
+ <item>"WPA2 Personal"</item>
+ </string-array>
+ <string-array name="wifi_security_without_auto_entries">
+ <item>"Keine"</item>
+ <item>"WEP"</item>
+ <item>"WPA Personal"</item>
+ <item>"WPA2 Personal"</item>
+ </string-array>
+ <string-array name="wifi_wep_type">
+ <item>"Autom."</item>
+ <item>"WEP ASCII"</item>
+ <item>"WEP hexadezimal"</item>
+ </string-array>
+</resources>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
new file mode 100644
index 0000000..d73f8cd
--- /dev/null
+++ b/res/values-de/strings.xml
@@ -0,0 +1,729 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="device_info_default">"Unbekannt"</string>
+ <string name="device_info_uptime">"Betriebszeit"</string>
+ <string name="device_info_awaketime">"Aktivzeit"</string>
+ <string name="device_info_asleeptime">"Inaktivzeit"</string>
+ <string name="turn_on_radio">"Radio einschalten"</string>
+ <string name="turn_off_radio">"Radio ausschalten"</string>
+ <string name="turn_on_qxdm">"QXDM-SD-Protokoll aktivieren"</string>
+ <string name="turn_off_qxdm">"QXDM-SD-Protokoll deaktivieren"</string>
+ <string name="radioInfo_menu_viewADN">"SIM-Adressbuch anzeigen"</string>
+ <string name="radioInfo_menu_viewFDN">"Feste Rufnummern anzeigen"</string>
+ <string name="radioInfo_menu_viewSDN">"Servicerufnummern anzeigen"</string>
+ <string name="radioInfo_menu_getPDP">"PDP-Liste abrufen"</string>
+ <string name="radioInfo_menu_enableData">"Datenverbindung aktivieren"</string>
+ <string name="radioInfo_menu_disableData">"Datenverbindung deaktivieren"</string>
+ <string name="radioInfo_menu_enableDataOnBoot">"Daten beim Start aktivieren"</string>
+ <string name="radioInfo_menu_disableDataOnBoot">"Daten beim Start deaktivieren"</string>
+ <string name="radioInfo_service_in">"In Betrieb"</string>
+ <string name="radioInfo_service_out">"Außer Betrieb"</string>
+ <string name="radioInfo_service_emergency">"Nur Notrufe"</string>
+ <string name="radioInfo_service_off">"Radio aus"</string>
+ <string name="radioInfo_roaming_in">"Roaming"</string>
+ <string name="radioInfo_roaming_not">"Kein Roaming"</string>
+ <string name="radioInfo_phone_idle">"Inaktiv"</string>
+ <string name="radioInfo_phone_ringing">"Klingelton"</string>
+ <string name="radioInfo_phone_offhook">"Anruf wird getätigt"</string>
+ <string name="radioInfo_data_disconnected">"Nicht verbunden"</string>
+ <string name="radioInfo_data_connecting">"Verbindung wird hergestellt"</string>
+ <string name="radioInfo_data_connected">"Verbunden"</string>
+ <string name="radioInfo_data_suspended">"Angehalten"</string>
+ <string name="radioInfo_unknown">"unbekannt"</string>
+ <string name="radioInfo_display_packets">"Pakete"</string>
+ <string name="radioInfo_display_bytes">"Bytes"</string>
+ <string name="radioInfo_display_dbm">"dBm"</string>
+ <string name="radioInfo_display_asu">"ASU"</string>
+ <string name="radioInfo_lac">"LAC"</string>
+ <string name="radioInfo_cid">"CID"</string>
+ <string name="sdcard_unmount">"SD-Karte entnehmen"</string>
+ <string name="small_font">"Klein"</string>
+ <string name="medium_font">"Mittel"</string>
+ <string name="large_font">"Groß"</string>
+ <string name="font_size_save">"OK"</string>
+ <string name="sdcard_setting">"SD-Karte"</string>
+ <string name="screen_off_timeout_label">"Kein Timeout beim Laden"</string>
+ <string name="stay_on">"Display wird beim Laden nie ausgeschaltet"</string>
+ <string name="app_launcher_newView_text">"Neuer AppLauncher"</string>
+ <string name="battery_info_status_label">"Akkustatus:"</string>
+ <string name="battery_info_scale_label">"Akkuanzeige:"</string>
+ <string name="battery_info_level_label">"Akkuladung:"</string>
+ <string name="battery_info_health_label">"Akkuzustand:"</string>
+ <string name="battery_info_technology_label">"Akkutechnologie:"</string>
+ <string name="battery_info_voltage_label">"Akkuspannung:"</string>
+ <string name="battery_info_voltage_units">"mV"</string>
+ <string name="battery_info_temperature_label">"Akkutemperatur:"</string>
+ <string name="battery_info_temperature_units">"° C"</string>
+ <string name="battery_info_uptime">"Zeit seit Start:"</string>
+ <string name="battery_info_awake_battery">"Aktivzeit bei Akku:"</string>
+ <string name="battery_info_awake_plugged">"Aktivzeit beim Laden:"</string>
+ <string name="battery_info_screen_on">"Display eingeschaltet:"</string>
+ <string name="battery_info_status_unknown">"Unbekannt"</string>
+ <string name="battery_info_status_charging">"Wird geladen"</string>
+ <string name="battery_info_status_charging_ac">"(AC)"</string>
+ <string name="battery_info_status_charging_usb">"(USB)"</string>
+ <string name="battery_info_status_discharging">"Entladung"</string>
+ <string name="battery_info_status_not_charging">"Wird nicht geladen"</string>
+ <string name="battery_info_status_full">"Voll"</string>
+ <string name="battery_info_health_unknown">"Unbekannt"</string>
+ <string name="battery_info_health_good">"OK"</string>
+ <string name="battery_info_health_overheat">"Überhitzung"</string>
+ <string name="battery_info_health_dead">"Leer"</string>
+ <string name="battery_info_health_over_voltage">"Überspannung"</string>
+ <string name="battery_info_health_unspecified_failure">"Unbekannter Fehler"</string>
+ <string name="bluetooth">"Bluetooth"</string>
+ <string name="bluetooth_stopping">"Bluetooth wird beendet..."</string>
+ <!-- no translation found for bluetooth_disabled (3281654100455454605) -->
+ <skip />
+ <!-- no translation found for bluetooth_enabled (314506563815464155) -->
+ <skip />
+ <string name="bluetooth_enabling">"Bluetooth wird aktiviert..."</string>
+ <string name="bluetooth_visibility">"Erkennbar"</string>
+ <string name="bluetooth_is_discoverable">"Für <xliff:g id="DISCOVERABLE_TIME_PERIOD">%1$s</xliff:g> Sekunden sichtbar..."</string>
+ <!-- no translation found for bluetooth_not_discoverable (128269993123955177) -->
+ <skip />
+ <string name="bluetooth_devices">"Bluetooth-Geräte"</string>
+ <string name="bluetooth_device_name">"Gerätename"</string>
+ <string name="bluetooth_name_not_set">"Kein Name festgelegt, Kontoname wird verwendet"</string>
+ <string name="bluetooth_scan_for_devices">"Scannen nach Geräten"</string>
+ <string name="bluetooth_clear_list">"Geräteliste löschen"</string>
+ <!-- no translation found for bluetooth_disconnect_blank (8102076504922229274) -->
+ <skip />
+ <string name="bluetooth_connected">"Verbunden"</string>
+ <!-- no translation found for bluetooth_disconnected (6557104142667339895) -->
+ <skip />
+ <!-- no translation found for bluetooth_disconnecting (8913264760027764974) -->
+ <skip />
+ <string name="bluetooth_connecting">"Verbindung wird hergestellt..."</string>
+ <!-- no translation found for bluetooth_unknown (644716244548801421) -->
+ <skip />
+ <string name="bluetooth_not_connected">"Pairing mit diesem Gerät"</string>
+ <string name="bluetooth_failed_to_enable">"Bluetooth kann nicht aktiviert werden"</string>
+ <string name="bluetooth_pairing">"Pairing…"</string>
+ <!-- no translation found for failed_to_pair (7648018965110976948) -->
+ <skip />
+ <!-- no translation found for failed_to_connect (4770209428036813667) -->
+ <skip />
+ <string name="bluetooth_paired">"Gepaart"</string>
+ <string name="bluetooth_paired_not_nearby">"Gepaart"</string>
+ <string name="bluetooth_device">"Freisprechfunktion/Headset"</string>
+ <string name="bluetooth_disconnect">"Verbindung trennen"</string>
+ <string name="bluetooth_connect">"Verbinden"</string>
+ <string name="bluetooth_unpair">"Pairing aufheben"</string>
+ <string name="bluetooth_pair">"Paaren"</string>
+ <string name="progress_scanning">"Scannen..."</string>
+ <string name="bluetooth_notif_ticker">"Bluetooth-Pairing-Anfrage"</string>
+ <!-- no translation found for bluetooth_notif_title (2485175521845371514) -->
+ <skip />
+ <string name="bluetooth_notif_message">"Zum Pairing auswählen"</string>
+ <string name="date_and_time">"Einstellungen"</string>
+ <string name="date_time_12_hour_sample">"1:00"</string>
+ <string name="date_time_24_hour_sample">"13:00"</string>
+ <string name="choose_timezone">"Zeitzone auswählen"</string>
+ <string name="display_preview_label">"Vorschau:"</string>
+ <string name="display_font_size_label">"Schriftgröße:"</string>
+ <!-- no translation found for intent_sender_data_label (6332324780477289261) -->
+ <skip />
+ <string name="intent_sender_sendbroadcast_text">"<xliff:g id="BROADCAST">broadcast</xliff:g> senden"</string>
+ <string name="intent_sender_action_label">"<xliff:g id="ACTION">Action</xliff:g>:"</string>
+ <string name="intent_sender_startactivity_text">"<xliff:g id="ACTIVITY">activity</xliff:g> starten"</string>
+ <string name="intent_sender_resource_label">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
+ <string name="intent_sender_account_label">"Konto:"</string>
+ <string name="keyguard_pw_mod_text">"Sperrmuster auswählen"</string>
+ <string name="keyguard_pin_mod_text">"PIN ändern"</string>
+ <string name="keyguard_label">"Keyguard"</string>
+ <string name="keyguard_sim_pin_label">"SIM-PIN"</string>
+ <string name="keyguard_password_old_password_error_text">"Das alte Passwort ist falsch. Bitte versuchen Sie es erneut."</string>
+ <string name="keyguard_password_button_text">"OK"</string>
+ <string name="keyguard_password_confirm_new_label">"Neues Passwort bestätigen:"</string>
+ <string name="keyguard_password_new_label">"Neues Passwort:"</string>
+ <string name="keyguard_password_old_label">"Altes Passwort:"</string>
+ <string name="keyguard_password_mismatch_error_text">"Die beiden Passwörter stimmen nicht überein. Bitte geben Sie sie erneut ein."</string>
+ <string name="proxy_clear_text">"Löschen"</string>
+ <string name="proxy_port_label">"Port"</string>
+ <string name="proxy_defaultView_text">"Standard wiederherstellen"</string>
+ <string name="proxy_action_text">"Speichern"</string>
+ <string name="proxy_hostname_label">"Hostname"</string>
+ <string name="proxy_error">"Achtung"</string>
+ <string name="proxy_error_dismiss">"OK"</string>
+ <string name="proxy_error_invalid_host">"Der eingegebene Hostname ist ungültig."</string>
+ <string name="proxy_error_empty_port">"Sie müssen das Feld für den Port ausfüllen."</string>
+ <string name="proxy_error_empty_host_set_port">"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">"Der eingegebene Port ist ungültig."</string>
+ <string name="radio_info_signal_location_label">"Standort:"</string>
+ <string name="radio_info_neighboring_location_label">"Benachbarte CID:"</string>
+ <string name="radio_info_data_attempts_label">"Datenversuche:"</string>
+ <string name="radio_info_imsi_label">"IMSI:"</string>
+ <string name="radio_info_gprs_service_label">"GPRS-Service:"</string>
+ <string name="radio_info_roaming_label">"Roaming:"</string>
+ <string name="radio_info_imei_label">"IMEI:"</string>
+ <string name="radio_info_call_redirect_label">"Rufumleitung:"</string>
+ <string name="radio_info_ppp_resets_label">"Anzahl der PPP-Zurücksetzungen seit dem Start:"</string>
+ <string name="radio_info_gsm_disconnects_label">"GSM-Trennungen:"</string>
+ <string name="radio_info_current_network_label">"Aktuelles Netzwerk:"</string>
+ <string name="radio_info_data_successes_label">"Datenerfolge:"</string>
+ <string name="radio_info_ppp_received_label">"PPP empfangen:"</string>
+ <string name="radio_info_gsm_service_label">"GSM-Service"</string>
+ <string name="radio_info_signal_strength_label">"Signalstärke:"</string>
+ <string name="radio_info_call_status_label">"Rufstatus:"</string>
+ <string name="radio_info_ppp_sent_label">"PPP gesendet:"</string>
+ <string name="radio_info_radio_resets_label">"Radiozurücksetzung:"</string>
+ <string name="radio_info_message_waiting_label">"Nachricht liegt vor:"</string>
+ <string name="radio_info_phone_number_label">"Telefonnummer:"</string>
+ <string name="radio_info_band_mode_label">"Frequenzbereich auswählen"</string>
+ <string name="radio_info_network_type_label">"Netzwerktyp:"</string>
+ <string name="radio_info_set_perferred_label">"Bevorzugten Netzwerktyp festlegen:"</string>
+ <string name="radio_info_ping_ipaddr">"IP-Adresse pingen:"</string>
+ <string name="radio_info_ping_hostname">"Hostnamen pingen (www.google.com):"</string>
+ <string name="radio_info_http_client_test">"HTTP Client-Test:"</string>
+ <string name="radio_info_toggle_ciph_label">"Verschlüsselung wechseln"</string>
+ <string name="ping_test_label">"Pingtest ausführen"</string>
+ <string name="radio_info_smsc_label">"SMSC:"</string>
+ <string name="radio_info_smsc_update_label">"Aktualisierung"</string>
+ <string name="radio_info_smsc_refresh_label">"Aktualisieren"</string>
+ <string name="band_mode_title">"GSM-/UMTS-Band festlegen"</string>
+ <string name="band_mode_loading">"Bandliste wird geladen..."</string>
+ <string name="band_mode_set">"Festlegen"</string>
+ <string name="band_mode_failed">"Fehlgeschlagen"</string>
+ <string name="band_mode_succeeded">"Erfolgreich"</string>
+ <string name="ringer_volume_ringer_mode_label">"Klingeltonmodus"</string>
+ <string name="ringer_volume_screen_increasing_text">"Ansteigender Klingelton"</string>
+ <string name="ringer_volume_ringtone_label">"Klingelton"</string>
+ <string name="ringer_volume_instructions">"Klingeltonlautstärke mithilfe der Lautstärketasten anpassen"</string>
+ <string name="sdcard_changes_instructions">"Die Änderungen werden nach dem erneuten Anschließen des USB-Kabels übernommen."</string>
+ <string name="sdcard_settings_screen_mass_storage_text">"USB-Massenspeicher aktivieren"</string>
+ <string name="sdcard_settings_total_bytes_label">"Bytes insgesamt:"</string>
+ <string name="sdcard_settings_not_present_status">"Keine SD-Karte"</string>
+ <string name="sdcard_settings_available_bytes_label">"Verfügbare Bytes:"</string>
+ <string name="sdcard_settings_mass_storage_status">"SD-Karte wird als Massenspeichergerät verwendet"</string>
+ <string name="sdcard_settings_unmounted_status">"Die SD-Karte kann jetzt entfernt werden."</string>
+ <string name="sdcard_settings_bad_removal_status">"Die SD-Karte wurde während der Verwendung entfernt!"</string>
+ <string name="sdcard_settings_used_bytes_label">"Verwendete Bytes:"</string>
+ <string name="sdcard_settings_scanning_status">"SD-Karte wird auf Medien gescannt..."</string>
+ <string name="sdcard_settings_read_only_status">"SD-Karte schreibgeschützt aktiviert"</string>
+ <string name="sdcard_removal_alert_title">"Unsichere Entfernung der SD-Karte!"</string>
+ <string name="sdcard_unmountable_alert_title">"SD-Karte nicht lesbar"</string>
+ <string name="telephony_user_label">"Nutzer:"</string>
+ <string name="telephony_server_label">"Server:"</string>
+ <string name="telephony_name_label">"Name:"</string>
+ <string name="telephony_mmsc_label">"MMSC:"</string>
+ <string name="telephony_apn_label">"APN:"</string>
+ <string name="telephony_mcc_label">"MCC:"</string>
+ <string name="telephony_port_label">"Port:"</string>
+ <string name="telephony_password_label">"Passwort:"</string>
+ <string name="telephony_proxy_label">"Proxy:"</string>
+ <string name="telephony_mnc_label">"MNC:"</string>
+ <string name="telephony_mmsproxy_label">"MMS-Proxy:"</string>
+ <string name="telephony_mmsport_label">"MMS-Port:"</string>
+ <string name="next_label">"Weiter"</string>
+ <string name="language_picker_title">"Sprache"</string>
+ <string name="select_your_language">"Sprache auswählen"</string>
+ <string name="activity_picker_label">"Aktion auswählen"</string>
+ <string name="device_info_label">"Geräteinfo"</string>
+ <string name="battery_info_label">"Akkuinfo"</string>
+ <string name="display_label">"Display"</string>
+ <string name="phone_info_label">"Telefoninfo"</string>
+ <string name="sd_card_settings_label">"SD-Karte"</string>
+ <string name="proxy_settings_label">"Proxy-Einstellungen"</string>
+ <string name="cancel">"Abbrechen"</string>
+ <string name="settings_label">"Einstellungen"</string>
+ <string name="airplane_mode">"Flugmodus"</string>
+ <!-- no translation found for airplane_mode_summary (3154817401368780988) -->
+ <skip />
+ <string name="airplane_mode_turning_on">"Wireless-Verbindungen werden deaktiviert..."</string>
+ <string name="airplane_mode_turning_off">"Wireless-Verbindungen werden aktiviert..."</string>
+ <string name="radio_controls_title">"Wireless"</string>
+ <string name="radio_controls_summary">"WLAN, Bluetooth, Flugmodus und mobile Netzwerke verwalten"</string>
+ <string name="date_and_time_settings_title">"Datum und Uhrzeit"</string>
+ <string name="date_and_time_settings_summary">"Datum, Uhrzeit, Zeitzone und Formate festlegen"</string>
+ <string name="date_time_auto">"Automatisch"</string>
+ <string name="date_time_auto_summaryOn">"Vom Netzwerk bereitgestellte Werte verwenden"</string>
+ <string name="date_time_auto_summaryOff">"Vom Netzwerk bereitgestellte Werte verwenden"</string>
+ <string name="date_time_24hour">"24-Stunden-Format"</string>
+ <string name="date_time_set_time">"Uhrzeit festlegen"</string>
+ <!-- no translation found for date_time_set_timezone (5045627174274377814) -->
+ <skip />
+ <string name="date_time_set_date">"Datum festlegen"</string>
+ <string name="date_time_date_format">"Datumsformat auswählen"</string>
+ <!-- no translation found for zone_list_menu_sort_alphabetically (5683377702671088588) -->
+ <skip />
+ <!-- no translation found for zone_list_menu_sort_by_timezone (2720190443744884114) -->
+ <skip />
+ <string name="security_settings_title">"Sicherheit und Standort"</string>
+ <!-- no translation found for security_settings_summary (8145883103362174000) -->
+ <skip />
+ <string name="security_passwords_title">"Passwörter"</string>
+ <string name="bluetooth_quick_toggle_title">"Bluetooth"</string>
+ <!-- no translation found for bluetooth_quick_toggle_summary (5293641680139873341) -->
+ <skip />
+ <string name="bluetooth_settings">"Bluetooth-Einstellungen"</string>
+ <string name="bluetooth_settings_title">"Bluetooth-Einstellungen"</string>
+ <string name="bluetooth_settings_summary">"Verbindungen, Gerätenamen und Erkennbarkeit verwalten"</string>
+ <!-- no translation found for bluetooth_pin_entry (5627349871303455279) -->
+ <skip />
+ <string name="bluetooth_device_info">"Bluetooth-Geräteinfo"</string>
+ <string name="bluetooth_pairing_msg">"Pairing…"</string>
+ <!-- no translation found for bluetooth_enter_pin_msg (7551139612735632370) -->
+ <skip />
+ <!-- no translation found for bluetooth_error_title (538287072376677166) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing_error_message (2852744547246910349) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing_alternate_error_message (1731286765420671521) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing_pin_error_message (6938408362011024289) -->
+ <skip />
+ <!-- no translation found for bluetooth_connecting_error_message (1779660510084746802) -->
+ <skip />
+ <string name="bluetooth_new_data">"Neue Daten eingeben"</string>
+ <string name="bluetooth_new_data_confirm">"OK"</string>
+ <string name="bluetooth_new_data_cancel">"Abbrechen"</string>
+ <string name="bluetooth_scan_for_new_devices">"Scannen nach neuen Geräten..."</string>
+ <string name="bluetooth_discoverability_panel_title">"Aktion:"</string>
+ <string name="bluetooth_discoverable">"Für <xliff:g id="DISCOVERABLE_TIME_PERIOD">%1$s</xliff:g> Sekunden sichtbar"</string>
+ <string name="bluetooth_connectable">"Verbindung möglich"</string>
+ <string name="bluetooth_neither">"Erkennung und Verbindung nicht möglich"</string>
+ <!-- no translation found for bluetooth_preference_scan_title (2277464653118896016) -->
+ <skip />
+ <!-- no translation found for bluetooth_preference_scan_summary (2368330460781052669) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect (3997659895003244941) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect (8220072022970148683) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_pair_connect (7611522504813927727) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_unpair (662992425948536144) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect_unpair (7644014238070043798) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect_advanced (2643129703569788771) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect_specific_profiles_title (6952214406025825164) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_a2dp (3259633293424539529) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_headset (1874975688666658946) -->
+ <skip />
+ <!-- no translation found for bluetooth_summary_connected_to_a2dp (510833839847758664) -->
+ <skip />
+ <!-- no translation found for bluetooth_summary_connected_to_headset (4876496372728623918) -->
+ <skip />
+ <!-- no translation found for bluetooth_summary_connected_to_a2dp_headset (3045032710457800891) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_advanced_title (528816860793581131) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_advanced_online_mode_title (3689050071425683114) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_advanced_online_mode_summary (1204424107263248336) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_advanced_profile_header_title (3764437426089639639) -->
+ <skip />
+ <!-- no translation found for bluetooth_a2dp_profile_summary_connected (963376081347721598) -->
+ <skip />
+ <!-- no translation found for bluetooth_headset_profile_summary_connected (7661070206715520671) -->
+ <skip />
+ <!-- no translation found for bluetooth_a2dp_profile_summary_use_for (4630849022250168427) -->
+ <skip />
+ <!-- no translation found for bluetooth_headset_profile_summary_use_for (8705753622443862627) -->
+ <skip />
+ <string name="wifi">"WLAN"</string>
+ <string name="wifi_quick_toggle_title">"WLAN"</string>
+ <!-- no translation found for wifi_quick_toggle_summary (1047950931623694366) -->
+ <skip />
+ <string name="wifi_settings">"WLAN-Einstellungen"</string>
+ <string name="wifi_settings_category">"WLAN-Einstellungen"</string>
+ <string name="wifi_settings_summary">"Wireless-Zugangspunkte festlegen und verwalten"</string>
+ <string name="forget_network">"Entfernen"</string>
+ <string name="wifi_status">"Status"</string>
+ <string name="wifi_link_speed">"Geschwindigkeit"</string>
+ <string name="wifi_signal_3">"Ausgezeichnet"</string>
+ <string name="wifi_signal_2">"OK"</string>
+ <string name="wifi_signal_1">"Gut"</string>
+ <string name="wifi_signal_0">"Schwach"</string>
+ <string name="security">"Sicherheit"</string>
+ <string name="wifi_security_open">"Öffnen"</string>
+ <string name="wifi_security_wep">"WEP"</string>
+ <string name="wifi_security_wpa">"WPA"</string>
+ <string name="wifi_security_wpa2">"WPA2"</string>
+ <string name="wifi_security_unknown">"Unbekannt"</string>
+ <string name="wifi_security_verbose_open">"Offenes Netzwerk"</string>
+ <string name="wifi_security_verbose_wep">"Gesichert mit WEP"</string>
+ <string name="wifi_security_verbose_wpa">"Gesichert mit WPA"</string>
+ <string name="wifi_security_verbose_wpa2">"Gesichert mit WPA2"</string>
+ <string name="ip_address">"IP-Adresse"</string>
+ <string name="signal">"Signalstärke"</string>
+ <string name="wifi_starting">"Aktivierung..."</string>
+ <string name="wifi_stopping">"Wird beendet..."</string>
+ <string name="wifi_error">"Fehler"</string>
+ <string name="error_starting">"WLAN kann nicht gestartet werden"</string>
+ <string name="error_stopping">"WLAN kann nicht beendet werden"</string>
+ <string name="error_scanning">"Netzwerkscan nicht möglich"</string>
+ <string name="error_connecting">"Netzwerkverbindung kann nicht hergestellt werden"</string>
+ <string name="error_saving">"Netzwerk kann nicht gespeichert werden"</string>
+ <string name="connect">"Verbinden"</string>
+ <string name="connect_to_blank">"Mit <xliff:g id="NETWORK_NAME">%1$s</xliff:g> verbinden"</string>
+ <string name="please_type_passphrase">"Passwort für Wireless-Zugang"</string>
+ <string name="please_type_hex_key">"WEP Hexadezimalschlüssel (0-9, A-F)"</string>
+ <string name="wifi_show_password">"Passwort anzeigen"</string>
+ <string name="scan_wifi">"Scannen"</string>
+ <string name="summary_not_in_range">"Nicht in Reichweite"</string>
+ <string name="summary_remembered">"Gespeichert"</string>
+ <string name="summary_connection_failed">"Verbindung fehlgeschlagen, versuchen Sie es erneut."</string>
+ <string name="wifi_access_points">"WLAN-Netzwerke"</string>
+ <!-- no translation found for wifi_type_ssid (1326839657083292017) -->
+ <skip />
+ <string name="wifi_security">"Sicherheit"</string>
+ <string name="wifi_save_config">"Speichern"</string>
+ <string name="wifi_password_unchanged">"(nicht geändert)"</string>
+ <!-- no translation found for wifi_add_other_network (5499063300755575893) -->
+ <skip />
+ <string name="wifi_notify_open_networks">"Netzwerkhinweis"</string>
+ <string name="wifi_notify_open_networks_summary">"Benachrichtigen, wenn ein offenes Netzwerk verfügbar ist"</string>
+ <string name="wifi_password_incorrect_error">"Das eingegebene Netzwerkpasswort ist falsch. Bitte versuchen Sie es erneut."</string>
+ <string name="wifi_generic_connection_error">"Beim Herstellen der Netzwerkverbindung ist ein Problem aufgetreten. Bitte versuchen Sie es erneut."</string>
+ <string name="wifi_menu_advanced">"Erweitert"</string>
+ <string name="wifi_ip_settings_titlebar">"IP-Einstellungen"</string>
+ <string name="wifi_ip_settings_menu_save">"Speichern"</string>
+ <string name="wifi_ip_settings_menu_cancel">"Abbrechen"</string>
+ <string name="wifi_ip_settings_invalid_ip">"Bitte geben Sie eine gültige IP-Adresse ein."</string>
+ <string name="wifi_use_static_ip">"Statische IP verwenden"</string>
+ <string name="wifi_ip_address">"IP-Adresse"</string>
+ <string name="wifi_dns1">"DNS 1"</string>
+ <string name="wifi_dns2">"DNS 2"</string>
+ <string name="wifi_gateway">"Gateway"</string>
+ <string name="wifi_netmask">"Netmask"</string>
+ <string name="wifi_context_menu_connect">"Mit Netzwerk verbinden"</string>
+ <string name="wifi_context_menu_forget">"Netzwerk entfernen"</string>
+ <string name="wifi_context_menu_change_password">"Passwort ändern"</string>
+ <!-- no translation found for wifi_advanced_titlebar (5419052271935350999) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_title (694031537019656132) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_summary (4889355096717099141) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_error (5765443843427870721) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_channel_phrase (1269381923672908636) -->
+ <skip />
+ <!-- no translation found for wifi_advanced_mac_address_title (6571335466330978393) -->
+ <skip />
+ <string name="fragment_status_scanning">"Scannen…"</string>
+ <string name="fragment_status_connecting">"Verbindung mit <xliff:g id="NETWORK_NAME">%1$s</xliff:g> wird hergestellt..."</string>
+ <string name="fragment_status_authenticating">"Authentifizierung mit <xliff:g id="NETWORK_NAME">%1$s</xliff:g>..."</string>
+ <string name="fragment_status_obtaining_ip">"IP-Adresse wird von <xliff:g id="NETWORK_NAME">%1$s</xliff:g> abgerufen..."</string>
+ <string name="fragment_status_connected">"Verbunden mit <xliff:g id="NETWORK_NAME">%1$s</xliff:g>"</string>
+ <string name="fragment_status_disconnecting">"Verbindung mit <xliff:g id="NETWORK_NAME">%1$s</xliff:g> wird getrennt..."</string>
+ <string name="fragment_status_disconnected">"Nicht verbunden"</string>
+ <string name="fragment_status_failed">"Fehlgeschlagen"</string>
+ <string name="status_scanning">"Scannen…"</string>
+ <string name="status_connecting">"Verbindung wird hergestellt..."</string>
+ <string name="status_authenticating">"Authentifizierung..."</string>
+ <string name="status_obtaining_ip">"Adresse wird abgerufen..."</string>
+ <string name="status_connected">"Verbunden"</string>
+ <string name="status_disconnecting">"Verbindung wird getrennt..."</string>
+ <string name="status_disconnected">"Nicht verbunden"</string>
+ <string name="status_failed">"Fehlgeschlagen"</string>
+ <string name="sound_and_display_settings">"Sound und Display"</string>
+ <string name="sound_settings">"Soundeinstellungen"</string>
+ <string name="sound_and_display_settings_summary">"Klingeltöne, Benachrichtigungen und Helligkeit festlegen"</string>
+ <string name="silent_mode_title">"Lautlosmodus"</string>
+ <!-- no translation found for silent_mode_summary (9081534746589616108) -->
+ <skip />
+ <string name="ringtone_title">"Klingelton"</string>
+ <string name="ringtone_summary">"Standardklingelton für eingehende Anrufe festlegen"</string>
+ <string name="ring_volume_title">"Klingeltonlautstärke"</string>
+ <string name="ring_volume_summary">"Lautstärke für eingehende Anrufe festlegen"</string>
+ <string name="vibrate_title">"Vibration"</string>
+ <string name="vibrate_summary">"Vibration für eingehende Anrufe"</string>
+ <string name="notification_sound_title">"Benachrichtigungston"</string>
+ <string name="notification_sound_summary">"Standard-Benachrichtigungston festlegen"</string>
+ <string name="notification_sound_dialog_title">"Benachrichtigungston auswählen"</string>
+ <string name="media_volume_title">"Medienlautstärke"</string>
+ <string name="media_volume_summary">"Lautstärke für Musik und Videos festlegen"</string>
+ <string name="dtmf_tone_enable_title">"Akustische Tastensounds"</string>
+ <string name="dtmf_tone_enable_summary_on">"Bei Verwendung der Wähltastatur Sound abspielen"</string>
+ <string name="dtmf_tone_enable_summary_off">"Bei Verwendung der Wähltastatur Sound abspielen"</string>
+ <string name="sound_effects_enable_title">"Akustische Auswahl"</string>
+ <string name="sound_effects_enable_summary_on">"Bei Display-Auswahl Sound abspielen"</string>
+ <string name="sound_effects_enable_summary_off">"Bei Display-Auswahl Sound abspielen"</string>
+ <string name="sync_settings">"Datensynchronisierung"</string>
+ <string name="sync_settings_summary">"Auswählen, welche Anwendungen synchronisiert werden"</string>
+ <!-- no translation found for sync_settings_header_general_settings (1940413055002651212) -->
+ <skip />
+ <!-- no translation found for sync_settings_header_application_settings (7055646124074397344) -->
+ <skip />
+ <string name="sync_too_many_deletes">"Löschbegrenzung überschritten"</string>
+ <string name="sync_automatically">"Autom. Synchronisierung"</string>
+ <string name="sync_enabled">"Daten automatisch synchronisieren"</string>
+ <string name="sync_disabled">"Zur automatischen Datensynchronisierung auswählen"</string>
+ <string name="sync_menu_sync_now">"Jetzt synchronisieren"</string>
+ <string name="sync_menu_sync_cancel">"Synchronisierung abbrechen"</string>
+ <string name="sync_gmail">"Google Mail"</string>
+ <string name="sync_calendar">"Google Kalender"</string>
+ <string name="sync_contacts">"Kontakte"</string>
+ <string name="sync_too_many_deletes_desc">"Für <xliff:g id="TYPE_OF_SYNC">%2$s</xliff:g>, Konto <xliff:g id="ACCOUNT_NAME">%3$s</xliff:g>, liegen <xliff:g id="NUMBER_OF_DELETED_ITEMS">%1$d</xliff:g> gelöschte Elemente vor. Was möchten Sie tun?"</string>
+ <string name="sync_really_delete">"Elemente löschen"</string>
+ <string name="sync_undo_deletes">"Löschen rückgängig machen"</string>
+ <string name="sync_do_nothing">"Im Moment nichts unternehmen"</string>
+ <string name="sync_is_failing">"Bei der Synchronisierung treten derzeit Probleme auf. Sie wird in Kürze fortgesetzt."</string>
+ <string name="sync_plug"><font fgcolor="#ffffffff">"Willkommen bei Google Sync!"</font>\n"Mit dieser Funktion von Google können Sie Ihre Daten synchronisieren, um auf Ihre Kontakte, Termine und vieles mehr zuzugreifen - wo immer Sie auch sind!"</string>
+ <string name="display_settings">"Display-Einstellungen"</string>
+ <!-- no translation found for animations_title (1062189037402346023) -->
+ <skip />
+ <!-- no translation found for animations_summary_on (5690787466633824737) -->
+ <skip />
+ <!-- no translation found for animations_summary_off (8847573219383668092) -->
+ <skip />
+ <string name="brightness">"Helligkeit"</string>
+ <string name="screen_timeout">"Display-Timeout"</string>
+ <string name="dim_screen">"Display dimmen"</string>
+ <string name="sim_lock_settings">"Einstellungen"</string>
+ <string name="sim_lock_settings_category">"SIM-Kartensperrung einrichten"</string>
+ <string name="sim_lock_settings_title">"SIM-Kartensperrung"</string>
+ <string name="sim_pin_toggle">"SIM-Karte sperren"</string>
+ <string name="sim_lock_on">"PIN zur Verwendung des Telefons erforderlich"</string>
+ <string name="sim_lock_off">"PIN zur Verwendung des Telefons erforderlich"</string>
+ <!-- no translation found for sim_pin_change (6311414184279932368) -->
+ <skip />
+ <!-- no translation found for sim_enter_pin (6608715137008508432) -->
+ <skip />
+ <!-- no translation found for sim_enable_sim_lock (4517742794997166918) -->
+ <skip />
+ <!-- no translation found for sim_disable_sim_lock (7664729528754784824) -->
+ <skip />
+ <!-- no translation found for sim_enter_old (6074196344494634348) -->
+ <skip />
+ <!-- no translation found for sim_enter_new (8742727032729243562) -->
+ <skip />
+ <string name="sim_reenter_new">"Neue PIN erneut eingeben"</string>
+ <!-- no translation found for sim_change_pin (7328607264898359112) -->
+ <skip />
+ <string name="sim_bad_pin">"Falsche PIN!"</string>
+ <string name="sim_pins_dont_match">"Die PINs stimmen nicht überein!"</string>
+ <string name="sim_change_failed">"PIN kann nicht geändert werden."\n"Möglicherweise falsche Eingabe."</string>
+ <string name="sim_change_succeeded">"SIM-PIN erfolgreich geändert"</string>
+ <string name="sim_lock_failed">"Status der SIM-Kartensperrung kann nicht geändert werden."\n"Möglicherweise falsche PIN."</string>
+ <string name="sim_enter_ok">"OK"</string>
+ <string name="sim_enter_cancel">"Abbrechen"</string>
+ <string name="device_info_settings">"Telefonstatus"</string>
+ <!-- no translation found for system_update_settings_list_item_title (3342887311059985961) -->
+ <skip />
+ <!-- no translation found for system_update_settings_list_item_summary (9164660818865695219) -->
+ <skip />
+ <string name="firmware_version">"Firmware-Version"</string>
+ <string name="model_number">"Modellnummer"</string>
+ <string name="baseband_version">"Basisband-Version"</string>
+ <string name="kernel_version">"Kernel-Version"</string>
+ <string name="build_number">"Build-Nummer"</string>
+ <string name="device_info_not_available">"Nicht verfügbar"</string>
+ <string name="device_status_activity_title">"Status"</string>
+ <string name="device_status">"Status"</string>
+ <string name="device_status_summary">"IMEI, Telefonnummer, Signal usw."</string>
+ <string name="storage_settings_title">"SD-Karte und Speicher"</string>
+ <string name="storage_settings_summary">"SD-Karte entnehmen, verfügbaren Speicher anzeigen"</string>
+ <string name="status_number">"Telefonnummer"</string>
+ <string name="status_network_type">"Netzwerktyp"</string>
+ <string name="status_data_state">"Datenzugang"</string>
+ <string name="status_service_state">"Servicestatus"</string>
+ <string name="status_signal_strength">"Signalstärke"</string>
+ <string name="status_roaming">"Roaming"</string>
+ <string name="status_operator">"Netzwerk"</string>
+ <string name="status_wifi_mac_address">"WLAN-MAC-Adresse"</string>
+ <string name="status_bt_address">"Bluetooth-Adresse"</string>
+ <string name="status_unavailable">"Nicht verfügbar"</string>
+ <string name="status_up_time">"Betriebszeit"</string>
+ <string name="status_awake_time">"Aktivzeit"</string>
+ <string name="internal_memory">"Interner Telefonspeicher"</string>
+ <string name="sd_memory">"SD-Karte"</string>
+ <string name="memory_available">"Verfügbarer Speicher"</string>
+ <string name="memory_size">"Gesamtspeicher"</string>
+ <string name="sd_eject">"SD-Karte entnehmen"</string>
+ <string name="sd_unavailable">"Nicht verfügbar"</string>
+ <string name="read_only">"(schreibgeschützt)"</string>
+ <string name="battery_status_title">"Akkustatus"</string>
+ <string name="battery_level_title">"Akkuladung"</string>
+ <string name="apn_settings">"APNs"</string>
+ <string name="apn_edit">"Zugangspunkt bearbeiten"</string>
+ <string name="apn_not_set">"Nicht festgelegt"</string>
+ <string name="apn_name">"Name"</string>
+ <string name="apn_apn">"APN"</string>
+ <string name="apn_http_proxy">"Proxy"</string>
+ <string name="apn_http_port">"Port"</string>
+ <string name="apn_user">"Nutzername"</string>
+ <string name="apn_password">"Passwort"</string>
+ <string name="apn_server">"Server"</string>
+ <string name="apn_mmsc">"MMSC"</string>
+ <string name="apn_mms_proxy">"MMS-Proxy"</string>
+ <string name="apn_mms_port">"MMS-Port"</string>
+ <string name="apn_mcc">"MCC"</string>
+ <string name="apn_mnc">"MNC"</string>
+ <string name="apn_type">"APN-Typ"</string>
+ <string name="menu_delete">"APN löschen"</string>
+ <string name="menu_new">"Neuer APN"</string>
+ <string name="menu_save">"Speichern"</string>
+ <string name="menu_cancel">"Verwerfen"</string>
+ <string name="error_title">"Achtung"</string>
+ <string name="error_name_empty">"Das Namensfeld darf nicht leer sein."</string>
+ <string name="error_apn_empty">"Der APN darf nicht leer sein."</string>
+ <string name="error_mcc_not3">"Das MCC-Feld muss 3 Zeichen enthalten."</string>
+ <string name="error_mnc_not23">"Das MNC-Feld muss 2 oder 3 Zeichen enthalten."</string>
+ <string name="master_clear_title">"Auf Werkszustand zurück"</string>
+ <string name="master_clear_summary">"Löscht alle Daten auf dem Telefon"</string>
+ <string name="master_clear_desc">"Durch diese Aktion wird das Telefon auf den Werkszustand zurückgesetzt. Alle Daten und heruntergeladenen Anwendungen werden gelöscht!"</string>
+ <string name="master_clear_button_text">"Telefon zurücksetzen"</string>
+ <string name="master_clear_final_desc">"Telefon zurücksetzen und alle Ihre Daten und Anwendungen löschen? Die Aktion kann nicht rückgängig gemacht werden!"</string>
+ <string name="master_clear_final_button_text">"Alles löschen"</string>
+ <!-- no translation found for master_clear_gesture_prompt (1428645764883536750) -->
+ <skip />
+ <string name="master_clear_gesture_explanation">"Sie müssen Ihr Entsperrungsmuster eingeben, um das Zurücksetzen des Telefons zu bestätigen."</string>
+ <string name="master_clear_failed">"Die Zurücksetzung konnte nicht durchgeführt werden, da der Service zur Systembereinigung nicht verfügbar ist."</string>
+ <string name="call_settings_title">"Anrufeinstellungen"</string>
+ <string name="call_settings_summary">"Mailbox, Anrufweiterleitung, Anklopfen, Anruferkennung einrichten"</string>
+ <string name="network_settings_title">"Mobile Netzwerke"</string>
+ <string name="network_settings_summary">"Optionen für Roaming, Netzwerke, APNs festlegen"</string>
+ <string name="location_title">"Standortquellen"</string>
+ <string name="location_network_based">"Wireless nutzen"</string>
+ <string name="location_networks_disabled">"Standort über Wireless-Netzwerke anzeigen (z.B. in Google Maps)"</string>
+ <string name="location_neighborhood_level">"Standort bestimmt von WLAN und/oder mobilen Netzwerken"</string>
+ <string name="location_gps">"GPS-Satelliten aktivieren"</string>
+ <string name="location_street_level">"Auf Straßenebene lokalisieren (deaktivieren, um Akku zu sparen)"</string>
+ <string name="location_gps_disabled">"Auf Straßenebene lokalisieren (höhere Akkuleistung, zusätzl. Himmelsansicht)"</string>
+ <string name="about_settings">"Telefoninfo"</string>
+ <string name="about_settings_summary">"Rechtliche Hinweise, Telefonstatus und Softwareversion anzeigen"</string>
+ <string name="legal_information">"Rechtliche Hinweise"</string>
+ <string name="contributors_title">"Mitwirkende"</string>
+ <string name="copyright_title">"Urheberrecht"</string>
+ <string name="license_title">"Lizenz"</string>
+ <string name="terms_title">"Nutzungsbedingungen"</string>
+ <string name="settings_license_activity_title">"Open Source-Lizenzen"</string>
+ <string name="settings_license_activity_unavailable">"Beim Laden der Lizenzen ist ein Problem aufgetreten."</string>
+ <string name="settings_license_activity_loading">"Wird geladen..."</string>
+ <string name="lock_settings_title">"Display-Entsperrungsmuster"</string>
+ <string name="lockpattern_change_lock_pattern_label">"Entsperrungsmuster ändern"</string>
+ <!-- no translation found for lockpattern_need_to_unlock (757935356911054465) -->
+ <skip />
+ <string name="lockpattern_need_to_unlock_wrong">"Versuchen Sie es bitte erneut:"</string>
+ <!-- no translation found for lockpattern_recording_intro_header (308287052221942814) -->
+ <skip />
+ <string name="lockpattern_recording_intro_footer">"Menütaste drücken, um die Hilfe aufzurufen"</string>
+ <string name="lockpattern_recording_inprogress">"Lassen Sie die Tasten los, wenn Sie fertig sind."</string>
+ <string name="lockpattern_recording_incorrect_too_short">"Verbinden Sie mindestens <xliff:g id="NUMBER">%d</xliff:g> Punkte. Versuchen Sie es erneut:"</string>
+ <string name="lockpattern_pattern_entered_header">"Muster wurde aufgezeichnet!"</string>
+ <string name="lockpattern_need_to_confirm">"Zeichnen Sie das Muster zur Bestätigung erneut:"</string>
+ <string name="lockpattern_pattern_confirmed_header">"Ihr neues Entsperrungsmuster:"</string>
+ <string name="lockpattern_confirm_button_text">"Bestätigen"</string>
+ <string name="lockpattern_restart_button_text">"Neu aufzeichnen"</string>
+ <string name="lockpattern_retry_button_text">"Erneut versuchen"</string>
+ <string name="lockpattern_continue_button_text">"Weiter"</string>
+ <string name="lockpattern_settings_title">"Entsperrungsmuster"</string>
+ <string name="lockpattern_settings_enable_title">"Muster erforderlich"</string>
+ <string name="lockpattern_settings_enable_summary">"Zum Entsperren muss ein Muster gezeichnet werden"</string>
+ <string name="lockpattern_settings_enable_visible_pattern_title">"Muster sichtbar"</string>
+ <!-- no translation found for lockpattern_settings_enable_tactile_feedback_title (972174133075372341) -->
+ <skip />
+ <string name="lockpattern_settings_choose_lock_pattern">"Entsperrungsmuster"</string>
+ <string name="lockpattern_settings_change_lock_pattern">"Muster ändern"</string>
+ <!-- no translation found for lockpattern_settings_help_how_to_record (2614673439060830433) -->
+ <skip />
+ <string name="lockpattern_too_many_failed_confirmation_attempts_header">"Zu viele fehlgeschlagene Versuche!"</string>
+ <string name="lockpattern_too_many_failed_confirmation_attempts_footer">"In <xliff:g id="NUMBER">%d</xliff:g> Sekunden erneut versuchen."</string>
+ <string name="skip_button_label">"Abbrechen"</string>
+ <string name="next_button_label">"Weiter"</string>
+ <string name="lock_title">"Sichern Ihres Telefons"</string>
+ <string name="lock_intro_message"><font size="17">"Schützen Sie Ihr Telefon vor unerlaubter Verwendung, indem Sie ein persönliches Entsperrungsmuster erstellen. "\n<font height="17">\n</font><b>"1"</b>"  Auf dem nächsten Bildschirm sehen Sie, wie ein Beispielmuster gezeichnet wird. "\n<font height="17">\n</font><b>"2"</b>"  Anschließend können Sie Ihr eigenes Entsperrungsmuster aufzeichnen. Sie können verschiedene Muster ausprobieren, müssen jedoch immer mindestens vier Punkte miteinander verbinden. "\n<font height="17">\n</font><b>"3"</b>"  Zeichnen Sie Ihr Muster zur Bestätigung erneut. "\n<font height="17">\n</font><b>"Bereit? Wählen Sie “Weiter”"</b>". "\n<font height="3">\n</font>"Wählen Sie “Abbrechen”, wenn Sie Ihr Telefon nicht schützen möchten."</font></string>
+ <string name="lock_example_title">"Beispielmuster"</string>
+ <string name="lock_example_message">"Verbinden Sie mindestens vier Punkte."\n" "\n"Wählen Sie \"Weiter\", um ein eigenes Muster aufzuzeichnen."</string>
+ <string name="manageapplications_settings_title">"Anwendungen verwalten"</string>
+ <string name="applications_settings">"Anwendungen"</string>
+ <string name="applications_settings_summary">"Anwendungen verwalten, Tastenkombinationen für Schnellstart einrichten"</string>
+ <string name="applications_settings_header">"Anwendungen"</string>
+ <string name="install_applications">"Unbekannte Quellen"</string>
+ <string name="install_unknown_applications">"Installation von Nicht-Market-Anwendungen zulassen"</string>
+ <string name="install_all_warning">"Anwendungen aus unbekannten Quellen können gefährlich für Ihr Telefon und Ihre persönlichen Daten sein. Sie stimmen zu, dass Sie die Verantwortung für alle Schäden an Ihrem Telefon oder jegliche Datenverluste tragen, die aus der Verwendung dieser Anwendungen entstehen können."</string>
+ <string name="manage_applications_title">"Anwendungen verwalten"</string>
+ <string name="application_info_label">"Anwendungsinfo"</string>
+ <string name="storage_label">"Speicher"</string>
+ <string name="auto_launch_label">"Standardmäßig starten"</string>
+ <string name="permissions_label">"Berechtigungen"</string>
+ <string name="total_size_label">"Insgesamt"</string>
+ <string name="application_size_label">"Anwendung"</string>
+ <string name="data_size_label">"Daten"</string>
+ <string name="uninstall_text">"Deinstallieren"</string>
+ <string name="clear_user_data_text">"Daten löschen"</string>
+ <string name="auto_launch_enable_text">"Sie haben diese Anwendung für einige Aktionen als Standard festgelegt."</string>
+ <string name="auto_launch_disable_text">"Kein Standard"</string>
+ <string name="clear_activities">"Standardeinstellungen löschen"</string>
+ <string name="unknown">"Unbekannt"</string>
+ <string name="sort_order_alpha">"Alphabetisch sortieren"</string>
+ <string name="sort_order_size">"Nach Größe sortieren (absteigend)"</string>
+ <string name="manage_space_text">"Speicherplatz verwalten"</string>
+ <!-- no translation found for filter_apps_all (5362458533526576243) -->
+ <skip />
+ <!-- no translation found for filter_apps_third_party (6478735462006756182) -->
+ <skip />
+ <!-- no translation found for filter_apps_running (4508709081284629440) -->
+ <skip />
+ <!-- no translation found for loading (3200408047793887917) -->
+ <skip />
+ <string name="recompute_size">"Größe wird neu berechnet..."</string>
+ <string name="clear_data_dlg_title">"Löschen"</string>
+ <string name="clear_data_dlg_text">"Alle in dieser Anwendung gespeicherten Informationen werden endgültig gelöscht."</string>
+ <string name="dlg_ok">"OK"</string>
+ <string name="dlg_cancel">"Abbrechen"</string>
+ <string name="app_not_found_dlg_title">"Anwendung nicht gefunden"</string>
+ <string name="app_not_found_dlg_text">"Diese Anwendung wurde in der Liste der installierten Anwendungen nicht gefunden."</string>
+ <string name="clear_data_failed">"Anwendungsdaten können nicht gelöscht werden."</string>
+ <!-- no translation found for security_settings_desc (3116027624526915561) -->
+ <skip />
+ <!-- no translation found for computing_size (8865983009275200301) -->
+ <skip />
+ <!-- no translation found for invalid_size_value (1901940003700269523) -->
+ <skip />
+ <!-- no translation found for empty_list_msg (723420725041278150) -->
+ <skip />
+ <string name="language_settings">"Gebietsschema und Text"</string>
+ <!-- no translation found for language_settings_summary (595647729475399987) -->
+ <skip />
+ <string name="language_category">"Ländereinstellung"</string>
+ <string name="text_category">"Texteinstellungen"</string>
+ <string name="phone_language">"Sprache wählen"</string>
+ <string name="auto_replace">"Autom. Ersetzung"</string>
+ <string name="auto_replace_summary">"Tippfehler korrigieren"</string>
+ <string name="auto_caps">"Autom. Großschreibung"</string>
+ <string name="auto_caps_summary">"Jeden Satz mit einem Großbuchstaben beginnen"</string>
+ <string name="auto_punctuate">"Autom. Zeichensetzung"</string>
+ <string name="auto_punctuate_summary">"Leertaste zweimal drücken, um \".\" hinzuzufügen"</string>
+ <string name="show_password">"Sichtbare Passwörter"</string>
+ <string name="show_password_summary">"Passwort bei der Eingabe anzeigen"</string>
+ <string name="testing">"Test"</string>
+ <string name="testing_phone_info">"Telefoninformation"</string>
+ <string name="testing_battery_info">"Akkuinformationen"</string>
+ <string name="quick_launch_title">"Schnellstart"</string>
+ <string name="quick_launch_summary">"Tastenkombinationen zum Starten von Anwendungen festlegen"</string>
+ <string name="quick_launch_assign_application">"Anwendung zuweisen"</string>
+ <string name="quick_launch_no_shortcut">"Keine Tastenkombination"</string>
+ <string name="quick_launch_shortcut">"Suchen + <xliff:g id="SHORTCUT_LETTER">%1$s</xliff:g>"</string>
+ <string name="quick_launch_clear_dialog_title">"Löschen"</string>
+ <string name="quick_launch_clear_dialog_message">"Die Tastenkombination für <xliff:g id="SHORTCUT_LETTER">%1$s</xliff:g> (<xliff:g id="APPLICATION_NAME">%2$s</xliff:g>) wird gelöscht."</string>
+ <string name="quick_launch_clear_ok_button">"OK"</string>
+ <string name="quick_launch_clear_cancel_button">"Abbrechen"</string>
+ <string name="quick_launch_display_mode_applications">"Anwendungen"</string>
+ <string name="quick_launch_display_mode_shortcuts">"Tastenkombinationen"</string>
+ <!-- no translation found for input_methods_settings_title (6800066636850553887) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_summary (7571173442946675205) -->
+ <skip />
+ <string name="development_settings_title">"Entwicklung"</string>
+ <!-- no translation found for development_settings_summary (2151320488701538355) -->
+ <skip />
+ <string name="enable_adb">"USB-Debugging"</string>
+ <string name="enable_adb_summary">"Debugmodus bei Anschluss eines USB-Geräts"</string>
+ <string name="keep_screen_on">"Aktiv bleiben"</string>
+ <string name="keep_screen_on_summary">"Display wird beim Laden nie in den Ruhezustand versetzt"</string>
+ <!-- no translation found for allow_mock_location (2787962564578664888) -->
+ <skip />
+ <!-- no translation found for allow_mock_location_summary (317615105156345626) -->
+ <skip />
+</resources>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index db6f9a7..a6ede63 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -1,23 +1,1235 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
- * Copyright (C) 2007 Google Inc.
- *
- * 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.
- */
--->
-
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!-- Sync settings -->
- <string name="sync_gmail">Google Mail</string>
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <!-- no translation found for device_info_default (7590614823249081756) -->
+ <skip />
+ <!-- no translation found for device_info_uptime (5770997070401578853) -->
+ <skip />
+ <!-- no translation found for device_info_awaketime (8786872485906712469) -->
+ <skip />
+ <!-- no translation found for device_info_asleeptime (7521071877583454145) -->
+ <skip />
+ <!-- no translation found for turn_on_radio (5921500147111366100) -->
+ <skip />
+ <!-- no translation found for turn_off_radio (8265991390836235521) -->
+ <skip />
+ <!-- no translation found for turn_on_qxdm (1929680250960586568) -->
+ <skip />
+ <!-- no translation found for turn_off_qxdm (2231700509067037981) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_viewADN (6360358040101027165) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_viewFDN (1156525488415146391) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_viewSDN (1621957874826137326) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_getPDP (5262139039274516177) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_enableData (7421444646018525501) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_disableData (747895994197436038) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_enableDataOnBoot (1926825935390738605) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_disableDataOnBoot (1229911918312837466) -->
+ <skip />
+ <!-- no translation found for radioInfo_service_in (5924630304105370132) -->
+ <skip />
+ <!-- no translation found for radioInfo_service_out (8851866705716243370) -->
+ <skip />
+ <!-- no translation found for radioInfo_service_emergency (3716022424799582775) -->
+ <skip />
+ <!-- no translation found for radioInfo_service_off (1327997868238966135) -->
+ <skip />
+ <!-- no translation found for radioInfo_roaming_in (500733867700442877) -->
+ <skip />
+ <!-- no translation found for radioInfo_roaming_not (6396563258833262032) -->
+ <skip />
+ <!-- no translation found for radioInfo_phone_idle (1313192484166377407) -->
+ <skip />
+ <!-- no translation found for radioInfo_phone_ringing (3719782771670214311) -->
+ <skip />
+ <!-- no translation found for radioInfo_phone_offhook (8240719545096222282) -->
+ <skip />
+ <!-- no translation found for radioInfo_data_disconnected (2529875822215485897) -->
+ <skip />
+ <!-- no translation found for radioInfo_data_connecting (4072774006290747959) -->
+ <skip />
+ <!-- no translation found for radioInfo_data_connected (3226955374690346958) -->
+ <skip />
+ <!-- no translation found for radioInfo_data_suspended (4953150687356763202) -->
+ <skip />
+ <!-- no translation found for radioInfo_unknown (1459640470009191283) -->
+ <skip />
+ <!-- no translation found for radioInfo_display_packets (6240096759326286933) -->
+ <skip />
+ <!-- no translation found for radioInfo_display_bytes (2316664594612332324) -->
+ <skip />
+ <!-- no translation found for radioInfo_display_dbm (5976249140663971321) -->
+ <skip />
+ <!-- no translation found for radioInfo_display_asu (4744317576791439328) -->
+ <skip />
+ <!-- no translation found for radioInfo_lac (9132851392756929560) -->
+ <skip />
+ <!-- no translation found for radioInfo_cid (8104441740986410116) -->
+ <skip />
+ <!-- no translation found for sdcard_unmount (4883209407806765776) -->
+ <skip />
+ <!-- no translation found for small_font (8358552488649514689) -->
+ <skip />
+ <!-- no translation found for medium_font (6883565794450338865) -->
+ <skip />
+ <!-- no translation found for large_font (4017618214361207193) -->
+ <skip />
+ <!-- no translation found for font_size_save (4680809224019179332) -->
+ <skip />
+ <!-- no translation found for sdcard_setting (7947032805424916049) -->
+ <skip />
+ <!-- no translation found for screen_off_timeout_label (3108465509533969105) -->
+ <skip />
+ <!-- no translation found for stay_on (5096027063517994119) -->
+ <skip />
+ <!-- no translation found for app_launcher_newView_text (2571672805191261300) -->
+ <skip />
+ <!-- no translation found for battery_info_status_label (7241771617541550021) -->
+ <skip />
+ <!-- no translation found for battery_info_scale_label (909568629374595124) -->
+ <skip />
+ <!-- no translation found for battery_info_level_label (2159203680331429485) -->
+ <skip />
+ <!-- no translation found for battery_info_health_label (5980664882115222930) -->
+ <skip />
+ <!-- no translation found for battery_info_technology_label (6228148669526755511) -->
+ <skip />
+ <!-- no translation found for battery_info_voltage_label (365003754672592412) -->
+ <skip />
+ <!-- no translation found for battery_info_voltage_units (8263071212648651338) -->
+ <skip />
+ <!-- no translation found for battery_info_temperature_label (7870244240851501404) -->
+ <skip />
+ <!-- no translation found for battery_info_temperature_units (7487929303685158981) -->
+ <skip />
+ <!-- no translation found for battery_info_uptime (1195623257533912354) -->
+ <skip />
+ <!-- no translation found for battery_info_awake_battery (1529944627925423756) -->
+ <skip />
+ <!-- no translation found for battery_info_awake_plugged (7272044960586959459) -->
+ <skip />
+ <!-- no translation found for battery_info_screen_on (832651425042656482) -->
+ <skip />
+ <!-- no translation found for battery_info_status_unknown (7415613412429160329) -->
+ <skip />
+ <!-- no translation found for battery_info_status_charging (8335298083353102727) -->
+ <skip />
+ <!-- no translation found for battery_info_status_charging_ac (1872629416053266802) -->
+ <skip />
+ <!-- no translation found for battery_info_status_charging_usb (4168539986397505310) -->
+ <skip />
+ <!-- no translation found for battery_info_status_discharging (4135855918830635792) -->
+ <skip />
+ <!-- no translation found for battery_info_status_not_charging (6393478667336118628) -->
+ <skip />
+ <!-- no translation found for battery_info_status_full (1825476891715419962) -->
+ <skip />
+ <!-- no translation found for battery_info_health_unknown (6950446031686941336) -->
+ <skip />
+ <!-- no translation found for battery_info_health_good (1730818926670939022) -->
+ <skip />
+ <!-- no translation found for battery_info_health_overheat (2159805591547843144) -->
+ <skip />
+ <!-- no translation found for battery_info_health_dead (1685986976493052835) -->
+ <skip />
+ <!-- no translation found for battery_info_health_over_voltage (3071909274422372159) -->
+ <skip />
+ <!-- no translation found for battery_info_health_unspecified_failure (6654089753274800002) -->
+ <skip />
+ <!-- no translation found for bluetooth (5458557266931413390) -->
+ <skip />
+ <!-- no translation found for bluetooth_stopping (2884449642912216721) -->
+ <skip />
+ <!-- no translation found for bluetooth_disabled (1391447030022958043) -->
+ <skip />
+ <!-- no translation found for bluetooth_enabled (5765634385322070565) -->
+ <skip />
+ <!-- no translation found for bluetooth_enabling (2387811926440795477) -->
+ <skip />
+ <!-- no translation found for bluetooth_visibility (7070140108792119698) -->
+ <skip />
+ <!-- no translation found for bluetooth_is_discoverable (8979781589253468104) -->
+ <skip />
+ <!-- no translation found for bluetooth_not_discoverable (4136294765906418294) -->
+ <skip />
+ <!-- no translation found for bluetooth_devices (2263213941869967836) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_name (6673408408534978327) -->
+ <skip />
+ <!-- no translation found for bluetooth_name_not_set (3250022629948561003) -->
+ <skip />
+ <!-- no translation found for bluetooth_scan_for_devices (6460816609454316693) -->
+ <skip />
+ <!-- no translation found for bluetooth_clear_list (6618471329960568682) -->
+ <skip />
+ <!-- no translation found for bluetooth_disconnect_blank (6129414878545273731) -->
+ <skip />
+ <!-- no translation found for bluetooth_connected (7380272173205834342) -->
+ <skip />
+ <!-- no translation found for bluetooth_disconnected (779512372559332317) -->
+ <skip />
+ <!-- no translation found for bluetooth_disconnecting (613305857810977890) -->
+ <skip />
+ <!-- no translation found for bluetooth_connecting (424814598663613104) -->
+ <skip />
+ <!-- no translation found for bluetooth_unknown (5984480705609238684) -->
+ <skip />
+ <!-- no translation found for bluetooth_not_connected (1000422792621268295) -->
+ <skip />
+ <!-- no translation found for bluetooth_failed_to_enable (10261849074413402) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing (8284273555047880444) -->
+ <skip />
+ <!-- no translation found for failed_to_pair (5265027255173301781) -->
+ <skip />
+ <!-- no translation found for failed_to_connect (1409075183242262956) -->
+ <skip />
+ <!-- no translation found for bluetooth_paired (5011854699437682723) -->
+ <skip />
+ <!-- no translation found for bluetooth_paired_not_nearby (2890021978719716438) -->
+ <skip />
+ <!-- no translation found for bluetooth_device (4077191291193332167) -->
+ <skip />
+ <!-- no translation found for bluetooth_disconnect (4070053533691322466) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect (6123567524009555372) -->
+ <skip />
+ <!-- no translation found for bluetooth_unpair (6786377316984999718) -->
+ <skip />
+ <!-- no translation found for bluetooth_pair (6433088623778842494) -->
+ <skip />
+ <!-- no translation found for progress_scanning (7119295261222935963) -->
+ <skip />
+ <!-- no translation found for bluetooth_notif_ticker (6269529534945974964) -->
+ <skip />
+ <!-- no translation found for bluetooth_notif_title (3790273649365187417) -->
+ <skip />
+ <!-- no translation found for bluetooth_notif_message (3713615470961259613) -->
+ <skip />
+ <!-- no translation found for date_and_time (7561144940603232653) -->
+ <skip />
+ <!-- no translation found for date_time_12_hour_sample (3346099183513673921) -->
+ <skip />
+ <!-- no translation found for date_time_24_hour_sample (2930431568836213699) -->
+ <skip />
+ <!-- no translation found for choose_timezone (5417013900989552917) -->
+ <skip />
+ <!-- no translation found for display_preview_label (165196289151559072) -->
+ <skip />
+ <!-- no translation found for display_font_size_label (6263623549052165912) -->
+ <skip />
+ <!-- no translation found for intent_sender_data_label (1882888392709072340) -->
+ <skip />
+ <!-- no translation found for intent_sender_sendbroadcast_text (6655878781657210463) -->
+ <skip />
+ <!-- no translation found for intent_sender_action_label (5488427871152834830) -->
+ <skip />
+ <!-- no translation found for intent_sender_startactivity_text (7612120772998972749) -->
+ <skip />
+ <!-- no translation found for intent_sender_resource_label (2764211719287875308) -->
+ <skip />
+ <!-- no translation found for intent_sender_account_label (5895797962518760165) -->
+ <skip />
+ <!-- no translation found for keyguard_pw_mod_text (4628095162019973491) -->
+ <skip />
+ <!-- no translation found for keyguard_pin_mod_text (3916277193756089917) -->
+ <skip />
+ <!-- no translation found for keyguard_label (6105620776700897730) -->
+ <skip />
+ <!-- no translation found for keyguard_sim_pin_label (3165230979848342096) -->
+ <skip />
+ <!-- no translation found for keyguard_password_old_password_error_text (7825167921425875782) -->
+ <skip />
+ <!-- no translation found for keyguard_password_button_text (5583216611767587916) -->
+ <skip />
+ <!-- no translation found for keyguard_password_confirm_new_label (3049924245089700462) -->
+ <skip />
+ <!-- no translation found for keyguard_password_new_label (6886321134396839613) -->
+ <skip />
+ <!-- no translation found for keyguard_password_old_label (2625226322160389164) -->
+ <skip />
+ <!-- no translation found for keyguard_password_mismatch_error_text (5590439742407960684) -->
+ <skip />
+ <!-- no translation found for proxy_clear_text (7462018343861464800) -->
+ <skip />
+ <!-- no translation found for proxy_port_label (454764249950408469) -->
+ <skip />
+ <!-- no translation found for proxy_defaultView_text (477956555946955188) -->
+ <skip />
+ <!-- no translation found for proxy_action_text (7237648202287106053) -->
+ <skip />
+ <!-- no translation found for proxy_hostname_label (8172724402202502926) -->
+ <skip />
+ <!-- no translation found for proxy_error (2368838777443712514) -->
+ <skip />
+ <!-- no translation found for proxy_error_dismiss (1009576670609260537) -->
+ <skip />
+ <!-- no translation found for proxy_error_invalid_host (5818723835453265444) -->
+ <skip />
+ <!-- no translation found for proxy_error_empty_port (738670302600971696) -->
+ <skip />
+ <!-- no translation found for proxy_error_empty_host_set_port (3522768877312466087) -->
+ <skip />
+ <!-- no translation found for proxy_error_invalid_port (5852740817449746242) -->
+ <skip />
+ <!-- no translation found for radio_info_signal_location_label (6790461877981061839) -->
+ <skip />
+ <!-- no translation found for radio_info_neighboring_location_label (5882264988461015003) -->
+ <skip />
+ <!-- no translation found for radio_info_data_attempts_label (5718604146991711306) -->
+ <skip />
+ <!-- no translation found for radio_info_imsi_label (2317524657274819091) -->
+ <skip />
+ <!-- no translation found for radio_info_gprs_service_label (5420684247059811667) -->
+ <skip />
+ <!-- no translation found for radio_info_roaming_label (1523999234094211876) -->
+ <skip />
+ <!-- no translation found for radio_info_imei_label (7478845477154345609) -->
+ <skip />
+ <!-- no translation found for radio_info_call_redirect_label (9152188915373483603) -->
+ <skip />
+ <!-- no translation found for radio_info_ppp_resets_label (7827917501324472951) -->
+ <skip />
+ <!-- no translation found for radio_info_gsm_disconnects_label (50196516231035865) -->
+ <skip />
+ <!-- no translation found for radio_info_current_network_label (7900537487294471382) -->
+ <skip />
+ <!-- no translation found for radio_info_data_successes_label (7535159054935678976) -->
+ <skip />
+ <!-- no translation found for radio_info_ppp_received_label (4691560024942688416) -->
+ <skip />
+ <!-- no translation found for radio_info_gsm_service_label (4136951864496199626) -->
+ <skip />
+ <!-- no translation found for radio_info_signal_strength_label (5563094068800111446) -->
+ <skip />
+ <!-- no translation found for radio_info_call_status_label (1954322409156881789) -->
+ <skip />
+ <!-- no translation found for radio_info_ppp_sent_label (4787832417770220813) -->
+ <skip />
+ <!-- no translation found for radio_info_radio_resets_label (6419704529083057732) -->
+ <skip />
+ <!-- no translation found for radio_info_message_waiting_label (3693034295049688916) -->
+ <skip />
+ <!-- no translation found for radio_info_phone_number_label (1169287873766331522) -->
+ <skip />
+ <!-- no translation found for radio_info_band_mode_label (492995374341164385) -->
+ <skip />
+ <!-- no translation found for radio_info_network_type_label (6136190660604370025) -->
+ <skip />
+ <!-- no translation found for radio_info_set_perferred_label (7678318715915926899) -->
+ <skip />
+ <!-- no translation found for radio_info_ping_ipaddr (7229811664688502621) -->
+ <skip />
+ <!-- no translation found for radio_info_ping_hostname (7817617877155199848) -->
+ <skip />
+ <!-- no translation found for radio_info_http_client_test (5100483824350561339) -->
+ <skip />
+ <!-- no translation found for radio_info_toggle_ciph_label (2705975697585878388) -->
+ <skip />
+ <!-- no translation found for ping_test_label (99396772665008247) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_label (6577522217730406517) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_update_label (6471155265532972448) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_refresh_label (4334057389927982364) -->
+ <skip />
+ <!-- no translation found for band_mode_title (7821227842056223251) -->
+ <skip />
+ <!-- no translation found for band_mode_loading (410937385710103955) -->
+ <skip />
+ <!-- no translation found for band_mode_set (8014088359589034048) -->
+ <skip />
+ <!-- no translation found for band_mode_failed (7344139594454779293) -->
+ <skip />
+ <!-- no translation found for band_mode_succeeded (6743326367601528579) -->
+ <skip />
+ <!-- no translation found for ringer_volume_ringer_mode_label (1267680012888226403) -->
+ <skip />
+ <!-- no translation found for ringer_volume_screen_increasing_text (5641107274996825316) -->
+ <skip />
+ <!-- no translation found for ringer_volume_ringtone_label (8507276140935496895) -->
+ <skip />
+ <!-- no translation found for ringer_volume_instructions (7430796981440362113) -->
+ <skip />
+ <!-- no translation found for sdcard_changes_instructions (7539994899295940230) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_screen_mass_storage_text (2709793645616209242) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_total_bytes_label (4695007104428377476) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_not_present_status (8273854904691436051) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_available_bytes_label (8728724492013578100) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_mass_storage_status (5462257162856618607) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_unmounted_status (4993156749793936182) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_bad_removal_status (6987436040423897460) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_used_bytes_label (1097524397345356686) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_scanning_status (7123981757360169583) -->
+ <skip />
+ <!-- no translation found for sdcard_settings_read_only_status (4474146266994176505) -->
+ <skip />
+ <!-- no translation found for sdcard_removal_alert_title (5360030372146492494) -->
+ <skip />
+ <!-- no translation found for sdcard_unmountable_alert_title (2457327813571875941) -->
+ <skip />
+ <!-- no translation found for telephony_user_label (3662067259022076855) -->
+ <skip />
+ <!-- no translation found for telephony_server_label (2958905930463255443) -->
+ <skip />
+ <!-- no translation found for telephony_name_label (3239206851237697815) -->
+ <skip />
+ <!-- no translation found for telephony_mmsc_label (3129572752790593204) -->
+ <skip />
+ <!-- no translation found for telephony_apn_label (1269355797700328878) -->
+ <skip />
+ <!-- no translation found for telephony_mcc_label (2358690342050148082) -->
+ <skip />
+ <!-- no translation found for telephony_port_label (1664109599163228850) -->
+ <skip />
+ <!-- no translation found for telephony_password_label (2790168704218175016) -->
+ <skip />
+ <!-- no translation found for telephony_proxy_label (4480701121030721391) -->
+ <skip />
+ <!-- no translation found for telephony_mnc_label (6250035410010841498) -->
+ <skip />
+ <!-- no translation found for telephony_mmsproxy_label (5927157452625472941) -->
+ <skip />
+ <!-- no translation found for telephony_mmsport_label (151112465984611435) -->
+ <skip />
+ <!-- no translation found for next_label (485332588250947062) -->
+ <skip />
+ <!-- no translation found for language_picker_title (4327847825278760846) -->
+ <skip />
+ <!-- no translation found for select_your_language (9081963472187973531) -->
+ <skip />
+ <!-- no translation found for activity_picker_label (2380525463987566218) -->
+ <skip />
+ <!-- no translation found for device_info_label (7570393762255800528) -->
+ <skip />
+ <!-- no translation found for battery_info_label (4226476641445884464) -->
+ <skip />
+ <!-- no translation found for display_label (5332548614157902929) -->
+ <skip />
+ <!-- no translation found for phone_info_label (4489149928836976370) -->
+ <skip />
+ <!-- no translation found for sd_card_settings_label (4859619309953284243) -->
+ <skip />
+ <!-- no translation found for proxy_settings_label (7309754884369094752) -->
+ <skip />
+ <!-- no translation found for cancel (5496501778130330179) -->
+ <skip />
+ <!-- no translation found for settings_label (5215706799907405364) -->
+ <skip />
+ <!-- no translation found for airplane_mode (728128729487272521) -->
+ <skip />
+ <!-- no translation found for airplane_mode_summary (3500557633417506553) -->
+ <skip />
+ <!-- no translation found for airplane_mode_turning_on (1243134862683209663) -->
+ <skip />
+ <!-- no translation found for airplane_mode_turning_off (2291183932542256190) -->
+ <skip />
+ <!-- no translation found for radio_controls_title (4981652151494753702) -->
+ <skip />
+ <!-- no translation found for radio_controls_summary (9105526969569292926) -->
+ <skip />
+ <!-- no translation found for date_and_time_settings_title (7496498492273417635) -->
+ <skip />
+ <!-- no translation found for date_and_time_settings_summary (3489093199543794055) -->
+ <skip />
+ <!-- no translation found for date_time_auto (2362417333033542761) -->
+ <skip />
+ <!-- no translation found for date_time_auto_summaryOn (6001598633410342344) -->
+ <skip />
+ <!-- no translation found for date_time_auto_summaryOff (7997440952829716343) -->
+ <skip />
+ <!-- no translation found for date_time_24hour (7673898630734082066) -->
+ <skip />
+ <!-- no translation found for date_time_set_time (3035124335707824178) -->
+ <skip />
+ <!-- no translation found for date_time_set_timezone (8157539696840488255) -->
+ <skip />
+ <!-- no translation found for date_time_set_date (5796511221096156740) -->
+ <skip />
+ <!-- no translation found for date_time_date_format (8767730290447762594) -->
+ <skip />
+ <!-- no translation found for zone_list_menu_sort_alphabetically (8983103881342552870) -->
+ <skip />
+ <!-- no translation found for zone_list_menu_sort_by_timezone (7025442915093990469) -->
+ <skip />
+ <!-- no translation found for security_settings_title (969550777120624897) -->
+ <skip />
+ <!-- no translation found for security_settings_summary (3202445632951595923) -->
+ <skip />
+ <!-- no translation found for security_passwords_title (4466520735598079063) -->
+ <skip />
+ <!-- no translation found for bluetooth_quick_toggle_title (7390054857098148377) -->
+ <skip />
+ <!-- no translation found for bluetooth_quick_toggle_summary (2292894901949724405) -->
+ <skip />
+ <!-- no translation found for bluetooth_settings (1545097653816106117) -->
+ <skip />
+ <!-- no translation found for bluetooth_settings_title (7436154842447736508) -->
+ <skip />
+ <!-- no translation found for bluetooth_settings_summary (1419697742707330821) -->
+ <skip />
+ <!-- no translation found for bluetooth_pin_entry (7140440689122855541) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_info (726888105035847276) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing_msg (421984108945447804) -->
+ <skip />
+ <!-- no translation found for bluetooth_enter_pin_msg (5283213895861482149) -->
+ <skip />
+ <!-- no translation found for bluetooth_new_data (4048633302322349191) -->
+ <skip />
+ <!-- no translation found for bluetooth_new_data_confirm (6572723618484710293) -->
+ <skip />
+ <!-- no translation found for bluetooth_new_data_cancel (6401813497420912873) -->
+ <skip />
+ <!-- no translation found for bluetooth_scan_for_new_devices (2016453591198271840) -->
+ <skip />
+ <!-- no translation found for bluetooth_discoverability_panel_title (3088687647065413091) -->
+ <skip />
+ <!-- no translation found for bluetooth_discoverable (6321742881547460353) -->
+ <skip />
+ <!-- no translation found for bluetooth_connectable (6460916475945857842) -->
+ <skip />
+ <!-- no translation found for bluetooth_neither (7180764615407592566) -->
+ <skip />
+ <!-- no translation found for bluetooth_preference_scan_title (5457824526570506576) -->
+ <skip />
+ <!-- no translation found for bluetooth_preference_scan_summary (4169248439102381141) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect (1360133741981139570) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect (3848550418295778426) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_pair_connect (3526057462723016574) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_unpair (1842004154350000288) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect_unpair (302606151874724466) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect_advanced (5004355397163127842) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect_specific_profiles_title (8557599374974072579) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_a2dp (6848174297822591204) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_headset (8660680578951214915) -->
+ <skip />
+ <!-- no translation found for wifi (1814330175745622683) -->
+ <skip />
+ <!-- no translation found for wifi_quick_toggle_title (4404851801229148146) -->
+ <skip />
+ <!-- no translation found for wifi_quick_toggle_summary (5254705029759236850) -->
+ <skip />
+ <!-- no translation found for wifi_settings (8327330966261092159) -->
+ <skip />
+ <!-- no translation found for wifi_settings_category (610287013958209636) -->
+ <skip />
+ <!-- no translation found for wifi_settings_summary (8789964612748859011) -->
+ <skip />
+ <!-- no translation found for forget_network (5055146656395940343) -->
+ <skip />
+ <!-- no translation found for wifi_status (4374358089273446404) -->
+ <skip />
+ <!-- no translation found for wifi_link_speed (8766462457818203791) -->
+ <skip />
+ <!-- no translation found for wifi_signal_3 (1264702582845283580) -->
+ <skip />
+ <!-- no translation found for wifi_signal_2 (3765197678751351272) -->
+ <skip />
+ <!-- no translation found for wifi_signal_1 (3469786868912545422) -->
+ <skip />
+ <!-- no translation found for wifi_signal_0 (7285670709111185231) -->
+ <skip />
+ <!-- no translation found for security (5693579233939508487) -->
+ <skip />
+ <!-- no translation found for wifi_security_open (6529463996240023139) -->
+ <skip />
+ <!-- no translation found for wifi_security_wep (8543279149057388909) -->
+ <skip />
+ <!-- no translation found for wifi_security_wpa (7229647924366572707) -->
+ <skip />
+ <!-- no translation found for wifi_security_wpa2 (641020427516679969) -->
+ <skip />
+ <!-- no translation found for wifi_security_unknown (7700764937580224930) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_open (7105261201983314526) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wep (2018232984976185738) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wpa (7240649761750328761) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wpa2 (5470387821577814216) -->
+ <skip />
+ <!-- no translation found for ip_address (4529429379837050044) -->
+ <skip />
+ <!-- no translation found for signal (2632692872631550847) -->
+ <skip />
+ <!-- no translation found for wifi_starting (380585178092358776) -->
+ <skip />
+ <!-- no translation found for wifi_stopping (1130828572786743854) -->
+ <skip />
+ <!-- no translation found for wifi_error (7223451684597210919) -->
+ <skip />
+ <!-- no translation found for error_starting (7901473970530638438) -->
+ <skip />
+ <!-- no translation found for error_stopping (6119744781517748022) -->
+ <skip />
+ <!-- no translation found for error_scanning (8959523523794779868) -->
+ <skip />
+ <!-- no translation found for error_connecting (1510805861562560751) -->
+ <skip />
+ <!-- no translation found for error_saving (596104681410934823) -->
+ <skip />
+ <!-- no translation found for connect (1116879604374989661) -->
+ <skip />
+ <!-- no translation found for connect_to_blank (6054013287161999519) -->
+ <skip />
+ <!-- no translation found for please_type_passphrase (5613230660950935320) -->
+ <skip />
+ <!-- no translation found for please_type_hex_key (3792966437690051423) -->
+ <skip />
+ <!-- no translation found for wifi_show_password (2142204324333077532) -->
+ <skip />
+ <!-- no translation found for scan_wifi (3192234741001559529) -->
+ <skip />
+ <!-- no translation found for summary_not_in_range (396994203639865459) -->
+ <skip />
+ <!-- no translation found for summary_remembered (7032231120124870464) -->
+ <skip />
+ <!-- no translation found for summary_connection_failed (5466501123715222542) -->
+ <skip />
+ <!-- no translation found for wifi_access_points (6047681549878678453) -->
+ <skip />
+ <!-- no translation found for wifi_type_ssid (4389276980911820577) -->
+ <skip />
+ <!-- no translation found for wifi_security (8115513846744543151) -->
+ <skip />
+ <!-- no translation found for wifi_save_config (1041957548332322297) -->
+ <skip />
+ <!-- no translation found for wifi_password_unchanged (5583782979192657008) -->
+ <skip />
+ <!-- no translation found for wifi_add_other_network (914072465709281633) -->
+ <skip />
+ <!-- no translation found for wifi_notify_open_networks (3091942233631075516) -->
+ <skip />
+ <!-- no translation found for wifi_notify_open_networks_summary (1793737931132127488) -->
+ <skip />
+ <!-- no translation found for wifi_password_incorrect_error (8656138222468900361) -->
+ <skip />
+ <!-- no translation found for wifi_generic_connection_error (4414845075108763948) -->
+ <skip />
+ <!-- no translation found for wifi_menu_advanced (7729886219986221918) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_titlebar (6646153875184353089) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_menu_save (5525488681356054899) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_menu_cancel (4123436217014637229) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_invalid_ip (1648124374575025870) -->
+ <skip />
+ <!-- no translation found for wifi_use_static_ip (4076793026334955338) -->
+ <skip />
+ <!-- no translation found for wifi_ip_address (6067958502872259392) -->
+ <skip />
+ <!-- no translation found for wifi_dns1 (7502077213876989613) -->
+ <skip />
+ <!-- no translation found for wifi_dns2 (3296825469895827273) -->
+ <skip />
+ <!-- no translation found for wifi_gateway (393330487055540831) -->
+ <skip />
+ <!-- no translation found for wifi_netmask (6024777305439519433) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_connect (3348366738100644008) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_forget (5844111744505938081) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_change_password (7074463790535015442) -->
+ <skip />
+ <!-- no translation found for wifi_advanced_titlebar (7352048185262676955) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_title (4302664253747096207) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_summary (5137058932628594680) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_error (581404310349899492) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_channel_phrase (8341967925173918983) -->
+ <skip />
+ <!-- no translation found for fragment_status_scanning (2452501398802143084) -->
+ <skip />
+ <!-- no translation found for fragment_status_connecting (5455055928926778914) -->
+ <skip />
+ <!-- no translation found for fragment_status_authenticating (5975151429887814137) -->
+ <skip />
+ <!-- no translation found for fragment_status_obtaining_ip (8371541056156574137) -->
+ <skip />
+ <!-- no translation found for fragment_status_connected (7772649421228697676) -->
+ <skip />
+ <!-- no translation found for fragment_status_disconnecting (8051305438312488379) -->
+ <skip />
+ <!-- no translation found for fragment_status_disconnected (3290940773446552042) -->
+ <skip />
+ <!-- no translation found for fragment_status_failed (4964409385458293579) -->
+ <skip />
+ <!-- no translation found for status_scanning (3926342408784845610) -->
+ <skip />
+ <!-- no translation found for status_connecting (225048051419417871) -->
+ <skip />
+ <!-- no translation found for status_authenticating (4264747836549183098) -->
+ <skip />
+ <!-- no translation found for status_obtaining_ip (8073304022575470763) -->
+ <skip />
+ <!-- no translation found for status_connected (2715529156265923902) -->
+ <skip />
+ <!-- no translation found for status_disconnecting (1811735170177265186) -->
+ <skip />
+ <!-- no translation found for status_disconnected (1477066785918464530) -->
+ <skip />
+ <!-- no translation found for status_failed (1510040818386395715) -->
+ <skip />
+ <!-- no translation found for sound_and_display_settings (4749118288236939460) -->
+ <skip />
+ <!-- no translation found for sound_settings (2706184235211157339) -->
+ <skip />
+ <!-- no translation found for sound_and_display_settings_summary (3672623202659031178) -->
+ <skip />
+ <!-- no translation found for silent_mode_title (8688647037631448198) -->
+ <skip />
+ <!-- no translation found for silent_mode_summary (6135093989634963053) -->
+ <skip />
+ <!-- no translation found for ringtone_title (3146429644474380431) -->
+ <skip />
+ <!-- no translation found for ringtone_summary (1766080371183553822) -->
+ <skip />
+ <!-- no translation found for ring_volume_title (3239245366359256522) -->
+ <skip />
+ <!-- no translation found for ring_volume_summary (8107485240454889544) -->
+ <skip />
+ <!-- no translation found for vibrate_title (4376574310180696114) -->
+ <skip />
+ <!-- no translation found for vibrate_summary (6788068739601216797) -->
+ <skip />
+ <!-- no translation found for notification_sound_title (4775305251012747308) -->
+ <skip />
+ <!-- no translation found for notification_sound_summary (7617168477811163700) -->
+ <skip />
+ <!-- no translation found for notification_sound_dialog_title (7369825410219702421) -->
+ <skip />
+ <!-- no translation found for media_volume_title (1693540506432790482) -->
+ <skip />
+ <!-- no translation found for media_volume_summary (7399719776785079493) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_title (5173416183471867551) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_summary_on (7206798183944836534) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_summary_off (1555390648905350809) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_title (1955885794556255214) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_summary_on (1491009278452582375) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_summary_off (1932117674347216086) -->
+ <skip />
+ <!-- no translation found for sync_settings (5627573212478260990) -->
+ <skip />
+ <!-- no translation found for sync_settings_summary (2105151329390814783) -->
+ <skip />
+ <!-- no translation found for sync_too_many_deletes (5404332736593108449) -->
+ <skip />
+ <!-- no translation found for sync_automatically (1757054007777364379) -->
+ <skip />
+ <!-- no translation found for sync_enabled (4881088906246650863) -->
+ <skip />
+ <!-- no translation found for sync_disabled (2619875735374209768) -->
+ <skip />
+ <!-- no translation found for sync_menu_sync_now (3780223798968952491) -->
+ <skip />
+ <!-- no translation found for sync_menu_sync_cancel (5977866540414760428) -->
+ <skip />
+ <string name="sync_gmail">"Google Mail"</string>
+ <!-- no translation found for sync_calendar (596997436997648960) -->
+ <skip />
+ <!-- no translation found for sync_contacts (4740241811440373346) -->
+ <skip />
+ <!-- no translation found for sync_too_many_deletes_desc (4152554451720380120) -->
+ <skip />
+ <!-- no translation found for sync_really_delete (8529530859370540061) -->
+ <skip />
+ <!-- no translation found for sync_undo_deletes (5506677219430968015) -->
+ <skip />
+ <!-- no translation found for sync_do_nothing (8346666920786786758) -->
+ <skip />
+ <!-- no translation found for sync_is_failing (427555999473172925) -->
+ <skip />
+ <!-- no translation found for sync_plug (7544937220884084907) -->
+ <skip />
+ <!-- no translation found for display_settings (2055476596829366899) -->
+ <skip />
+ <!-- no translation found for animations_title (8735876378664711924) -->
+ <skip />
+ <!-- no translation found for animations_summary_on (4910047473170373768) -->
+ <skip />
+ <!-- no translation found for animations_summary_off (7454248311417075336) -->
+ <skip />
+ <!-- no translation found for brightness (7792602943961915646) -->
+ <skip />
+ <!-- no translation found for screen_timeout (8939204183998677539) -->
+ <skip />
+ <!-- no translation found for dim_screen (9146822367857660944) -->
+ <skip />
+ <!-- no translation found for sim_lock_settings (6543426308260152558) -->
+ <skip />
+ <!-- no translation found for sim_lock_settings_category (5039441655358781230) -->
+ <skip />
+ <!-- no translation found for sim_lock_settings_title (8010374003882925802) -->
+ <skip />
+ <!-- no translation found for sim_pin_toggle (7574412021981868256) -->
+ <skip />
+ <!-- no translation found for sim_lock_on (8138827066389889705) -->
+ <skip />
+ <!-- no translation found for sim_lock_off (5981077590897850416) -->
+ <skip />
+ <!-- no translation found for sim_pin_change (6346345741504768562) -->
+ <skip />
+ <!-- no translation found for sim_enter_pin (4472262228361846224) -->
+ <skip />
+ <!-- no translation found for sim_enable_sim_lock (1767414643085437650) -->
+ <skip />
+ <!-- no translation found for sim_disable_sim_lock (645505993827348391) -->
+ <skip />
+ <!-- no translation found for sim_enter_old (7066720880711460173) -->
+ <skip />
+ <!-- no translation found for sim_enter_new (5400506743942872294) -->
+ <skip />
+ <!-- no translation found for sim_reenter_new (3879209700314730223) -->
+ <skip />
+ <!-- no translation found for sim_change_pin (2931559944636266720) -->
+ <skip />
+ <!-- no translation found for sim_bad_pin (3448299105143686010) -->
+ <skip />
+ <!-- no translation found for sim_pins_dont_match (3311391861690022007) -->
+ <skip />
+ <!-- no translation found for sim_change_failed (296582980570404493) -->
+ <skip />
+ <!-- no translation found for sim_change_succeeded (5213849401095906667) -->
+ <skip />
+ <!-- no translation found for sim_lock_failed (5347551041374297429) -->
+ <skip />
+ <!-- no translation found for sim_enter_ok (1358372725362896701) -->
+ <skip />
+ <!-- no translation found for sim_enter_cancel (7631739323185806744) -->
+ <skip />
+ <!-- no translation found for device_info_settings (8859027767242680086) -->
+ <skip />
+ <!-- no translation found for system_update_settings_list_item_title (6730200310196695815) -->
+ <skip />
+ <!-- no translation found for system_update_settings_list_item_summary (6739352515982816664) -->
+ <skip />
+ <!-- no translation found for firmware_version (7819665654211702103) -->
+ <skip />
+ <!-- no translation found for model_number (4107796374489189882) -->
+ <skip />
+ <!-- no translation found for baseband_version (1650040574471474415) -->
+ <skip />
+ <!-- no translation found for kernel_version (55378504731737055) -->
+ <skip />
+ <!-- no translation found for build_number (1198654854394859525) -->
+ <skip />
+ <!-- no translation found for device_info_not_available (6218382614449625943) -->
+ <skip />
+ <!-- no translation found for device_status_activity_title (7855799759928692423) -->
+ <skip />
+ <!-- no translation found for device_status (2987561680068888482) -->
+ <skip />
+ <!-- no translation found for device_status_summary (1780544099238783522) -->
+ <skip />
+ <!-- no translation found for storage_settings_title (7861753874184164833) -->
+ <skip />
+ <!-- no translation found for storage_settings_summary (1416818376253802300) -->
+ <skip />
+ <!-- no translation found for status_number (4806660473653039727) -->
+ <skip />
+ <!-- no translation found for status_network_type (1161425700453834462) -->
+ <skip />
+ <!-- no translation found for status_data_state (8695034896805908780) -->
+ <skip />
+ <!-- no translation found for status_service_state (7070870512884685707) -->
+ <skip />
+ <!-- no translation found for status_signal_strength (1482993382046051601) -->
+ <skip />
+ <!-- no translation found for status_roaming (3315390849872980461) -->
+ <skip />
+ <!-- no translation found for status_operator (1056327385889326521) -->
+ <skip />
+ <!-- no translation found for status_wifi_mac_address (6992831729694423293) -->
+ <skip />
+ <!-- no translation found for status_bt_address (504373592762785867) -->
+ <skip />
+ <!-- no translation found for status_unavailable (6051510065892966154) -->
+ <skip />
+ <!-- no translation found for status_up_time (6098196556512905607) -->
+ <skip />
+ <!-- no translation found for status_awake_time (7049273600775745222) -->
+ <skip />
+ <!-- no translation found for internal_memory (7561409402817962159) -->
+ <skip />
+ <!-- no translation found for sd_memory (1795406535114313767) -->
+ <skip />
+ <!-- no translation found for memory_available (2899158225295363424) -->
+ <skip />
+ <!-- no translation found for memory_size (427803224818498885) -->
+ <skip />
+ <!-- no translation found for sd_eject (5921913949386442101) -->
+ <skip />
+ <!-- no translation found for sd_unavailable (8594217970053251031) -->
+ <skip />
+ <!-- no translation found for read_only (5208058402768070774) -->
+ <skip />
+ <!-- no translation found for battery_status_title (4908729478929871241) -->
+ <skip />
+ <!-- no translation found for battery_level_title (7696801820825704716) -->
+ <skip />
+ <!-- no translation found for apn_settings (7722988461663532083) -->
+ <skip />
+ <!-- no translation found for apn_edit (145450827773713132) -->
+ <skip />
+ <!-- no translation found for apn_not_set (1836736103685783041) -->
+ <skip />
+ <!-- no translation found for apn_name (5635523810193862271) -->
+ <skip />
+ <!-- no translation found for apn_apn (1405862057719498554) -->
+ <skip />
+ <!-- no translation found for apn_http_proxy (4783209622604526103) -->
+ <skip />
+ <!-- no translation found for apn_http_port (6467898443547323366) -->
+ <skip />
+ <!-- no translation found for apn_user (5401806939590692307) -->
+ <skip />
+ <!-- no translation found for apn_password (3912272151916346972) -->
+ <skip />
+ <!-- no translation found for apn_server (4178172695606191290) -->
+ <skip />
+ <!-- no translation found for apn_mmsc (4688710822514329323) -->
+ <skip />
+ <!-- no translation found for apn_mms_proxy (6319130324547259424) -->
+ <skip />
+ <!-- no translation found for apn_mms_port (4994975830339343926) -->
+ <skip />
+ <!-- no translation found for apn_mcc (4776172371424088609) -->
+ <skip />
+ <!-- no translation found for apn_mnc (6461836944090234319) -->
+ <skip />
+ <!-- no translation found for apn_type (2506383481268652319) -->
+ <skip />
+ <!-- no translation found for menu_delete (3312578247597762628) -->
+ <skip />
+ <!-- no translation found for menu_new (3302849393949232932) -->
+ <skip />
+ <!-- no translation found for menu_save (3541472751331191778) -->
+ <skip />
+ <!-- no translation found for menu_cancel (5119635160240047061) -->
+ <skip />
+ <!-- no translation found for error_title (5587090263536163777) -->
+ <skip />
+ <!-- no translation found for error_name_empty (8320983575802186669) -->
+ <skip />
+ <!-- no translation found for error_apn_empty (184981742259179404) -->
+ <skip />
+ <!-- no translation found for error_mcc_not3 (7059134831435281818) -->
+ <skip />
+ <!-- no translation found for error_mnc_not23 (8895747717145947670) -->
+ <skip />
+ <!-- no translation found for master_clear_title (932887860880075023) -->
+ <skip />
+ <!-- no translation found for master_clear_summary (2468534382451112879) -->
+ <skip />
+ <!-- no translation found for master_clear_desc (1022483980097013344) -->
+ <skip />
+ <!-- no translation found for master_clear_button_text (9137164244701534144) -->
+ <skip />
+ <!-- no translation found for master_clear_final_desc (316241813541136543) -->
+ <skip />
+ <!-- no translation found for master_clear_final_button_text (694363627766745199) -->
+ <skip />
+ <!-- no translation found for master_clear_gesture_prompt (1301991895870557434) -->
+ <skip />
+ <!-- no translation found for master_clear_gesture_explanation (598778956139377201) -->
+ <skip />
+ <!-- no translation found for master_clear_failed (8666435811265924625) -->
+ <skip />
+ <!-- no translation found for call_settings_title (1983111932504030578) -->
+ <skip />
+ <!-- no translation found for call_settings_summary (3446216896482844237) -->
+ <skip />
+ <!-- no translation found for network_settings_title (7989745255729576458) -->
+ <skip />
+ <!-- no translation found for network_settings_summary (8031949240036716110) -->
+ <skip />
+ <!-- no translation found for location_title (4501749309437121375) -->
+ <skip />
+ <!-- no translation found for location_network_based (3452214514389955422) -->
+ <skip />
+ <!-- no translation found for location_networks_disabled (7048471014395968941) -->
+ <skip />
+ <!-- no translation found for location_neighborhood_level (5315391444072434546) -->
+ <skip />
+ <!-- no translation found for location_gps (544098941752665022) -->
+ <skip />
+ <!-- no translation found for location_street_level (5804470409412760900) -->
+ <skip />
+ <!-- no translation found for location_gps_disabled (4004885356658024277) -->
+ <skip />
+ <!-- no translation found for about_settings (1468182090257585152) -->
+ <skip />
+ <!-- no translation found for about_settings_summary (7669309646592260587) -->
+ <skip />
+ <!-- no translation found for legal_information (6712607847710471677) -->
+ <skip />
+ <!-- no translation found for contributors_title (4798193298012318879) -->
+ <skip />
+ <!-- no translation found for copyright_title (2179228277436615247) -->
+ <skip />
+ <!-- no translation found for license_title (819526735187376873) -->
+ <skip />
+ <!-- no translation found for terms_title (7807601861320706623) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_title (7912723098716795094) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_unavailable (2081311778550755077) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_loading (1663818560123999889) -->
+ <skip />
+ <!-- no translation found for lock_settings_title (7146407030740583889) -->
+ <skip />
+ <!-- no translation found for lockpattern_change_lock_pattern_label (3855872620591309784) -->
+ <skip />
+ <!-- no translation found for lockpattern_need_to_unlock (3934572142701271406) -->
+ <skip />
+ <!-- no translation found for lockpattern_need_to_unlock_wrong (8623928652252263051) -->
+ <skip />
+ <!-- no translation found for lockpattern_recording_intro_header (6521907098728482417) -->
+ <skip />
+ <!-- no translation found for lockpattern_recording_intro_footer (8701414951034062700) -->
+ <skip />
+ <!-- no translation found for lockpattern_recording_inprogress (6331225683056997713) -->
+ <skip />
+ <!-- no translation found for lockpattern_recording_incorrect_too_short (8234374450664107990) -->
+ <skip />
+ <!-- no translation found for lockpattern_pattern_entered_header (8351721622267579390) -->
+ <skip />
+ <!-- no translation found for lockpattern_need_to_confirm (6414172006294337771) -->
+ <skip />
+ <!-- no translation found for lockpattern_pattern_confirmed_header (2989082429968256403) -->
+ <skip />
+ <!-- no translation found for lockpattern_confirm_button_text (1743514668885027413) -->
+ <skip />
+ <!-- no translation found for lockpattern_restart_button_text (2163326470128236491) -->
+ <skip />
+ <!-- no translation found for lockpattern_retry_button_text (7695474740059017745) -->
+ <skip />
+ <!-- no translation found for lockpattern_continue_button_text (1077275957953266837) -->
+ <skip />
+ <!-- no translation found for lockpattern_settings_title (733123887849286898) -->
+ <skip />
+ <!-- no translation found for lockpattern_settings_enable_title (6966780385011497665) -->
+ <skip />
+ <!-- no translation found for lockpattern_settings_enable_summary (1491887748201941470) -->
+ <skip />
+ <!-- no translation found for lockpattern_settings_enable_visible_pattern_title (6649207540870563710) -->
+ <skip />
+ <!-- no translation found for lockpattern_settings_choose_lock_pattern (6323198429609574435) -->
+ <skip />
+ <!-- no translation found for lockpattern_settings_change_lock_pattern (5787732340207150910) -->
+ <skip />
+ <!-- no translation found for lockpattern_settings_help_how_to_record (1365531094765843326) -->
+ <skip />
+ <!-- no translation found for lockpattern_too_many_failed_confirmation_attempts_header (7630166531203362529) -->
+ <skip />
+ <!-- no translation found for lockpattern_too_many_failed_confirmation_attempts_footer (4498856168984445217) -->
+ <skip />
+ <!-- no translation found for skip_button_label (4850708311344393218) -->
+ <skip />
+ <!-- no translation found for next_button_label (3149701380025478958) -->
+ <skip />
+ <!-- no translation found for lock_title (999106562425756837) -->
+ <skip />
+ <!-- no translation found for lock_intro_message (2382351248538397170) -->
+ <skip />
+ <!-- no translation found for lock_example_title (6261868148302088973) -->
+ <skip />
+ <!-- no translation found for lock_example_message (2583534765034914458) -->
+ <skip />
+ <!-- no translation found for manageapplications_settings_title (3359899792647354589) -->
+ <skip />
+ <!-- no translation found for applications_settings (6104314134883460574) -->
+ <skip />
+ <!-- no translation found for applications_settings_summary (7666960391957493763) -->
+ <skip />
+ <!-- no translation found for applications_settings_header (6167136604757235210) -->
+ <skip />
+ <!-- no translation found for install_applications (8586540661161378543) -->
+ <skip />
+ <!-- no translation found for install_unknown_applications (8694019339326383901) -->
+ <skip />
+ <!-- no translation found for install_all_warning (5826871395153503952) -->
+ <skip />
+ <!-- no translation found for manage_applications_title (8288310040777485758) -->
+ <skip />
+ <!-- no translation found for application_info_label (605192869687093760) -->
+ <skip />
+ <!-- no translation found for storage_label (8765276782501761971) -->
+ <skip />
+ <!-- no translation found for auto_launch_label (3546876666453498673) -->
+ <skip />
+ <!-- no translation found for permissions_label (3244346920180368862) -->
+ <skip />
+ <!-- no translation found for total_size_label (5016115699600749568) -->
+ <skip />
+ <!-- no translation found for application_size_label (5378963933449396413) -->
+ <skip />
+ <!-- no translation found for data_size_label (6038126657652457179) -->
+ <skip />
+ <!-- no translation found for uninstall_text (2322009518449651787) -->
+ <skip />
+ <!-- no translation found for clear_user_data_text (3586758620250813061) -->
+ <skip />
+ <!-- no translation found for auto_launch_enable_text (8228619838865933982) -->
+ <skip />
+ <!-- no translation found for auto_launch_disable_text (4696687016762486484) -->
+ <skip />
+ <!-- no translation found for clear_activities (2399981667625036009) -->
+ <skip />
+ <!-- no translation found for unknown (7966307317466394761) -->
+ <skip />
+ <!-- no translation found for sort_order_alpha (210746743398042077) -->
+ <skip />
+ <!-- no translation found for sort_order_size (2716777274377923612) -->
+ <skip />
+ <!-- no translation found for manage_space_text (3118726017144542336) -->
+ <skip />
+ <!-- no translation found for filter_apps_all (5819127882791374920) -->
+ <skip />
+ <!-- no translation found for filter_apps_third_party (8693065498520334174) -->
+ <skip />
+ <!-- no translation found for filter_apps_running (2019159142681656258) -->
+ <skip />
+ <!-- no translation found for loading (5170696093820794830) -->
+ <skip />
+ <!-- no translation found for recompute_size (8376294373548662083) -->
+ <skip />
+ <!-- no translation found for clear_data_dlg_title (2115093619616088799) -->
+ <skip />
+ <!-- no translation found for clear_data_dlg_text (3004273956481932846) -->
+ <skip />
+ <!-- no translation found for dlg_ok (2225130755859653348) -->
+ <skip />
+ <!-- no translation found for dlg_cancel (8597172015374919396) -->
+ <skip />
+ <!-- no translation found for app_not_found_dlg_title (6649900521951617898) -->
+ <skip />
+ <!-- no translation found for app_not_found_dlg_text (6893475426667174751) -->
+ <skip />
+ <!-- no translation found for clear_data_failed (3040984234884359027) -->
+ <skip />
+ <!-- no translation found for security_settings_desc (5898339748632998613) -->
+ <skip />
+ <!-- no translation found for default_app_desc (3475613003133497043) -->
+ <skip />
+ <!-- no translation found for computing_size (7350089935999085554) -->
+ <skip />
+ <!-- no translation found for invalid_size_value (3054945647487201471) -->
+ <skip />
+ <!-- no translation found for language_settings (7247557040404006341) -->
+ <skip />
+ <!-- no translation found for language_settings_summary (721948806318958691) -->
+ <skip />
+ <!-- no translation found for language_category (6646529166552376418) -->
+ <skip />
+ <!-- no translation found for text_category (3133311779500246731) -->
+ <skip />
+ <!-- no translation found for phone_language (4084332836028530631) -->
+ <skip />
+ <!-- no translation found for auto_replace (6134508433464846627) -->
+ <skip />
+ <!-- no translation found for auto_replace_summary (1016177921245107750) -->
+ <skip />
+ <!-- no translation found for auto_caps (6021984352657087728) -->
+ <skip />
+ <!-- no translation found for auto_caps_summary (4783973594319542220) -->
+ <skip />
+ <!-- no translation found for auto_punctuate (2819742922158924703) -->
+ <skip />
+ <!-- no translation found for auto_punctuate_summary (2664143621323054924) -->
+ <skip />
+ <!-- no translation found for show_password (2353636034424349266) -->
+ <skip />
+ <!-- no translation found for show_password_summary (3920555488855590831) -->
+ <skip />
+ <!-- no translation found for testing (555268605244514909) -->
+ <skip />
+ <!-- no translation found for testing_phone_info (8718517606602144606) -->
+ <skip />
+ <!-- no translation found for testing_battery_info (3826036256683980425) -->
+ <skip />
+ <!-- no translation found for quick_launch_title (5423323579273213815) -->
+ <skip />
+ <!-- no translation found for quick_launch_summary (1272194567210324017) -->
+ <skip />
+ <!-- no translation found for quick_launch_assign_application (5949445664563354321) -->
+ <skip />
+ <!-- no translation found for quick_launch_no_shortcut (5958195604101558965) -->
+ <skip />
+ <!-- no translation found for quick_launch_shortcut (1115195051591830635) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_dialog_title (5217130241215296612) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_dialog_message (3420665419624963430) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_ok_button (2442832413597511429) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_cancel_button (1437354385792055993) -->
+ <skip />
+ <!-- no translation found for quick_launch_display_mode_applications (6570683843184675363) -->
+ <skip />
+ <!-- no translation found for quick_launch_display_mode_shortcuts (6642750364678074004) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_title (1752662012056721926) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_summary (5481367119142131313) -->
+ <skip />
+ <!-- no translation found for development_settings_title (4671731485005432632) -->
+ <skip />
+ <!-- no translation found for development_settings_summary (5518361138194831299) -->
+ <skip />
+ <!-- no translation found for enable_adb (7770070343289262572) -->
+ <skip />
+ <!-- no translation found for enable_adb_summary (1498997582065835981) -->
+ <skip />
+ <!-- no translation found for keep_screen_on (5805533478834516956) -->
+ <skip />
+ <!-- no translation found for keep_screen_on_summary (5703353541069794974) -->
+ <skip />
+ <!-- no translation found for allow_mock_location (6204808904743157937) -->
+ <skip />
+ <!-- no translation found for allow_mock_location_summary (3154837501223277592) -->
+ <skip />
</resources>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 27db21d..f29404e 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -1,700 +1,883 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="about_settings">Acerca del teléfono</string>
- <string name="about_settings_summary">Ver información legal, estado del teléfono, versión de software</string>
- <string name="activity_picker_label">Seleccionar actividad</string>
- <string name="airplane_mode">Modo avión</string>
- <string name="airplane_mode_summary">Seleccionar para deshabilitar todas las conexiones inalámbricas</string>
- <string name="airplane_mode_turning_off">Habilitando conexiones inalámbricas\u2026</string>
- <string name="airplane_mode_turning_on">Deshabilitando conexiones inalámbricas\u2026</string>
- <string name="android_id_label">ID de Android</string>
- <string name="apn_apn">APN</string>
- <string name="apn_edit">Editar punto de acceso</string>
- <string name="apn_http_port">Puerto</string>
- <string name="apn_http_proxy">Proxy</string>
- <string name="apn_label">APN</string>
- <string name="apn_mcc">MCC</string>
- <string name="apn_mms_port">Puerto MMS</string>
- <string name="apn_mms_proxy">Proxy MMS</string>
- <string name="apn_mmsc">MMSC</string>
- <string name="apn_mnc">MNC</string>
- <string name="apn_name">Nombre</string>
- <string name="apn_not_set">&lt;No establecido&gt;</string>
- <string name="apn_password">Contraseña</string>
- <string name="apn_server">Servidor</string>
- <string name="apn_settings">APNs</string>
- <string name="apn_type">Tipo de APN</string>
- <string name="apn_user">Nombre de usuario</string>
- <string name="app_launcher_newView_text">Nuevo AppLauncher</string>
- <string name="app_not_found_dlg_text"> La aplicación no se
-encontró en la lista de aplicaciones instaladas.</string>
- <string name="app_not_found_dlg_title">Aplicación no encontrada</string>
- <string name="application_info_label">Inform. de la aplicación</string>
- <string name="application_size_label">Aplicación</string>
- <string name="applications_settings">Aplicaciones</string>
- <string name="applications_settings_header">Configuración de la aplicación</string>
- <string name="applications_settings_summary">Administrar aplicaciones, configurar accesos directos para el inicio rápido</string>
- <string name="auto_caps">Capitalización automática</string>
- <string name="auto_caps_summary">Escribe en mayúscula la primera letra de cada frase</string>
- <string name="auto_launch_disable_text">No hay una configuración predeterminada.</string>
- <string name="auto_launch_enable_text">Permite seleccionar el inicio de esta aplicación por defecto en algunas acciones.</string>
- <string name="auto_launch_label">Inicio predeterminado</string>
- <string name="auto_punctuate">Puntuación automática</string>
- <string name="auto_punctuate_summary">Pulse la tecla espaciadora dos veces para insertar \u0022.\u0022</string>
- <string name="auto_replace">Sustitución automática</string>
- <string name="auto_replace_summary">Corrige las palabras escritas incorrectamente</string>
- <string name="autorotate">Giro automático</string>
- <string name="autorotate_summary_off">Al cambiar la orientación de la pantalla no se gira la aplicación</string>
- <string name="autorotate_summary_on">Al cambiar la orientación de la pantalla se gira la aplicación</string>
- <string name="b_text">B</string>
- <string name="band_mode_failed">Incorrecto</string>
- <string name="band_mode_loading">Cargando lista de bandas\u2026</string>
- <string name="band_mode_set">Establecer</string>
- <string name="band_mode_succeeded">Correcto</string>
- <string name="band_mode_title">Establecer banda GSM/UMTS</string>
- <string name="baseband_version">Versión de banda básica</string>
- <string name="basic_settings_title">Bases del teléfono</string>
- <string name="battery_info_awake_battery">Tiempo de actividad con batería:</string>
- <string name="battery_info_awake_plugged">Tiempo de actividad mientras se carga:</string>
- <string name="battery_info_health_dead">Muerta</string>
- <string name="battery_info_health_good">Buena</string>
- <string name="battery_info_health_label">Salud de batería:</string>
- <string name="battery_info_health_over_voltage">Sobretensión</string>
- <string name="battery_info_health_overheat">Recalentamiento</string>
- <string name="battery_info_health_unknown">Desconocido</string>
- <string name="battery_info_health_unspecified_failure">Error desconocido</string>
- <string name="battery_info_label">Información de batería</string>
- <string name="battery_info_level_label">Nivel de batería:</string>
- <string name="battery_info_scale_label">Escala de batería:</string>
- <string name="battery_info_screen_on">Tiempo de encendido de pantalla:</string>
- <string name="battery_info_status_charging">Cargando</string>
- <string name="battery_info_status_charging_ac">(CA)</string>
- <string name="battery_info_status_charging_usb">(USB)</string>
- <string name="battery_info_status_discharging">Descargando</string>
- <string name="battery_info_status_full">Completo</string>
- <string name="battery_info_status_label">Estado de la batería:</string>
- <string name="battery_info_status_not_charging">No cargando</string>
- <string name="battery_info_status_unknown">Desconocido</string>
- <string name="battery_info_technology_label">Tecnología de la batería:</string>
- <string name="battery_info_temperature_label">Temperatura de la batería:</string>
- <string name="battery_info_temperature_units">\u00B0 C</string>
- <string name="battery_info_uptime">Tiempo desde arranque:</string>
- <string name="battery_info_voltage_label">Tensión de la batería:</string>
- <string name="battery_info_voltage_units">mV</string>
- <string name="battery_level_title">Nivel de batería</string>
- <string name="battery_status_title">Estado de la batería</string>
- <string name="bluetooth">Bluetooth</string>
- <string name="bluetooth_clear_list">Borrar lista de dispositivos</string>
- <string name="bluetooth_connect">Conectar</string>
- <string name="bluetooth_connectable">Sólo conectable</string>
- <string name="bluetooth_connected">Conectado</string>
- <string name="bluetooth_connecting">Conectando\u2026</string>
- <string name="bluetooth_device">manos libres / auriculares</string>
- <string name="bluetooth_device_info">Información de dispositivo Bluetooth</string>
- <string name="bluetooth_device_info_alias">Alias de dispositivo</string>
- <string name="bluetooth_device_info_delete">Quitar este dispositivo</string>
- <string name="bluetooth_device_info_no_alias">Introducir alias aquí\u2026</string>
- <string name="bluetooth_device_info_sdp">Enumerar servicios compatibles</string>
- <string name="bluetooth_device_name">Nombre del dispositivo</string>
- <string name="bluetooth_devices">Dispositivos Bluetooth</string>
- <string name="bluetooth_disabled">Seleccionar la activación de Bluetooth</string>
- <string name="bluetooth_disconnect">Desconectar</string>
- <string name="bluetooth_disconnect_blank"><xliff:g id="device_name">%1$s</xliff:g> se desconectará</string>
- <string name="bluetooth_discoverability_panel_title">Mostrarme\u2026</string>
- <string name="bluetooth_discoverable">Detectable durante %1$s segundos</string>
- <string name="bluetooth_enable_text">Vaciar botón\u2026</string>
- <string name="bluetooth_enabled">Seleccionar la activación de Bluetooth</string>
- <string name="bluetooth_enabling">Conexión de Bluetooth\u2026</string>
- <string name="bluetooth_enter_pin_msg">Introduzca el código PIN para\u0020</string>
- <string name="bluetooth_failed_to_enable">Incapaz de conectar Bluetooth</string>
- <string name="bluetooth_is_discoverable">Detectable durante %1$s segundos\u2026</string>
- <string name="bluetooth_name_not_set">Ningún nombre establecido, utilizando nombre de cuenta</string>
- <string name="bluetooth_neither">Ni detectable ni conectable</string>
- <string name="bluetooth_new_data">Introducir nuevos datos</string>
- <string name="bluetooth_new_data_cancel">Cancelar</string>
- <string name="bluetooth_new_data_confirm">Aceptar</string>
- <string name="bluetooth_not_connected">Emparejar con este dispositivo</string>
- <string name="bluetooth_not_discoverable">Seleccionar para que el dispositivo sea detectable</string>
- <string name="bluetooth_notif_message">Seleccionar emparejamiento con\u0020</string>
- <string name="bluetooth_notif_ticker">Solicitud para emparejar Bluetooth</string>
- <string name="bluetooth_notif_title">Solicitud para emparejar Bluetooth</string>
- <string name="bluetooth_pair">Emparejar</string>
- <string name="bluetooth_paired">Emparejado</string>
- <string name="bluetooth_paired_not_nearby">Emparejado</string>
- <string name="bluetooth_pairing">Emparejando\u2026</string>
- <string name="bluetooth_pairing_msg">Emparejando\u2026</string>
- <string name="bluetooth_pin_entry">Entrada de PIN Bluetooth</string>
- <string name="bluetooth_quick_toggle_summary">Seleccionar la activación de Bluetooth</string>
- <string name="bluetooth_quick_toggle_title">Bluetooth</string>
- <string name="bluetooth_scan_for_devices">Buscar dispositivos</string>
- <string name="bluetooth_scan_for_new_devices">Buscando nuevos dispositivos\u2026</string>
- <string name="bluetooth_scan_text">Vaciar botón\u2026</string>
- <string name="bluetooth_settings">Configuración de Bluetooth</string>
- <string name="bluetooth_settings_summary">Administrar conexiones, configuración de nombre del dispositivo y su reconocimiento</string>
- <string name="bluetooth_settings_text">Vaciar botón\u2026</string>
- <string name="bluetooth_settings_title">Configuración de Bluetooth</string>
- <string name="bluetooth_starting">Conexión de Bluetooth\u2026</string>
- <string name="bluetooth_stopping">Desconexión de Bluetooth\u2026</string>
- <string name="bluetooth_unknown">Desconocido</string>
- <string name="bluetooth_unpair">Desemparejar</string>
- <string name="bluetooth_visibility">Detectable</string>
- <string name="bootloader_version">Arranque de versión del cargador</string>
- <string name="brightness">Brillo</string>
- <string name="build_date_label">Fecha de compilación</string>
- <string name="build_description_label">Descripción de compilación</string>
- <string name="build_host_label">Host de compilación</string>
- <string name="build_id_label">ID de compilación</string>
- <string name="build_number">Número de compilación</string>
- <string name="build_type_label">Tipo de compilación</string>
- <string name="build_user_label">Usuario de compilación</string>
- <string name="call_settings_summary">Configurar correo de voz, desvío de llamada, llamada en espera, identificador de llamada</string>
- <string name="call_settings_title">Configuración de llamada</string>
- <string name="cancel">Cancelar</string>
- <string name="checkin_button_label">Buscar actualización</string>
- <string name="checkin_download_failed">Incorrecto</string>
- <string name="checkin_download_label">Descargar estado</string>
- <string name="checkin_download_ongoing">Descargando</string>
- <string name="checkin_download_pending">En espera</string>
- <string name="checkin_download_succeeded">Completado</string>
- <string name="checkin_download_suspended">Suspendido</string>
- <string name="checkin_download_unknown">Estado desconocido</string>
- <string name="checkin_failures_label">Fallos desde el último éxito</string>
- <string name="checkin_last_time_label">Última registro correcto</string>
- <string name="checkin_started_message">Registro iniciado\u2026</string>
- <string name="checkin_status_label">Estado del registro</string>
- <string name="checkin_time_never">(nunca)</string>
- <string name="checkin_upgrade_label">Actualización pendiente</string>
- <string name="choose_timezone">Seleccionar zona horaria</string>
- <string name="choose_timezone_region">Seleccionar región</string>
- <string name="clear_activities">Borrar valores predeterminados</string>
- <string name="clear_data_dlg_text">Toda la información guardada en esta aplicación se eliminará de forma permanente. </string>
- <string name="clear_data_dlg_title">Eliminar</string>
- <string name="clear_data_failed">Incapaz de borrar los datos de la aplicación. </string>
- <string name="clear_user_data_text">Borrar datos</string>
- <string name="computing_size">Cálculo del tamaño de la aplicación\u2026</string>
- <string name="connect">Conectar</string>
- <string name="connect_to_blank">Conectar a <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="contributors_title">Contribuyentes</string>
- <string name="copyright_title">Copyright</string>
- <string name="data_settings">Configuración de datos</string>
- <string name="data_settings_summary">Tarjeta SD y memoria de almacenamiento, sincronización de datos</string>
- <string name="data_settings_title">Datos</string>
- <string name="data_size_label">Datos</string>
- <string name="date_and_time">Configuración de fecha y hora</string>
- <string name="date_and_time_settings_summary">Configurar fecha, hora, zona horaria y formatos</string>
- <string name="date_and_time_settings_title">Fecha y hora</string>
- <string name="date_time_24hour">Utilizar el formato de 24 horas</string>
- <string name="date_time_auto">Automático</string>
- <string name="date_time_auto_summaryOff">Utilizar valores suministrados por la red</string>
- <string name="date_time_auto_summaryOn">Utilizar valores suministrados por la red</string>
- <string name="date_time_changeDate_text">Cambiar fecha</string>
- <string name="date_time_changeTime_text">Cambiar hora</string>
- <string name="date_time_dateDisplay_text">3 nov 1997</string>
- <string name="date_time_date_format">Seleccionar formato de fecha</string>
- <string name="date_time_set_date">Establecer fecha</string>
- <string name="date_time_set_time">Establecer hora</string>
- <string name="date_time_set_timezone">Establecer zona horaria</string>
- <string name="date_time_setzone_text">Cambiar zona horaria</string>
- <string name="date_time_timeDisplay_text">11:45:00 a.m.</string>
- <string name="date_time_timezone_label">Zona horaria:</string>
- <string name="debug_intent_sender_label">Debug intent sender</string>
- <string name="default_date_format">dd/MM/aaaa</string>
- <string name="default_keyboard_device_label">Dispositivo de teclado predeterminado</string>
- <string name="development_settings_summary">Configuración para desarrollar la aplicación</string>
- <string name="development_settings_title">Desarrollo</string>
- <string name="device_info_asleeptime">Tiempo de inactividad</string>
- <string name="device_info_awaketime">Tiempo de actividad</string>
- <string name="device_info_default">Desconocido</string>
- <string name="device_info_label">Información del dispositivo</string>
- <string name="device_info_not_available">No disponible</string>
- <string name="device_info_settings">Estado del teléfono</string>
- <string name="device_info_uptime">Tiempo de funcionamiento</string>
- <string name="device_status">Estado</string>
- <string name="device_status_summary">IMEI, número de teléfono, señal, etc.</string>
- <string name="dim_screen">Oscurecer pantalla</string>
- <string name="disconnect_ums">Desconectar almacenamiento masivo USB</string>
- <string name="display_font_size_label">Tamaño de fuente:</string>
- <string name="display_label">Pantalla</string>
- <string name="display_preview_label">Vista previa:</string>
- <string name="display_settings">Configuración de visualización</string>
- <string name="dlg_cancel">Cancelar</string>
- <string name="dlg_ok">Aceptar</string>
- <string name="done">Aceptar</string>
- <string name="dtmf_tone_enable_summary_off">Reproducir sonidos al utilizar el panel marcado</string>
- <string name="dtmf_tone_enable_summary_on">Reproducir sonidos al utilizar el panel marcado</string>
- <string name="dtmf_tone_enable_title">Tonos táctiles con sonido</string>
- <string name="enable_adb">Depuración de USB</string>
- <string name="enable_adb_summary">Modo depuración cuando el dispositivo USB esté conectado</string>
- <string name="error_apn_empty">El nombre del punto de acceso (APN) no puede dejarse en blanco.</string>
- <string name="error_connecting">Incapaz de conectar a la red</string>
- <string name="error_mcc_not3">El campo MCC debe tener 3 dígitos.</string>
- <string name="error_mnc_not23">El campo MNC debe tener 2 ó 3 dígitos.</string>
- <string name="error_name_empty">El campo Nombre no puede dejarse en blanco.</string>
- <string name="error_saving">Incapaz de guardar la red</string>
- <string name="error_scanning">Incapaz de buscar redes</string>
- <string name="error_starting">Incapaz de iniciar Wi-Fi</string>
- <string name="error_stopping">Incapaz de detener Wi-Fi</string>
- <string name="error_title">¡Atención!</string>
- <string name="failed_to_connect">Incapaz de conectar a <xliff:g id="device_name">%1$s</xliff:g></string>
- <string name="failed_to_pair">Incapaz de emparejar con <xliff:g id="device_name">%1$s</xliff:g></string>
- <string name="favorites_label">Favoritos</string>
- <string name="firmware_version">Versión de firmware</string>
- <string name="font_size_preview_text">Servez à ce monsieur une bière et des kiwis.</string>
- <string name="font_size_save">Aceptar</string>
- <string name="forget_network">Olvidar</string>
- <string name="fragment_status_authenticating">Autenticación con <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_connected">Conectar a <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="fragment_status_connecting">Conectar a <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_disconnected">Desconectado</string>
- <string name="fragment_status_disconnecting">Desconectar de <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_failed">Incorrecto</string>
- <string name="fragment_status_obtaining_ip">Obteniendo dirección IP de <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_scanning">Búscando\u2026</string>
- <string name="gsm_version_baseband_label">Versión de banda básica</string>
- <string name="gsm_version_ril_impl_label">Versión RIL Impl</string>
- <string name="install_all_warning">Su teléfono y los datos personales son más vulnerables a cualquier ataque de aplicaciones
- procedentes de fuentes desconocidas. Por consiguiente, acepta ser el único responsable de cualquier
- daño producido en el teléfono o ante la pérdida de datos como resultado del uso de
- estas aplicaciones.</string>
- <string name="install_applications">Fuentes desconocidas</string>
- <string name="install_unknown_applications">Permitir la instalación de aplicaciones no comercializadas</string>
- <string name="intent_sender_account_label">Cuenta: </string>
- <string name="intent_sender_action_label">Acción:</string>
- <string name="intent_sender_data_label">Datos:</string>
- <string name="intent_sender_resource_label">Recurso: </string>
- <string name="intent_sender_sendbroadcast_text">Enviar emisión</string>
- <string name="intent_sender_startactivity_text">Iniciar actividad</string>
- <string name="internal_memory">Almacenamiento interno del teléfono</string>
- <string name="ip_address">Dirección IP</string>
- <string name="kb_text">KB</string>
- <string name="keep_screen_on">Permanecer activa</string>
- <string name="keep_screen_on_summary">La pantalla nunca quedará en suspensión durante la carga</string>
- <string name="kernel_version">Versión de núcleo</string>
- <string name="kernel_version_label">Versión de núcleo de Linux</string>
- <string name="keyguard_label">Protección de clave</string>
- <string name="keyguard_password_button_text">Aceptar</string>
- <string name="keyguard_password_confirm_new_label">Confirmar nueva contraseña:</string>
- <string name="keyguard_password_mismatch_error_text">Las dos contraseñas no coinciden. Por favor, escríbalas de nuevo.</string>
- <string name="keyguard_password_new_label">Contraseña nueva:</string>
- <string name="keyguard_password_old_label">Contraseña anterior:</string>
- <string name="keyguard_password_old_password_error_text">La contraseña anterior introducida no es correcta. Inténtelo de nuevo.</string>
- <string name="keyguard_pin_mod_text">Cambiar PIN</string>
- <string name="keyguard_pw_mod_text">Seleccionar patrón de bloqueo</string>
- <string name="keyguard_sim_pin_label">PIN de SIM</string>
- <string name="language_category">Configuración de idioma</string>
- <string name="language_picker_title">Local</string>
- <string name="language_settings">Texto</string>
- <string name="language_settings_summary">Seleccione las opciones de corrección automática del texto</string>
- <string name="large_font">Grande</string>
- <string name="legal_information">Información legal</string>
- <string name="legal_information_summary">Ver términos y condiciones</string>
- <string name="license_title">Licencia</string>
- <string name="location_gps">Habilitar satélites GPS</string>
- <string name="location_gps_disabled">A nivel de la calle (precisa más batería y cielo abierto)</string>
- <string name="location_label">Proveedor de ubicación:</string>
- <string name="location_neighborhood_level">Ubicación determinada por redes Wi-Fi y/o móviles.</string>
- <string name="location_network_based">Usar redes inalámbricas</string>
- <string name="location_networks_disabled">Consulte la ubicación en aplicaciones (como Mapas) utilizando redes inalámbricas</string>
- <string name="location_source">Mi ubicación</string>
- <string name="location_source_summary">Seleccione fuentes para determinar la ubicación</string>
- <string name="location_status">Estado:</string>
- <string name="location_street_level">Ubicación precisa hasta llegar a la calle (desmarcar para conservar la batería)</string>
- <string name="location_title">Mis fuentes de ubicación</string>
- <string name="lock_example_message">Conecte al menos cuatro puntos.\n
- \nSeleccione \u201CSiguiente\u201D cuando esté listo para trazar su propio patrón.
- </string>
- <string name="lock_example_title">Patrón de muestra</string>
- <string name="lock_settings_title">Patrón de desbloqueo de pantalla</string>
- <string name="lock_title">Seguridad en su teléfono</string>
- <string name="lockpattern_change_lock_pattern_label">Cambiar patrón de desbloqueo</string>
- <string name="lockpattern_confirm_button_text">Confirmar</string>
- <string name="lockpattern_continue_button_text">Continuar</string>
- <string name="lockpattern_need_to_confirm">Volver a mostrar patrón para confirmar:</string>
- <string name="lockpattern_need_to_unlock">Confirmar patrón guardado:</string>
- <string name="lockpattern_need_to_unlock_wrong">Lo siento, inténtelo de nuevo:</string>
- <string name="lockpattern_pattern_confirmed_header">Su nuevo patrón de desbloqueo:</string>
- <string name="lockpattern_pattern_entered_header">¡Patrón guardado!</string>
- <string name="lockpattern_recording_incorrect_too_short">Conectar al menos <xliff:g id="number">%d</xliff:g> puntos. Inténtelo de nuevo:</string>
- <string name="lockpattern_recording_inprogress">Suelte el dedo cuando haya terminado.</string>
- <string name="lockpattern_recording_intro_footer">Pulse Menú para obtener ayuda.</string>
- <string name="lockpattern_recording_intro_header">Trazar un patrón de desbloqueo:</string>
- <string name="lockpattern_restart_button_text">Volver a trazar</string>
- <string name="lockpattern_retry_button_text">Reintentar</string>
- <string name="lockpattern_settings_change_lock_pattern">Cambiar patrón de desbloqueo</string>
- <string name="lockpattern_settings_choose_lock_pattern">Configurar patrón de desbloqueo</string>
- <string name="lockpattern_settings_enable_summary">Debe establecer un patrón para desbloquear la pantalla</string>
- <string name="lockpattern_settings_enable_title">Se necesita patrón</string>
- <string name="lockpattern_settings_enable_visible_pattern_title">Utilizar patrón visible</string>
- <string name="lockpattern_settings_help_how_to_record">Cómo trazar un patrón de desbloqueo:</string>
- <string name="lockpattern_settings_title">Patrón de desbloqueo</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_footer">Inténtelo de nuevo en <xliff:g id="number">%d</xliff:g> segundos.</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_header">¡Demasiados intentos incorrectos!</string>
- <string name="manage_applications_title">Administrar aplicaciones</string>
- <string name="manage_space_text">Administrar espacio</string>
- <string name="manageapplications_settings_title">Administrar aplicaciones</string>
- <string name="mass_storage">Utilizar para almacenamiento USB</string>
- <string name="master_clear_button_text">Restablecer teléfono</string>
- <string name="master_clear_desc">Esta acción restablecerá el teléfono al estado inicial de fábrica, borrando todos los datos y aplicaciones descargadas.</string>
- <string name="master_clear_failed">No se ha realizado ningún restablecimiento porque el servicio System Clear no está disponible.</string>
- <string name="master_clear_final_button_text">Borrar todo</string>
- <string name="master_clear_final_desc">¿Restablecer teléfono, borrando todos los datos y aplicaciones? ¡Este paso no podrá deshacerse!</string>
- <string name="master_clear_gesture_explanation">Debe trazar su patrón de desbloqueo para confirmar el restablecimiento del teléfono. </string>
- <string name="master_clear_gesture_prompt">Trace su patrón de desbloqueo:</string>
- <string name="master_clear_summary">Eliminar todos los datos del teléfono</string>
- <string name="master_clear_title">Restablecer según los datos de fábrica</string>
- <string name="mb_text">MB</string>
- <string name="media_volume_summary">Establecer el volumen de la música y los vídeos</string>
- <string name="media_volume_title">Volumen de los medios</string>
- <string name="medium_font">Medio</string>
- <string name="memory_available">Espacio disponible</string>
- <string name="memory_size">Espacio total</string>
- <string name="menu_cancel">Rechazar</string>
- <string name="menu_delete">Eliminar APN</string>
- <string name="menu_new">Nueva APN</string>
- <string name="menu_save">Guardar</string>
- <string name="model_number">Número del modelo</string>
- <string name="network_settings_summary">Configurar opciones para itinerancia, redes, nombres de puntos de acceso (APN)</string>
- <string name="network_settings_title">Redes móviles</string>
- <string name="networks">Selección de operador</string>
- <string name="networks_title">Configuración de red</string>
- <string name="next_button_label">Siguiente</string>
- <string name="next_label">Siguiente</string>
- <string name="notification_sound_dialog_title">Seleccionar tono de timbre de notificación</string>
- <string name="notification_sound_summary">Configurar tono de timbre de notificación predeterminado</string>
- <string name="notification_sound_title">Tonos de timbre de notificación</string>
- <string name="permissions_label">Permisos</string>
- <string name="phone_info_label">Información del teléfono</string>
- <string name="phone_language">Seleccionar idioma</string>
- <string name="ping_test_label">Ejecutar prueba ping</string>
- <string name="please_type_hex_key">Tecla hex. WEP (0-9, A-F)</string>
- <string name="please_type_passphrase">Contraseña inalámbrica</string>
- <string name="product_brand_label">Marca del producto</string>
- <string name="product_device_label">Tipo de teléfono</string>
- <string name="progress_scanning">Buscando</string>
- <string name="proxy_action_text">Guardar</string>
- <string name="proxy_clear_text">Borrar</string>
- <string name="proxy_defaultView_text">Restaurar predeterminados</string>
- <string name="proxy_error">¡Atención!</string>
- <string name="proxy_error_dismiss">Aceptar</string>
- <string name="proxy_error_empty_host_set_port">El campo Puerto debe estar vacío si el campo Host está vacío.</string>
- <string name="proxy_error_empty_port">Debe completar el campo puerto.</string>
- <string name="proxy_error_invalid_host">El nombre de host que ha introducido no es válido.</string>
- <string name="proxy_error_invalid_port">El nombre de puerto que ha introducido no es válido.</string>
- <string name="proxy_hostname_label">Nombre de host</string>
- <string name="proxy_port_label">Puerto</string>
- <string name="proxy_settings_label">Configuración de proxy</string>
- <string name="quick_launch_assign_application">Asignar aplicación</string>
- <string name="quick_launch_clear_cancel_button">Cancelar</string>
- <string name="quick_launch_clear_dialog_message">Su acceso directo para <xliff:g id="shortcut_letter">%1$s</xliff:g> (<xliff:g id="application_name">%2$s</xliff:g>) se borrará.</string>
- <string name="quick_launch_clear_dialog_title">Borrar</string>
- <string name="quick_launch_clear_ok_button">Aceptar</string>
- <string name="quick_launch_display_mode_applications">Aplicaciones</string>
- <string name="quick_launch_display_mode_shortcuts">Accesos directos</string>
- <string name="quick_launch_no_shortcut">Sin acceso directo</string>
- <string name="quick_launch_shortcut">Buscar + <xliff:g id="shortcut_letter">%1$s</xliff:g></string>
- <string name="quick_launch_summary">Configuración de accesos directos en el teclado para iniciar aplicaciones</string>
- <string name="quick_launch_title">Inicio rápido</string>
- <string name="radioInfo_cid">CID</string>
- <string name="radioInfo_data_connected">Conectado</string>
- <string name="radioInfo_data_connecting">Conectando</string>
- <string name="radioInfo_data_disconnected">Desconectado</string>
- <string name="radioInfo_data_suspended">Suspendido</string>
- <string name="radioInfo_display_asu">asu</string>
- <string name="radioInfo_display_bytes">bytes</string>
- <string name="radioInfo_display_dbm">dBm</string>
- <string name="radioInfo_display_packets">paq.</string>
- <string name="radioInfo_lac">LAC</string>
- <string name="radioInfo_menu_disableData">Deshabilitar conexión de datos</string>
- <string name="radioInfo_menu_disableDataOnBoot">Deshabilitar datos al arrancar</string>
- <string name="radioInfo_menu_enableData">Habilitar conexión de datos</string>
- <string name="radioInfo_menu_enableDataOnBoot">Habilitar datos al arrancar</string>
- <string name="radioInfo_menu_getPDP">Obtener lista PDP</string>
- <string name="radioInfo_menu_viewADN">Ver agenda de SIM</string>
- <string name="radioInfo_menu_viewFDN">Ver números de marcado fijo</string>
- <string name="radioInfo_menu_viewSDN">Ver números de marcado de servicio</string>
- <string name="radioInfo_phone_idle">Inactivo</string>
- <string name="radioInfo_phone_offhook">Llamada en curso</string>
- <string name="radioInfo_phone_ringing">Sonando</string>
- <string name="radioInfo_roaming_in">Itinerancia</string>
- <string name="radioInfo_roaming_not">No itinerancia</string>
- <string name="radioInfo_service_emergency">Sólo llamadas de emergencia</string>
- <string name="radioInfo_service_in">En servicio</string>
- <string name="radioInfo_service_off">Radio apagada</string>
- <string name="radioInfo_service_out">Fuera de servicio</string>
- <string name="radioInfo_unknown">desconocido</string>
- <string name="radio_controls_summary">Administrar Wi-Fi, Bluetooth, modo avión y redes móviles</string>
- <string name="radio_controls_title">Controles inalámbricos</string>
- <string name="radio_info_band_mode_label">Seleccionar banda de radio</string>
- <string name="radio_info_call_redirect_label">Redirección de llamada:</string>
- <string name="radio_info_call_status_label">Estado de llamada:</string>
- <string name="radio_info_current_network_label">Red actual:</string>
- <string name="radio_info_data_attempts_label">Intentos de datos:</string>
- <string name="radio_info_data_successes_label">Datos enviados correctamente:</string>
- <string name="radio_info_gprs_service_label">Servicio GPRS:</string>
- <string name="radio_info_gsm_disconnects_label">Desconexiones GSM:</string>
- <string name="radio_info_gsm_service_label">Servicio GSM:</string>
- <string name="radio_info_http_client_test">Prueba cliente HTTP:</string>
- <string name="radio_info_imei_label">IMEI:</string>
- <string name="radio_info_imsi_label">IMSI:</string>
- <string name="radio_info_message_waiting_label">Mensaje esperando:</string>
- <string name="radio_info_neighboring_location_label">CID cercano:</string>
- <string name="radio_info_network_type_label">Tipo de red:</string>
- <string name="radio_info_phone_number_label">Número de teléfono:</string>
- <string name="radio_info_ping_hostname">Nombre de host para verificar conectividad (www.google.com):</string>
- <string name="radio_info_ping_ipaddr">DireccIp Ping:</string>
- <string name="radio_info_ppp_received_label">PPP recibido:</string>
- <string name="radio_info_ppp_resets_label">Número de restablecimientos PPP desde el arranque:</string>
- <string name="radio_info_ppp_sent_label">PPP enviados:</string>
- <string name="radio_info_radio_resets_label">Restablecimientos de radio:</string>
- <string name="radio_info_roaming_label">Itinerancia:</string>
- <string name="radio_info_set_perferred_label">Establecer tipo de red preferido:</string>
- <string name="radio_info_signal_location_label">Ubicación:</string>
- <string name="radio_info_signal_strength_label">Intensidad de señal:</string>
- <string name="radio_info_smsc_label">SMSC:</string>
- <string name="radio_info_smsc_refresh_label">Actualizar</string>
- <string name="radio_info_smsc_update_label">Actualizar</string>
- <string name="radio_info_toggle_ciph_label">Alternar cifrado</string>
- <string name="read_only">\u0020(Sólo lectura)</string>
- <string name="recompute_size">Repetición del cálculo del tamaño\u2026</string>
- <string name="ring_volume_summary">Ajuste del volumen de las llamadas entrantes</string>
- <string name="ring_volume_title">Volumen del timbre</string>
- <string name="ringer_volume_instructions">Utilizar los botones de volumen para ajustar el volumen del timbre</string>
- <string name="ringer_volume_ringer_mode_label">Modo de timbre</string>
- <string name="ringer_volume_ringtone_label">Tono de timbre</string>
- <string name="ringer_volume_screen_increasing_text">Timbre creciente</string>
- <string name="ringtone_summary">Ajuste el tono de timbre de la llamada entrante predeterminado</string>
- <string name="ringtone_title">Tono de timbre del teléfono</string>
- <string name="roaming">Datos en itinerancia</string>
- <string name="roaming_disable">Conectar a servicios de datos durante itinerancia</string>
- <string name="roaming_enable">Conectar a servicios de datos durante itinerancia</string>
- <string name="roaming_reenable_message">Ha perdido la conectividad de datos porque ha abandonado su red doméstica con la opción Datos en itinerancia desactivada.</string>
- <string name="roaming_reenable_title">¡Atención!</string>
- <string name="roaming_turn_it_on_button">Activar</string>
- <string name="roaming_warning">¿Permitir datos en itinerancia? Puede que incurra en importantes gastos por itinerancia.</string>
- <string name="scan_wifi">Buscar</string>
- <string name="screen_off_timeout_label">No agotar nunca el tiempo de espera durante la carga</string>
- <string name="screen_timeout">Tiempo de espera en pantalla</string>
- <string name="sd_card_settings_label">Tarjeta SD</string>
- <string name="sd_eject">Desmontar/expulsar tarjeta SD</string>
- <string name="sd_memory">Tarjeta SD</string>
- <string name="sd_unavailable">No disponible</string>
- <string name="sdcard_changes_instructions">Los cambios se aplicarán cuando se vuelva a conectar el cable USB</string>
- <string name="sdcard_removal_alert_ok">Aceptar</string>
- <string name="sdcard_removal_alert_scolding">La tarjeta SD se retiró cuando aún se estaba utilizando.
- Para evitar que se dañe, utilice la pantalla Configuración de la tarjeta SD para desmontar la tarjeta antes de retirarla.</string>
- <string name="sdcard_removal_alert_title">Extracción de tarjeta SD no segura</string>
- <string name="sdcard_setting">Tarjeta SD</string>
- <string name="sdcard_settings_available_bytes_label">Bytes disponibles:</string>
- <string name="sdcard_settings_bad_removal_status">¡La tarjeta SD se ha extraído mientras seguía en uso!</string>
- <string name="sdcard_settings_mass_storage_status">La tarjeta SD se está utilizando como dispositivo de almacenamiento masivo</string>
- <string name="sdcard_settings_not_present_status">Ninguna tarjeta SD</string>
- <string name="sdcard_settings_read_only_status">Tarjeta SD insertada de sólo lectura</string>
- <string name="sdcard_settings_scanning_status">Buscando medios en tarjeta SD\u2026</string>
- <string name="sdcard_settings_screen_mass_storage_text">Habilitar almacenamiento masivo USB</string>
- <string name="sdcard_settings_total_bytes_label">Bytes totales:</string>
- <string name="sdcard_settings_unmounted_status">Ahora es seguro extraer la tarjeta SD</string>
- <string name="sdcard_settings_used_bytes_label">Bytes utilizados:</string>
- <string name="sdcard_unmount">Desmontar tarjeta SD</string>
- <string name="sdcard_unmountable_alert_ok">Aceptar</string>
- <string name="sdcard_unmountable_alert_title">Tarjeta SD no legible</string>
- <string name="sdcard_unmountable_message">La tarjeta SD no se puede leer.
- Puede que el sistema de archivos esté dañado o la tarjeta defectuosa.</string>
- <string name="security">Seguridad</string>
- <string name="security_and_data_label">Seguridad y datos</string>
- <string name="security_passwords_title">Contraseñas</string>
- <string name="security_settings_desc">Ésta es la información a la que la aplicación puede acceder en su teléfono:</string>
- <string name="security_settings_summary">Mi ubicación, desbloqueo de pantalla, bloqueo de tarjeta SIM</string>
- <string name="security_settings_title">Seguridad y ubicación</string>
- <string name="select_your_language">Seleccione su idioma</string>
- <string name="set_lock_pattern_label">Trazar su patrón de desbloqueo:</string>
- <string name="settings_chooser_pick_string">
- El icono de Configuración debería redirigir a:
- </string>
- <string name="settings_label">Configuración</string>
- <string name="settings_license_activity_loading">Cargando\u2026</string>
- <string name="settings_license_activity_title">Licencias de fuente abierta</string>
- <string name="settings_license_activity_unavailable">Hay un problema con la carga de las licencias.</string>
- <string name="show_password">Contraseñas visibles</string>
- <string name="show_password_summary">Mostrar contraseña según escribe</string>
- <string name="signal">Intensidad de señal</string>
- <string name="silent_mode_summary">Todos los sonidos excepto los medios están en silencio</string>
- <string name="silent_mode_title">Modo silencioso</string>
- <string name="sim_bad_pin">PIN incorrecto</string>
- <string name="sim_change_failed">Fallo al cambiar PIN\nPIN posiblemente incorrecto.</string>
- <string name="sim_change_pin">Cambiar PIN de SIM</string>
- <string name="sim_change_succeeded">PIN de SIM cambiado correctamente</string>
- <string name="sim_disable_sim_lock">Deshabilitar bloqueo de tarjeta SIM</string>
- <string name="sim_enable_sim_lock">Habilitar bloqueo de tarjeta SIM</string>
- <string name="sim_enter_cancel">Cancelar</string>
- <string name="sim_enter_new">Introducir nuevo PIN</string>
- <string name="sim_enter_ok">Aceptar</string>
- <string name="sim_enter_old">Introducir PIN anterior</string>
- <string name="sim_enter_pin">Introducir el PIN de la SIM</string>
- <string name="sim_lock_failed">Fallo al cambiar el estado de bloqueo de la tarjeta SIM.\nPIN posiblemente incorrecto.</string>
- <string name="sim_lock_off">Necesita un código PIN para utilizar el teléfono</string>
- <string name="sim_lock_on">Necesita un código PIN para utilizar el teléfono</string>
- <string name="sim_lock_settings">Configuración de bloqueo de la tarjeta SIM</string>
- <string name="sim_lock_settings_category">Configuración de bloqueo de la tarjeta SIM</string>
- <string name="sim_lock_settings_title">Bloqueo de tarjeta SIM</string>
- <string name="sim_pin_change">Cambiar código PIN</string>
- <string name="sim_pin_toggle">Bloqueo de la tarjeta SIM</string>
- <string name="sim_pins_dont_match">Los códigos PIN no coinciden.</string>
- <string name="sim_reenter_new">Vuelva a introducir el nuevo PIN</string>
- <string name="skip_button_label">Cancelar</string>
- <string name="small_font">Pequeño</string>
- <string name="software_version">Versión de software</string>
- <string name="sort_order_alpha">Ordenar alfabéticamente</string>
- <string name="sort_order_size">Ordenar por tamaño (descendente)</string>
- <string name="sound_and_display_settings">Sonido y visualización</string>
- <string name="sound_and_display_settings_summary">Configurar tonos de timbre, notificaciones y brillo de la pantalla</string>
- <string name="sound_effects_enable_summary_off">Reproducir sonido al seleccionar algo en la pantalla</string>
- <string name="sound_effects_enable_summary_on">Reproducir sonido al seleccionar algo en la pantalla</string>
- <string name="sound_effects_enable_title">Selección sonora</string>
- <string name="sound_settings">Configuración de sonido</string>
- <string name="status_authenticating">Autenticación\u2026</string>
- <string name="status_awake_time">Tiempo de actividad</string>
- <string name="status_bt_address">Dirección Bluetooth</string>
- <string name="status_connected">Conectado</string>
- <string name="status_connecting">Conectando\u2026</string>
- <string name="status_data_state">Acceso a los datos</string>
- <string name="status_disconnected">Desconectado</string>
- <string name="status_disconnecting">Desconexión\u2026</string>
- <string name="status_failed">Incorrecto</string>
- <string name="status_imei">IMEI</string>
- <string name="status_imei_sv">IMEI SV</string>
- <string name="status_imsi">IMSI</string>
- <string name="status_network_type">Tipo de red</string>
- <string name="status_number">Número de teléfono</string>
- <string name="status_obtaining_ip">Obtener dirección\u2026</string>
- <string name="status_operator">Red</string>
- <string name="status_roaming">Itinerancia</string>
- <string name="status_scanning">Búscando\u2026</string>
- <string name="status_service_state">Estado del servicio</string>
- <string name="status_signal_strength">Intensidad de señal</string>
- <string name="status_unavailable">No disponible</string>
- <string name="status_up_time">Tiempo de funcionamiento</string>
- <string name="status_wifi_mac_address">Dirección MAC Wi-Fi</string>
- <string name="stay_on">La pantalla está siempre activa durante la carga</string>
- <string name="storage_label">Almacenamiento</string>
- <string name="storage_settings_summary">Tarjeta SD no insertada, ver almacenamiento disponible</string>
- <string name="storage_settings_title">Tarjeta SD y memoria de almacenamiento</string>
- <string name="sum_carrier_select">Seleccionar un operador de red</string>
- <string name="summary_connection_failed">No se ha podido realizar la conexión, vuelva a intentarlo</string>
- <string name="summary_not_in_range">No en intervalo</string>
- <string name="summary_remembered">Recordado</string>
- <string name="sync_automatically">Sincronización automática</string>
- <string name="sync_calendar">Calendario</string>
- <string name="sync_contacts">Contactos</string>
- <string name="sync_disabled">Seleccione la sincronización automática de datos</string>
- <string name="sync_do_nothing">No hacer nada por el momento.</string>
- <string name="sync_enabled">Sincronización automática de datos</string>
- <string name="sync_gmail">Gmail</string>
- <string name="sync_is_failing">La sincronización presenta algunos problemas. Se solucionarán en breve. </string>
- <string name="sync_menu_sync_cancel">Cancelar sincronización</string>
- <string name="sync_menu_sync_now">Sincronizar ahora</string>
- <string name="sync_really_delete">Eliminar los elementos.</string>
- <string name="sync_settings">Sincronización de datos</string>
- <string name="sync_settings_summary">Seleccionar qué aplicaciones están sincronizadas</string>
- <string name="sync_too_many_deletes">Eliminar límite excedido</string>
- <string name="sync_too_many_deletes_desc">Hay %d elementos eliminados en %s, cuenta %s. ¿Qué quiere hacer?</string>
- <string name="sync_undo_deletes">Deshacer lo eliminado.</string>
- <string name="target_build_field_label">Tipo de compilación solicitado</string>
- <string name="team_title">Equipo</string>
- <string name="telephony_apn_label">APN:</string>
- <string name="telephony_mcc_label">MCC:</string>
- <string name="telephony_mmsc_label">MMSC:</string>
- <string name="telephony_mmsport_label">Puerto MMS:</string>
- <string name="telephony_mmsproxy_label">Proxy MMS:</string>
- <string name="telephony_mnc_label">MNC:</string>
- <string name="telephony_name_label">Nombre:</string>
- <string name="telephony_password_label">Contraseña:</string>
- <string name="telephony_port_label">Puerto:</string>
- <string name="telephony_proxy_label">Proxy:</string>
- <string name="telephony_server_label">Servidor:</string>
- <string name="telephony_user_label">Usuario:</string>
- <string name="terms_title">Términos y condiciones</string>
- <string name="testing">Probando</string>
- <string name="testing_battery_info">Información de la batería</string>
- <string name="testing_phone_info">Información del teléfono</string>
- <string name="testing_sim_toolkit">Herramientas SIM</string>
- <string name="text_category">Configuración de texto</string>
- <string name="total_size_label">Total</string>
- <string name="turn_off_qxdm">Deshabilitar registro QXDM SD</string>
- <string name="turn_off_radio">Apagar radio</string>
- <string name="turn_on_qxdm">Habilitar registro QXDM SD</string>
- <string name="turn_on_radio">Encender radio</string>
- <string name="underdeveloped_settings_label">Configuración menos desarrollada</string>
- <string name="uninstall_failed">Incapaz de desinstalar la aplicación. </string>
- <string name="uninstall_text">Desinstalar</string>
- <string name="unknown">Desconocido</string>
- <string name="vibrate_summary">Vibración del teléfono al recibir llamadas</string>
- <string name="vibrate_title">Vibración del teléfono</string>
- <string name="wallpaper_label">Papel tapiz</string>
- <string name="wifi">Wi-Fi</string>
- <string name="wifi_access_points">Redes Wi-Fi </string>
- <string name="wifi_add_other_network">Agregar una red Wi-Fi</string>
- <string name="wifi_context_menu_change_password">Cambiar contraseña</string>
- <string name="wifi_context_menu_connect">Conectar a la red</string>
- <string name="wifi_context_menu_forget">Olvidar red</string>
- <string name="wifi_dhcp_timeout_error">Hay problemas al obtener una dirección IP. </string>
- <string name="wifi_dns1">DNS 1</string>
- <string name="wifi_dns2">DNS 2</string>
- <string name="wifi_dns3">DNS 3</string>
- <string name="wifi_dns_label">dns:</string>
- <string name="wifi_error">Error</string>
- <string name="wifi_gateway">Puerta de enlace</string>
- <string name="wifi_gateway_label">puerta de enlace:</string>
- <string name="wifi_generic_connection_error">Hay problemas de conexión con la red. Por favor, inténtelo de nuevo.</string>
- <string name="wifi_host_ip">ip de host:</string>
- <string name="wifi_ip_address">Dirección IP</string>
- <string name="wifi_ip_settings_invalid_ip">Escriba una dirección IP válida.</string>
- <string name="wifi_ip_settings_menu_cancel">Cancelar</string>
- <string name="wifi_ip_settings_menu_save">Guardar</string>
- <string name="wifi_ip_settings_titlebar">Configuración IP</string>
- <string name="wifi_link_speed">Velocidad</string>
- <string name="wifi_menu_advanced">Avanzado</string>
- <string name="wifi_netmask">Máscara de red</string>
- <string name="wifi_netmask_label">máscara de red:</string>
- <string name="wifi_notify_open_networks">Notificación de red</string>
- <string name="wifi_notify_open_networks_summary">Notificar cuando esté disponible una red abierta</string>
- <string name="wifi_password_incorrect_error">La contraseña de red introducida no es correcta. Inténtelo de nuevo.</string>
- <string name="wifi_password_unchanged">(sin cambios)</string>
- <string name="wifi_prefer_wifi">Preferir Wi-Fi</string>
- <string name="wifi_quick_toggle_summary">Seleccione la activación Wi-Fi. </string>
- <string name="wifi_quick_toggle_title">Wi-Fi</string>
- <string name="wifi_save_config">Guardar</string>
- <string name="wifi_screen_activate_text">Activar</string>
- <string name="wifi_screen_dhcp_text">automática</string>
- <string name="wifi_screen_dns_text">209.81.59.2</string>
- <string name="wifi_screen_gateway_text">192.168.20.1</string>
- <string name="wifi_screen_ip_text">192.168.20.10</string>
- <string name="wifi_screen_manual_text">manual</string>
- <string name="wifi_screen_netmask_text">255.255.255.0</string>
- <string name="wifi_screen_status_text">La red Wi-Fi está funcionando</string>
- <string name="wifi_screen_test_text">Prueba</string>
- <string name="wifi_security">Seguridad</string>
- <string name="wifi_security_open">Abrir</string>
- <string name="wifi_security_unknown">Desconocido</string>
- <string name="wifi_security_verbose_open">Red abierta</string>
- <string name="wifi_security_verbose_wep">Protegida con WEP</string>
- <string name="wifi_security_verbose_wpa">Protegida con WPA</string>
- <string name="wifi_security_verbose_wpa2">Protegida con WPA2</string>
- <string name="wifi_security_wep">WEP</string>
- <string name="wifi_security_wpa">WPA</string>
- <string name="wifi_security_wpa2">WPA2</string>
- <string name="wifi_settings">Configuración de Wi-Fi</string>
- <string name="wifi_settings_category">Configuración de Wi-Fi</string>
- <string name="wifi_settings_summary">Configurar y administrar puntos de acceso inalámbrico</string>
- <string name="wifi_show_password">Mostrar contraseña. </string>
- <string name="wifi_signal_0">Mala</string>
- <string name="wifi_signal_1">Normal</string>
- <string name="wifi_signal_2">Buena</string>
- <string name="wifi_signal_3">Excelente</string>
- <string name="wifi_starting">Activar\u2026</string>
- <string name="wifi_status">Estado</string>
- <string name="wifi_stopping">Desactivar\u2026</string>
- <string name="wifi_type_ssid">Escribir la red SSID:</string>
- <string name="wifi_use_static_ip">Usar IP estática</string>
- <string name="wifi_wlan_id">id de wlan:</string>
+ <string name="device_info_default">"Desconocido"</string>
+ <string name="device_info_uptime">"Tiempo de funcionamiento"</string>
+ <string name="device_info_awaketime">"Tiempo de actividad"</string>
+ <string name="device_info_asleeptime">"Tiempo de inactividad"</string>
+ <string name="turn_on_radio">"Encender radio"</string>
+ <string name="turn_off_radio">"Apagar radio"</string>
+ <string name="turn_on_qxdm">"Habilitar registro QXDM SD"</string>
+ <string name="turn_off_qxdm">"Deshabilitar registro QXDM SD"</string>
+ <string name="radioInfo_menu_viewADN">"Ver agenda de SIM"</string>
+ <string name="radioInfo_menu_viewFDN">"Ver números de marcado fijo"</string>
+ <string name="radioInfo_menu_viewSDN">"Ver números de marcado de servicio"</string>
+ <string name="radioInfo_menu_getPDP">"Obtener lista PDP"</string>
+ <string name="radioInfo_menu_enableData">"Habilitar conexión de datos"</string>
+ <string name="radioInfo_menu_disableData">"Deshabilitar conexión de datos"</string>
+ <!-- no translation found for radioInfo_menu_enableDataOnBoot (1926825935390738605) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_disableDataOnBoot (1229911918312837466) -->
+ <skip />
+ <string name="radioInfo_service_in">"En servicio"</string>
+ <string name="radioInfo_service_out">"Fuera de servicio"</string>
+ <string name="radioInfo_service_emergency">"Sólo llamadas de emergencia"</string>
+ <string name="radioInfo_service_off">"Radio apagada"</string>
+ <string name="radioInfo_roaming_in">"Itinerancia"</string>
+ <string name="radioInfo_roaming_not">"No itinerancia"</string>
+ <string name="radioInfo_phone_idle">"Inactivo"</string>
+ <string name="radioInfo_phone_ringing">"Sonando"</string>
+ <string name="radioInfo_phone_offhook">"Llamada en curso"</string>
+ <string name="radioInfo_data_disconnected">"Desconectado"</string>
+ <string name="radioInfo_data_connecting">"Conectando"</string>
+ <string name="radioInfo_data_connected">"Conectado"</string>
+ <!-- no translation found for radioInfo_data_suspended (4953150687356763202) -->
+ <skip />
+ <string name="radioInfo_unknown">"desconocido"</string>
+ <string name="radioInfo_display_packets">"paq."</string>
+ <string name="radioInfo_display_bytes">"bytes"</string>
+ <string name="radioInfo_display_dbm">"dBm"</string>
+ <string name="radioInfo_display_asu">"asu"</string>
+ <string name="radioInfo_lac">"LAC"</string>
+ <string name="radioInfo_cid">"CID"</string>
+ <string name="sdcard_unmount">"Desmontar tarjeta SD"</string>
+ <string name="small_font">"Pequeño"</string>
+ <string name="medium_font">"Mediano"</string>
+ <string name="large_font">"Grande"</string>
+ <string name="font_size_save">"Aceptar"</string>
+ <string name="sdcard_setting">"Tarjeta SD"</string>
+ <string name="screen_off_timeout_label">"Tiempo de espera de apagado de pantalla"</string>
+ <string name="stay_on">"Permanece encendido mientras está enchufado"</string>
+ <string name="app_launcher_newView_text">"Nuevo AppLauncher"</string>
+ <string name="battery_info_status_label">"Estado de la batería:"</string>
+ <string name="battery_info_scale_label">"Escala de batería:"</string>
+ <string name="battery_info_level_label">"Nivel de batería:"</string>
+ <string name="battery_info_health_label">"Salud de batería:"</string>
+ <string name="battery_info_technology_label">"Tecnología de la batería:"</string>
+ <string name="battery_info_voltage_label">"Tensión de la batería:"</string>
+ <string name="battery_info_voltage_units">"mV"</string>
+ <string name="battery_info_temperature_label">"Temperatura de la batería:"</string>
+ <string name="battery_info_temperature_units">"° C"</string>
+ <!-- no translation found for battery_info_uptime (1195623257533912354) -->
+ <skip />
+ <!-- no translation found for battery_info_awake_battery (1529944627925423756) -->
+ <skip />
+ <!-- no translation found for battery_info_awake_plugged (7272044960586959459) -->
+ <skip />
+ <!-- no translation found for battery_info_screen_on (832651425042656482) -->
+ <skip />
+ <string name="battery_info_status_unknown">"Desconocido"</string>
+ <string name="battery_info_status_charging">"Cargando"</string>
+ <string name="battery_info_status_charging_ac">"(CA)"</string>
+ <string name="battery_info_status_charging_usb">"(USB)"</string>
+ <string name="battery_info_status_discharging">"Descargando"</string>
+ <string name="battery_info_status_not_charging">"No cargando"</string>
+ <string name="battery_info_status_full">"Completo"</string>
+ <string name="battery_info_health_unknown">"Desconocido"</string>
+ <string name="battery_info_health_good">"Buena"</string>
+ <string name="battery_info_health_overheat">"Recalentamiento"</string>
+ <string name="battery_info_health_dead">"Muerta"</string>
+ <string name="battery_info_health_over_voltage">"Sobretensión"</string>
+ <string name="battery_info_health_unspecified_failure">"Fallo no especificado"</string>
+ <string name="bluetooth">"Bluetooth"</string>
+ <string name="bluetooth_stopping">"Desconexión de Bluetooth…"</string>
+ <string name="bluetooth_disabled">"El Bluetooth está apagado actualmente."</string>
+ <string name="bluetooth_enabled">"El Bluetooth está activado actualmente"</string>
+ <string name="bluetooth_enabling">"Habilitando Bluetooth…"</string>
+ <string name="bluetooth_visibility">"Visibilidad"</string>
+ <string name="bluetooth_is_discoverable">"El dispositivo es detectable"</string>
+ <string name="bluetooth_not_discoverable">"Dispositivo no detectable"</string>
+ <string name="bluetooth_devices">"Dispositivos Bluetooth"</string>
+ <string name="bluetooth_device_name">"Nombre del dispositivo"</string>
+ <string name="bluetooth_name_not_set">"Ningún nombre establecido, usando nombre de cuenta"</string>
+ <string name="bluetooth_scan_for_devices">"Buscar dispositivos Bluetooth"</string>
+ <string name="bluetooth_clear_list">"Borrar lista de dispositivos"</string>
+ <string name="bluetooth_disconnect_blank">"¿Desconectar %1$s?"</string>
+ <string name="bluetooth_connected">"Conectado"</string>
+ <!-- no translation found for bluetooth_disconnected (779512372559332317) -->
+ <skip />
+ <!-- no translation found for bluetooth_disconnecting (613305857810977890) -->
+ <skip />
+ <string name="bluetooth_connecting">"Conectando…"</string>
+ <string name="bluetooth_unknown">"Desconocido"</string>
+ <string name="bluetooth_not_connected">"No está conectado"</string>
+ <!-- no translation found for bluetooth_failed_to_enable (10261849074413402) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing (8284273555047880444) -->
+ <skip />
+ <!-- no translation found for failed_to_pair (5265027255173301781) -->
+ <skip />
+ <string name="failed_to_connect">"Fallo al conectar a "</string>
+ <string name="bluetooth_paired">"Emparejado"</string>
+ <!-- no translation found for bluetooth_paired_not_nearby (2890021978719716438) -->
+ <skip />
+ <string name="bluetooth_device">"manos libres / auriculares"</string>
+ <!-- no translation found for bluetooth_disconnect (4070053533691322466) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect (6123567524009555372) -->
+ <skip />
+ <!-- no translation found for bluetooth_unpair (6786377316984999718) -->
+ <skip />
+ <!-- no translation found for bluetooth_pair (6433088623778842494) -->
+ <skip />
+ <string name="progress_scanning">"Buscando"</string>
+ <!-- no translation found for bluetooth_notif_ticker (6269529534945974964) -->
+ <skip />
+ <!-- no translation found for bluetooth_notif_title (3790273649365187417) -->
+ <skip />
+ <!-- no translation found for bluetooth_notif_message (3713615470961259613) -->
+ <skip />
+ <string name="date_and_time">"Fecha y hora"</string>
+ <!-- no translation found for date_time_12_hour_sample (3346099183513673921) -->
+ <skip />
+ <!-- no translation found for date_time_24_hour_sample (2930431568836213699) -->
+ <skip />
+ <string name="choose_timezone">"Seleccionar zona horaria"</string>
+ <string name="display_preview_label">"Vista previa:"</string>
+ <string name="display_font_size_label">"Tamaño de fuente:"</string>
+ <string name="intent_sender_data_label">"Datos:"</string>
+ <string name="intent_sender_sendbroadcast_text">"Enviar emisión"</string>
+ <string name="intent_sender_action_label">"Acción:"</string>
+ <string name="intent_sender_startactivity_text">"Iniciar actividad"</string>
+ <string name="intent_sender_resource_label">"Recurso:"</string>
+ <string name="intent_sender_account_label">"Cuenta:"</string>
+ <string name="keyguard_pw_mod_text">"Seleccionar patrón de bloqueo"</string>
+ <string name="keyguard_pin_mod_text">"Cambiar PIN"</string>
+ <string name="keyguard_label">"Protección de clave"</string>
+ <string name="keyguard_sim_pin_label">"PIN de SIM"</string>
+ <string name="keyguard_password_old_password_error_text">"¡La contraseña anterior que ha introducido no es correcta! Por favor, inténtelo de nuevo"</string>
+ <string name="keyguard_password_button_text">"Aceptar"</string>
+ <string name="keyguard_password_confirm_new_label">"Confirmar nueva contraseña:"</string>
+ <string name="keyguard_password_new_label">"Contraseña nueva:"</string>
+ <string name="keyguard_password_old_label">"Contraseña anterior:"</string>
+ <string name="keyguard_password_mismatch_error_text">"¡Las dos contraseñas no coinciden! Vuelva a introducirlas"</string>
+ <string name="proxy_clear_text">"Borrar"</string>
+ <string name="proxy_port_label">"Puerto"</string>
+ <string name="proxy_defaultView_text">"Restaurar predeterminados"</string>
+ <string name="proxy_action_text">"Guardar"</string>
+ <string name="proxy_hostname_label">"Nombre de host"</string>
+ <string name="proxy_error">"¡Atención!"</string>
+ <string name="proxy_error_dismiss">"Aceptar"</string>
+ <string name="proxy_error_invalid_host">"El nombre de host que ha introducido no es válido"</string>
+ <string name="proxy_error_empty_port">"Debe completar el campo Puerto"</string>
+ <string name="proxy_error_empty_host_set_port">"El campo Puerto debe estar vacío si el campo Host está vacío"</string>
+ <string name="proxy_error_invalid_port">"El nombre de puerto que ha introducido no es válido"</string>
+ <string name="radio_info_signal_location_label">"Ubicación:"</string>
+ <string name="radio_info_neighboring_location_label">"CID cercano:"</string>
+ <string name="radio_info_data_attempts_label">"Intentos de datos:"</string>
+ <string name="radio_info_imsi_label">"IMSI:"</string>
+ <string name="radio_info_gprs_service_label">"Servicio GPRS:"</string>
+ <string name="radio_info_roaming_label">"Itinerancia:"</string>
+ <string name="radio_info_imei_label">"IMEI:"</string>
+ <string name="radio_info_call_redirect_label">"Redirección de llamada:"</string>
+ <string name="radio_info_ppp_resets_label">"Número de restablecimientos PPP desde el arranque:"</string>
+ <string name="radio_info_gsm_disconnects_label">"Desconexiones GSM:"</string>
+ <string name="radio_info_current_network_label">"Red actual:"</string>
+ <string name="radio_info_data_successes_label">"Datos enviados correctamente:"</string>
+ <string name="radio_info_ppp_received_label">"PPP recibido:"</string>
+ <string name="radio_info_gsm_service_label">"Servicio GSM:"</string>
+ <string name="radio_info_signal_strength_label">"Intensidad de señal:"</string>
+ <string name="radio_info_call_status_label">"Estado de llamada:"</string>
+ <string name="radio_info_ppp_sent_label">"PPP enviados:"</string>
+ <string name="radio_info_radio_resets_label">"Restablecimientos de radio:"</string>
+ <string name="radio_info_message_waiting_label">"Mensaje esperando:"</string>
+ <string name="radio_info_phone_number_label">"Número de teléfono:"</string>
+ <string name="radio_info_band_mode_label">"Seleccionar banda de radio"</string>
+ <string name="radio_info_network_type_label">"Tipo de red:"</string>
+ <string name="radio_info_set_perferred_label">"Establecer tipo de red preferido:"</string>
+ <!-- no translation found for radio_info_ping_ipaddr (7229811664688502621) -->
+ <skip />
+ <!-- no translation found for radio_info_ping_hostname (7817617877155199848) -->
+ <skip />
+ <!-- no translation found for radio_info_http_client_test (5100483824350561339) -->
+ <skip />
+ <!-- no translation found for radio_info_toggle_ciph_label (2705975697585878388) -->
+ <skip />
+ <!-- no translation found for ping_test_label (99396772665008247) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_label (6577522217730406517) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_update_label (6471155265532972448) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_refresh_label (4334057389927982364) -->
+ <skip />
+ <string name="band_mode_title">"Establecer banda GSM/UMTS"</string>
+ <string name="band_mode_loading">"Cargando lista de bandas…"</string>
+ <string name="band_mode_set">"Establecer"</string>
+ <string name="band_mode_failed">"Error"</string>
+ <string name="band_mode_succeeded">"Realizado con éxito"</string>
+ <string name="ringer_volume_ringer_mode_label">"Modo de timbre"</string>
+ <string name="ringer_volume_screen_increasing_text">"Timbre creciente"</string>
+ <string name="ringer_volume_ringtone_label">"Tono de timbre"</string>
+ <string name="ringer_volume_instructions">"Usar los botones de volumen para ajustar el volumen del timbre"</string>
+ <string name="sdcard_changes_instructions">"Los cambios se aplicarán cuando se vuelva a conectar el cable USB"</string>
+ <string name="sdcard_settings_screen_mass_storage_text">"Habilitar almacenamiento masivo USB"</string>
+ <string name="sdcard_settings_total_bytes_label">"Bytes totales:"</string>
+ <string name="sdcard_settings_not_present_status">"Ninguna tarjeta SD"</string>
+ <string name="sdcard_settings_available_bytes_label">"Bytes disponibles:"</string>
+ <string name="sdcard_settings_mass_storage_status">"La tarjeta SD se está utilizando como dispositivo de almacenamiento masivo"</string>
+ <string name="sdcard_settings_unmounted_status">"Ahora es seguro extraer la tarjeta SD"</string>
+ <string name="sdcard_settings_bad_removal_status">"¡La tarjeta SD se ha extraído mientras seguía en uso!"</string>
+ <string name="sdcard_settings_used_bytes_label">"Bytes usados:"</string>
+ <string name="sdcard_settings_scanning_status">"Buscando medios en tarjeta SD…"</string>
+ <string name="sdcard_settings_read_only_status">"Tarjeta SD montada de sólo lectura"</string>
+ <string name="sdcard_removal_alert_title">"Extracción de tarjeta SD no segura"</string>
+ <string name="sdcard_unmountable_alert_title">"Tarjeta SD no legible"</string>
+ <string name="telephony_user_label">"Usuario:"</string>
+ <string name="telephony_server_label">"Servidor:"</string>
+ <string name="telephony_name_label">"Nombre:"</string>
+ <string name="telephony_mmsc_label">"MMSC:"</string>
+ <string name="telephony_apn_label">"APN:"</string>
+ <string name="telephony_mcc_label">"MCC:"</string>
+ <string name="telephony_port_label">"Puerto:"</string>
+ <string name="telephony_password_label">"Contraseña:"</string>
+ <string name="telephony_proxy_label">"Proxy:"</string>
+ <string name="telephony_mnc_label">"MNC:"</string>
+ <string name="telephony_mmsproxy_label">"Proxy MMS:"</string>
+ <string name="telephony_mmsport_label">"Puerto MMS:"</string>
+ <string name="next_label">"Siguiente"</string>
+ <string name="language_picker_title">"Idioma"</string>
+ <!-- no translation found for select_your_language (9081963472187973531) -->
+ <skip />
+ <string name="activity_picker_label">"Seleccionar actividad"</string>
+ <string name="device_info_label">"Información del dispositivo"</string>
+ <string name="battery_info_label">"Información de batería"</string>
+ <string name="display_label">"Pantalla"</string>
+ <string name="phone_info_label">"Información del teléfono"</string>
+ <string name="sd_card_settings_label">"Tarjeta SD"</string>
+ <string name="proxy_settings_label">"Configuración de proxy"</string>
+ <string name="cancel">"Cancelar"</string>
+ <string name="settings_label">"Configuración"</string>
+ <string name="airplane_mode">"Modo avión"</string>
+ <!-- no translation found for airplane_mode_summary (3500557633417506553) -->
+ <skip />
+ <!-- no translation found for airplane_mode_turning_on (1243134862683209663) -->
+ <skip />
+ <!-- no translation found for airplane_mode_turning_off (2291183932542256190) -->
+ <skip />
+ <!-- no translation found for radio_controls_title (4981652151494753702) -->
+ <skip />
+ <!-- no translation found for radio_controls_summary (9105526969569292926) -->
+ <skip />
+ <string name="date_and_time_settings_title">"Fecha y hora"</string>
+ <!-- no translation found for date_and_time_settings_summary (3489093199543794055) -->
+ <skip />
+ <string name="date_time_auto">"Automát."</string>
+ <string name="date_time_auto_summaryOn">"Usar valores suministrados por la red"</string>
+ <string name="date_time_auto_summaryOff">"Usar valores seleccionados por el usuario"</string>
+ <string name="date_time_24hour">"Formato 24 horas"</string>
+ <string name="date_time_set_time">"Establecer hora"</string>
+ <string name="date_time_set_timezone">"Seleccionar zona horaria"</string>
+ <string name="date_time_set_date">"Establecer fecha"</string>
+ <string name="date_time_date_format">"Establecer formato de fecha"</string>
+ <!-- no translation found for zone_list_menu_sort_alphabetically (8983103881342552870) -->
+ <skip />
+ <!-- no translation found for zone_list_menu_sort_by_timezone (7025442915093990469) -->
+ <skip />
+ <!-- no translation found for security_settings_title (969550777120624897) -->
+ <skip />
+ <!-- no translation found for security_settings_summary (3202445632951595923) -->
+ <skip />
+ <!-- no translation found for security_passwords_title (4466520735598079063) -->
+ <skip />
+ <string name="bluetooth_quick_toggle_title">"Bluetooth"</string>
+ <!-- no translation found for bluetooth_quick_toggle_summary (2292894901949724405) -->
+ <skip />
+ <!-- no translation found for bluetooth_settings (1545097653816106117) -->
+ <skip />
+ <string name="bluetooth_settings_title">"Configuración de Bluetooth"</string>
+ <!-- no translation found for bluetooth_settings_summary (1419697742707330821) -->
+ <skip />
+ <string name="bluetooth_pin_entry">"Entrada de PIN Bluetooth"</string>
+ <string name="bluetooth_device_info">"Información de dispositivo Bluetooth"</string>
+ <string name="bluetooth_pairing_msg">"Emparejando…"</string>
+ <string name="bluetooth_enter_pin_msg">"Introducir PIN para"</string>
+ <string name="bluetooth_new_data">"Introducir nuevos datos"</string>
+ <string name="bluetooth_new_data_confirm">"Aceptar"</string>
+ <string name="bluetooth_new_data_cancel">"Cancelar"</string>
+ <string name="bluetooth_scan_for_new_devices">"Buscando nuevos dispositivos…"</string>
+ <string name="bluetooth_discoverability_panel_title">"Mostrarme…"</string>
+ <string name="bluetooth_discoverable">"Detectable y conectable"</string>
+ <string name="bluetooth_connectable">"Sólo conectable"</string>
+ <string name="bluetooth_neither">"Ni detectable ni conectable"</string>
+ <!-- no translation found for bluetooth_preference_scan_title (5457824526570506576) -->
+ <skip />
+ <!-- no translation found for bluetooth_preference_scan_summary (4169248439102381141) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect (1360133741981139570) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect (3848550418295778426) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_pair_connect (3526057462723016574) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_unpair (1842004154350000288) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect_unpair (302606151874724466) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect_advanced (5004355397163127842) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect_specific_profiles_title (8557599374974072579) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_a2dp (6848174297822591204) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_headset (8660680578951214915) -->
+ <skip />
+ <string name="wifi">"Wi-Fi"</string>
+ <!-- no translation found for wifi_quick_toggle_title (4404851801229148146) -->
+ <skip />
+ <!-- no translation found for wifi_quick_toggle_summary (5254705029759236850) -->
+ <skip />
+ <string name="wifi_settings">"Configuración de Wi-Fi"</string>
+ <!-- no translation found for wifi_settings_category (610287013958209636) -->
+ <skip />
+ <!-- no translation found for wifi_settings_summary (8789964612748859011) -->
+ <skip />
+ <string name="forget_network">"Olvidar"</string>
+ <!-- no translation found for wifi_status (4374358089273446404) -->
+ <skip />
+ <!-- no translation found for wifi_link_speed (8766462457818203791) -->
+ <skip />
+ <!-- no translation found for wifi_signal_3 (1264702582845283580) -->
+ <skip />
+ <!-- no translation found for wifi_signal_2 (3765197678751351272) -->
+ <skip />
+ <!-- no translation found for wifi_signal_1 (3469786868912545422) -->
+ <skip />
+ <!-- no translation found for wifi_signal_0 (7285670709111185231) -->
+ <skip />
+ <string name="security">"Seguridad"</string>
+ <!-- no translation found for wifi_security_open (6529463996240023139) -->
+ <skip />
+ <!-- no translation found for wifi_security_wep (8543279149057388909) -->
+ <skip />
+ <!-- no translation found for wifi_security_wpa (7229647924366572707) -->
+ <skip />
+ <!-- no translation found for wifi_security_wpa2 (641020427516679969) -->
+ <skip />
+ <!-- no translation found for wifi_security_unknown (7700764937580224930) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_open (7105261201983314526) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wep (2018232984976185738) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wpa (7240649761750328761) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wpa2 (5470387821577814216) -->
+ <skip />
+ <string name="ip_address">"Dirección IP"</string>
+ <string name="signal">"Intensidad de señal"</string>
+ <!-- no translation found for wifi_starting (380585178092358776) -->
+ <skip />
+ <!-- no translation found for wifi_stopping (1130828572786743854) -->
+ <skip />
+ <!-- no translation found for wifi_error (7223451684597210919) -->
+ <skip />
+ <string name="error_starting">"Error al iniciar Wi-Fi"</string>
+ <string name="error_stopping">"Error al detener Wi-Fi"</string>
+ <string name="error_scanning">"Error al buscar redes"</string>
+ <string name="error_connecting">"Error al conectar con la red"</string>
+ <string name="error_saving">"Error al guardar red"</string>
+ <string name="connect">"Conectar"</string>
+ <string name="connect_to_blank">"Conectar a %1$s"</string>
+ <string name="please_type_passphrase">"Introduzca su contraseña inalámbrica"</string>
+ <!-- no translation found for please_type_hex_key (3792966437690051423) -->
+ <skip />
+ <!-- no translation found for wifi_show_password (2142204324333077532) -->
+ <skip />
+ <string name="scan_wifi">"Examinar"</string>
+ <string name="summary_not_in_range">"No en intervalo"</string>
+ <string name="summary_remembered">"Recordado"</string>
+ <!-- no translation found for summary_connection_failed (5466501123715222542) -->
+ <skip />
+ <string name="wifi_access_points">"Redes"</string>
+ <!-- no translation found for wifi_type_ssid (4389276980911820577) -->
+ <skip />
+ <!-- no translation found for wifi_security (8115513846744543151) -->
+ <skip />
+ <!-- no translation found for wifi_save_config (1041957548332322297) -->
+ <skip />
+ <!-- no translation found for wifi_password_unchanged (5583782979192657008) -->
+ <skip />
+ <!-- no translation found for wifi_add_other_network (914072465709281633) -->
+ <skip />
+ <!-- no translation found for wifi_notify_open_networks (3091942233631075516) -->
+ <skip />
+ <!-- no translation found for wifi_notify_open_networks_summary (1793737931132127488) -->
+ <skip />
+ <!-- no translation found for wifi_password_incorrect_error (8656138222468900361) -->
+ <skip />
+ <!-- no translation found for wifi_generic_connection_error (4414845075108763948) -->
+ <skip />
+ <!-- no translation found for wifi_menu_advanced (7729886219986221918) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_titlebar (6646153875184353089) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_menu_save (5525488681356054899) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_menu_cancel (4123436217014637229) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_invalid_ip (1648124374575025870) -->
+ <skip />
+ <!-- no translation found for wifi_use_static_ip (4076793026334955338) -->
+ <skip />
+ <!-- no translation found for wifi_ip_address (6067958502872259392) -->
+ <skip />
+ <!-- no translation found for wifi_dns1 (7502077213876989613) -->
+ <skip />
+ <!-- no translation found for wifi_dns2 (3296825469895827273) -->
+ <skip />
+ <!-- no translation found for wifi_gateway (393330487055540831) -->
+ <skip />
+ <!-- no translation found for wifi_netmask (6024777305439519433) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_connect (3348366738100644008) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_forget (5844111744505938081) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_change_password (7074463790535015442) -->
+ <skip />
+ <!-- no translation found for wifi_advanced_titlebar (7352048185262676955) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_title (4302664253747096207) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_summary (5137058932628594680) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_error (581404310349899492) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_channel_phrase (8341967925173918983) -->
+ <skip />
+ <string name="fragment_status_scanning">"Buscando"</string>
+ <string name="fragment_status_connecting">"Conectando a %1$s"</string>
+ <string name="fragment_status_authenticating">"Autenticando con %1$s"</string>
+ <string name="fragment_status_obtaining_ip">"Obteniendo dirección IP de %1$s"</string>
+ <string name="fragment_status_connected">"Conectado a %1$s"</string>
+ <string name="fragment_status_disconnecting">"Desconectando de %1$s"</string>
+ <string name="fragment_status_disconnected">"Desconectado"</string>
+ <string name="fragment_status_failed">"Error"</string>
+ <string name="status_scanning">"Buscando"</string>
+ <string name="status_connecting">"Conectando"</string>
+ <string name="status_authenticating">"Autenticando"</string>
+ <string name="status_obtaining_ip">"Obteniendo dirección IP"</string>
+ <string name="status_connected">"Conectado"</string>
+ <string name="status_disconnecting">"Desconectando"</string>
+ <string name="status_disconnected">"Desconectado"</string>
+ <string name="status_failed">"Error"</string>
+ <!-- no translation found for sound_and_display_settings (4749118288236939460) -->
+ <skip />
+ <!-- no translation found for sound_settings (2706184235211157339) -->
+ <skip />
+ <!-- no translation found for sound_and_display_settings_summary (3672623202659031178) -->
+ <skip />
+ <string name="silent_mode_title">"Silencio"</string>
+ <!-- no translation found for silent_mode_summary (6135093989634963053) -->
+ <skip />
+ <string name="ringtone_title">"Tono de timbre del teléfono"</string>
+ <!-- no translation found for ringtone_summary (1766080371183553822) -->
+ <skip />
+ <string name="ring_volume_title">"Volumen de timbre"</string>
+ <!-- no translation found for ring_volume_summary (8107485240454889544) -->
+ <skip />
+ <!-- no translation found for vibrate_title (4376574310180696114) -->
+ <skip />
+ <!-- no translation found for vibrate_summary (6788068739601216797) -->
+ <skip />
+ <string name="notification_sound_title">"Tonos de timbre de notificación"</string>
+ <!-- no translation found for notification_sound_summary (7617168477811163700) -->
+ <skip />
+ <string name="notification_sound_dialog_title">"Seleccionar tonos de timbre de notificación"</string>
+ <!-- no translation found for media_volume_title (1693540506432790482) -->
+ <skip />
+ <!-- no translation found for media_volume_summary (7399719776785079493) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_title (5173416183471867551) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_summary_on (7206798183944836534) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_summary_off (1555390648905350809) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_title (1955885794556255214) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_summary_on (1491009278452582375) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_summary_off (1932117674347216086) -->
+ <skip />
+ <string name="sync_settings">"Sincronización"</string>
+ <!-- no translation found for sync_settings_summary (2105151329390814783) -->
+ <skip />
+ <!-- no translation found for sync_too_many_deletes (5404332736593108449) -->
+ <skip />
+ <!-- no translation found for sync_automatically (1757054007777364379) -->
+ <skip />
+ <string name="sync_enabled">"Sincronización con servidor Google habilitada"</string>
+ <string name="sync_disabled">"Desactivado"</string>
+ <string name="sync_menu_sync_now">"Sincronizar ahora"</string>
+ <string name="sync_menu_sync_cancel">"Cancelar sincronización"</string>
+ <string name="sync_gmail">"Gmail"</string>
+ <string name="sync_calendar">"Calendario"</string>
+ <string name="sync_contacts">"Contactos"</string>
+ <!-- no translation found for sync_too_many_deletes_desc (4152554451720380120) -->
+ <skip />
+ <!-- no translation found for sync_really_delete (8529530859370540061) -->
+ <skip />
+ <!-- no translation found for sync_undo_deletes (5506677219430968015) -->
+ <skip />
+ <!-- no translation found for sync_do_nothing (8346666920786786758) -->
+ <skip />
+ <!-- no translation found for sync_is_failing (427555999473172925) -->
+ <skip />
+ <!-- no translation found for sync_plug (7544937220884084907) -->
+ <skip />
+ <string name="display_settings">"Pantalla"</string>
+ <!-- no translation found for animations_title (8735876378664711924) -->
+ <skip />
+ <!-- no translation found for animations_summary_on (4910047473170373768) -->
+ <skip />
+ <!-- no translation found for animations_summary_off (7454248311417075336) -->
+ <skip />
+ <string name="brightness">"Brillo"</string>
+ <!-- no translation found for screen_timeout (8939204183998677539) -->
+ <skip />
+ <string name="dim_screen">"Oscurecer pantalla"</string>
+ <string name="sim_lock_settings">"Bloqueo de tarjeta SIM"</string>
+ <!-- no translation found for sim_lock_settings_category (5039441655358781230) -->
+ <skip />
+ <string name="sim_lock_settings_title">"Configuración de bloqueo de SIM"</string>
+ <string name="sim_pin_toggle">"Bloqueo de tarjeta SIM"</string>
+ <string name="sim_lock_on">"Bloqueo de tarjeta SIM activado"</string>
+ <string name="sim_lock_off">"Bloqueo de tarjeta SIM desactivado"</string>
+ <string name="sim_pin_change">"Cambiar código PIN"</string>
+ <string name="sim_enter_pin">"Introducir PIN de SIM"</string>
+ <string name="sim_enable_sim_lock">"Habilitar bloqueo de tarjeta SIM"</string>
+ <string name="sim_disable_sim_lock">"Deshabilitar bloqueo de tarjeta SIM"</string>
+ <string name="sim_enter_old">"Introducir PIN anterior"</string>
+ <string name="sim_enter_new">"Introducir nuevo PIN"</string>
+ <string name="sim_reenter_new">"Vuelva a introducir el nuevo PIN"</string>
+ <string name="sim_change_pin">"Cambiar PIN de SIM"</string>
+ <string name="sim_bad_pin">"Advertencia: PIN incorrecto"</string>
+ <string name="sim_pins_dont_match">"Advertencia: Los PIN no coinciden"</string>
+ <string name="sim_change_failed">"Fallo al cambiar PIN"\n"PIN posiblemente incorrecto"</string>
+ <string name="sim_change_succeeded">"PIN de SIM cambiado correctamente"</string>
+ <string name="sim_lock_failed">"Fallo al cambiar estado de bloqueo de la tarjeta SIM"\n"PIN posiblemente incorrecto"</string>
+ <string name="sim_enter_ok">"Aceptar"</string>
+ <string name="sim_enter_cancel">"Cancelar"</string>
+ <string name="device_info_settings">"Información del dispositivo"</string>
+ <!-- no translation found for system_update_settings_list_item_title (6730200310196695815) -->
+ <skip />
+ <!-- no translation found for system_update_settings_list_item_summary (6739352515982816664) -->
+ <skip />
+ <string name="firmware_version">"Versión de firmware"</string>
+ <!-- no translation found for model_number (4107796374489189882) -->
+ <skip />
+ <string name="baseband_version">"Versión de banda básica"</string>
+ <!-- no translation found for kernel_version (55378504731737055) -->
+ <skip />
+ <!-- no translation found for build_number (1198654854394859525) -->
+ <skip />
+ <!-- no translation found for device_info_not_available (6218382614449625943) -->
+ <skip />
+ <!-- no translation found for device_status_activity_title (7855799759928692423) -->
+ <skip />
+ <string name="device_status">"Estado"</string>
+ <string name="device_status_summary">"IMEI, número de teléfono, señal, etc."</string>
+ <!-- no translation found for storage_settings_title (7861753874184164833) -->
+ <skip />
+ <!-- no translation found for storage_settings_summary (1416818376253802300) -->
+ <skip />
+ <string name="status_number">"Número de teléfono"</string>
+ <string name="status_network_type">"Tipo de red"</string>
+ <string name="status_data_state">"Acceso a los datos"</string>
+ <string name="status_service_state">"Estado del servicio"</string>
+ <string name="status_signal_strength">"Intensidad de señal"</string>
+ <string name="status_roaming">"Itinerancia"</string>
+ <string name="status_operator">"Red"</string>
+ <!-- no translation found for status_wifi_mac_address (6992831729694423293) -->
+ <skip />
+ <!-- no translation found for status_bt_address (504373592762785867) -->
+ <skip />
+ <!-- no translation found for status_unavailable (6051510065892966154) -->
+ <skip />
+ <string name="status_up_time">"Tiempo de funcionamiento"</string>
+ <string name="status_awake_time">"Tiempo de actividad"</string>
+ <!-- no translation found for internal_memory (7561409402817962159) -->
+ <skip />
+ <!-- no translation found for sd_memory (1795406535114313767) -->
+ <skip />
+ <!-- no translation found for memory_available (2899158225295363424) -->
+ <skip />
+ <!-- no translation found for memory_size (427803224818498885) -->
+ <skip />
+ <!-- no translation found for sd_eject (5921913949386442101) -->
+ <skip />
+ <string name="sd_unavailable">"No disponible"</string>
+ <string name="read_only">" (Sólo lectura)"</string>
+ <!-- no translation found for battery_status_title (4908729478929871241) -->
+ <skip />
+ <!-- no translation found for battery_level_title (7696801820825704716) -->
+ <skip />
+ <string name="apn_settings">"APN"</string>
+ <string name="apn_edit">"Editar punto de acceso"</string>
+ <string name="apn_not_set">"&lt;No establecido&gt;"</string>
+ <string name="apn_name">"Nombre"</string>
+ <string name="apn_apn">"APN"</string>
+ <string name="apn_http_proxy">"Proxy"</string>
+ <string name="apn_http_port">"Puerto"</string>
+ <string name="apn_user">"Nombre de usuario"</string>
+ <string name="apn_password">"Contraseña"</string>
+ <string name="apn_server">"Servidor"</string>
+ <string name="apn_mmsc">"MMSC"</string>
+ <string name="apn_mms_proxy">"Proxy MMS"</string>
+ <string name="apn_mms_port">"Puerto MMS"</string>
+ <string name="apn_mcc">"MCC"</string>
+ <string name="apn_mnc">"MNC"</string>
+ <!-- no translation found for apn_type (2506383481268652319) -->
+ <skip />
+ <string name="menu_delete">"Eliminar APN"</string>
+ <string name="menu_new">"Nueva APN"</string>
+ <string name="menu_save">"Guardar"</string>
+ <string name="menu_cancel">"Rechazar"</string>
+ <string name="error_title">"Datos no válidos"</string>
+ <string name="error_name_empty">"El campo Nombre no puede estar vacío"</string>
+ <string name="error_apn_empty">"El Nombre de punto de acceso no puede estar vacío"</string>
+ <string name="error_mcc_not3">"El campo MCC debe tener 3 dígitos"</string>
+ <string name="error_mnc_not23">"El campo MCC debe tener 2 ó 3 dígitos"</string>
+ <string name="master_clear_title">"Borrado maestro"</string>
+ <!-- no translation found for master_clear_summary (2468534382451112879) -->
+ <skip />
+ <string name="master_clear_desc">"Restablece el dispositivo al estado inicial de fábrica, borrando todos los datos y aplicaciones descargadas"</string>
+ <string name="master_clear_button_text">"Restablecer dispositivo"</string>
+ <string name="master_clear_final_desc">"¿Restablecer dispositivo borrando todos sus datos y aplicaciones? ¡La acción no se puede deshacer!"</string>
+ <string name="master_clear_final_button_text">"Borrar todo"</string>
+ <string name="master_clear_gesture_prompt">"Trace su patrón de bloqueo"</string>
+ <string name="master_clear_gesture_explanation">"Debe trazar su patrón de bloqueo para confirmar el restablecimiento del dispositivo"</string>
+ <string name="master_clear_failed">"No se ha realizado ningún restablecimiento porque el servicio System Clear no está disponible"</string>
+ <string name="call_settings_title">"Configuración de llamada"</string>
+ <!-- no translation found for call_settings_summary (3446216896482844237) -->
+ <skip />
+ <string name="network_settings_title">"Configuración de red"</string>
+ <!-- no translation found for network_settings_summary (8031949240036716110) -->
+ <skip />
+ <!-- no translation found for location_title (4501749309437121375) -->
+ <skip />
+ <string name="location_network_based">"Basado en red"</string>
+ <!-- no translation found for location_networks_disabled (7048471014395968941) -->
+ <skip />
+ <string name="location_neighborhood_level">"Precisión hasta el nivel de barrio"</string>
+ <string name="location_gps">"Basado en GPS"</string>
+ <string name="location_street_level">"Precisión hasta el nivel de calle"</string>
+ <!-- no translation found for location_gps_disabled (4004885356658024277) -->
+ <skip />
+ <!-- no translation found for about_settings (1468182090257585152) -->
+ <skip />
+ <!-- no translation found for about_settings_summary (7669309646592260587) -->
+ <skip />
+ <!-- no translation found for legal_information (6712607847710471677) -->
+ <skip />
+ <!-- no translation found for contributors_title (4798193298012318879) -->
+ <skip />
+ <!-- no translation found for copyright_title (2179228277436615247) -->
+ <skip />
+ <!-- no translation found for license_title (819526735187376873) -->
+ <skip />
+ <!-- no translation found for terms_title (7807601861320706623) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_title (7912723098716795094) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_unavailable (2081311778550755077) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_loading (1663818560123999889) -->
+ <skip />
+ <string name="lock_settings_title">"Gesto de bloqueo"</string>
+ <string name="lockpattern_change_lock_pattern_label">"Cambiar patrón de bloqueo"</string>
+ <string name="lockpattern_need_to_unlock">"Confirmar patrón guardado:"</string>
+ <string name="lockpattern_need_to_unlock_wrong">"¡Incorrecto! Inténtelo de nuevo:"</string>
+ <string name="lockpattern_recording_intro_header">"Trace un patrón que desee usar como bloqueo:"</string>
+ <string name="lockpattern_recording_intro_footer">"Pulse Menú para obtener ayuda"</string>
+ <string name="lockpattern_recording_inprogress">"Suelte el dedo cuando haya terminado"</string>
+ <!-- no translation found for lockpattern_recording_incorrect_too_short (8234374450664107990) -->
+ <skip />
+ <string name="lockpattern_pattern_entered_header">"Ha seleccionado:"</string>
+ <!-- no translation found for lockpattern_need_to_confirm (6414172006294337771) -->
+ <skip />
+ <string name="lockpattern_pattern_confirmed_header">"Su nuevo patrón de bloqueo:"</string>
+ <string name="lockpattern_confirm_button_text">"Confirmar"</string>
+ <string name="lockpattern_restart_button_text">"Reinicio"</string>
+ <!-- no translation found for lockpattern_retry_button_text (7695474740059017745) -->
+ <skip />
+ <!-- no translation found for lockpattern_continue_button_text (1077275957953266837) -->
+ <skip />
+ <string name="lockpattern_settings_title">"Gesto de bloqueo"</string>
+ <string name="lockpattern_settings_enable_title">"Gesto de bloqueo"</string>
+ <string name="lockpattern_settings_enable_summary">"Se necesita gesto para bloquear"</string>
+ <string name="lockpattern_settings_enable_visible_pattern_title">"Usar patrón visible"</string>
+ <string name="lockpattern_settings_choose_lock_pattern">"Seleccionar gesto de bloqueo"</string>
+ <string name="lockpattern_settings_change_lock_pattern">"Cambiar gesto de bloqueo"</string>
+ <string name="lockpattern_settings_help_how_to_record">"Cómo grabar un patrón de bloqueo"</string>
+ <string name="lockpattern_too_many_failed_confirmation_attempts_header">"Demasiados intentos de confirmación incorrectos"</string>
+ <string name="lockpattern_too_many_failed_confirmation_attempts_footer">"Inténtelo de nuevo en <xliff:g id="NUMBER">%d</xliff:g> segundos"</string>
+ <!-- no translation found for skip_button_label (4850708311344393218) -->
+ <skip />
+ <!-- no translation found for next_button_label (3149701380025478958) -->
+ <skip />
+ <!-- no translation found for lock_title (999106562425756837) -->
+ <skip />
+ <!-- no translation found for lock_intro_message (2382351248538397170) -->
+ <skip />
+ <!-- no translation found for lock_example_title (6261868148302088973) -->
+ <skip />
+ <!-- no translation found for lock_example_message (2583534765034914458) -->
+ <skip />
+ <!-- no translation found for manageapplications_settings_title (3359899792647354589) -->
+ <skip />
+ <!-- no translation found for applications_settings (6104314134883460574) -->
+ <skip />
+ <!-- no translation found for applications_settings_summary (7666960391957493763) -->
+ <skip />
+ <!-- no translation found for applications_settings_header (6167136604757235210) -->
+ <skip />
+ <!-- no translation found for install_applications (8586540661161378543) -->
+ <skip />
+ <!-- no translation found for install_unknown_applications (8694019339326383901) -->
+ <skip />
+ <!-- no translation found for install_all_warning (5826871395153503952) -->
+ <skip />
+ <!-- no translation found for manage_applications_title (8288310040777485758) -->
+ <skip />
+ <!-- no translation found for application_info_label (605192869687093760) -->
+ <skip />
+ <!-- no translation found for storage_label (8765276782501761971) -->
+ <skip />
+ <!-- no translation found for auto_launch_label (3546876666453498673) -->
+ <skip />
+ <!-- no translation found for permissions_label (3244346920180368862) -->
+ <skip />
+ <!-- no translation found for total_size_label (5016115699600749568) -->
+ <skip />
+ <!-- no translation found for application_size_label (5378963933449396413) -->
+ <skip />
+ <!-- no translation found for data_size_label (6038126657652457179) -->
+ <skip />
+ <!-- no translation found for uninstall_text (2322009518449651787) -->
+ <skip />
+ <!-- no translation found for clear_user_data_text (3586758620250813061) -->
+ <skip />
+ <!-- no translation found for auto_launch_enable_text (8228619838865933982) -->
+ <skip />
+ <!-- no translation found for auto_launch_disable_text (4696687016762486484) -->
+ <skip />
+ <!-- no translation found for clear_activities (2399981667625036009) -->
+ <skip />
+ <!-- no translation found for unknown (7966307317466394761) -->
+ <skip />
+ <!-- no translation found for sort_order_alpha (210746743398042077) -->
+ <skip />
+ <!-- no translation found for sort_order_size (2716777274377923612) -->
+ <skip />
+ <!-- no translation found for manage_space_text (3118726017144542336) -->
+ <skip />
+ <!-- no translation found for filter_apps_all (5819127882791374920) -->
+ <skip />
+ <!-- no translation found for filter_apps_third_party (8693065498520334174) -->
+ <skip />
+ <!-- no translation found for filter_apps_running (2019159142681656258) -->
+ <skip />
+ <!-- no translation found for loading (5170696093820794830) -->
+ <skip />
+ <!-- no translation found for recompute_size (8376294373548662083) -->
+ <skip />
+ <!-- no translation found for clear_data_dlg_title (2115093619616088799) -->
+ <skip />
+ <!-- no translation found for clear_data_dlg_text (3004273956481932846) -->
+ <skip />
+ <!-- no translation found for dlg_ok (2225130755859653348) -->
+ <skip />
+ <!-- no translation found for dlg_cancel (8597172015374919396) -->
+ <skip />
+ <!-- no translation found for app_not_found_dlg_title (6649900521951617898) -->
+ <skip />
+ <!-- no translation found for app_not_found_dlg_text (6893475426667174751) -->
+ <skip />
+ <!-- no translation found for clear_data_failed (3040984234884359027) -->
+ <skip />
+ <!-- no translation found for security_settings_desc (5898339748632998613) -->
+ <skip />
+ <!-- no translation found for default_app_desc (3475613003133497043) -->
+ <skip />
+ <!-- no translation found for computing_size (7350089935999085554) -->
+ <skip />
+ <!-- no translation found for invalid_size_value (3054945647487201471) -->
+ <skip />
+ <!-- no translation found for language_settings (7247557040404006341) -->
+ <skip />
+ <!-- no translation found for language_settings_summary (721948806318958691) -->
+ <skip />
+ <!-- no translation found for language_category (6646529166552376418) -->
+ <skip />
+ <!-- no translation found for text_category (3133311779500246731) -->
+ <skip />
+ <!-- no translation found for phone_language (4084332836028530631) -->
+ <skip />
+ <!-- no translation found for auto_replace (6134508433464846627) -->
+ <skip />
+ <!-- no translation found for auto_replace_summary (1016177921245107750) -->
+ <skip />
+ <!-- no translation found for auto_caps (6021984352657087728) -->
+ <skip />
+ <!-- no translation found for auto_caps_summary (4783973594319542220) -->
+ <skip />
+ <!-- no translation found for auto_punctuate (2819742922158924703) -->
+ <skip />
+ <!-- no translation found for auto_punctuate_summary (2664143621323054924) -->
+ <skip />
+ <!-- no translation found for show_password (2353636034424349266) -->
+ <skip />
+ <!-- no translation found for show_password_summary (3920555488855590831) -->
+ <skip />
+ <!-- no translation found for testing (555268605244514909) -->
+ <skip />
+ <!-- no translation found for testing_phone_info (8718517606602144606) -->
+ <skip />
+ <!-- no translation found for testing_battery_info (3826036256683980425) -->
+ <skip />
+ <!-- no translation found for quick_launch_title (5423323579273213815) -->
+ <skip />
+ <!-- no translation found for quick_launch_summary (1272194567210324017) -->
+ <skip />
+ <!-- no translation found for quick_launch_assign_application (5949445664563354321) -->
+ <skip />
+ <!-- no translation found for quick_launch_no_shortcut (5958195604101558965) -->
+ <skip />
+ <!-- no translation found for quick_launch_shortcut (1115195051591830635) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_dialog_title (5217130241215296612) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_dialog_message (3420665419624963430) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_ok_button (2442832413597511429) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_cancel_button (1437354385792055993) -->
+ <skip />
+ <!-- no translation found for quick_launch_display_mode_applications (6570683843184675363) -->
+ <skip />
+ <!-- no translation found for quick_launch_display_mode_shortcuts (6642750364678074004) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_title (1752662012056721926) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_summary (5481367119142131313) -->
+ <skip />
+ <!-- no translation found for development_settings_title (4671731485005432632) -->
+ <skip />
+ <!-- no translation found for development_settings_summary (5518361138194831299) -->
+ <skip />
+ <!-- no translation found for enable_adb (7770070343289262572) -->
+ <skip />
+ <!-- no translation found for enable_adb_summary (1498997582065835981) -->
+ <skip />
+ <!-- no translation found for keep_screen_on (5805533478834516956) -->
+ <skip />
+ <!-- no translation found for keep_screen_on_summary (5703353541069794974) -->
+ <skip />
+ <!-- no translation found for allow_mock_location (6204808904743157937) -->
+ <skip />
+ <!-- no translation found for allow_mock_location_summary (3154837501223277592) -->
+ <skip />
</resources>
diff --git a/res/values-fr-rFR/strings.xml b/res/values-fr-rFR/strings.xml
deleted file mode 100644
index 2c86e80..0000000
--- a/res/values-fr-rFR/strings.xml
+++ /dev/null
@@ -1,700 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="about_settings">À propos du téléphone</string>
- <string name="about_settings_summary">Afficher les infos légales, l\'état du téléphone, la version logicielle</string>
- <string name="activity_picker_label">Sélectionner l\'activité</string>
- <string name="airplane_mode">Mode Avion</string>
- <string name="airplane_mode_summary">Sélectionner pour désactiver toutes connexions sans fil</string>
- <string name="airplane_mode_turning_off">Activation des connexions sans fil\u2026</string>
- <string name="airplane_mode_turning_on">Désactivation des connexions sans fil\u2026</string>
- <string name="android_id_label">ID Android</string>
- <string name="apn_apn">APN</string>
- <string name="apn_edit">Modifier le point d\'accès</string>
- <string name="apn_http_port">Port</string>
- <string name="apn_http_proxy">Proxy</string>
- <string name="apn_label">APN</string>
- <string name="apn_mcc">MCC</string>
- <string name="apn_mms_port">Port MMS</string>
- <string name="apn_mms_proxy">Proxy MMS</string>
- <string name="apn_mmsc">MMSC</string>
- <string name="apn_mnc">MNC</string>
- <string name="apn_name">Nom</string>
- <string name="apn_not_set">&lt;Non défini&gt;</string>
- <string name="apn_password">Mot de passe</string>
- <string name="apn_server">Serveur</string>
- <string name="apn_settings">APN</string>
- <string name="apn_type">Type APN</string>
- <string name="apn_user">Nom d\'utilisateur</string>
- <string name="app_launcher_newView_text">Lanceur nouv.app</string>
- <string name="app_not_found_dlg_text"> L\'application n\'a pas été
-trouvée dans la liste des applications installées.</string>
- <string name="app_not_found_dlg_title">Application non trouvée</string>
- <string name="application_info_label">Infos d\'application</string>
- <string name="application_size_label">Application</string>
- <string name="applications_settings">Applications</string>
- <string name="applications_settings_header">Paramètres d\'application</string>
- <string name="applications_settings_summary">Gérer les applications, configurer des raccourcis de lancement rapide</string>
- <string name="auto_caps">Auto-maj</string>
- <string name="auto_caps_summary">Première lettre des phrases en majuscule</string>
- <string name="auto_launch_disable_text">Aucune valeur par défaut définie.</string>
- <string name="auto_launch_enable_text">Vous avez choisi de lancer cette application par défaut pour certaines actions.</string>
- <string name="auto_launch_label">Lancer par défaut</string>
- <string name="auto_punctuate">Auto-ponctuation</string>
- <string name="auto_punctuate_summary">Appuyez la touche Espace deux fois pour insérer \u0022.\u0022</string>
- <string name="auto_replace">Auto-remplacer</string>
- <string name="auto_replace_summary">Corriger les mots avec faute de frappe</string>
- <string name="autorotate">Auto-pivoter</string>
- <string name="autorotate_summary_off">Le changement de l\'orientation de l\'écran ne fait pas pivoter l\'application</string>
- <string name="autorotate_summary_on">Le changement de l\'orientation de l\'écran fait pivoter l\'application</string>
- <string name="b_text">B</string>
- <string name="band_mode_failed">Échec</string>
- <string name="band_mode_loading">Chargement de la liste de bandes\u2026</string>
- <string name="band_mode_set">Définir</string>
- <string name="band_mode_succeeded">Réussi</string>
- <string name="band_mode_title">Définir la bande GSM/UMTS</string>
- <string name="baseband_version">Version bande de base</string>
- <string name="basic_settings_title">Infos de base du téléphone</string>
- <string name="battery_info_awake_battery">Heures de réveil sur batterie :</string>
- <string name="battery_info_awake_plugged">Heures de réveil en charge :</string>
- <string name="battery_info_health_dead">Mort</string>
- <string name="battery_info_health_good">Bonne</string>
- <string name="battery_info_health_label">Santé de la batterie :</string>
- <string name="battery_info_health_over_voltage">Surtension</string>
- <string name="battery_info_health_overheat">Surchauffe</string>
- <string name="battery_info_health_unknown">Inconnu</string>
- <string name="battery_info_health_unspecified_failure">Erreur inconnue</string>
- <string name="battery_info_label">Infos de la batterie</string>
- <string name="battery_info_level_label">Niveau de la batterie :</string>
- <string name="battery_info_scale_label">Échelle de la batterie :</string>
- <string name="battery_info_screen_on">Durée d\'écran allumé :</string>
- <string name="battery_info_status_charging">Chargement</string>
- <string name="battery_info_status_charging_ac">(Secteur)</string>
- <string name="battery_info_status_charging_usb">(USB)</string>
- <string name="battery_info_status_discharging">Déchargement</string>
- <string name="battery_info_status_full">Pleine</string>
- <string name="battery_info_status_label">État de la batterie :</string>
- <string name="battery_info_status_not_charging">Pas en charge</string>
- <string name="battery_info_status_unknown">Inconnu</string>
- <string name="battery_info_technology_label">Technologie de la batterie :</string>
- <string name="battery_info_temperature_label">Température de la batterie :</string>
- <string name="battery_info_temperature_units">\u00B0 C</string>
- <string name="battery_info_uptime">Durée depuis l\'amorçage :</string>
- <string name="battery_info_voltage_label">Tension de la batterie :</string>
- <string name="battery_info_voltage_units">mV</string>
- <string name="battery_level_title">Niveau de la batterie</string>
- <string name="battery_status_title">État de la batterie</string>
- <string name="bluetooth">Bluetooth</string>
- <string name="bluetooth_clear_list">Effacer la liste d\'appareil</string>
- <string name="bluetooth_connect">Connecter</string>
- <string name="bluetooth_connectable">Connectable seulement</string>
- <string name="bluetooth_connected">Connecté</string>
- <string name="bluetooth_connecting">Connexion\u2026</string>
- <string name="bluetooth_device">mains-libres/casque</string>
- <string name="bluetooth_device_info">Infos d\'appareil Bluetooth</string>
- <string name="bluetooth_device_info_alias">Alias d\'appareil</string>
- <string name="bluetooth_device_info_delete">Retirer cet appareil</string>
- <string name="bluetooth_device_info_no_alias">Saisissez l\'alias ici\u2026</string>
- <string name="bluetooth_device_info_sdp">Lister les services pris en charge</string>
- <string name="bluetooth_device_name">Nom d\'appareil</string>
- <string name="bluetooth_devices">Appareils Bluetooth</string>
- <string name="bluetooth_disabled">Sélectionner d\'activer Bluetooth</string>
- <string name="bluetooth_disconnect">Déconnecter</string>
- <string name="bluetooth_disconnect_blank"><xliff:g id="device_name">%1$s</xliff:g> sera déconnecté</string>
- <string name="bluetooth_discoverability_panel_title">Me rendre\u2026</string>
- <string name="bluetooth_discoverable">Découvrable pendant %1$s secondes</string>
- <string name="bluetooth_enable_text">Bouton vide\u2026</string>
- <string name="bluetooth_enabled">Sélectionner d\'activer Bluetooth</string>
- <string name="bluetooth_enabling">Activation de Bluetooth\u2026</string>
- <string name="bluetooth_enter_pin_msg">Saisir le code PIN pour\u0020</string>
- <string name="bluetooth_failed_to_enable">Impossible d\'activer Bluetooth</string>
- <string name="bluetooth_is_discoverable">Découvrable pendant %1$s secondes\u2026</string>
- <string name="bluetooth_name_not_set">Pas de nom défini, utilise le nom de compte</string>
- <string name="bluetooth_neither">Pas découvrable et pas connectable</string>
- <string name="bluetooth_new_data">Saisir nouvelles données</string>
- <string name="bluetooth_new_data_cancel">Annuler</string>
- <string name="bluetooth_new_data_confirm">OK</string>
- <string name="bluetooth_not_connected">Lier avec cet appareil</string>
- <string name="bluetooth_not_discoverable">Sélectionner pour rendre l\'appareil découvrable</string>
- <string name="bluetooth_notif_message">Sélectionner de lier avec\u0020</string>
- <string name="bluetooth_notif_ticker">Liaison Bluetooth demandée</string>
- <string name="bluetooth_notif_title">Liaison Bluetooth demandée</string>
- <string name="bluetooth_pair">Lier</string>
- <string name="bluetooth_paired">Lié</string>
- <string name="bluetooth_paired_not_nearby">Lié</string>
- <string name="bluetooth_pairing">Liaison\u2026</string>
- <string name="bluetooth_pairing_msg">Liaison\u2026</string>
- <string name="bluetooth_pin_entry">Entrée de code PIN Bluetooth</string>
- <string name="bluetooth_quick_toggle_summary">Sélectionner d\'activer Bluetooth</string>
- <string name="bluetooth_quick_toggle_title">Bluetooth</string>
- <string name="bluetooth_scan_for_devices">Rechercher les appareils</string>
- <string name="bluetooth_scan_for_new_devices">Recherche de nouveaux appareils\u2026</string>
- <string name="bluetooth_scan_text">Bouton vide\u2026</string>
- <string name="bluetooth_settings">Paramètres Bluetooth</string>
- <string name="bluetooth_settings_summary">Gérer les connexions, définir le nom d\'appareil et la découvrabilité</string>
- <string name="bluetooth_settings_text">Bouton vide\u2026</string>
- <string name="bluetooth_settings_title">Paramètres Bluetooth</string>
- <string name="bluetooth_starting">Démarrage Bluetooth\u2026</string>
- <string name="bluetooth_stopping">Arrêt Bluetooth\u2026</string>
- <string name="bluetooth_unknown">Inconnu</string>
- <string name="bluetooth_unpair">Délier</string>
- <string name="bluetooth_visibility">Découvrable</string>
- <string name="bootloader_version">Version de chargeur d\'amorçage</string>
- <string name="brightness">Luminosité</string>
- <string name="build_date_label">Date de Build</string>
- <string name="build_description_label">Description de Build</string>
- <string name="build_host_label">Hôte de Build</string>
- <string name="build_id_label">ID Build</string>
- <string name="build_number">Numéro de Build</string>
- <string name="build_type_label">Type de Build</string>
- <string name="build_user_label">Utilisateur de Build</string>
- <string name="call_settings_summary">Configurer la messagerie vocale, le transfert d\'appel, le signal d\'appel, l\'identification de l\'appelant</string>
- <string name="call_settings_title">Paramètres d\'appel</string>
- <string name="cancel">Annuler</string>
- <string name="checkin_button_label">Rechercher les mises à niveau</string>
- <string name="checkin_download_failed">Échec</string>
- <string name="checkin_download_label">État de téléchargement</string>
- <string name="checkin_download_ongoing">Téléchargement en cours</string>
- <string name="checkin_download_pending">En attente</string>
- <string name="checkin_download_succeeded">Terminé</string>
- <string name="checkin_download_suspended">Suspendu</string>
- <string name="checkin_download_unknown">État inconnu</string>
- <string name="checkin_failures_label">Échecs depuis le dernier succès</string>
- <string name="checkin_last_time_label">Dernière vérification réussie</string>
- <string name="checkin_started_message">Vérification démarrée\u2026</string>
- <string name="checkin_status_label">État de vérification</string>
- <string name="checkin_time_never">(jamais)</string>
- <string name="checkin_upgrade_label">Mise à niveau en attente</string>
- <string name="choose_timezone">Sélectionner le fuseau horaire</string>
- <string name="choose_timezone_region">Sélectionner la région</string>
- <string name="clear_activities">Effacer les valeurs par défaut</string>
- <string name="clear_data_dlg_text">Toutes les informations enregistrées dans cette application seront supprimées de manière permanente.</string>
- <string name="clear_data_dlg_title">Supprimer</string>
- <string name="clear_data_failed">Impossible d\'effacer les données de l\'application.</string>
- <string name="clear_user_data_text">Effacer les données</string>
- <string name="computing_size">Calcul des tailles de l\'application\u2026</string>
- <string name="connect">Connecter</string>
- <string name="connect_to_blank">Connecter à <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="contributors_title">Contributeurs</string>
- <string name="copyright_title">Copyright</string>
- <string name="data_settings">Paramètres des données</string>
- <string name="data_settings_summary">Stockage du téléphone et carte SD, synchronisation des données</string>
- <string name="data_settings_title">Données</string>
- <string name="data_size_label">Données</string>
- <string name="date_and_time">Paramètres de date et heure</string>
- <string name="date_and_time_settings_summary">Définir la date, l\'heure, le fuseau horaire et les formats</string>
- <string name="date_and_time_settings_title">Date et heure</string>
- <string name="date_time_24hour">Utiliser le format 24 heures</string>
- <string name="date_time_auto">Automatique</string>
- <string name="date_time_auto_summaryOff">Utiliser les valeurs fournies par le réseau</string>
- <string name="date_time_auto_summaryOn">Utiliser les valeurs fournies par le réseau</string>
- <string name="date_time_changeDate_text">Modifier la date</string>
- <string name="date_time_changeTime_text">Modifier l\'heure</string>
- <string name="date_time_dateDisplay_text">3 nov. 1997</string>
- <string name="date_time_date_format">Sélectionner le format de la date</string>
- <string name="date_time_set_date">Définir la date</string>
- <string name="date_time_set_time">Définir l\'heure</string>
- <string name="date_time_set_timezone">Définir le fuseau horaire</string>
- <string name="date_time_setzone_text">Modifier le fuseau horaire</string>
- <string name="date_time_timeDisplay_text">11:45 AM</string>
- <string name="date_time_timezone_label">Fuseau horaire :</string>
- <string name="debug_intent_sender_label">Déboguer l\'expéditeur d\'intention</string>
- <string name="default_date_format">MM/jj/aaaa</string>
- <string name="default_keyboard_device_label">Clavier par défaut</string>
- <string name="development_settings_summary">Paramètres pour le développement d\'application</string>
- <string name="development_settings_title">Développement</string>
- <string name="device_info_asleeptime">Heures de veille</string>
- <string name="device_info_awaketime">Heures de réveil</string>
- <string name="device_info_default">Inconnu</string>
- <string name="device_info_label">Infos d\'appareil</string>
- <string name="device_info_not_available">indisponible</string>
- <string name="device_info_settings">État du téléphone</string>
- <string name="device_info_uptime">Temps productif</string>
- <string name="device_status">État</string>
- <string name="device_status_summary">IMEI, numéro de téléphone, signal, etc.</string>
- <string name="dim_screen">Assombrir l\'écran</string>
- <string name="disconnect_ums">Déconnecter le stockage de masse USB</string>
- <string name="display_font_size_label">Taille de police :</string>
- <string name="display_label">Affichage</string>
- <string name="display_preview_label">Aperçu :</string>
- <string name="display_settings">Paramètres d\'affichage</string>
- <string name="dlg_cancel">Annuler</string>
- <string name="dlg_ok">OK</string>
- <string name="done">OK</string>
- <string name="dtmf_tone_enable_summary_off">Émettre les tonalités lors de l\'utilisation du pavé de numérotation</string>
- <string name="dtmf_tone_enable_summary_on">Émettre les tonalités lors de l\'utilisation du pavé de numérotation</string>
- <string name="dtmf_tone_enable_title">Tonalités de touches audibles</string>
- <string name="enable_adb">Débogage USB</string>
- <string name="enable_adb_summary">Mode de débogage lors la connexion USB</string>
- <string name="error_apn_empty">Le champ APN ne peut pas être vide.</string>
- <string name="error_connecting">Impossible de connecter au réseau.</string>
- <string name="error_mcc_not3">Le champ MCC doit avoir 3 chiffres.</string>
- <string name="error_mnc_not23">Le champ MNC avoir 2 ou 3 chiffres.</string>
- <string name="error_name_empty">Le champ Nom ne peut pas être vide.</string>
- <string name="error_saving">Impossible d\'enregistrer le réseau</string>
- <string name="error_scanning">Impossible de rechercher les réseaux</string>
- <string name="error_starting">Impossible de démarrer Wi-Fi</string>
- <string name="error_stopping">Impossible d\'arrêter Wi-Fi</string>
- <string name="error_title">Attention</string>
- <string name="failed_to_connect">Impossible de connecter à <xliff:g id="device_name">%1$s</xliff:g></string>
- <string name="failed_to_pair">Impossible de lier avec <xliff:g id="device_name">%1$s</xliff:g></string>
- <string name="favorites_label">Favoris</string>
- <string name="firmware_version">Version de microprogramme</string>
- <string name="font_size_preview_text">Servez à ce monsieur une bière et des kiwis.</string>
- <string name="font_size_save">OK</string>
- <string name="forget_network">Oublier</string>
- <string name="fragment_status_authenticating">Authentification avec <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_connected">Connecté à <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="fragment_status_connecting">Connexion à <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_disconnected">Déconnecté</string>
- <string name="fragment_status_disconnecting">Déconnexion de <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_failed">Échec</string>
- <string name="fragment_status_obtaining_ip">Obtention de l\'adresse IP de <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_scanning">Recherche\u2026</string>
- <string name="gsm_version_baseband_label">Version bande de base</string>
- <string name="gsm_version_ril_impl_label">Version Impl RIL</string>
- <string name="install_all_warning">Votre téléphone et données personnelles sont plus vulnérable aux attaques
- des applications de sources inconnues. Vous acceptez être entièrement
- responsable de tout dommage à votre téléphone ou perte de données
- qui peuvent résulter de l\'utilisation de ces applications.</string>
- <string name="install_applications">Sources inconnues</string>
- <string name="install_unknown_applications">Permettre l\'installation d\'applications non-Market</string>
- <string name="intent_sender_account_label">Compte : </string>
- <string name="intent_sender_action_label">Action :</string>
- <string name="intent_sender_data_label">Données :</string>
- <string name="intent_sender_resource_label">Ressource : </string>
- <string name="intent_sender_sendbroadcast_text">Envoyer la diffusion</string>
- <string name="intent_sender_startactivity_text">Démarrer l\'activité</string>
- <string name="internal_memory">Stockage interne du téléphone</string>
- <string name="ip_address">Adresse IP</string>
- <string name="kb_text">Ko</string>
- <string name="keep_screen_on">Rester réveillé</string>
- <string name="keep_screen_on_summary">L\'écran n\'entrera jamais en veille pendant la charge</string>
- <string name="kernel_version">Version de kernel</string>
- <string name="kernel_version_label">Version de kernel Linux</string>
- <string name="keyguard_label">Garde-touches</string>
- <string name="keyguard_password_button_text">OK</string>
- <string name="keyguard_password_confirm_new_label">Confirmer nouveau mot de passe :</string>
- <string name="keyguard_password_mismatch_error_text">Les deux mots de passe ne correspondent pas. Veuillez les saisir à nouveau.</string>
- <string name="keyguard_password_new_label">Nouveau mot de passe :</string>
- <string name="keyguard_password_old_label">Ancien mot de passe :</string>
- <string name="keyguard_password_old_password_error_text">L\'ancien code mot de passe saisi est incorrect. Veuillez réessayer.</string>
- <string name="keyguard_pin_mod_text">Modifier le code PIN</string>
- <string name="keyguard_pw_mod_text">Sélectionner le motif de verrouillage</string>
- <string name="keyguard_sim_pin_label">PIN SIM</string>
- <string name="language_category">Paramètre de langue</string>
- <string name="language_picker_title">Paramètres régionaux</string>
- <string name="language_settings">Texte</string>
- <string name="language_settings_summary">Sélectionner les options d\'autocorrection du texte</string>
- <string name="large_font">Grande</string>
- <string name="legal_information">Informations légales</string>
- <string name="legal_information_summary">Afficher les termes et conditions</string>
- <string name="license_title">Licence</string>
- <string name="location_gps">Activer les satellites GPS</string>
- <string name="location_gps_disabled">Localiser à la rue prêt (nécessite plus de batterie et une vue du ciel)</string>
- <string name="location_label">Fournisseur de localisation :</string>
- <string name="location_neighborhood_level">Localisation déterminée par réseaux Wi-Fi et/ou mobiles</string>
- <string name="location_network_based">Utiliser les réseaux sans fil</string>
- <string name="location_networks_disabled">Voir la localisation dans les applications (telles que Maps) en utilisant les réseaux sans fil</string>
- <string name="location_source">Ma localisation</string>
- <string name="location_source_summary">Sélectionner les sources pour déterminer la localisation</string>
- <string name="location_status">État :</string>
- <string name="location_street_level">En localisation, précise à la rue prêt (désélectionner pour économiser la batterie)</string>
- <string name="location_title">Sources de Ma localisation</string>
- <string name="lock_example_message">Connectez au moins quatre points.\n
- \nSélectionnez \"Suivant\" lorsque vous êtes prêt à dessiner votre propre motif.
- </string>
- <string name="lock_example_title">Exemple de motif</string>
- <string name="lock_settings_title">Motif de déverrouillage de l\'écran</string>
- <string name="lock_title">Sécurisation de votre téléphone</string>
- <string name="lockpattern_change_lock_pattern_label">Modifier le motif de déverrouillage</string>
- <string name="lockpattern_confirm_button_text">Confirmer</string>
- <string name="lockpattern_continue_button_text">Continuer</string>
- <string name="lockpattern_need_to_confirm">Dessiner le motif à nouveau pour confirmer :</string>
- <string name="lockpattern_need_to_unlock">Confirmer le motif enregistré :</string>
- <string name="lockpattern_need_to_unlock_wrong">Désolé, réessayez :</string>
- <string name="lockpattern_pattern_confirmed_header">Votre nouveau motif de déverrouillage :</string>
- <string name="lockpattern_pattern_entered_header">Motif enregistré !</string>
- <string name="lockpattern_recording_incorrect_too_short">Connectez au moins <xliff:g id="number">%d</xliff:g> points. Réessayez :</string>
- <string name="lockpattern_recording_inprogress">Relâchez le doigt quand terminé.</string>
- <string name="lockpattern_recording_intro_footer">Appuyez Menu pour de l\'aide.</string>
- <string name="lockpattern_recording_intro_header">Dessinez un motif de déverrouillage :</string>
- <string name="lockpattern_restart_button_text">Redessiner</string>
- <string name="lockpattern_retry_button_text">Réessayer</string>
- <string name="lockpattern_settings_change_lock_pattern">Modifier le motif de déverrouillage</string>
- <string name="lockpattern_settings_choose_lock_pattern">Définir le motif de verrouillage</string>
- <string name="lockpattern_settings_enable_summary">Dessin obligatoire du motif pour déverrouiller l\'écran</string>
- <string name="lockpattern_settings_enable_title">Motif requis</string>
- <string name="lockpattern_settings_enable_visible_pattern_title">Utiliser un motif visible</string>
- <string name="lockpattern_settings_help_how_to_record">Comment dessiner un motif de déverrouillage :</string>
- <string name="lockpattern_settings_title">Motif de déverrouillage</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_footer">Réessayez dans <xliff:g id="number">%d</xliff:g> secondes.</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_header">Trop de tentatives incorrectes.</string>
- <string name="manage_applications_title">Gérer les applications</string>
- <string name="manage_space_text">Gérer l\'espace</string>
- <string name="manageapplications_settings_title">Gérer les applications</string>
- <string name="mass_storage">Utiliser pour le stockage USB</string>
- <string name="master_clear_button_text">Réinitialiser le téléphone</string>
- <string name="master_clear_desc">Cette action réinitialisera le téléphone à son état initial de l\'usine, effaçant toutes les données et applications téléchargées !</string>
- <string name="master_clear_failed">Aucune réinitialisation effectuée car le service Système effacé n\'est pas disponible.</string>
- <string name="master_clear_final_button_text">Effacer tout</string>
- <string name="master_clear_final_desc">Réinitialiser le téléphone, effaçant toutes vos données et applications ? L\'action ne peut pas être inversée !</string>
- <string name="master_clear_gesture_explanation">Vous devez dessiner votre motif de déverrouillage pour confirmer la réinitialisation du téléphone.</string>
- <string name="master_clear_gesture_prompt">Veuillez dessiner votre motif de déverrouillage :</string>
- <string name="master_clear_summary">Efface toutes les données sur le téléphone</string>
- <string name="master_clear_title">Réinitialisation aux données d\'usine</string>
- <string name="mb_text">Mo</string>
- <string name="media_volume_summary">Définir le volume pour la musique et les vidéos</string>
- <string name="media_volume_title">Volume média</string>
- <string name="medium_font">Moyen</string>
- <string name="memory_available">Espace disponible</string>
- <string name="memory_size">Espace total</string>
- <string name="menu_cancel">Abandonner</string>
- <string name="menu_delete">Supprimer APN</string>
- <string name="menu_new">Nouvel APN</string>
- <string name="menu_save">Enregistrer</string>
- <string name="model_number">Numéro de modèle</string>
- <string name="network_settings_summary">Définir les options pour l\'itinérance, les réseaux, les APN</string>
- <string name="network_settings_title">Réseaux mobiles</string>
- <string name="networks">Sélection de l\'opérateur</string>
- <string name="networks_title">Paramètres réseau</string>
- <string name="next_button_label">Suivant</string>
- <string name="next_label">Suivant</string>
- <string name="notification_sound_dialog_title">Sélectionner la sonnerie de notification</string>
- <string name="notification_sound_summary">Définir votre sonnerie de notification par défaut</string>
- <string name="notification_sound_title">Sonnerie de notification</string>
- <string name="permissions_label">Permissions</string>
- <string name="phone_info_label">Infos téléphone</string>
- <string name="phone_language">Sélectionner la langue</string>
- <string name="ping_test_label">Exécuter test ping</string>
- <string name="please_type_hex_key">Clé hex WEP (0-9, A-F)</string>
- <string name="please_type_passphrase">Mot de passe sans fil</string>
- <string name="product_brand_label">Marque de produit</string>
- <string name="product_device_label">Type de téléphone</string>
- <string name="progress_scanning">Recherche</string>
- <string name="proxy_action_text">Enregistrer</string>
- <string name="proxy_clear_text">Effacer</string>
- <string name="proxy_defaultView_text">Restaurer les valeurs par défaut</string>
- <string name="proxy_error">Attention</string>
- <string name="proxy_error_dismiss">OK</string>
- <string name="proxy_error_empty_host_set_port">Le champ de port doit être vide si le champ d\'hôte est vide.</string>
- <string name="proxy_error_empty_port">Vous devez compléter le champ de port.</string>
- <string name="proxy_error_invalid_host">Le nom d\'hôte saisi n\'est pas valide.</string>
- <string name="proxy_error_invalid_port">Le port saisi n\'est pas valide.</string>
- <string name="proxy_hostname_label">Nom d\'hôte</string>
- <string name="proxy_port_label">Port</string>
- <string name="proxy_settings_label">Paramètres de proxy</string>
- <string name="quick_launch_assign_application">Affecter application</string>
- <string name="quick_launch_clear_cancel_button">Annuler</string>
- <string name="quick_launch_clear_dialog_message">Votre raccourci pour <xliff:g id="shortcut_letter">%1$s</xliff:g> (<xliff:g id="application_name">%2$s</xliff:g>) sera effacé.</string>
- <string name="quick_launch_clear_dialog_title">Effacer</string>
- <string name="quick_launch_clear_ok_button">OK</string>
- <string name="quick_launch_display_mode_applications">Applications</string>
- <string name="quick_launch_display_mode_shortcuts">Raccourcis</string>
- <string name="quick_launch_no_shortcut">Pas de raccourci</string>
- <string name="quick_launch_shortcut">Recherche + <xliff:g id="shortcut_letter">%1$s</xliff:g></string>
- <string name="quick_launch_summary">Définir le clavier les raccourcis pour lancer les applications</string>
- <string name="quick_launch_title">Lancement rapide</string>
- <string name="radioInfo_cid">CID</string>
- <string name="radioInfo_data_connected">Connecté</string>
- <string name="radioInfo_data_connecting">Connexion</string>
- <string name="radioInfo_data_disconnected">Déconnecté</string>
- <string name="radioInfo_data_suspended">Suspendu</string>
- <string name="radioInfo_display_asu">asu</string>
- <string name="radioInfo_display_bytes">octets</string>
- <string name="radioInfo_display_dbm">dBm</string>
- <string name="radioInfo_display_packets">pqts</string>
- <string name="radioInfo_lac">LAC</string>
- <string name="radioInfo_menu_disableData">Désactiver la connexion de données</string>
- <string name="radioInfo_menu_disableDataOnBoot">Désactiver les données à l\'amorçage</string>
- <string name="radioInfo_menu_enableData">Activer la connexion de données</string>
- <string name="radioInfo_menu_enableDataOnBoot">Activer les données à l\'amorçage</string>
- <string name="radioInfo_menu_getPDP">Obtenir la liste PDP</string>
- <string name="radioInfo_menu_viewADN">Afficher le carnet d\'adresses en SIM</string>
- <string name="radioInfo_menu_viewFDN">Afficher la numérotation fixe</string>
- <string name="radioInfo_menu_viewSDN">Afficher la numérotation de service</string>
- <string name="radioInfo_phone_idle">Inactif</string>
- <string name="radioInfo_phone_offhook">Appel en cours</string>
- <string name="radioInfo_phone_ringing">Ça sonne</string>
- <string name="radioInfo_roaming_in">Itinérance</string>
- <string name="radioInfo_roaming_not">Pas d\'itinérance</string>
- <string name="radioInfo_service_emergency">Appel d\'urgence uniquement</string>
- <string name="radioInfo_service_in">En service</string>
- <string name="radioInfo_service_off">Radio désactivée</string>
- <string name="radioInfo_service_out">Hors service</string>
- <string name="radioInfo_unknown">inconnu</string>
- <string name="radio_controls_summary">Gérer Wi-Fi, Bluetooth, mode avion et réseaux mobiles</string>
- <string name="radio_controls_title">Contrôles sans fil</string>
- <string name="radio_info_band_mode_label">Sélectionner la bande radio</string>
- <string name="radio_info_call_redirect_label">Redirection d\'appel :</string>
- <string name="radio_info_call_status_label">État d\'appel :</string>
- <string name="radio_info_current_network_label">Réseau actuel :</string>
- <string name="radio_info_data_attempts_label">Essais de données :</string>
- <string name="radio_info_data_successes_label">Succès de données :</string>
- <string name="radio_info_gprs_service_label">Service GPRS :</string>
- <string name="radio_info_gsm_disconnects_label">Déconnexions GSM :</string>
- <string name="radio_info_gsm_service_label">Service GSM :</string>
- <string name="radio_info_http_client_test">Test client HTTP :</string>
- <string name="radio_info_imei_label">IMEI :</string>
- <string name="radio_info_imsi_label">IMSI :</string>
- <string name="radio_info_message_waiting_label">Message en attente :</string>
- <string name="radio_info_neighboring_location_label">CID voisin :</string>
- <string name="radio_info_network_type_label">Type de réseau :</string>
- <string name="radio_info_phone_number_label">Numéro de téléphone :</string>
- <string name="radio_info_ping_hostname">Ping nom d\'hôte (www.google.com) :</string>
- <string name="radio_info_ping_ipaddr">Ping AdrIP :</string>
- <string name="radio_info_ppp_received_label">PPP reçus :</string>
- <string name="radio_info_ppp_resets_label">Nombre de réinitialisation PPP depuis l\'amorçage :</string>
- <string name="radio_info_ppp_sent_label">PPP envoyés :</string>
- <string name="radio_info_radio_resets_label">Réinitialisations radio :</string>
- <string name="radio_info_roaming_label">Itinérance :</string>
- <string name="radio_info_set_perferred_label">Définir le type de réseau préféré :</string>
- <string name="radio_info_signal_location_label">Localisation :</string>
- <string name="radio_info_signal_strength_label">Force du signal :</string>
- <string name="radio_info_smsc_label">SMSC :</string>
- <string name="radio_info_smsc_refresh_label">Actualiser</string>
- <string name="radio_info_smsc_update_label">Mise à jour</string>
- <string name="radio_info_toggle_ciph_label">Activer/désactiver le chiffrage</string>
- <string name="read_only">\u0020(Lecture seule)</string>
- <string name="recompute_size">Recalcul de la taille\u2026</string>
- <string name="ring_volume_summary">Définir le volume pour les appels entrants</string>
- <string name="ring_volume_title">Volume de la sonnerie</string>
- <string name="ringer_volume_instructions">Utiliser les boutons du volume pour ajuster le volume de la sonnerie</string>
- <string name="ringer_volume_ringer_mode_label">Mode de sonnerie</string>
- <string name="ringer_volume_ringtone_label">Sonnerie</string>
- <string name="ringer_volume_screen_increasing_text">Sonnerie croissante</string>
- <string name="ringtone_summary">Définir votre sonnerie d\'appels entrants par défaut</string>
- <string name="ringtone_title">Sonnerie du téléphone</string>
- <string name="roaming">Itinérance de données</string>
- <string name="roaming_disable">Connecter aux services de donnée en itinérance</string>
- <string name="roaming_enable">Connecter aux services de donnée en itinérance</string>
- <string name="roaming_reenable_message">Vous avez perdu la connectivité de données car vous avez quitté votre réseau personnel avec l\'itinérance de données désactivée.</string>
- <string name="roaming_reenable_title">Attention</string>
- <string name="roaming_turn_it_on_button">Activez-la</string>
- <string name="roaming_warning">Permettre l\'itinérance de données ? Vous pouvez avoir des frais d\'itinérance importants !</string>
- <string name="scan_wifi">Rechercher</string>
- <string name="screen_off_timeout_label">Ne jamais expirer pendant la charge</string>
- <string name="screen_timeout">Expiration de l\'écran</string>
- <string name="sd_card_settings_label">Carte SD</string>
- <string name="sd_eject">Démonter/éjecter la carte SD</string>
- <string name="sd_memory">Carte SD</string>
- <string name="sd_unavailable">Non disponible</string>
- <string name="sdcard_changes_instructions">Les modifications prennent effet à la reconnexion du câble USB</string>
- <string name="sdcard_removal_alert_ok">OK</string>
- <string name="sdcard_removal_alert_scolding">La carte SD a été retirée alors qu\'elle était en utilisation !
- Pour éviter la corruption de la carte, utilisez l\'écran Paramètres de carte SD pour démonter la carte avant le retrait.</string>
- <string name="sdcard_removal_alert_title">Retrait de carte SD non sûr !</string>
- <string name="sdcard_setting">Carte SD</string>
- <string name="sdcard_settings_available_bytes_label">Octets disponibles :</string>
- <string name="sdcard_settings_bad_removal_status">La carte SD a été retirée alors qu\'elle était en utilisation !</string>
- <string name="sdcard_settings_mass_storage_status">La carte SD est utilisée comme appareil de stockage de masse</string>
- <string name="sdcard_settings_not_present_status">Pas de carte SD</string>
- <string name="sdcard_settings_read_only_status">Carte SD montée en lecture seule</string>
- <string name="sdcard_settings_scanning_status">Recherche de fichiers multimédia dans la carte SD\u2026</string>
- <string name="sdcard_settings_screen_mass_storage_text">Activer le stockage de masse USB</string>
- <string name="sdcard_settings_total_bytes_label">Total d\'octets :</string>
- <string name="sdcard_settings_unmounted_status">Il est maintenant possible de retirer la carte SD en toute sécurité</string>
- <string name="sdcard_settings_used_bytes_label">Octets utilisés :</string>
- <string name="sdcard_unmount">Démonter la carte SD</string>
- <string name="sdcard_unmountable_alert_ok">OK</string>
- <string name="sdcard_unmountable_alert_title">Carte SD illisible</string>
- <string name="sdcard_unmountable_message">La carte SD n\'a pas pu être lue.
- Le système de fichiers peut être corrompu ou la carte peut être défective.</string>
- <string name="security">Sécurité</string>
- <string name="security_and_data_label">Sécurité et données</string>
- <string name="security_passwords_title">Mots de passe</string>
- <string name="security_settings_desc">Voici ce que cette application peut accéder sur votre téléphone :</string>
- <string name="security_settings_summary">Ma localisation, déverrouillage d\'écran, verrouillage de carte SIM</string>
- <string name="security_settings_title">Sécurité et localisation</string>
- <string name="select_your_language">Sélectionner votre langue</string>
- <string name="set_lock_pattern_label">Dessinez votre motif de déverrouillage :</string>
- <string name="settings_chooser_pick_string">
- L\'icône des paramètres doit transférer à :
- </string>
- <string name="settings_label">Paramètres</string>
- <string name="settings_license_activity_loading">Chargement\u2026</string>
- <string name="settings_license_activity_title">Licences Open source</string>
- <string name="settings_license_activity_unavailable">Il y a un problème pour charger les licences.</string>
- <string name="show_password">Mots de passe visibles</string>
- <string name="show_password_summary">Afficher le mot de passe lors de la saisie</string>
- <string name="signal">Force du signal</string>
- <string name="silent_mode_summary">Tous les sons excepté le multimédia sont sous silence</string>
- <string name="silent_mode_title">Mode silencieux</string>
- <string name="sim_bad_pin">Code PIN incorrect !</string>
- <string name="sim_change_failed">Impossible de modifier le code PIN.\nPossible code PIN incorrect.</string>
- <string name="sim_change_pin">Modifier PIN SIM</string>
- <string name="sim_change_succeeded">PIN SIM modifié avec succès</string>
- <string name="sim_disable_sim_lock">Déverrouiller la carte SIM</string>
- <string name="sim_enable_sim_lock">Verrouiller la carte SIM</string>
- <string name="sim_enter_cancel">Annuler</string>
- <string name="sim_enter_new">Saisir le nouveau code PIN</string>
- <string name="sim_enter_ok">OK</string>
- <string name="sim_enter_old">Saisir l\'ancien code PIN</string>
- <string name="sim_enter_pin">Saisir le code PIN SIM</string>
- <string name="sim_lock_failed">Impossible de modifier l\'état de verrouillage de la carte SIM.\nPossible code PIN incorrect.</string>
- <string name="sim_lock_off">Exiger le code PIN pour utiliser le téléphone</string>
- <string name="sim_lock_on">Exiger le code PIN pour utiliser le téléphone</string>
- <string name="sim_lock_settings">Paramètres de verrouillage de carte SIM</string>
- <string name="sim_lock_settings_category">Configurer le verrouillage de carte SIM</string>
- <string name="sim_lock_settings_title">Verrouillage de carte SIM</string>
- <string name="sim_pin_change">Modifier le code PIN</string>
- <string name="sim_pin_toggle">Verrouiller la carte SIM</string>
- <string name="sim_pins_dont_match">Les codes PIN ne correspondent pas !</string>
- <string name="sim_reenter_new">Ressaisir le nouveau code PIN</string>
- <string name="skip_button_label">Annuler</string>
- <string name="small_font">Petit</string>
- <string name="software_version">Version du logiciel</string>
- <string name="sort_order_alpha">Trier alphabétiquement</string>
- <string name="sort_order_size">Trier par taille (décroissante)</string>
- <string name="sound_and_display_settings">Son et affichage</string>
- <string name="sound_and_display_settings_summary">Définir les sonneries, les notifications, la luminosité d\'écran</string>
- <string name="sound_effects_enable_summary_off">Émettre un son lors de la sélection à l\'écran</string>
- <string name="sound_effects_enable_summary_on">Émettre un son lors de la sélection à l\'écran</string>
- <string name="sound_effects_enable_title">Sélection sonore</string>
- <string name="sound_settings">Paramètres de son</string>
- <string name="status_authenticating">Authentification\u2026</string>
- <string name="status_awake_time">Heures de réveil</string>
- <string name="status_bt_address">Adresse Bluetooth</string>
- <string name="status_connected">Connecté</string>
- <string name="status_connecting">Connexion\u2026</string>
- <string name="status_data_state">Accès aux données</string>
- <string name="status_disconnected">Déconnecté</string>
- <string name="status_disconnecting">Déconnexion\u2026</string>
- <string name="status_failed">Échec</string>
- <string name="status_imei">IMEI</string>
- <string name="status_imei_sv">IMEI SV</string>
- <string name="status_imsi">IMSI</string>
- <string name="status_network_type">Type de réseau</string>
- <string name="status_number">Numéro de téléphone</string>
- <string name="status_obtaining_ip">Obtenir l\'adresse\u2026</string>
- <string name="status_operator">Réseau</string>
- <string name="status_roaming">Itinérance</string>
- <string name="status_scanning">Recherche\u2026</string>
- <string name="status_service_state">État de service</string>
- <string name="status_signal_strength">Force du signal</string>
- <string name="status_unavailable">Non disponible</string>
- <string name="status_up_time">Temps productif</string>
- <string name="status_wifi_mac_address">Adresse MAC Wi-Fi</string>
- <string name="stay_on">L\'écran est toujours allumé pendant la charge</string>
- <string name="storage_label">Stockage</string>
- <string name="storage_settings_summary">Démonter la carte SD, afficher le stockage disponible</string>
- <string name="storage_settings_title">Stockage du téléphone et carte SD</string>
- <string name="sum_carrier_select">Sélectionnez un opérateur de réseau</string>
- <string name="summary_connection_failed">Échec de la connexion, sélectionnez pour ressayer</string>
- <string name="summary_not_in_range">Pas à distance</string>
- <string name="summary_remembered">Souvenu</string>
- <string name="sync_automatically">Auto-synchroniser</string>
- <string name="sync_calendar">Agenda</string>
- <string name="sync_contacts">Contacts</string>
- <string name="sync_disabled">Sélectionner pour synchroniser automatiquement les données</string>
- <string name="sync_do_nothing">Ne rien faire maintenant.</string>
- <string name="sync_enabled">Synchroniser automatiquement les données</string>
- <string name="sync_gmail">Gmail</string>
- <string name="sync_is_failing">Il y a actuellement des problèmes de synchronisation. Elle sera de retour rapidement.</string>
- <string name="sync_menu_sync_cancel">Annuler la synchronisation</string>
- <string name="sync_menu_sync_now">Synchroniser maintenant</string>
- <string name="sync_really_delete">Supprimez les éléments.</string>
- <string name="sync_settings">Synchronisation données</string>
- <string name="sync_settings_summary">Sélectionnez les applications à synchroniser</string>
- <string name="sync_too_many_deletes">Limite de suppression dépassée</string>
- <string name="sync_too_many_deletes_desc">Il y a %d éléments supprimés pour %s, compte %s. Que souhaitez-vous faire ?</string>
- <string name="sync_undo_deletes">Annulez les suppressions.</string>
- <string name="target_build_field_label">Type de Build demandé</string>
- <string name="team_title">Équipe</string>
- <string name="telephony_apn_label">APN :</string>
- <string name="telephony_mcc_label">MCC :</string>
- <string name="telephony_mmsc_label">MMSC :</string>
- <string name="telephony_mmsport_label">Port MMS :</string>
- <string name="telephony_mmsproxy_label">Proxy MMS :</string>
- <string name="telephony_mnc_label">MNC :</string>
- <string name="telephony_name_label">Nom :</string>
- <string name="telephony_password_label">Mot de passe :</string>
- <string name="telephony_port_label">Port :</string>
- <string name="telephony_proxy_label">Proxy :</string>
- <string name="telephony_server_label">Serveur :</string>
- <string name="telephony_user_label">Utilisateur :</string>
- <string name="terms_title">Termes et conditions</string>
- <string name="testing">Test</string>
- <string name="testing_battery_info">Informations batterie</string>
- <string name="testing_phone_info">Informations téléphone</string>
- <string name="testing_sim_toolkit">Outils SIM</string>
- <string name="text_category">Paramètres texte</string>
- <string name="total_size_label">Total</string>
- <string name="turn_off_qxdm">Désactiver journal QXDM SD</string>
- <string name="turn_off_radio">Désactiver la radio</string>
- <string name="turn_on_qxdm">Activer journal QXDM SD</string>
- <string name="turn_on_radio">Activer la radio</string>
- <string name="underdeveloped_settings_label">Paramètres sous-développés</string>
- <string name="uninstall_failed">Impossible de désinstaller l\'application.</string>
- <string name="uninstall_text">Désinstaller</string>
- <string name="unknown">Inconnu</string>
- <string name="vibrate_summary">Faire vibrer le téléphone pour les appels entrants</string>
- <string name="vibrate_title">Vibreur téléphone</string>
- <string name="wallpaper_label">Papier peint</string>
- <string name="wifi">Wi-Fi</string>
- <string name="wifi_access_points">Réseaux Wi-Fi</string>
- <string name="wifi_add_other_network">Ajouter un réseau Wi-Fi</string>
- <string name="wifi_context_menu_change_password">Changer le mot de passe</string>
- <string name="wifi_context_menu_connect">Connexion au réseau</string>
- <string name="wifi_context_menu_forget">Oublier le réseau</string>
- <string name="wifi_dhcp_timeout_error">Il y a un problème pour obtenir une adresse IP.</string>
- <string name="wifi_dns1">DNS 1</string>
- <string name="wifi_dns2">DNS 2</string>
- <string name="wifi_dns3">DNS 3</string>
- <string name="wifi_dns_label">dns :</string>
- <string name="wifi_error">Erreur</string>
- <string name="wifi_gateway">Passerelle</string>
- <string name="wifi_gateway_label">passerelle :</string>
- <string name="wifi_generic_connection_error">Il y a un problème de connexion au réseau. Veuillez réessayer.</string>
- <string name="wifi_host_ip">ip hôte :</string>
- <string name="wifi_ip_address">Adresse IP</string>
- <string name="wifi_ip_settings_invalid_ip">Veuillez saisir une adresse IP valide.</string>
- <string name="wifi_ip_settings_menu_cancel">Annuler</string>
- <string name="wifi_ip_settings_menu_save">Enregistrer</string>
- <string name="wifi_ip_settings_titlebar">Paramètres IP</string>
- <string name="wifi_link_speed">Vitesse</string>
- <string name="wifi_menu_advanced">Avancés</string>
- <string name="wifi_netmask">Masque réseau</string>
- <string name="wifi_netmask_label">masque réseau :</string>
- <string name="wifi_notify_open_networks">Notification réseau</string>
- <string name="wifi_notify_open_networks_summary">Me notifier quand un réseau ouvert est disponible</string>
- <string name="wifi_password_incorrect_error">Le mot de passe du réseau saisi est incorrect. Veuillez réessayer.</string>
- <string name="wifi_password_unchanged">(inchangé)</string>
- <string name="wifi_prefer_wifi">Wi-Fi préféré</string>
- <string name="wifi_quick_toggle_summary">Sélectionner d\'activer Wi-Fi</string>
- <string name="wifi_quick_toggle_title">Wi-Fi</string>
- <string name="wifi_save_config">Enregistrer</string>
- <string name="wifi_screen_activate_text">Activer</string>
- <string name="wifi_screen_dhcp_text">automatique</string>
- <string name="wifi_screen_dns_text">209.81.59.2</string>
- <string name="wifi_screen_gateway_text">192.168.20.1</string>
- <string name="wifi_screen_ip_text">192.168.20.10</string>
- <string name="wifi_screen_manual_text">manuel</string>
- <string name="wifi_screen_netmask_text">255.255.255.0</string>
- <string name="wifi_screen_status_text">Wi-Fi fonctionne</string>
- <string name="wifi_screen_test_text">Test</string>
- <string name="wifi_security">Sécurité</string>
- <string name="wifi_security_open">Ouvrir</string>
- <string name="wifi_security_unknown">Inconnu</string>
- <string name="wifi_security_verbose_open">Réseau ouvert</string>
- <string name="wifi_security_verbose_wep">Sécurisé avec WEP</string>
- <string name="wifi_security_verbose_wpa">Sécurisé avec WPA</string>
- <string name="wifi_security_verbose_wpa2">Sécurisé avec WPA2</string>
- <string name="wifi_security_wep">WEP</string>
- <string name="wifi_security_wpa">WPA</string>
- <string name="wifi_security_wpa2">WPA2</string>
- <string name="wifi_settings">Paramètres Wi-Fi</string>
- <string name="wifi_settings_category">Paramètres Wi-Fi</string>
- <string name="wifi_settings_summary">Configurer et gérer les points d\'accès sans fil</string>
- <string name="wifi_show_password">Affichez le mot de passe.</string>
- <string name="wifi_signal_0">Faible</string>
- <string name="wifi_signal_1">Passable</string>
- <string name="wifi_signal_2">Bonne</string>
- <string name="wifi_signal_3">Excellente</string>
- <string name="wifi_starting">Activation\u2026</string>
- <string name="wifi_status">État</string>
- <string name="wifi_stopping">Désactivation\u2026</string>
- <string name="wifi_type_ssid">Saisissez le SSID du réseau :</string>
- <string name="wifi_use_static_ip">Utiliser IP statique</string>
- <string name="wifi_wlan_id">id réseau sans fil :</string>
-</resources>
diff --git a/res/values-it-rIT/strings.xml b/res/values-it-rIT/strings.xml
deleted file mode 100644
index 0cf95d0..0000000
--- a/res/values-it-rIT/strings.xml
+++ /dev/null
@@ -1,700 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="about_settings">Informazioni sul telefono</string>
- <string name="about_settings_summary">Visualizza le informazioni legali, lo stato del telefono e la versione del software</string>
- <string name="activity_picker_label">Seleziona attività</string>
- <string name="airplane_mode">Modalità aereo</string>
- <string name="airplane_mode_summary">Selezionare per disattivare tutte le connessioni wireless</string>
- <string name="airplane_mode_turning_off">Attivazione connessioni wireless\u2026</string>
- <string name="airplane_mode_turning_on">Disattivazione connessioni wireless\u2026</string>
- <string name="android_id_label">ID Android</string>
- <string name="apn_apn">APN</string>
- <string name="apn_edit">Modifica punto di accesso</string>
- <string name="apn_http_port">Porta</string>
- <string name="apn_http_proxy">Proxy</string>
- <string name="apn_label">APN</string>
- <string name="apn_mcc">MCC</string>
- <string name="apn_mms_port">Porta MMS</string>
- <string name="apn_mms_proxy">Proxy MMS</string>
- <string name="apn_mmsc">MMSC</string>
- <string name="apn_mnc">MNC</string>
- <string name="apn_name">Nome</string>
- <string name="apn_not_set">&lt;Non impostato&gt;</string>
- <string name="apn_password">Password</string>
- <string name="apn_server">Server</string>
- <string name="apn_settings">APN</string>
- <string name="apn_type">Tipo APN</string>
- <string name="apn_user">Nome utente</string>
- <string name="app_launcher_newView_text">Nuovo AppLauncher</string>
- <string name="app_not_found_dlg_text"> Impossibile trovare l'applicazione
-nell'elenco di applicazioni installate.</string>
- <string name="app_not_found_dlg_title">Impossibile trovare l'applicazione</string>
- <string name="application_info_label">Informazioni sull'applicazione</string>
- <string name="application_size_label">Applicazione</string>
- <string name="applications_settings">Applicazioni</string>
- <string name="applications_settings_header">Impostazioni applicazione</string>
- <string name="applications_settings_summary">Gestisce le applicazioni, imposta i collegamenti di avvio rapido</string>
- <string name="auto_caps">Maiuscola automatica</string>
- <string name="auto_caps_summary">Attiva la maiuscola per la prima lettera nelle frasi</string>
- <string name="auto_launch_disable_text">Nessuna impostazione predefinita.</string>
- <string name="auto_launch_enable_text">Si è scelto di avviare questa applicazione per impostazione predefinita per alcune azioni.</string>
- <string name="auto_launch_label">Avvia per impostazione predefinita</string>
- <string name="auto_punctuate">Punteggiatura automatica</string>
- <string name="auto_punctuate_summary">Premere Barra spaziatrice per inserire \u0022.\u0022</string>
- <string name="auto_replace">Sostituzione automatica</string>
- <string name="auto_replace_summary">Corregge le parole con errori di ortografia</string>
- <string name="autorotate">Rotazione automatica</string>
- <string name="autorotate_summary_off">Cambiando l'orientamento dello schermo non viene ruotata l'applicazione</string>
- <string name="autorotate_summary_on">Cambiando l'orientamento dello schermo viene ruotata l'applicazione</string>
- <string name="b_text">B</string>
- <string name="band_mode_failed">Non riuscito</string>
- <string name="band_mode_loading">Caricamento lista bande in corso\u2026</string>
- <string name="band_mode_set">Imposta</string>
- <string name="band_mode_succeeded">Riuscita</string>
- <string name="band_mode_title">Imposta banda GSM/UMTS</string>
- <string name="baseband_version">Versione banda di base</string>
- <string name="basic_settings_title">Funzioni di base del telefono</string>
- <string name="battery_info_awake_battery">Tempo riattivazione batteria:</string>
- <string name="battery_info_awake_plugged">Tempo riattivazione durante la carica:</string>
- <string name="battery_info_health_dead">Fuori uso</string>
- <string name="battery_info_health_good">Buona</string>
- <string name="battery_info_health_label">Stato batteria:</string>
- <string name="battery_info_health_over_voltage">Sovratensione</string>
- <string name="battery_info_health_overheat">Surriscaldamento</string>
- <string name="battery_info_health_unknown">Sconosciuto</string>
- <string name="battery_info_health_unspecified_failure">Errore sconosciuto</string>
- <string name="battery_info_label">Informazioni batteria</string>
- <string name="battery_info_level_label">Livello batteria:</string>
- <string name="battery_info_scale_label">Scala batteria:</string>
- <string name="battery_info_screen_on">Tempo accensione schermo:</string>
- <string name="battery_info_status_charging">Sotto carica</string>
- <string name="battery_info_status_charging_ac">(CA)</string>
- <string name="battery_info_status_charging_usb">(USB)</string>
- <string name="battery_info_status_discharging">Scarico</string>
- <string name="battery_info_status_full">Carico</string>
- <string name="battery_info_status_label">Stato batteria:</string>
- <string name="battery_info_status_not_charging">Non sotto carica</string>
- <string name="battery_info_status_unknown">Sconosciuto</string>
- <string name="battery_info_technology_label">Tecnologia batteria:</string>
- <string name="battery_info_temperature_label">Temperatura batteria:</string>
- <string name="battery_info_temperature_units">\u00B0 C</string>
- <string name="battery_info_uptime">Tempo dall'avvio:</string>
- <string name="battery_info_voltage_label">Voltaggio batteria:</string>
- <string name="battery_info_voltage_units">mV</string>
- <string name="battery_level_title">Livello batteria</string>
- <string name="battery_status_title">Stato batteria</string>
- <string name="bluetooth">Bluetooth</string>
- <string name="bluetooth_clear_list">Cancella elenco dispositivi</string>
- <string name="bluetooth_connect">Connetti</string>
- <string name="bluetooth_connectable">Solo collegabile</string>
- <string name="bluetooth_connected">Connesso</string>
- <string name="bluetooth_connecting">Connessione in corso\u2026</string>
- <string name="bluetooth_device">viva voce/cuffia</string>
- <string name="bluetooth_device_info">Informazioni dispositivo Bluetooth</string>
- <string name="bluetooth_device_info_alias">Alias dispositivo</string>
- <string name="bluetooth_device_info_delete">Rimuovi dispositivo</string>
- <string name="bluetooth_device_info_no_alias">Digitare l'alias qui\u2026</string>
- <string name="bluetooth_device_info_sdp">Servizi supportati nell'elenco</string>
- <string name="bluetooth_device_name">Nome dispositivo</string>
- <string name="bluetooth_devices">Dispositivi Bluetooth</string>
- <string name="bluetooth_disabled">Selezionare per attivare il Bluetooth</string>
- <string name="bluetooth_disconnect">Disconnetti</string>
- <string name="bluetooth_disconnect_blank"><xliff:g id="device_name">%1$s</xliff:g> verrà disconnesso</string>
- <string name="bluetooth_discoverability_panel_title">Nomina me\u2026</string>
- <string name="bluetooth_discoverable">Rilevabile per %1$s secondi</string>
- <string name="bluetooth_enable_text">Pulsante vuoto\u2026</string>
- <string name="bluetooth_enabled">Selezionare per attivare il Bluetooth</string>
- <string name="bluetooth_enabling">Attivazione Bluetooth in corso\u2026</string>
- <string name="bluetooth_enter_pin_msg">Immettere il PIN per\u0020</string>
- <string name="bluetooth_failed_to_enable">Impossibile attivare Bluetooth</string>
- <string name="bluetooth_is_discoverable">Rilevabile per %1$s secondi\u2026</string>
- <string name="bluetooth_name_not_set">Nessun nome impostato, utilizzando il nome account</string>
- <string name="bluetooth_neither">Non rilevabile né collegabile</string>
- <string name="bluetooth_new_data">Digitare i nuovi dati</string>
- <string name="bluetooth_new_data_cancel">Annulla</string>
- <string name="bluetooth_new_data_confirm">OK</string>
- <string name="bluetooth_not_connected">Accoppia a dispositivo</string>
- <string name="bluetooth_not_discoverable">Selezionare per rendere il dispositivo rilevabile</string>
- <string name="bluetooth_notif_message">Selezionare per accoppiare\u0020</string>
- <string name="bluetooth_notif_ticker">Richiesta accoppiamento Bluetooth</string>
- <string name="bluetooth_notif_title">Richiesta accoppiamento Bluetooth</string>
- <string name="bluetooth_pair">Accoppia</string>
- <string name="bluetooth_paired">Accoppiato</string>
- <string name="bluetooth_paired_not_nearby">Accoppiato</string>
- <string name="bluetooth_pairing">Accoppiamento in corso\u2026</string>
- <string name="bluetooth_pairing_msg">Accoppiamento in corso\u2026</string>
- <string name="bluetooth_pin_entry">Codice PIN Bluetooth</string>
- <string name="bluetooth_quick_toggle_summary">Selezionare per attivare il Bluetooth</string>
- <string name="bluetooth_quick_toggle_title">Bluetooth</string>
- <string name="bluetooth_scan_for_devices">Ricerca dispositivi</string>
- <string name="bluetooth_scan_for_new_devices">Ricerca nuovi dispositivi\u2026</string>
- <string name="bluetooth_scan_text">Pulsante vuoto\u2026</string>
- <string name="bluetooth_settings">Impostazioni Bluetooth</string>
- <string name="bluetooth_settings_summary">Gestisce le connessioni, imposta il nome del dispositivo e la rilevabilità</string>
- <string name="bluetooth_settings_text">Pulsante vuoto\u2026</string>
- <string name="bluetooth_settings_title">Impostazioni Bluetooth</string>
- <string name="bluetooth_starting">Avvio di Bluetooth\u2026</string>
- <string name="bluetooth_stopping">Interruzione Bluetooth\u2026</string>
- <string name="bluetooth_unknown">Sconosciuto</string>
- <string name="bluetooth_unpair">Disaccoppia</string>
- <string name="bluetooth_visibility">Rilevabile</string>
- <string name="bootloader_version">Versione del caricatore di avvio</string>
- <string name="brightness">Luminosità</string>
- <string name="build_date_label">Data build</string>
- <string name="build_description_label">Descrizione build</string>
- <string name="build_host_label">Host build</string>
- <string name="build_id_label">ID build</string>
- <string name="build_number">Numero build</string>
- <string name="build_type_label">Tipo build</string>
- <string name="build_user_label">Utente build</string>
- <string name="call_settings_summary">Imposta la casella vocale, il trasferimento chiamata, la chiamata in attesa, l'ID chiamante</string>
- <string name="call_settings_title">Impostazioni chiamata</string>
- <string name="cancel">Annulla</string>
- <string name="checkin_button_label">Verifica aggiornamento</string>
- <string name="checkin_download_failed">Non riuscito</string>
- <string name="checkin_download_label">Stato download</string>
- <string name="checkin_download_ongoing">Download in corso</string>
- <string name="checkin_download_pending">In sospeso</string>
- <string name="checkin_download_succeeded">Completato</string>
- <string name="checkin_download_suspended">Sospeso</string>
- <string name="checkin_download_unknown">Stato sconosciuto</string>
- <string name="checkin_failures_label">Errori dall'ultima operazione completata</string>
- <string name="checkin_last_time_label">Ultima verifica riuscita</string>
- <string name="checkin_started_message">Archiviazione avviata\u2026</string>
- <string name="checkin_status_label">Stato verifica</string>
- <string name="checkin_time_never">(mai)</string>
- <string name="checkin_upgrade_label">Aggiornamento in sospeso</string>
- <string name="choose_timezone">Seleziona fuso orario</string>
- <string name="choose_timezone_region">Seleziona area</string>
- <string name="clear_activities">Cancella predefiniti</string>
- <string name="clear_data_dlg_text">Tutte le informazioni salvate in questa applicazione verranno eliminate in maniera permanente.</string>
- <string name="clear_data_dlg_title">Elimina</string>
- <string name="clear_data_failed">Impossibile cancellare i dati dell'applicazione.</string>
- <string name="clear_user_data_text">Cancella dati</string>
- <string name="computing_size">Calcolo delle dimensioni dell'applicazione in corso\u2026</string>
- <string name="connect">Connetti</string>
- <string name="connect_to_blank">Connetti a <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="contributors_title">Collaboratori</string>
- <string name="copyright_title">Copyright</string>
- <string name="data_settings">Impostazioni dati</string>
- <string name="data_settings_summary">Scheda SD e archiviazione telefono, sincronizzazione dati</string>
- <string name="data_settings_title">Dati</string>
- <string name="data_size_label">Dati</string>
- <string name="date_and_time">Impostazioni di data e ora</string>
- <string name="date_and_time_settings_summary">Imposta la data, l'ora, il fuso orario e i formati</string>
- <string name="date_and_time_settings_title">Data e ora</string>
- <string name="date_time_24hour">Usa formato 24 ore</string>
- <string name="date_time_auto">Automatico</string>
- <string name="date_time_auto_summaryOff">Usa valori della rete</string>
- <string name="date_time_auto_summaryOn">Usa valori della rete</string>
- <string name="date_time_changeDate_text">Modifica data</string>
- <string name="date_time_changeTime_text">Modifica ora</string>
- <string name="date_time_dateDisplay_text">3 nov 1997</string>
- <string name="date_time_date_format">Seleziona formato data</string>
- <string name="date_time_set_date">Imposta data</string>
- <string name="date_time_set_time">Imposta ora</string>
- <string name="date_time_set_timezone">Imposta fuso orario</string>
- <string name="date_time_setzone_text">Modifica fuso orario</string>
- <string name="date_time_timeDisplay_text">11:45</string>
- <string name="date_time_timezone_label">Fuso orario:</string>
- <string name="debug_intent_sender_label">Mittente intenzione debug</string>
- <string name="default_date_format">gg/MM/aaaa</string>
- <string name="default_keyboard_device_label">Dispositivo tastiera predefinito</string>
- <string name="development_settings_summary">Impostazioni per lo sviluppo di applicazioni</string>
- <string name="development_settings_title">Sviluppo</string>
- <string name="device_info_asleeptime">Tempo di inattività</string>
- <string name="device_info_awaketime">Tempo riattivazione</string>
- <string name="device_info_default">Sconosciuto</string>
- <string name="device_info_label">Informazioni dispositivo</string>
- <string name="device_info_not_available">Non disponibile</string>
- <string name="device_info_settings">Stato telefono</string>
- <string name="device_info_uptime">Disponibilità</string>
- <string name="device_status">Stato</string>
- <string name="device_status_summary">IMEI, numero di telefono, segnale ecc...</string>
- <string name="dim_screen">Oscura schermo</string>
- <string name="disconnect_ums">Disconnetti dispositivo di memorizzazione di massa USB</string>
- <string name="display_font_size_label">Dimensioni carattere:</string>
- <string name="display_label">Display</string>
- <string name="display_preview_label">Anteprima:</string>
- <string name="display_settings">Impostazioni display</string>
- <string name="dlg_cancel">Annulla</string>
- <string name="dlg_ok">OK</string>
- <string name="done">OK</string>
- <string name="dtmf_tone_enable_summary_off">Riproduci toni durante la composizione</string>
- <string name="dtmf_tone_enable_summary_on">Riproduci toni durante la composizione</string>
- <string name="dtmf_tone_enable_title">Toni udibili al tocco</string>
- <string name="enable_adb">Debug USB</string>
- <string name="enable_adb_summary">Modalità debug quando è connesso USB</string>
- <string name="error_apn_empty">L'APN non può essere vuoto.</string>
- <string name="error_connecting">Impossibile collegarsi alla rete</string>
- <string name="error_mcc_not3">Il campo MCC deve essere costituito da 3 cifre.</string>
- <string name="error_mnc_not23">Il campo MNC deve essere costituito da 2 o 3 cifre.</string>
- <string name="error_name_empty">Il campo Nome non può essere vuoto.</string>
- <string name="error_saving">Impossibile salvare la rete</string>
- <string name="error_scanning">Impossibile cercare le reti</string>
- <string name="error_starting">Impossibile avviare Wi-Fi</string>
- <string name="error_stopping">Impossibile interrompere Wi-Fi</string>
- <string name="error_title">Attenzione</string>
- <string name="failed_to_connect">Impossibile connettersi a <xliff:g id="device_name">%1$s</xliff:g></string>
- <string name="failed_to_pair">Impossibile eseguire l'accoppiamento con <xliff:g id="device_name">%1$s</xliff:g></string>
- <string name="favorites_label">Preferiti</string>
- <string name="firmware_version">Versione firmware</string>
- <string name="font_size_preview_text">Servez à ce monsieur une bière et des kiwis.</string>
- <string name="font_size_save">OK</string>
- <string name="forget_network">Ignora</string>
- <string name="fragment_status_authenticating">Autenticazione con <xliff:g id="network_name">%1$s</xliff:g> in corso\u2026</string>
- <string name="fragment_status_connected">Connesso a <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="fragment_status_connecting">Connessione a <xliff:g id="network_name">%1$s</xliff:g> in corso\u2026</string>
- <string name="fragment_status_disconnected">Disconnesso</string>
- <string name="fragment_status_disconnecting">Disconnessione da <xliff:g id="network_name">%1$s</xliff:g> in corso\u2026</string>
- <string name="fragment_status_failed">Non riuscito</string>
- <string name="fragment_status_obtaining_ip">Ottenimento indirizzo IP da <xliff:g id="network_name">%1$s</xliff:g> in corso\u2026</string>
- <string name="fragment_status_scanning">Scansione in corso\u2026</string>
- <string name="gsm_version_baseband_label">Versione banda di base</string>
- <string name="gsm_version_ril_impl_label">Versione Impl RIL</string>
- <string name="install_all_warning">Il telefono e i dati personali sono più vulnerabili agli attacchi da parte di applicazioni
- di origini sconosciute. L'utente accetta di essere il solo responsabile degli eventuali
- danni al telefono o della perdita dei dati che potrebbero derivare dall'utilizzo di
- queste applicazioni.</string>
- <string name="install_applications">Origini sconosciute</string>
- <string name="install_unknown_applications">Consente l'installazione di applicazioni non commerciali</string>
- <string name="intent_sender_account_label">Account: </string>
- <string name="intent_sender_action_label">Azione:</string>
- <string name="intent_sender_data_label">Dati:</string>
- <string name="intent_sender_resource_label">Risorsa: </string>
- <string name="intent_sender_sendbroadcast_text">Invia broadcast</string>
- <string name="intent_sender_startactivity_text">Avvia attività</string>
- <string name="internal_memory">Dispositivo di memorizzazione interna telefono</string>
- <string name="ip_address">Indirizzo IP</string>
- <string name="kb_text">KB</string>
- <string name="keep_screen_on">Rimani attivo</string>
- <string name="keep_screen_on_summary">Lo schermo non diventa mai inattivo sotto carica</string>
- <string name="kernel_version">Versione kernel</string>
- <string name="kernel_version_label">Versione kernel Linux</string>
- <string name="keyguard_label">Coperchio</string>
- <string name="keyguard_password_button_text">OK</string>
- <string name="keyguard_password_confirm_new_label">Conferma nuova password:</string>
- <string name="keyguard_password_mismatch_error_text">Le due password non corrispondono. Digitarle di nuovo.</string>
- <string name="keyguard_password_new_label">Nuova password:</string>
- <string name="keyguard_password_old_label">Vecchia password:</string>
- <string name="keyguard_password_old_password_error_text">La vecchia password immessa non è corretta. Riprovare.</string>
- <string name="keyguard_pin_mod_text">Cambia PIN</string>
- <string name="keyguard_pw_mod_text">Seleziona codice di blocco</string>
- <string name="keyguard_sim_pin_label">PIN SIM</string>
- <string name="language_category">Impostazione lingua</string>
- <string name="language_picker_title">Impostazioni internazionali</string>
- <string name="language_settings">Testo</string>
- <string name="language_settings_summary">Selezionare le opzioni di correzione automatica testo</string>
- <string name="large_font">Grande</string>
- <string name="legal_information">Informazioni legali</string>
- <string name="legal_information_summary">Visualizza termini e condizioni</string>
- <string name="license_title">Licenza</string>
- <string name="location_gps">Attiva satelliti GPS</string>
- <string name="location_gps_disabled">Individuare il livello stradale (richiede più batteria e la vista del cielo)</string>
- <string name="location_label">Fornitore posizione:</string>
- <string name="location_neighborhood_level">Posizione determinata dalla reti mobili e/o Wi-Fi</string>
- <string name="location_network_based">Usa reti wireless</string>
- <string name="location_networks_disabled">Visualizza la posizione nelle applicazioni (ad esempio Mappe) utilizzando le reti wireless</string>
- <string name="location_source">Località</string>
- <string name="location_source_summary">Selezionare le origini per determinare la località</string>
- <string name="location_status">Stato:</string>
- <string name="location_street_level">Durante localizzazione, accuratezza a livello stradale (deselezionare per risparmiare batteria)</string>
- <string name="location_title">Fornti località</string>
- <string name="lock_example_message">Collegare almeno quattro punti.\n
- \nSelezionare \"Avanti\" quando si è pronti a creare il proprio codice.
- </string>
- <string name="lock_example_title">Codice di esempio</string>
- <string name="lock_settings_title">Codice blocco schermo</string>
- <string name="lock_title">Protezione del telefono</string>
- <string name="lockpattern_change_lock_pattern_label">Cambia codice di sblocco</string>
- <string name="lockpattern_confirm_button_text">Conferma</string>
- <string name="lockpattern_continue_button_text">Continua</string>
- <string name="lockpattern_need_to_confirm">Ridigitare il codice per confermare:</string>
- <string name="lockpattern_need_to_unlock">Conferma codice salvato:</string>
- <string name="lockpattern_need_to_unlock_wrong">Riprovare:</string>
- <string name="lockpattern_pattern_confirmed_header">Nuovo codice di sblocco:</string>
- <string name="lockpattern_pattern_entered_header">Codice registrato</string>
- <string name="lockpattern_recording_incorrect_too_short">Connettere ad almeno <xliff:g id="number">%d</xliff:g> punti. Riprovare:</string>
- <string name="lockpattern_recording_inprogress">Rilasciare il dito al termine.</string>
- <string name="lockpattern_recording_intro_footer">Premere Menu per visualizzare la Guida.</string>
- <string name="lockpattern_recording_intro_header">Digitare un codice di sblocco:</string>
- <string name="lockpattern_restart_button_text">Ridisegna</string>
- <string name="lockpattern_retry_button_text">Riprova</string>
- <string name="lockpattern_settings_change_lock_pattern">Cambia codice di sblocco</string>
- <string name="lockpattern_settings_choose_lock_pattern">Imposta codice di sblocco</string>
- <string name="lockpattern_settings_enable_summary">Digitare un codice per sbloccare lo schermo</string>
- <string name="lockpattern_settings_enable_title">Richiedi codice</string>
- <string name="lockpattern_settings_enable_visible_pattern_title">Usa codice visibile</string>
- <string name="lockpattern_settings_help_how_to_record">Procedura per la digitazione di un codice di sblocco:</string>
- <string name="lockpattern_settings_title">Codice di sblocco</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_footer">Riprovare tra <xliff:g id="number">%d</xliff:g> secondi.</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_header">Troppi tentativi errati</string>
- <string name="manage_applications_title">Gestisci applicazioni</string>
- <string name="manage_space_text">Gestisci spazio</string>
- <string name="manageapplications_settings_title">Gestisci applicazioni</string>
- <string name="mass_storage">Usa per dispositivo di memorizzazione USB</string>
- <string name="master_clear_button_text">Ripristina telefono</string>
- <string name="master_clear_desc">Questa azione consente di ripristinare i valori di fabbrica del telefono, cancellando tutti i dati e le applicazioni scaricate.</string>
- <string name="master_clear_failed">Nessun ripristino eseguito perché il servizio System Clear non è disponibile.</string>
- <string name="master_clear_final_button_text">Cancella tutto</string>
- <string name="master_clear_final_desc">Ripristinare il telefono, cancellando tutti i dati e le applicazioni? Questa azione è irreversibile.</string>
- <string name="master_clear_gesture_explanation">È necessario digitare un codice di sblocco per confermare un ripristino del telefono.</string>
- <string name="master_clear_gesture_prompt">Digitare il codice di sblocco:</string>
- <string name="master_clear_summary">Cancella tutti i dati sul telefono</string>
- <string name="master_clear_title">Ripristino dati di fabbrica</string>
- <string name="mb_text">MB</string>
- <string name="media_volume_summary">Imposta volume per musica e video</string>
- <string name="media_volume_title">Volume supporto</string>
- <string name="medium_font">Supporto</string>
- <string name="memory_available">Spazio disponibile</string>
- <string name="memory_size">Spazio totale</string>
- <string name="menu_cancel">Ignora</string>
- <string name="menu_delete">Elimina APN</string>
- <string name="menu_new">Nuovo APN</string>
- <string name="menu_save">Salva</string>
- <string name="model_number">Numero modello</string>
- <string name="network_settings_summary">Imposta le opzioni per roaming, reti e APN</string>
- <string name="network_settings_title">Reti mobili</string>
- <string name="networks">Selezione operatore</string>
- <string name="networks_title">Impostazioni rete</string>
- <string name="next_button_label">Avanti</string>
- <string name="next_label">Avanti</string>
- <string name="notification_sound_dialog_title">Seleziona suoneria notifica</string>
- <string name="notification_sound_summary">Imposta suoneria di notifica predefinita</string>
- <string name="notification_sound_title">Suoneria notifica</string>
- <string name="permissions_label">Autorizzazioni</string>
- <string name="phone_info_label">Informazioni telefono</string>
- <string name="phone_language">Seleziona lingua</string>
- <string name="ping_test_label">Esegui test ping</string>
- <string name="please_type_hex_key">Chiave esadecimale WEP (0-9, A-F)</string>
- <string name="please_type_passphrase">Password wireless</string>
- <string name="product_brand_label">Marchio prodotto</string>
- <string name="product_device_label">Tipo telefono</string>
- <string name="progress_scanning">Ricerca in corso</string>
- <string name="proxy_action_text">Salva</string>
- <string name="proxy_clear_text">Cancella</string>
- <string name="proxy_defaultView_text">Ripristina impostazioni predefinite</string>
- <string name="proxy_error">Attenzione</string>
- <string name="proxy_error_dismiss">OK</string>
- <string name="proxy_error_empty_host_set_port">Il campo della porta deve essere vuoto se il campo host è vuoto.</string>
- <string name="proxy_error_empty_port">È necessario completare il campo della porta.</string>
- <string name="proxy_error_invalid_host">Il nome dell'host immesso non è valido.</string>
- <string name="proxy_error_invalid_port">La porta specificata non è valida.</string>
- <string name="proxy_hostname_label">Nome host</string>
- <string name="proxy_port_label">Porta</string>
- <string name="proxy_settings_label">Impostazioni proxy</string>
- <string name="quick_launch_assign_application">Assegna applicazione</string>
- <string name="quick_launch_clear_cancel_button">Annulla</string>
- <string name="quick_launch_clear_dialog_message">Il collegamento per <xliff:g id="shortcut_letter">%1$s</xliff:g> (<xliff:g id="application_name">%2$s</xliff:g>) verrà cancellato.</string>
- <string name="quick_launch_clear_dialog_title">Cancella</string>
- <string name="quick_launch_clear_ok_button">OK</string>
- <string name="quick_launch_display_mode_applications">Applicazioni</string>
- <string name="quick_launch_display_mode_shortcuts">Collegamenti</string>
- <string name="quick_launch_no_shortcut">Nessun collegamento</string>
- <string name="quick_launch_shortcut">Cerca + <xliff:g id="shortcut_letter">%1$s</xliff:g></string>
- <string name="quick_launch_summary">Imposta scelte rapide da tastiera per avviare le applicazioni</string>
- <string name="quick_launch_title">Avvio rapido</string>
- <string name="radioInfo_cid">CID</string>
- <string name="radioInfo_data_connected">Connesso</string>
- <string name="radioInfo_data_connecting">Connessione in corso</string>
- <string name="radioInfo_data_disconnected">Disconnesso</string>
- <string name="radioInfo_data_suspended">Sospeso</string>
- <string name="radioInfo_display_asu">asu</string>
- <string name="radioInfo_display_bytes">byte</string>
- <string name="radioInfo_display_dbm">dBm</string>
- <string name="radioInfo_display_packets">pkts</string>
- <string name="radioInfo_lac">LAC</string>
- <string name="radioInfo_menu_disableData">Disabilita connessione dati</string>
- <string name="radioInfo_menu_disableDataOnBoot">Disabilita dati all'avvio</string>
- <string name="radioInfo_menu_enableData">Abilita connessione dati</string>
- <string name="radioInfo_menu_enableDataOnBoot">Abilita dati all'avvio</string>
- <string name="radioInfo_menu_getPDP">Ottieni elenco PDP</string>
- <string name="radioInfo_menu_viewADN">Visualizza Rubrica SIM</string>
- <string name="radioInfo_menu_viewFDN">Visualizza numeri dell'elenco numeri ammessi</string>
- <string name="radioInfo_menu_viewSDN">Visualizza numeri dell'elenco dei numeri di servizio</string>
- <string name="radioInfo_phone_idle">Inattivo</string>
- <string name="radioInfo_phone_offhook">Chiamata in corso</string>
- <string name="radioInfo_phone_ringing">Chiamata in corso</string>
- <string name="radioInfo_roaming_in">Roaming</string>
- <string name="radioInfo_roaming_not">Non roaming</string>
- <string name="radioInfo_service_emergency">Solo chiamate di emergenza</string>
- <string name="radioInfo_service_in">In servizio</string>
- <string name="radioInfo_service_off">Radio disattivata</string>
- <string name="radioInfo_service_out">Fuori servizio</string>
- <string name="radioInfo_unknown">sconosciuto</string>
- <string name="radio_controls_summary">Gestisci Wi-Fi, Bluetooth, modalità aereo e reti mobili</string>
- <string name="radio_controls_title">Controlli wireless</string>
- <string name="radio_info_band_mode_label">Seleziona banda radio</string>
- <string name="radio_info_call_redirect_label">Reindirizzamento chiamata:</string>
- <string name="radio_info_call_status_label">Stato chiamata:</string>
- <string name="radio_info_current_network_label">Rete corrente:</string>
- <string name="radio_info_data_attempts_label">Tentativi dati:</string>
- <string name="radio_info_data_successes_label">Dati riusciti:</string>
- <string name="radio_info_gprs_service_label">Servizio GPRS:</string>
- <string name="radio_info_gsm_disconnects_label">Disconnessioni GSM:</string>
- <string name="radio_info_gsm_service_label">Servizio GSM:</string>
- <string name="radio_info_http_client_test">Test client HTTP:</string>
- <string name="radio_info_imei_label">IMEI:</string>
- <string name="radio_info_imsi_label">IMSI:</string>
- <string name="radio_info_message_waiting_label">Messaggio in attesa:</string>
- <string name="radio_info_neighboring_location_label">CID adiacente:</string>
- <string name="radio_info_network_type_label">Tipo di rete:</string>
- <string name="radio_info_phone_number_label">Numero di telefono:</string>
- <string name="radio_info_ping_hostname">Nome host ping (www.google.com):</string>
- <string name="radio_info_ping_ipaddr">IpAddr ping:</string>
- <string name="radio_info_ppp_received_label">PPP ricevuto:</string>
- <string name="radio_info_ppp_resets_label">Numero di PPP reimpostati dall'avvio:</string>
- <string name="radio_info_ppp_sent_label">PPP inviato:</string>
- <string name="radio_info_radio_resets_label">Reimpostazioni radio:</string>
- <string name="radio_info_roaming_label">Roaming:</string>
- <string name="radio_info_set_perferred_label">Impostare il tipo di rete preferito:</string>
- <string name="radio_info_signal_location_label">Posizione:</string>
- <string name="radio_info_signal_strength_label">Intensità segnale:</string>
- <string name="radio_info_smsc_label">SMSC:</string>
- <string name="radio_info_smsc_refresh_label">Aggiorna</string>
- <string name="radio_info_smsc_update_label">Aggiorna</string>
- <string name="radio_info_toggle_ciph_label">Alterna cifratura</string>
- <string name="read_only">\u0020(Sola lettura)</string>
- <string name="recompute_size">Ricalcola dimensioni in corso\u2026</string>
- <string name="ring_volume_summary">Imposta volume per chiamate in ingresso</string>
- <string name="ring_volume_title">Volume suoneria</string>
- <string name="ringer_volume_instructions">Utilizzare i pulsanti del volume per regolare la suoneria</string>
- <string name="ringer_volume_ringer_mode_label">Modalità suoneria</string>
- <string name="ringer_volume_ringtone_label">Suoneria</string>
- <string name="ringer_volume_screen_increasing_text">Suoneria crescente</string>
- <string name="ringtone_summary">Imposta suoneria chiamata in ingresso predefinita</string>
- <string name="ringtone_title">Suoneria telefono</string>
- <string name="roaming">Roaming dati</string>
- <string name="roaming_disable">Impossibile connettersi ai servizi di dati durante il roaming</string>
- <string name="roaming_enable">Impossibile connettersi ai servizi di dati durante il roaming</string>
- <string name="roaming_reenable_message">Connessione dati perduta. La rete domestica con il roaming dei dati è stata lasciata disattivata.</string>
- <string name="roaming_reenable_title">Attenzione</string>
- <string name="roaming_turn_it_on_button">Attivarla</string>
- <string name="roaming_warning">Consentire il roaming dei dati? Può provocare l'aggiunta di notevoli spese per il roaming.</string>
- <string name="scan_wifi">Scansione</string>
- <string name="screen_off_timeout_label">Mai timeout quando sotto carica</string>
- <string name="screen_timeout">Timeout schermo</string>
- <string name="sd_card_settings_label">Scheda SD</string>
- <string name="sd_eject">Smonta/Espelli scheda SD</string>
- <string name="sd_memory">Scheda SD</string>
- <string name="sd_unavailable">Non disponibile</string>
- <string name="sdcard_changes_instructions">Le modifiche saranno effettive alla riconnessione del cavo USB</string>
- <string name="sdcard_removal_alert_ok">OK</string>
- <string name="sdcard_removal_alert_scolding">La scheda SD è stata rimossa quando ancora in uso.
- Per evitare di danneggiare la scheda, utilizzare la schermata Impostazioni della scheda SD per smontare la scheda prima della rimozione.</string>
- <string name="sdcard_removal_alert_title">Rimozione scheda SD non sicura</string>
- <string name="sdcard_setting">Scheda SD</string>
- <string name="sdcard_settings_available_bytes_label">Tipi disponibili:</string>
- <string name="sdcard_settings_bad_removal_status">La scheda SD è stata rimossa mentre ancora in uso.</string>
- <string name="sdcard_settings_mass_storage_status">La scheda SD è attualmente utilizzata da un dispositivo di memorizzazione di massa</string>
- <string name="sdcard_settings_not_present_status">Nessuna scheda SD</string>
- <string name="sdcard_settings_read_only_status">La scheda SD smontata è di sola lettura</string>
- <string name="sdcard_settings_scanning_status">Ricerca del supporto nella scheda SD\u2026</string>
- <string name="sdcard_settings_screen_mass_storage_text">Abilita dispositivo di memorizzazione di massa USB</string>
- <string name="sdcard_settings_total_bytes_label">Byte totali:</string>
- <string name="sdcard_settings_unmounted_status">È ora possibile rimuovere la scheda SD</string>
- <string name="sdcard_settings_used_bytes_label">Byte utilizzati:</string>
- <string name="sdcard_unmount">Smonta scheda SD</string>
- <string name="sdcard_unmountable_alert_ok">OK</string>
- <string name="sdcard_unmountable_alert_title">Scheda SD non leggibile</string>
- <string name="sdcard_unmountable_message">Impossibile leggere la scheda SD.
- Il file system può essere danneggiato o la scheda difettosa.</string>
- <string name="security">Protezione</string>
- <string name="security_and_data_label">Protezione e dati</string>
- <string name="security_passwords_title">Password</string>
- <string name="security_settings_desc">Specificare in questo campo il contenuto a cui può accedere l'applicazione sul telefono:</string>
- <string name="security_settings_summary">Località, sblocco schermo, blocco scheda SIM</string>
- <string name="security_settings_title">Protezione e ubicazione</string>
- <string name="select_your_language">Selezionare la lingua</string>
- <string name="set_lock_pattern_label">Digitare il codice di sblocco:</string>
- <string name="settings_chooser_pick_string">
- Inoltrare l'icona delle impostazioni a:
- </string>
- <string name="settings_label">Impostazioni</string>
- <string name="settings_license_activity_loading">Caricamento in corso\u2026</string>
- <string name="settings_license_activity_title">Apri licenze origine</string>
- <string name="settings_license_activity_unavailable">Si è verificato un problema nel caricamente delle licenze.</string>
- <string name="show_password">Password visibili</string>
- <string name="show_password_summary">Visualizza password durante la digitazione</string>
- <string name="signal">Intensità segnale</string>
- <string name="silent_mode_summary">Tutti i suoni eccetto quelli multimediali verranno disattivati</string>
- <string name="silent_mode_title">Modalità automatica</string>
- <string name="sim_bad_pin">PIN errato</string>
- <string name="sim_change_failed">Impossibile cambiare il PIN.\nÈ probabile che il PIN non sia corretto.</string>
- <string name="sim_change_pin">Cambia PIN SIM</string>
- <string name="sim_change_succeeded">PIN SIM cambiato</string>
- <string name="sim_disable_sim_lock">Disabilita blocco scheda SIM</string>
- <string name="sim_enable_sim_lock">Abilita blocco scheda SIM</string>
- <string name="sim_enter_cancel">Annulla</string>
- <string name="sim_enter_new">Digita nuovo PIN</string>
- <string name="sim_enter_ok">OK</string>
- <string name="sim_enter_old">Digita PIN precedente</string>
- <string name="sim_enter_pin">Digitare il PIN SIM</string>
- <string name="sim_lock_failed">Impossibile modificare lo stato di blocco della scheda SIM.\nÈ possibile che il PIN non sia corretto.</string>
- <string name="sim_lock_off">Richiede il PIN per utilizzare il telefono</string>
- <string name="sim_lock_on">Richiede il PIN per utilizzare il telefono</string>
- <string name="sim_lock_settings">Impostazioni blocco scheda SIM</string>
- <string name="sim_lock_settings_category">Configurazione blocco scheda SIM</string>
- <string name="sim_lock_settings_title">Blocco scheda SIM</string>
- <string name="sim_pin_change">Modifica codice PIN</string>
- <string name="sim_pin_toggle">Sblocca scheda SIM</string>
- <string name="sim_pins_dont_match">I PIN non corrispondono</string>
- <string name="sim_reenter_new">Reimmetti nuovo PIN</string>
- <string name="skip_button_label">Annulla</string>
- <string name="small_font">Piccolo</string>
- <string name="software_version">Versione software</string>
- <string name="sort_order_alpha">Ordine alfabetico</string>
- <string name="sort_order_size">Ordina per dimensioni (decrescente)</string>
- <string name="sound_and_display_settings">Suono e visualizzazione</string>
- <string name="sound_and_display_settings_summary">Imposta suonerie, notifiche e luminosità dello schermo</string>
- <string name="sound_effects_enable_summary_off">Riproduci audio quando si esegue una selezione schermo</string>
- <string name="sound_effects_enable_summary_on">Riproduci audio quando si esegue una selezione schermo</string>
- <string name="sound_effects_enable_title">Selezione sonora</string>
- <string name="sound_settings">Impostazioni audio</string>
- <string name="status_authenticating">Autenticazione in corso\u2026</string>
- <string name="status_awake_time">Tempo riattivazione</string>
- <string name="status_bt_address">Indirizzo Bluetooth</string>
- <string name="status_connected">Connesso</string>
- <string name="status_connecting">Connessione in corso\u2026</string>
- <string name="status_data_state">Accesso ai dati</string>
- <string name="status_disconnected">Disconnesso</string>
- <string name="status_disconnecting">Disconnessione in corso\u2026</string>
- <string name="status_failed">Non riuscito</string>
- <string name="status_imei">IMEI</string>
- <string name="status_imei_sv">IMEI SV</string>
- <string name="status_imsi">IMSI</string>
- <string name="status_network_type">Tipo di rete</string>
- <string name="status_number">Numero di telefono</string>
- <string name="status_obtaining_ip">Ottenimento indirizzo in corso\u2026</string>
- <string name="status_operator">Rete</string>
- <string name="status_roaming">Roaming</string>
- <string name="status_scanning">Scansione in corso\u2026</string>
- <string name="status_service_state">Stato servizio</string>
- <string name="status_signal_strength">Intensità segnale</string>
- <string name="status_unavailable">Non disponibile</string>
- <string name="status_up_time">Tempo di riattivazione</string>
- <string name="status_wifi_mac_address">Indirizzo MAC Wi-Fi</string>
- <string name="stay_on">Schermo sempre attivo quando sotto carica</string>
- <string name="storage_label">Dispositivo di memorizzazione</string>
- <string name="storage_settings_summary">Smontare la scheda SD, visualizzare il dispositivo di memorizzazione disponibile</string>
- <string name="storage_settings_title">Scheda SD e memoria telefono</string>
- <string name="sum_carrier_select">Selezionare un operatore di rete</string>
- <string name="summary_connection_failed">Connessione non riuscita, selezionare per riprovare</string>
- <string name="summary_not_in_range">Fuori intervallo</string>
- <string name="summary_remembered">Memorizzato</string>
- <string name="sync_automatically">Sincronizzazione automatica</string>
- <string name="sync_calendar">Calendario</string>
- <string name="sync_contacts">Contatti</string>
- <string name="sync_disabled">Selezionare per sincronizzare i dati automaticamente</string>
- <string name="sync_do_nothing">Non eseguire alcuna operazione per ora.</string>
- <string name="sync_enabled">Sincronizza dati automaticamente</string>
- <string name="sync_gmail">Gmail</string>
- <string name="sync_is_failing">La sincronizzazione presenta dei problemi. L'operazione verrà presto ripristinata.</string>
- <string name="sync_menu_sync_cancel">Annulla sincronizzazione</string>
- <string name="sync_menu_sync_now">Sincronizza ora</string>
- <string name="sync_really_delete">Eliminare gli elementi.</string>
- <string name="sync_settings">Sincronizzazione dati</string>
- <string name="sync_settings_summary">Scegliere le applicazioni sincronizzate</string>
- <string name="sync_too_many_deletes">Limite di eliminazioni superato</string>
- <string name="sync_too_many_deletes_desc">Esistono %d elementi eliminati per %s, account %s. Specificare l'operazione da eseguire.</string>
- <string name="sync_undo_deletes">Annullare le eliminazioni.</string>
- <string name="target_build_field_label">Tipo di build richiesta</string>
- <string name="team_title">Team</string>
- <string name="telephony_apn_label">APN:</string>
- <string name="telephony_mcc_label">MCC:</string>
- <string name="telephony_mmsc_label">MMSC:</string>
- <string name="telephony_mmsport_label">Porta MMS:</string>
- <string name="telephony_mmsproxy_label">Proxy MMS:</string>
- <string name="telephony_mnc_label">MNC:</string>
- <string name="telephony_name_label">Nome:</string>
- <string name="telephony_password_label">Password:</string>
- <string name="telephony_port_label">Porta:</string>
- <string name="telephony_proxy_label">Proxy:</string>
- <string name="telephony_server_label">Server:</string>
- <string name="telephony_user_label">Utente:</string>
- <string name="terms_title">Termini e condizioni</string>
- <string name="testing">Verifica in corso</string>
- <string name="testing_battery_info">Informazioni batteria</string>
- <string name="testing_phone_info">Informazioni sul telefono</string>
- <string name="testing_sim_toolkit">Kit di strumenti SIM</string>
- <string name="text_category">Impostazioni testo</string>
- <string name="total_size_label">Totale</string>
- <string name="turn_off_qxdm">Disabilita log SD QXDM</string>
- <string name="turn_off_radio">Disattiva radio</string>
- <string name="turn_on_qxdm">Abilita log SD QXDM</string>
- <string name="turn_on_radio">Attiva radio</string>
- <string name="underdeveloped_settings_label">Impostazioni ancora poco sviluppate</string>
- <string name="uninstall_failed">Impossibile disinstallare l'applicazione.</string>
- <string name="uninstall_text">Disinstalla</string>
- <string name="unknown">Sconosciuto</string>
- <string name="vibrate_summary">Vibrazione telefono per chiamate in ingresso</string>
- <string name="vibrate_title">Vibrazione telefono</string>
- <string name="wallpaper_label">Sfondo</string>
- <string name="wifi">Wi-Fi</string>
- <string name="wifi_access_points">Reti Wi-Fi</string>
- <string name="wifi_add_other_network">Aggiungere una rete Wi-Fi</string>
- <string name="wifi_context_menu_change_password">Cambia password</string>
- <string name="wifi_context_menu_connect">Connesso alla rete</string>
- <string name="wifi_context_menu_forget">Ignora rete</string>
- <string name="wifi_dhcp_timeout_error">Si è verificato un errore durante l'ottenimento di un indirizzo IP.</string>
- <string name="wifi_dns1">DNS 1</string>
- <string name="wifi_dns2">DNS 2</string>
- <string name="wifi_dns3">DNS 3</string>
- <string name="wifi_dns_label">dns:</string>
- <string name="wifi_error">Errore</string>
- <string name="wifi_gateway">Gateway</string>
- <string name="wifi_gateway_label">gateway:</string>
- <string name="wifi_generic_connection_error">Si è verificato un problema durante la connessione alla rete. Riprovare.</string>
- <string name="wifi_host_ip">ip host:</string>
- <string name="wifi_ip_address">Indirizzo IP</string>
- <string name="wifi_ip_settings_invalid_ip">Digitare un indirizzo IP valido.</string>
- <string name="wifi_ip_settings_menu_cancel">Annulla</string>
- <string name="wifi_ip_settings_menu_save">Salva</string>
- <string name="wifi_ip_settings_titlebar">Impostazioni IP</string>
- <string name="wifi_link_speed">Velocità</string>
- <string name="wifi_menu_advanced">Avanzate</string>
- <string name="wifi_netmask">Netmask</string>
- <string name="wifi_netmask_label">maschera di rete:</string>
- <string name="wifi_notify_open_networks">Notifica rete</string>
- <string name="wifi_notify_open_networks_summary">Notifica quando è disponibile una rete aperta</string>
- <string name="wifi_password_incorrect_error">La password di rete immessa non è corretta. Riprovare.</string>
- <string name="wifi_password_unchanged">(non modificato)</string>
- <string name="wifi_prefer_wifi">Preferisci Wi-Fi</string>
- <string name="wifi_quick_toggle_summary">Selezionare per attivare Wi-Fi</string>
- <string name="wifi_quick_toggle_title">Wi-Fi</string>
- <string name="wifi_save_config">Salva</string>
- <string name="wifi_screen_activate_text">Attiva</string>
- <string name="wifi_screen_dhcp_text">automatico</string>
- <string name="wifi_screen_dns_text">209.81.59.2</string>
- <string name="wifi_screen_gateway_text">192.168.20.1</string>
- <string name="wifi_screen_ip_text">192.168.20.10</string>
- <string name="wifi_screen_manual_text">manuale</string>
- <string name="wifi_screen_netmask_text">255.255.255.0</string>
- <string name="wifi_screen_status_text">Wi-Fi è in funzione</string>
- <string name="wifi_screen_test_text">Test</string>
- <string name="wifi_security">Protezione</string>
- <string name="wifi_security_open">Apri</string>
- <string name="wifi_security_unknown">Sconosciuto</string>
- <string name="wifi_security_verbose_open">Apri rete</string>
- <string name="wifi_security_verbose_wep">Protetto con WEP</string>
- <string name="wifi_security_verbose_wpa">Protetto con WPA</string>
- <string name="wifi_security_verbose_wpa2">Protetto con WPA2</string>
- <string name="wifi_security_wep">WEP</string>
- <string name="wifi_security_wpa">WPA</string>
- <string name="wifi_security_wpa2">WPA2</string>
- <string name="wifi_settings">Impostazioni Wi-Fi</string>
- <string name="wifi_settings_category">Impostazioni Wi-Fi</string>
- <string name="wifi_settings_summary">Configura e gestisci punti di accesso wireless</string>
- <string name="wifi_show_password">Visualizza password.</string>
- <string name="wifi_signal_0">Scarsa</string>
- <string name="wifi_signal_1">Mediocre</string>
- <string name="wifi_signal_2">Buona</string>
- <string name="wifi_signal_3">Eccellente</string>
- <string name="wifi_starting">Disattivazione in corso\u2026</string>
- <string name="wifi_status">Stato</string>
- <string name="wifi_stopping">Disattivazione in corso\u2026</string>
- <string name="wifi_type_ssid">Digitare il SSID della rete:</string>
- <string name="wifi_use_static_ip">Usa IP statico</string>
- <string name="wifi_wlan_id">id wlan:</string>
-</resources>
diff --git a/res/values-ja/arrays.xml b/res/values-ja/arrays.xml
new file mode 100644
index 0000000..46e7aed
--- /dev/null
+++ b/res/values-ja/arrays.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string-array name="timezone_filters">
+ <item>"アメリカ"</item>
+ <item>"ヨーロッパ"</item>
+ <item>"アフリカ"</item>
+ <item>"アジア"</item>
+ <item>"オーストラリア"</item>
+ <item>"太平洋"</item>
+ <item>"すべて"</item>
+ </string-array>
+ <string-array name="screen_timeout_entries">
+ <item>"15秒"</item>
+ <item>"30秒"</item>
+ <item>"1分"</item>
+ <item>"2分間"</item>
+ <item>"10分間"</item>
+ <item>"タイムアウトしない"</item>
+ </string-array>
+ <string-array name="wifi_security_entries">
+ <item>"自動"</item>
+ <item>"なし"</item>
+ <item>"WEP"</item>
+ <item>"WPA Personal"</item>
+ <item>"WPA2 Personal"</item>
+ </string-array>
+ <string-array name="wifi_security_without_auto_entries">
+ <item>"なし"</item>
+ <item>"WEP"</item>
+ <item>"WPA Personal"</item>
+ <item>"WPA2 Personal"</item>
+ </string-array>
+ <string-array name="wifi_wep_type">
+ <item>"自動"</item>
+ <item>"WEP ASCII"</item>
+ <item>"16進のWEP"</item>
+ </string-array>
+</resources>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
new file mode 100644
index 0000000..7c564ed
--- /dev/null
+++ b/res/values-ja/strings.xml
@@ -0,0 +1,729 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="device_info_default">"不明"</string>
+ <string name="device_info_uptime">"起動時間"</string>
+ <string name="device_info_awaketime">"使用時間"</string>
+ <string name="device_info_asleeptime">"スリープ時間"</string>
+ <string name="turn_on_radio">"無線通信をオン"</string>
+ <string name="turn_off_radio">"無線通信オフ"</string>
+ <string name="turn_on_qxdm">"QXDM SDログを有効にする"</string>
+ <string name="turn_off_qxdm">"QXDM SDログを無効にする"</string>
+ <string name="radioInfo_menu_viewADN">"SIMのアドレス帳を表示"</string>
+ <string name="radioInfo_menu_viewFDN">"固定ダイヤルを表示"</string>
+ <string name="radioInfo_menu_viewSDN">"サービス電話番号を表示"</string>
+ <string name="radioInfo_menu_getPDP">"PDPリストを取得"</string>
+ <string name="radioInfo_menu_enableData">"データ接続を有効にする"</string>
+ <string name="radioInfo_menu_disableData">"データ接続を無効にする"</string>
+ <string name="radioInfo_menu_enableDataOnBoot">"起動時にデータを有効にする"</string>
+ <string name="radioInfo_menu_disableDataOnBoot">"起動時にデータを無効にする"</string>
+ <string name="radioInfo_service_in">"使用中"</string>
+ <string name="radioInfo_service_out">"圏外"</string>
+ <string name="radioInfo_service_emergency">"緊急電話のみ"</string>
+ <string name="radioInfo_service_off">"無線通信オフ"</string>
+ <string name="radioInfo_roaming_in">"ローミング"</string>
+ <string name="radioInfo_roaming_not">"ローミングなし"</string>
+ <string name="radioInfo_phone_idle">"アイドル"</string>
+ <string name="radioInfo_phone_ringing">"着信中"</string>
+ <string name="radioInfo_phone_offhook">"通話中"</string>
+ <string name="radioInfo_data_disconnected">"切断"</string>
+ <string name="radioInfo_data_connecting">"接続中"</string>
+ <string name="radioInfo_data_connected">"接続"</string>
+ <string name="radioInfo_data_suspended">"強制停止"</string>
+ <string name="radioInfo_unknown">"不明"</string>
+ <string name="radioInfo_display_packets">"pkts"</string>
+ <string name="radioInfo_display_bytes">"バイト"</string>
+ <string name="radioInfo_display_dbm">"dBm"</string>
+ <string name="radioInfo_display_asu">"asu"</string>
+ <string name="radioInfo_lac">"LAC"</string>
+ <string name="radioInfo_cid">"CID"</string>
+ <string name="sdcard_unmount">"SDカードのマウント解除"</string>
+ <string name="small_font">"小"</string>
+ <string name="medium_font">"中"</string>
+ <string name="large_font">"大"</string>
+ <string name="font_size_save">"OK"</string>
+ <string name="sdcard_setting">"SDカード"</string>
+ <string name="screen_off_timeout_label">"充電中はタイムアウトにしない"</string>
+ <string name="stay_on">"充電中に画面をスリープにしない"</string>
+ <string name="app_launcher_newView_text">"新しいAppLauncher"</string>
+ <string name="battery_info_status_label">"バッテリステータス:"</string>
+ <string name="battery_info_scale_label">"バッテリ残量表示:"</string>
+ <string name="battery_info_level_label">"バッテリレベル:"</string>
+ <string name="battery_info_health_label">"バッテリの状態:"</string>
+ <string name="battery_info_technology_label">"バッテリ技術:"</string>
+ <string name="battery_info_voltage_label">"バッテリ電圧:"</string>
+ <string name="battery_info_voltage_units">"mV"</string>
+ <string name="battery_info_temperature_label">"バッテリ温度:"</string>
+ <string name="battery_info_temperature_units">"°C"</string>
+ <string name="battery_info_uptime">"起動してからの時間:"</string>
+ <string name="battery_info_awake_battery">"バッテリのアウェイク時間:"</string>
+ <string name="battery_info_awake_plugged">"充電時のアウェイク時間:"</string>
+ <string name="battery_info_screen_on">"画面をオンにした時刻:"</string>
+ <string name="battery_info_status_unknown">"不明"</string>
+ <string name="battery_info_status_charging">"充電中"</string>
+ <string name="battery_info_status_charging_ac">"(AC)"</string>
+ <string name="battery_info_status_charging_usb">"(USB)"</string>
+ <string name="battery_info_status_discharging">"放電中"</string>
+ <string name="battery_info_status_not_charging">"非充電中"</string>
+ <string name="battery_info_status_full">"フル"</string>
+ <string name="battery_info_health_unknown">"不明"</string>
+ <string name="battery_info_health_good">"良い"</string>
+ <string name="battery_info_health_overheat">"オーバーヒート"</string>
+ <string name="battery_info_health_dead">"残量なし"</string>
+ <string name="battery_info_health_over_voltage">"過電圧"</string>
+ <string name="battery_info_health_unspecified_failure">"不明なエラー"</string>
+ <string name="bluetooth">"Bluetooth"</string>
+ <string name="bluetooth_stopping">"Bluetoothを停止中..."</string>
+ <!-- no translation found for bluetooth_disabled (3281654100455454605) -->
+ <skip />
+ <!-- no translation found for bluetooth_enabled (314506563815464155) -->
+ <skip />
+ <string name="bluetooth_enabling">"Bluetoothをオンにしています..."</string>
+ <string name="bluetooth_visibility">"検出可能"</string>
+ <string name="bluetooth_is_discoverable">"<xliff:g id="DISCOVERABLE_TIME_PERIOD">%1$s</xliff:g>秒間検出可能..."</string>
+ <!-- no translation found for bluetooth_not_discoverable (128269993123955177) -->
+ <skip />
+ <string name="bluetooth_devices">"Bluetoothデバイス"</string>
+ <string name="bluetooth_device_name">"デバイス名"</string>
+ <string name="bluetooth_name_not_set">"名前が設定されていない場合、アカウント名を使用する"</string>
+ <string name="bluetooth_scan_for_devices">"デバイスのスキャン"</string>
+ <string name="bluetooth_clear_list">"デバイスリストをクリア"</string>
+ <!-- no translation found for bluetooth_disconnect_blank (8102076504922229274) -->
+ <skip />
+ <string name="bluetooth_connected">"接続"</string>
+ <!-- no translation found for bluetooth_disconnected (6557104142667339895) -->
+ <skip />
+ <!-- no translation found for bluetooth_disconnecting (8913264760027764974) -->
+ <skip />
+ <string name="bluetooth_connecting">"接続中..."</string>
+ <!-- no translation found for bluetooth_unknown (644716244548801421) -->
+ <skip />
+ <string name="bluetooth_not_connected">"このデバイスをペアに設定する"</string>
+ <string name="bluetooth_failed_to_enable">"Bluetoothをオンにできません"</string>
+ <string name="bluetooth_pairing">"ペアとして設定中..."</string>
+ <!-- no translation found for failed_to_pair (7648018965110976948) -->
+ <skip />
+ <!-- no translation found for failed_to_connect (4770209428036813667) -->
+ <skip />
+ <string name="bluetooth_paired">"ペア設定"</string>
+ <string name="bluetooth_paired_not_nearby">"ペア設定"</string>
+ <string name="bluetooth_device">"ハンズフリー/ヘッドセット"</string>
+ <string name="bluetooth_disconnect">"接続を解除"</string>
+ <string name="bluetooth_connect">"接続"</string>
+ <string name="bluetooth_unpair">"ペアを解除"</string>
+ <string name="bluetooth_pair">"ペアに設定"</string>
+ <string name="progress_scanning">"スキャン中"</string>
+ <string name="bluetooth_notif_ticker">"Bluetoothペア設定リクエスト"</string>
+ <!-- no translation found for bluetooth_notif_title (2485175521845371514) -->
+ <skip />
+ <string name="bluetooth_notif_message">"ペアとして設定"</string>
+ <string name="date_and_time">"日付と時刻の設定"</string>
+ <string name="date_time_12_hour_sample">"1:00 PM"</string>
+ <string name="date_time_24_hour_sample">"13:00"</string>
+ <string name="choose_timezone">"タイムゾーンの選択"</string>
+ <string name="display_preview_label">"プレビュー:"</string>
+ <string name="display_font_size_label">"フォントサイズ:"</string>
+ <!-- no translation found for intent_sender_data_label (6332324780477289261) -->
+ <skip />
+ <string name="intent_sender_sendbroadcast_text">"<xliff:g id="BROADCAST">broadcast</xliff:g>を配信"</string>
+ <string name="intent_sender_action_label">"<xliff:g id="ACTION">Action</xliff:g>:"</string>
+ <string name="intent_sender_startactivity_text">"<xliff:g id="ACTIVITY">activity</xliff:g>を開始"</string>
+ <string name="intent_sender_resource_label">"<xliff:g id="RESOURCE">Resource</xliff:g>:"</string>
+ <string name="intent_sender_account_label">"アカウント:"</string>
+ <string name="keyguard_pw_mod_text">"ロックパターンの選択"</string>
+ <string name="keyguard_pin_mod_text">"PINの変更"</string>
+ <string name="keyguard_label">"キーガード"</string>
+ <string name="keyguard_sim_pin_label">"SIM PIN"</string>
+ <string name="keyguard_password_old_password_error_text">"入力した古いパスワードは正しくありません。再入力してください。"</string>
+ <string name="keyguard_password_button_text">"OK"</string>
+ <string name="keyguard_password_confirm_new_label">"新しいパスワードの確認入力:"</string>
+ <string name="keyguard_password_new_label">"新しいパスワード:"</string>
+ <string name="keyguard_password_old_label">"古いパスワード:"</string>
+ <string name="keyguard_password_mismatch_error_text">"2つのパスワードが一致しません。再入力してください。"</string>
+ <string name="proxy_clear_text">"クリア"</string>
+ <string name="proxy_port_label">"ポート"</string>
+ <string name="proxy_defaultView_text">"デフォルトに戻す"</string>
+ <string name="proxy_action_text">"保存"</string>
+ <string name="proxy_hostname_label">"ホスト名"</string>
+ <string name="proxy_error">"注意"</string>
+ <string name="proxy_error_dismiss">"OK"</string>
+ <string name="proxy_error_invalid_host">"入力したホスト名は無効です。"</string>
+ <string name="proxy_error_empty_port">"[ポート]フィールドに入力してください。"</string>
+ <string name="proxy_error_empty_host_set_port">"[ホスト]フィールドが空の場合は、[ポート]フィールドも空にしてください。"</string>
+ <string name="proxy_error_invalid_port">"入力したポートは無効です。"</string>
+ <string name="radio_info_signal_location_label">"位置:"</string>
+ <string name="radio_info_neighboring_location_label">"近くのCID:"</string>
+ <string name="radio_info_data_attempts_label">"データの試行:"</string>
+ <string name="radio_info_imsi_label">"IMSI:"</string>
+ <string name="radio_info_gprs_service_label">"GPRSサービス:"</string>
+ <string name="radio_info_roaming_label">"ローミング:"</string>
+ <string name="radio_info_imei_label">"IMEI:"</string>
+ <string name="radio_info_call_redirect_label">"通話のリダイレクト:"</string>
+ <string name="radio_info_ppp_resets_label">"ブート後のPPPリセット回数:"</string>
+ <string name="radio_info_gsm_disconnects_label">"GSM切断:"</string>
+ <string name="radio_info_current_network_label">"現在のネットワーク:"</string>
+ <string name="radio_info_data_successes_label">"データ成功:"</string>
+ <string name="radio_info_ppp_received_label">"PPP受信:"</string>
+ <string name="radio_info_gsm_service_label">"GSMサービス:"</string>
+ <string name="radio_info_signal_strength_label">"信号の状態:"</string>
+ <string name="radio_info_call_status_label">"通話ステータス:"</string>
+ <string name="radio_info_ppp_sent_label">"PPP送信:"</string>
+ <string name="radio_info_radio_resets_label">"無線通信のリセット:"</string>
+ <string name="radio_info_message_waiting_label">"メッセージ待機中:"</string>
+ <string name="radio_info_phone_number_label">"電話番号:"</string>
+ <string name="radio_info_band_mode_label">"無線バンドを選択"</string>
+ <string name="radio_info_network_type_label">"ネットワークタイプ:"</string>
+ <string name="radio_info_set_perferred_label">"優先ネットワークタイプを設定"</string>
+ <string name="radio_info_ping_ipaddr">"IPアドレスのPing:"</string>
+ <string name="radio_info_ping_hostname">"ホスト名 (www.google.co.jp) のPing:"</string>
+ <string name="radio_info_http_client_test">"HTTPクライアントテスト:"</string>
+ <string name="radio_info_toggle_ciph_label">"暗号化の切り替え"</string>
+ <string name="ping_test_label">"pingテストの実行"</string>
+ <string name="radio_info_smsc_label">"SMSC:"</string>
+ <string name="radio_info_smsc_update_label">"更新"</string>
+ <string name="radio_info_smsc_refresh_label">"更新"</string>
+ <string name="band_mode_title">"GSM/UMTSバンドの設定"</string>
+ <string name="band_mode_loading">"バンドリストを読み込み中..."</string>
+ <string name="band_mode_set">"設定"</string>
+ <string name="band_mode_failed">"失敗"</string>
+ <string name="band_mode_succeeded">"成功"</string>
+ <string name="ringer_volume_ringer_mode_label">"着信音のモード"</string>
+ <string name="ringer_volume_screen_increasing_text">"音量を徐々にアップ"</string>
+ <string name="ringer_volume_ringtone_label">"着信音"</string>
+ <string name="ringer_volume_instructions">"音量ボタンで着信音の音量を調整します"</string>
+ <string name="sdcard_changes_instructions">"USBケーブルの再接続時に変更が有効になります"</string>
+ <string name="sdcard_settings_screen_mass_storage_text">"USBマスストレージを有効にする"</string>
+ <string name="sdcard_settings_total_bytes_label">"合計バイト数:"</string>
+ <string name="sdcard_settings_not_present_status">"SDカードがありません"</string>
+ <string name="sdcard_settings_available_bytes_label">"利用可能バイト数:"</string>
+ <string name="sdcard_settings_mass_storage_status">"SDカードをマスストレージデバイスとして使用中"</string>
+ <string name="sdcard_settings_unmounted_status">"SDカードを安全に取り外せます"</string>
+ <string name="sdcard_settings_bad_removal_status">"SDカードが使用中に取り外されました。"</string>
+ <string name="sdcard_settings_used_bytes_label">"使用済みバイト数:"</string>
+ <string name="sdcard_settings_scanning_status">"メディア用のSDカードをスキャン中..."</string>
+ <string name="sdcard_settings_read_only_status">"読み取り専用としてSDカードをマウントしました"</string>
+ <string name="sdcard_removal_alert_title">"安全でないSDカードの取り外し"</string>
+ <string name="sdcard_unmountable_alert_title">"SDカードが読み取れません"</string>
+ <string name="telephony_user_label">"ユーザー:"</string>
+ <string name="telephony_server_label">"サーバー:"</string>
+ <string name="telephony_name_label">"名前:"</string>
+ <string name="telephony_mmsc_label">"MMSC:"</string>
+ <string name="telephony_apn_label">"APN:"</string>
+ <string name="telephony_mcc_label">"MCC:"</string>
+ <string name="telephony_port_label">"ポート:"</string>
+ <string name="telephony_password_label">"パスワード:"</string>
+ <string name="telephony_proxy_label">"プロキシ:"</string>
+ <string name="telephony_mnc_label">"MNC:"</string>
+ <string name="telephony_mmsproxy_label">"MMSプロキシ:"</string>
+ <string name="telephony_mmsport_label">"MMSポート:"</string>
+ <string name="next_label">"次へ"</string>
+ <string name="language_picker_title">"ロケール"</string>
+ <string name="select_your_language">"言語を選択"</string>
+ <string name="activity_picker_label">"操作の選択"</string>
+ <string name="device_info_label">"デバイス情報"</string>
+ <string name="battery_info_label">"バッテリ情報"</string>
+ <string name="display_label">"表示"</string>
+ <string name="phone_info_label">"携帯電話情報"</string>
+ <string name="sd_card_settings_label">"SDカード"</string>
+ <string name="proxy_settings_label">"プロキシ設定"</string>
+ <string name="cancel">"キャンセル"</string>
+ <string name="settings_label">"設定"</string>
+ <string name="airplane_mode">"機内モード"</string>
+ <!-- no translation found for airplane_mode_summary (3154817401368780988) -->
+ <skip />
+ <string name="airplane_mode_turning_on">"ワイヤレス接続を無効にしています..."</string>
+ <string name="airplane_mode_turning_off">"ワイヤレス接続を有効にしています..."</string>
+ <string name="radio_controls_title">"ワイヤレス制御"</string>
+ <string name="radio_controls_summary">"Wi-Fi、Bluetooth、機内モード、モバイルネットワークを管理"</string>
+ <string name="date_and_time_settings_title">"日付と時刻"</string>
+ <string name="date_and_time_settings_summary">"日付、時刻、タイムゾーン、形式を設定する"</string>
+ <string name="date_time_auto">"自動"</string>
+ <string name="date_time_auto_summaryOn">"ネットワーク指定の値を使用"</string>
+ <string name="date_time_auto_summaryOff">"ネットワーク指定の値を使用"</string>
+ <string name="date_time_24hour">"24時間表示を使用"</string>
+ <string name="date_time_set_time">"時刻を設定"</string>
+ <!-- no translation found for date_time_set_timezone (5045627174274377814) -->
+ <skip />
+ <string name="date_time_set_date">"日付を設定"</string>
+ <string name="date_time_date_format">"日付の形式を選択"</string>
+ <!-- no translation found for zone_list_menu_sort_alphabetically (5683377702671088588) -->
+ <skip />
+ <!-- no translation found for zone_list_menu_sort_by_timezone (2720190443744884114) -->
+ <skip />
+ <string name="security_settings_title">"セキュリティと位置"</string>
+ <!-- no translation found for security_settings_summary (8145883103362174000) -->
+ <skip />
+ <string name="security_passwords_title">"パスワード"</string>
+ <string name="bluetooth_quick_toggle_title">"Bluetooth"</string>
+ <!-- no translation found for bluetooth_quick_toggle_summary (5293641680139873341) -->
+ <skip />
+ <string name="bluetooth_settings">"Bluetooth設定"</string>
+ <string name="bluetooth_settings_title">"Bluetooth設定"</string>
+ <string name="bluetooth_settings_summary">"接続を管理、デイバイス名を設定、検出可能に設定"</string>
+ <!-- no translation found for bluetooth_pin_entry (5627349871303455279) -->
+ <skip />
+ <string name="bluetooth_device_info">"Bluetoothデバイス情報"</string>
+ <string name="bluetooth_pairing_msg">"ペアとして設定中..."</string>
+ <!-- no translation found for bluetooth_enter_pin_msg (7551139612735632370) -->
+ <skip />
+ <!-- no translation found for bluetooth_error_title (538287072376677166) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing_error_message (2852744547246910349) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing_alternate_error_message (1731286765420671521) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing_pin_error_message (6938408362011024289) -->
+ <skip />
+ <!-- no translation found for bluetooth_connecting_error_message (1779660510084746802) -->
+ <skip />
+ <string name="bluetooth_new_data">"新しいデータの入力"</string>
+ <string name="bluetooth_new_data_confirm">"OK"</string>
+ <string name="bluetooth_new_data_cancel">"キャンセル"</string>
+ <string name="bluetooth_scan_for_new_devices">"新しいデバイスのスキャン中..."</string>
+ <string name="bluetooth_discoverability_panel_title">"携帯電話側で設定..."</string>
+ <string name="bluetooth_discoverable">"<xliff:g id="DISCOVERABLE_TIME_PERIOD">%1$s</xliff:g>秒間検出可能"</string>
+ <string name="bluetooth_connectable">"接続可能時のみ"</string>
+ <string name="bluetooth_neither">"検出できないか、接続できません"</string>
+ <!-- no translation found for bluetooth_preference_scan_title (2277464653118896016) -->
+ <skip />
+ <!-- no translation found for bluetooth_preference_scan_summary (2368330460781052669) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect (3997659895003244941) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect (8220072022970148683) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_pair_connect (7611522504813927727) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_unpair (662992425948536144) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect_unpair (7644014238070043798) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect_advanced (2643129703569788771) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect_specific_profiles_title (6952214406025825164) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_a2dp (3259633293424539529) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_headset (1874975688666658946) -->
+ <skip />
+ <!-- no translation found for bluetooth_summary_connected_to_a2dp (510833839847758664) -->
+ <skip />
+ <!-- no translation found for bluetooth_summary_connected_to_headset (4876496372728623918) -->
+ <skip />
+ <!-- no translation found for bluetooth_summary_connected_to_a2dp_headset (3045032710457800891) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_advanced_title (528816860793581131) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_advanced_online_mode_title (3689050071425683114) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_advanced_online_mode_summary (1204424107263248336) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_advanced_profile_header_title (3764437426089639639) -->
+ <skip />
+ <!-- no translation found for bluetooth_a2dp_profile_summary_connected (963376081347721598) -->
+ <skip />
+ <!-- no translation found for bluetooth_headset_profile_summary_connected (7661070206715520671) -->
+ <skip />
+ <!-- no translation found for bluetooth_a2dp_profile_summary_use_for (4630849022250168427) -->
+ <skip />
+ <!-- no translation found for bluetooth_headset_profile_summary_use_for (8705753622443862627) -->
+ <skip />
+ <string name="wifi">"Wi-Fi"</string>
+ <string name="wifi_quick_toggle_title">"Wi-Fi"</string>
+ <!-- no translation found for wifi_quick_toggle_summary (1047950931623694366) -->
+ <skip />
+ <string name="wifi_settings">"Wi-Fi設定"</string>
+ <string name="wifi_settings_category">"Wi-Fi設定"</string>
+ <string name="wifi_settings_summary">"ワイヤレスアクセスポイントの設定、管理"</string>
+ <string name="forget_network">"切断"</string>
+ <string name="wifi_status">"ステータス"</string>
+ <string name="wifi_link_speed">"速度"</string>
+ <string name="wifi_signal_3">"非常に良い"</string>
+ <string name="wifi_signal_2">"良い"</string>
+ <string name="wifi_signal_1">"普通"</string>
+ <string name="wifi_signal_0">"悪い"</string>
+ <string name="security">"セキュリティ"</string>
+ <string name="wifi_security_open">"オープン"</string>
+ <string name="wifi_security_wep">"WEP"</string>
+ <string name="wifi_security_wpa">"WPA"</string>
+ <string name="wifi_security_wpa2">"WPA2"</string>
+ <string name="wifi_security_unknown">"不明"</string>
+ <string name="wifi_security_verbose_open">"オープンネットワーク"</string>
+ <string name="wifi_security_verbose_wep">"WEPにより保護"</string>
+ <string name="wifi_security_verbose_wpa">"WPAにより保護"</string>
+ <string name="wifi_security_verbose_wpa2">"WPA2により保護"</string>
+ <string name="ip_address">"IPアドレス"</string>
+ <string name="signal">"信号の状態"</string>
+ <string name="wifi_starting">"オンにしています..."</string>
+ <string name="wifi_stopping">"オフにしています..."</string>
+ <string name="wifi_error">"エラー"</string>
+ <string name="error_starting">"Wi-Fiを開始できません"</string>
+ <string name="error_stopping">"Wi-Fiを停止できません"</string>
+ <string name="error_scanning">"ネットワークをスキャンできません"</string>
+ <string name="error_connecting">"ネットワークに接続できません"</string>
+ <string name="error_saving">"ネットワークを保存できません"</string>
+ <string name="connect">"接続"</string>
+ <string name="connect_to_blank">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g>に接続"</string>
+ <string name="please_type_passphrase">"ワイヤレス用パスワード"</string>
+ <string name="please_type_hex_key">"WEPの16進キー (0~9、A~F)"</string>
+ <string name="wifi_show_password">"パスワードを表示"</string>
+ <string name="scan_wifi">"スキャン"</string>
+ <string name="summary_not_in_range">"圏外"</string>
+ <string name="summary_remembered">"これまでの設定"</string>
+ <string name="summary_connection_failed">"接続できませんでした。選択すると再試行します。"</string>
+ <string name="wifi_access_points">"Wi-Fiネットワーク"</string>
+ <!-- no translation found for wifi_type_ssid (1326839657083292017) -->
+ <skip />
+ <string name="wifi_security">"セキュリティ"</string>
+ <string name="wifi_save_config">"保存"</string>
+ <string name="wifi_password_unchanged">"(変更なし)"</string>
+ <!-- no translation found for wifi_add_other_network (5499063300755575893) -->
+ <skip />
+ <string name="wifi_notify_open_networks">"ネットワークの通知"</string>
+ <string name="wifi_notify_open_networks_summary">"オープンネットワークが利用可能なときに通知する"</string>
+ <string name="wifi_password_incorrect_error">"入力したネットワークパスワードは正しくありません。再入力してください。"</string>
+ <string name="wifi_generic_connection_error">"ネットワーク接続に問題があります。もう一度試してください。"</string>
+ <string name="wifi_menu_advanced">"詳細設定"</string>
+ <string name="wifi_ip_settings_titlebar">"IP設定"</string>
+ <string name="wifi_ip_settings_menu_save">"保存"</string>
+ <string name="wifi_ip_settings_menu_cancel">"キャンセル"</string>
+ <string name="wifi_ip_settings_invalid_ip">"正しいIPアドレスを入力してください。"</string>
+ <string name="wifi_use_static_ip">"静的IPを使用"</string>
+ <string name="wifi_ip_address">"IPアドレス"</string>
+ <string name="wifi_dns1">"DNS 1"</string>
+ <string name="wifi_dns2">"DNS 2"</string>
+ <string name="wifi_gateway">"ゲートウェイ"</string>
+ <string name="wifi_netmask">"ネットマスク"</string>
+ <string name="wifi_context_menu_connect">"ネットワークに接続"</string>
+ <string name="wifi_context_menu_forget">"ネットワークへの接続を解除"</string>
+ <string name="wifi_context_menu_change_password">"パスワードを変更"</string>
+ <string name="wifi_advanced_titlebar">"詳細設定"</string>
+ <string name="wifi_setting_num_channels_title">"規制領域"</string>
+ <string name="wifi_setting_num_channels_summary">"使用するチャンネルの番号を設定する"</string>
+ <string name="wifi_setting_num_channels_error">"規制領域の設定で問題が発生しました。"</string>
+ <string name="wifi_setting_num_channels_channel_phrase">"チャンネル数<xliff:g id="NUM_CHANNELS">%1$d</xliff:g>件"</string>
+ <!-- no translation found for wifi_advanced_mac_address_title (6571335466330978393) -->
+ <skip />
+ <string name="fragment_status_scanning">"スキャン中..."</string>
+ <string name="fragment_status_connecting">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g>に接続中..."</string>
+ <string name="fragment_status_authenticating">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g>による認証中..."</string>
+ <string name="fragment_status_obtaining_ip">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g>からIPアドレスを取得中..."</string>
+ <string name="fragment_status_connected">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g>に接続しました"</string>
+ <string name="fragment_status_disconnecting">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g>から切断中..."</string>
+ <string name="fragment_status_disconnected">"切断"</string>
+ <string name="fragment_status_failed">"失敗"</string>
+ <string name="status_scanning">"スキャン中..."</string>
+ <string name="status_connecting">"接続中..."</string>
+ <string name="status_authenticating">"認証中..."</string>
+ <string name="status_obtaining_ip">"アドレスを取得中..."</string>
+ <string name="status_connected">"接続"</string>
+ <string name="status_disconnecting">"切断中..."</string>
+ <string name="status_disconnected">"切断"</string>
+ <string name="status_failed">"失敗"</string>
+ <string name="sound_and_display_settings">"音と表示"</string>
+ <string name="sound_settings">"音の設定"</string>
+ <string name="sound_and_display_settings_summary">"着信音、通知、画面の輝度を設定する"</string>
+ <string name="silent_mode_title">"マナーモード"</string>
+ <!-- no translation found for silent_mode_summary (9081534746589616108) -->
+ <skip />
+ <string name="ringtone_title">"着信音"</string>
+ <string name="ringtone_summary">"デフォルトの着信音を設定"</string>
+ <string name="ring_volume_title">"着信音の音量"</string>
+ <!-- no translation found for ring_volume_summary (8370699933709381329) -->
+ <skip />
+ <string name="vibrate_title">"携帯電話を振動"</string>
+ <string name="vibrate_summary">"着信時に携帯電話を振動"</string>
+ <string name="notification_sound_title">"通知音"</string>
+ <string name="notification_sound_summary">"デフォルトの通知音を設定する"</string>
+ <!-- no translation found for incoming_call_volume_title (6144314834963494752) -->
+ <skip />
+ <!-- no translation found for notification_volume_title (3363351773121138717) -->
+ <skip />
+ <!-- no translation found for checkbox_notification_same_as_incoming_call (1073644356290338921) -->
+ <skip />
+ <string name="notification_sound_dialog_title">"通知音を選択"</string>
+ <string name="media_volume_title">"メディアの音量"</string>
+ <string name="media_volume_summary">"音楽と動画の音量を設定"</string>
+ <string name="dtmf_tone_enable_title">"タッチの効果音"</string>
+ <string name="dtmf_tone_enable_summary_on">"ダイヤルパッドの使用時に音を鳴らす"</string>
+ <string name="dtmf_tone_enable_summary_off">"ダイヤルパッドの使用時に音を鳴らす"</string>
+ <string name="sound_effects_enable_title">"選択の効果音"</string>
+ <string name="sound_effects_enable_summary_on">"画面での選択時に音を鳴らす"</string>
+ <string name="sound_effects_enable_summary_off">"画面での選択時に音を鳴らす"</string>
+ <string name="sync_settings">"データの同期化"</string>
+ <string name="sync_settings_summary">"同期するアプリケーションを選択"</string>
+ <!-- no translation found for sync_settings_header_general_settings (1940413055002651212) -->
+ <skip />
+ <!-- no translation found for sync_settings_header_application_settings (7055646124074397344) -->
+ <skip />
+ <string name="sync_too_many_deletes">"削除の制限を超えました"</string>
+ <string name="sync_automatically">"自動同期化"</string>
+ <string name="sync_enabled">"自動的にデータを同期"</string>
+ <string name="sync_disabled">"自動的にデータを同期"</string>
+ <string name="sync_menu_sync_now">"今すぐ同期"</string>
+ <string name="sync_menu_sync_cancel">"同期をキャンセル"</string>
+ <string name="sync_gmail">"Gmail"</string>
+ <string name="sync_calendar">"カレンダー"</string>
+ <string name="sync_contacts">"連絡先"</string>
+ <string name="sync_too_many_deletes_desc">"アカウント「<xliff:g id="ACCOUNT_NAME">%3$s</xliff:g>」で<xliff:g id="TYPE_OF_SYNC">%2$s</xliff:g>の<xliff:g id="NUMBER_OF_DELETED_ITEMS">%1$d</xliff:g>個の項目が削除されています。処理を選択してください。"</string>
+ <string name="sync_really_delete">"項目を削除します。"</string>
+ <string name="sync_undo_deletes">"削除を元に戻します。"</string>
+ <string name="sync_do_nothing">"今は何もしません。"</string>
+ <string name="sync_is_failing">"現在同期で問題が発生しています。しばらくお待ちください。"</string>
+ <string name="sync_plug"><font fgcolor="#ffffffff">"Google Syncへようこそ"</font>" "\n"このサービスを使用すると、データを同期して、どこからでも連絡先や予定などにアクセスできます。"</string>
+ <string name="display_settings">"表示設定"</string>
+ <!-- no translation found for animations_title (1062189037402346023) -->
+ <skip />
+ <!-- no translation found for animations_summary_on (5690787466633824737) -->
+ <skip />
+ <!-- no translation found for animations_summary_off (8847573219383668092) -->
+ <skip />
+ <string name="brightness">"輝度"</string>
+ <string name="screen_timeout">"画面のタイムアウト"</string>
+ <string name="dim_screen">"画面を暗くする"</string>
+ <string name="sim_lock_settings">"SIMカードのロック設定"</string>
+ <string name="sim_lock_settings_category">"SIMカードのロックを設定"</string>
+ <string name="sim_lock_settings_title">"SIMカードのロック"</string>
+ <string name="sim_pin_toggle">"SIMカードをロック"</string>
+ <string name="sim_lock_on">"携帯電話の使用にPINを要求"</string>
+ <string name="sim_lock_off">"携帯電話の使用にPINを要求"</string>
+ <!-- no translation found for sim_pin_change (6311414184279932368) -->
+ <skip />
+ <!-- no translation found for sim_enter_pin (6608715137008508432) -->
+ <skip />
+ <!-- no translation found for sim_enable_sim_lock (4517742794997166918) -->
+ <skip />
+ <!-- no translation found for sim_disable_sim_lock (7664729528754784824) -->
+ <skip />
+ <!-- no translation found for sim_enter_old (6074196344494634348) -->
+ <skip />
+ <!-- no translation found for sim_enter_new (8742727032729243562) -->
+ <skip />
+ <string name="sim_reenter_new">"新しいPINを再入力"</string>
+ <!-- no translation found for sim_change_pin (7328607264898359112) -->
+ <skip />
+ <string name="sim_bad_pin">"PINが正しくありません。"</string>
+ <string name="sim_pins_dont_match">"PINが一致しません。"</string>
+ <string name="sim_change_failed">"PINを変更できません。"\n"PINが正しくない可能性があります。"</string>
+ <string name="sim_change_succeeded">"SIM PINが変更されました"</string>
+ <string name="sim_lock_failed">"SIMカードのロック状態を変更できません。"\n"PINが正しくない可能性があります。"</string>
+ <string name="sim_enter_ok">"OK"</string>
+ <string name="sim_enter_cancel">"キャンセル"</string>
+ <string name="device_info_settings">"携帯電話のステータス"</string>
+ <string name="system_update_settings_list_item_title">"システムアップデート"</string>
+ <string name="system_update_settings_list_item_summary">"システムのアップデートをチェックする"</string>
+ <string name="firmware_version">"ファームウェアのバージョン"</string>
+ <string name="model_number">"モデル番号"</string>
+ <string name="baseband_version">"ベースバンドのバージョン"</string>
+ <string name="kernel_version">"カーネルのバージョン"</string>
+ <string name="build_number">"ビルド番号"</string>
+ <string name="device_info_not_available">"該当なし"</string>
+ <string name="device_status_activity_title">"ステータス"</string>
+ <string name="device_status">"ステータス"</string>
+ <string name="device_status_summary">"IMEI、電話番号、信号など"</string>
+ <string name="storage_settings_title">"SDカードと携帯電話のメモリ"</string>
+ <string name="storage_settings_summary">"SDカードのマウントを解除し、利用可能な容量を表示する"</string>
+ <string name="status_number">"電話番号"</string>
+ <string name="status_network_type">"ネットワークタイプ"</string>
+ <string name="status_data_state">"データアクセス"</string>
+ <string name="status_service_state">"サービスの状態"</string>
+ <string name="status_signal_strength">"信号の状態"</string>
+ <string name="status_roaming">"ローミング"</string>
+ <string name="status_operator">"ネットワーク"</string>
+ <string name="status_wifi_mac_address">"Wi-Fi MACアドレス"</string>
+ <string name="status_bt_address">"Bluetoothアドレス"</string>
+ <string name="status_unavailable">"不明"</string>
+ <string name="status_up_time">"稼働時間"</string>
+ <string name="status_awake_time">"使用時間"</string>
+ <string name="internal_memory">"携帯電話内部メモリ"</string>
+ <string name="sd_memory">"SDカード"</string>
+ <string name="memory_available">"空き容量"</string>
+ <string name="memory_size">"合計容量"</string>
+ <string name="sd_eject">"SDカードをマウント解除/取り出す"</string>
+ <string name="sd_unavailable">"使用不可"</string>
+ <string name="read_only">"(読み取り専用)"</string>
+ <string name="battery_status_title">"バッテリの状態"</string>
+ <string name="battery_level_title">"バッテリレベル:"</string>
+ <string name="apn_settings">"APN"</string>
+ <string name="apn_edit">"アクセスポイントの編集"</string>
+ <string name="apn_not_set">"&lt;未設定&gt;"</string>
+ <string name="apn_name">"名前"</string>
+ <string name="apn_apn">"APN"</string>
+ <string name="apn_http_proxy">"プロキシ"</string>
+ <string name="apn_http_port">"ポート"</string>
+ <string name="apn_user">"ユーザー名"</string>
+ <string name="apn_password">"パスワード"</string>
+ <string name="apn_server">"サーバー"</string>
+ <string name="apn_mmsc">"MMSC"</string>
+ <string name="apn_mms_proxy">"MMSプロキシ"</string>
+ <string name="apn_mms_port">"MMSポート"</string>
+ <string name="apn_mcc">"MCC"</string>
+ <string name="apn_mnc">"MNC"</string>
+ <string name="apn_type">"APNタイプ"</string>
+ <string name="menu_delete">"APNを削除"</string>
+ <string name="menu_new">"新しいAPN"</string>
+ <string name="menu_save">"保存"</string>
+ <string name="menu_cancel">"破棄"</string>
+ <string name="error_title">"注意"</string>
+ <string name="error_name_empty">"[名前]フィールドは空白にできません。"</string>
+ <string name="error_apn_empty">"APNを空にできません。"</string>
+ <string name="error_mcc_not3">"MCCのフィールドには3桁で指定してください。"</string>
+ <string name="error_mnc_not23">"MNCのフィールドには2桁か3桁で指定してください。"</string>
+ <string name="master_clear_title">"出荷時データにリセット"</string>
+ <string name="master_clear_summary">"携帯電話内のすべてのデータを消去"</string>
+ <string name="master_clear_desc">"この操作は携帯電話を出荷時の初期状態にリセットし、データとダウンロードしたアプリケーションをすべて消去します。"</string>
+ <string name="master_clear_button_text">"携帯電話をリセット"</string>
+ <string name="master_clear_final_desc">"データやアプリケーションをすべて消去して携帯電話をリセットしますか?この操作は元に戻せません。"</string>
+ <string name="master_clear_final_button_text">"すべて消去"</string>
+ <!-- no translation found for master_clear_gesture_prompt (1428645764883536750) -->
+ <skip />
+ <string name="master_clear_gesture_explanation">"携帯電話をリセットするには、ロック解除パターンを入力する必要があります。"</string>
+ <string name="master_clear_failed">"System Clearサービスが利用できないため、リセットされませんでした。"</string>
+ <string name="call_settings_title">"通話設定"</string>
+ <string name="call_settings_summary">"ボイスメール、電話転送、待機中の着信、発信者番号を設定する"</string>
+ <string name="network_settings_title">"モバイルネットワーク"</string>
+ <string name="network_settings_summary">"ローミング、ネットワーク、APNのオプションを設定する"</string>
+ <string name="location_title">"現在地の情報源"</string>
+ <string name="location_network_based">"ワイヤレスネットワークを使用"</string>
+ <string name="location_networks_disabled">"ワイヤレスネットワークを使用するアプリケーション (地図など) で位置を表示する"</string>
+ <string name="location_neighborhood_level">"Wi-Fi/モバイルネットワークで位置を特定"</string>
+ <string name="location_gps">"GPS衛星を有効にする"</string>
+ <string name="location_street_level">"番地レベルまで正確に位置を特定 (バッテリの節約にはオフ)"</string>
+ <string name="location_gps_disabled">"番地レベルの位置を特定 (バッテリ消費が増加、航空写真を表示)"</string>
+ <string name="about_settings">"この携帯電話について"</string>
+ <string name="about_settings_summary">"法的情報、携帯電話のステータス、ソフトウェアのバージョンを表示する"</string>
+ <string name="legal_information">"法的情報"</string>
+ <string name="contributors_title">"コラボレーター"</string>
+ <string name="copyright_title">"著作権"</string>
+ <string name="license_title">"ライセンス"</string>
+ <string name="terms_title">"利用規約"</string>
+ <string name="settings_license_activity_title">"オープンソースライセンス"</string>
+ <string name="settings_license_activity_unavailable">"ライセンスの読み込み中に問題が発生しました。"</string>
+ <string name="settings_license_activity_loading">"読み込み中..."</string>
+ <string name="lock_settings_title">"画面のロック解除パターン"</string>
+ <string name="lockpattern_change_lock_pattern_label">"ロック解除パターンを変更"</string>
+ <!-- no translation found for lockpattern_need_to_unlock (757935356911054465) -->
+ <skip />
+ <string name="lockpattern_need_to_unlock_wrong">"もう一度試してください:"</string>
+ <!-- no translation found for lockpattern_recording_intro_header (308287052221942814) -->
+ <skip />
+ <string name="lockpattern_recording_intro_footer">"ヘルプを表示するにはMenuキーを押します。"</string>
+ <string name="lockpattern_recording_inprogress">"完了時に指を離します。"</string>
+ <string name="lockpattern_recording_incorrect_too_short">"少なくとも<xliff:g id="NUMBER">%d</xliff:g>つの点を結んで、もう一度指定してください。"</string>
+ <string name="lockpattern_pattern_entered_header">"パターンが記録されました。"</string>
+ <string name="lockpattern_need_to_confirm">"確認のためもう一度パターンを入力します"</string>
+ <string name="lockpattern_pattern_confirmed_header">"新しいロック解除パターン:"</string>
+ <string name="lockpattern_confirm_button_text">"確認"</string>
+ <string name="lockpattern_restart_button_text">"再入力"</string>
+ <string name="lockpattern_retry_button_text">"再指定"</string>
+ <string name="lockpattern_continue_button_text">"次へ"</string>
+ <string name="lockpattern_settings_title">"ロック解除パターン"</string>
+ <string name="lockpattern_settings_enable_title">"パターンの指定が必要"</string>
+ <string name="lockpattern_settings_enable_summary">"画面のロックを解除するにはパターンを入力してください"</string>
+ <string name="lockpattern_settings_enable_visible_pattern_title">"指定時にパターンを表示"</string>
+ <!-- no translation found for lockpattern_settings_enable_tactile_feedback_title (972174133075372341) -->
+ <skip />
+ <string name="lockpattern_settings_choose_lock_pattern">"ロック解除パターンを設定"</string>
+ <string name="lockpattern_settings_change_lock_pattern">"ロック解除パターンを変更"</string>
+ <!-- no translation found for lockpattern_settings_help_how_to_record (2614673439060830433) -->
+ <skip />
+ <string name="lockpattern_too_many_failed_confirmation_attempts_header">"誤った回数が多すぎます。"</string>
+ <string name="lockpattern_too_many_failed_confirmation_attempts_footer">"<xliff:g id="NUMBER">%d</xliff:g>秒後にもう一度試してください。"</string>
+ <string name="skip_button_label">"キャンセル"</string>
+ <string name="next_button_label">"次へ"</string>
+ <string name="lock_title">"携帯電話の保護"</string>
+ <string name="lock_intro_message"><font size="17">"独自の画面のロック解除パターンを作成して、携帯電話の不正使用を防ぎます。"\n<font height="17">\n</font><b>"1"</b>"  次の画面で、パターン作成の例を参考にしてください。"\n<font height="17">\n</font><b>"2"</b>"  独自のロック解除パターンを決めてから、そのパターンを入力します。さまざまなパターンを指定できますが、少なくとも4つの点を結んでください。"\n<font height="17">\n</font><b>"3"</b>"  確認のためもう一度そのパターンを入力します。"\n<font height="17">\n</font><b>"準備ができたら、[次へ]を選択します"</b>"。"\n<font height="3">\n</font>"携帯電話を保護しない場合は、[キャンセル]を選択します。"</font></string>
+ <string name="lock_example_title">"パターン例"</string>
+ <string name="lock_example_message">"少なくとも4つの点を結びます。"\n" "\n"独自のパターンを考えてから、[次へ]を選択します。"</string>
+ <string name="manageapplications_settings_title">"アプリケーションを管理"</string>
+ <string name="applications_settings">"アプリケーション"</string>
+ <string name="applications_settings_summary">"アプリケーションを管理し、クイック起動のショートカットを設定する"</string>
+ <string name="applications_settings_header">"アプリケーション設定"</string>
+ <string name="install_applications">"不明な提供元"</string>
+ <string name="install_unknown_applications">"Android Market以外のアプリケーションのインストールを許可する"</string>
+ <string name="install_all_warning">"提供元が不明のアプリケーションから、携帯電話や個人データが攻撃を受ける可能性が高くなります。このようなアプリケーションの使用により生じた携帯電話への損害やデータの損失については、お客様がすべての責任を負うことに同意するものとします。"</string>
+ <string name="manage_applications_title">"アプリケーションを管理"</string>
+ <string name="application_info_label">"アプリケーション情報"</string>
+ <string name="storage_label">"メモリ"</string>
+ <string name="auto_launch_label">"デフォルトで起動"</string>
+ <string name="permissions_label">"許可"</string>
+ <string name="total_size_label">"合計"</string>
+ <string name="application_size_label">"アプリケーション"</string>
+ <string name="data_size_label">"データ"</string>
+ <string name="uninstall_text">"アンインストール"</string>
+ <string name="clear_user_data_text">"データを消去"</string>
+ <string name="auto_launch_enable_text">"操作を行うデフォルトのアプリケーションとして起動するように選択しています。"</string>
+ <string name="auto_launch_disable_text">"デフォルトは設定されていません。"</string>
+ <string name="clear_activities">"デフォルトをクリア"</string>
+ <string name="unknown">"不明"</string>
+ <string name="sort_order_alpha">"名前で並べ替え"</string>
+ <string name="sort_order_size">"サイズ順に並べ替える (降順)"</string>
+ <string name="manage_space_text">"容量を管理"</string>
+ <!-- no translation found for filter_apps_all (5362458533526576243) -->
+ <skip />
+ <!-- no translation found for filter_apps_third_party (6478735462006756182) -->
+ <skip />
+ <!-- no translation found for filter_apps_running (4508709081284629440) -->
+ <skip />
+ <!-- no translation found for loading (3200408047793887917) -->
+ <skip />
+ <string name="recompute_size">"サイズを再計算中..."</string>
+ <string name="clear_data_dlg_title">"削除"</string>
+ <string name="clear_data_dlg_text">"このアプリケーションに保存したすべての情報が完全に削除されます。"</string>
+ <string name="dlg_ok">"OK"</string>
+ <string name="dlg_cancel">"キャンセル"</string>
+ <string name="app_not_found_dlg_title">"アプリケーションが見つかりません"</string>
+ <string name="app_not_found_dlg_text">"インストール済みアプリケーションのリストに、このアプリケーションはありません。"</string>
+ <string name="clear_data_failed">"アプリケーションデータを消去できませんでした。"</string>
+ <!-- no translation found for security_settings_desc (3116027624526915561) -->
+ <skip />
+ <!-- no translation found for computing_size (8865983009275200301) -->
+ <skip />
+ <!-- no translation found for invalid_size_value (1901940003700269523) -->
+ <skip />
+ <!-- no translation found for empty_list_msg (723420725041278150) -->
+ <skip />
+ <string name="language_settings">"ロケールとテキスト"</string>
+ <!-- no translation found for language_settings_summary (595647729475399987) -->
+ <skip />
+ <string name="language_category">"ロケール設定"</string>
+ <string name="text_category">"テキスト設定"</string>
+ <string name="phone_language">"ロケールを選択"</string>
+ <string name="auto_replace">"自動修正"</string>
+ <string name="auto_replace_summary">"誤字脱字を修正する"</string>
+ <string name="auto_caps">"大文字の自動入力"</string>
+ <string name="auto_caps_summary">"文の最初の文字を大文字にする"</string>
+ <string name="auto_punctuate">"句読点を自動入力"</string>
+ <string name="auto_punctuate_summary">"Spaceキーを2回押して「。」を挿入"</string>
+ <string name="show_password">"パスワードを表示"</string>
+ <string name="show_password_summary">"入力中のパスワードを表示"</string>
+ <string name="testing">"テスト中"</string>
+ <string name="testing_phone_info">"携帯電話情報"</string>
+ <string name="testing_battery_info">"バッテリ情報"</string>
+ <string name="quick_launch_title">"クイック起動"</string>
+ <string name="quick_launch_summary">"アプリケーション起動のキーボードショートカットを設定する"</string>
+ <string name="quick_launch_assign_application">"アプリケーションを割り当て"</string>
+ <string name="quick_launch_no_shortcut">"ショートカットなし"</string>
+ <string name="quick_launch_shortcut">"Search+<xliff:g id="SHORTCUT_LETTER">%1$s</xliff:g>"</string>
+ <string name="quick_launch_clear_dialog_title">"クリア"</string>
+ <string name="quick_launch_clear_dialog_message">"<xliff:g id="SHORTCUT_LETTER">%1$s</xliff:g> (<xliff:g id="APPLICATION_NAME">%2$s</xliff:g>) のショートカットをクリアします。"</string>
+ <string name="quick_launch_clear_ok_button">"OK"</string>
+ <string name="quick_launch_clear_cancel_button">"キャンセル"</string>
+ <string name="quick_launch_display_mode_applications">"アプリケーション"</string>
+ <string name="quick_launch_display_mode_shortcuts">"ショートカット"</string>
+ <!-- no translation found for input_methods_settings_title (6800066636850553887) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_summary (7571173442946675205) -->
+ <skip />
+ <string name="development_settings_title">"開発"</string>
+ <!-- no translation found for development_settings_summary (2151320488701538355) -->
+ <skip />
+ <string name="enable_adb">"USBデバッグ"</string>
+ <string name="enable_adb_summary">"USBの接続時のデバッグモード"</string>
+ <string name="keep_screen_on">"スリープを無効にする"</string>
+ <string name="keep_screen_on_summary">"充電中に画面をスリープにしない"</string>
+ <!-- no translation found for allow_mock_location (2787962564578664888) -->
+ <skip />
+ <!-- no translation found for allow_mock_location_summary (317615105156345626) -->
+ <skip />
+</resources>
diff --git a/res/values-nl-rNL/strings.xml b/res/values-nl-rNL/strings.xml
index bb566be..436899e 100644
--- a/res/values-nl-rNL/strings.xml
+++ b/res/values-nl-rNL/strings.xml
@@ -1,445 +1,883 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="activity_picker_label">Activiteit selecteren</string>
- <string name="airplane_mode">Vliegtuigmodus</string>
- <string name="android_id_label">Android ID</string>
- <string name="apn_apn">APN</string>
- <string name="apn_edit">Toegangspunt bewerken</string>
- <string name="apn_http_port">Poort</string>
- <string name="apn_http_proxy">Proxy</string>
- <string name="apn_label">APN</string>
- <string name="apn_mcc">MCC</string>
- <string name="apn_mms_port">MMS-poort</string>
- <string name="apn_mms_proxy">MMS-proxy</string>
- <string name="apn_mmsc">MMSC</string>
- <string name="apn_mnc">MNC</string>
- <string name="apn_name">Naam</string>
- <string name="apn_not_set">&lt;Niet ingesteld&gt;</string>
- <string name="apn_password">Wachtwoord</string>
- <string name="apn_server">Server</string>
- <string name="apn_settings">APN</string>
- <string name="apn_user">Gebruikersnaam</string>
- <string name="app_launcher_newView_text">Nieuwe AppLauncher</string>
- <string name="band_mode_failed">Mislukt</string>
- <string name="band_mode_loading">Bandlijst wordt geladen\u2026</string>
- <string name="band_mode_set">Instellen</string>
- <string name="band_mode_succeeded">Geslaagd</string>
- <string name="band_mode_title">Gsm/umts-band instellen</string>
- <string name="baseband_version">Basebandversie</string>
- <string name="basic_settings_title">Basisinstellingen</string>
- <string name="battery_info_health_dead">Dood</string>
- <string name="battery_info_health_good">Goed</string>
- <string name="battery_info_health_label">Batterijstatus:</string>
- <string name="battery_info_health_over_voltage">Spanning te hoog</string>
- <string name="battery_info_health_overheat">Oververhitting</string>
- <string name="battery_info_health_unknown">Onbekend</string>
- <string name="battery_info_health_unspecified_failure">Onbekende fout</string>
- <string name="battery_info_label">Batterij-info</string>
- <string name="battery_info_level_label">Batterijniveau:</string>
- <string name="battery_info_scale_label">Batterijschaal:</string>
- <string name="battery_info_status_charging">opladen</string>
- <string name="battery_info_status_charging_ac">(wisselstroom)</string>
- <string name="battery_info_status_charging_usb">(Usb)</string>
- <string name="battery_info_status_discharging">Bezig met ontladen</string>
- <string name="battery_info_status_full">Vol</string>
- <string name="battery_info_status_label">Batterijstatus:</string>
- <string name="battery_info_status_not_charging">Wordt niet opgeladen</string>
- <string name="battery_info_status_unknown">Onbekend</string>
- <string name="battery_info_technology_label">Batterijtechnologie:</string>
- <string name="battery_info_temperature_label">Batterijtemperatuur:</string>
- <string name="battery_info_temperature_units">\u00B0 C</string>
- <string name="battery_info_voltage_label">Batterijvoltage:</string>
- <string name="battery_info_voltage_units">mV</string>
- <string name="bluetooth">Bluetooth</string>
- <string name="bluetooth_clear_list">Apparaatlijst wissen</string>
- <string name="bluetooth_connectable">Alleen waarmee verbinding mogelijk is</string>
- <string name="bluetooth_connected">Verbonden</string>
- <string name="bluetooth_connecting">Verbinden\u2026</string>
- <string name="bluetooth_device">handsfree / headset</string>
- <string name="bluetooth_device_info">Bluetooth-toestelinfo</string>
- <string name="bluetooth_device_info_alias">Toestelalias</string>
- <string name="bluetooth_device_info_delete">Dit toestel verwijderen</string>
- <string name="bluetooth_device_info_no_alias">Alias hier invoeren\u2026</string>
- <string name="bluetooth_device_info_sdp">Lijst met ondersteunde diensten</string>
- <string name="bluetooth_device_name">Apparaatnaam</string>
- <string name="bluetooth_devices">Bluetooth-apparaten</string>
- <string name="bluetooth_disabled">Bluetooth is uitgeschakeld</string>
- <string name="bluetooth_disconnect_blank">Verbinding met %1$s verbreken?</string>
- <string name="bluetooth_discoverability_panel_title">Maak me\u2026</string>
- <string name="bluetooth_discoverable">Zichtbaar &amp; met verbinding</string>
- <string name="bluetooth_enable_text">Knop leegmaken\u2026</string>
- <string name="bluetooth_enabled">Bluetooth is nu ingeschakeld</string>
- <string name="bluetooth_enabling">Bluetooth wordt ingeschakeld\u2026</string>
- <string name="bluetooth_enter_pin_msg">Voer pincode in voor </string>
- <string name="bluetooth_is_discoverable">Toestel is zichtbaar</string>
- <string name="bluetooth_name_not_set">Geen naam ingesteld, accountnaam wordt gebruikt</string>
- <string name="bluetooth_neither">Zichtbaar noch met verbinding</string>
- <string name="bluetooth_new_data">Voer nieuwe gegevens in</string>
- <string name="bluetooth_new_data_cancel">Annuleren</string>
- <string name="bluetooth_new_data_confirm">OK</string>
- <string name="bluetooth_not_connected">Niet verbonden</string>
- <string name="bluetooth_not_discoverable">Toestel is niet zichtbaar</string>
- <string name="bluetooth_paired">Gekoppeld</string>
- <string name="bluetooth_pairing_msg">Koppelen\u2026</string>
- <string name="bluetooth_pin_entry">Bluetooth-pincode invoeren</string>
- <string name="bluetooth_quick_toggle_title">Bluetooth</string>
- <string name="bluetooth_scan_for_devices">Zoeken naar Bluetooth-apparaten</string>
- <string name="bluetooth_scan_for_new_devices">Bezig met scannen naar nieuwe toestellen\u2026</string>
- <string name="bluetooth_scan_text">Knop leegmaken\u2026</string>
- <string name="bluetooth_settings_text">Knop leegmaken\u2026</string>
- <string name="bluetooth_settings_title">Bluetooth-instellingen</string>
- <string name="bluetooth_starting">Bluetooth wordt gestart\u2026</string>
- <string name="bluetooth_stopping">Bluetooth wordt gestopt\u2026</string>
- <string name="bluetooth_title">Bluetooth</string>
- <string name="bluetooth_unknown">Onbekend</string>
- <string name="bluetooth_visibility">Zichtbaarheid</string>
- <string name="bootloader_version">Bootloaderversie</string>
- <string name="brightness">Helderheid</string>
- <string name="build_date_label">Versiedatum</string>
- <string name="build_description_label">Versiebeschrijving</string>
- <string name="build_host_label">Versiehost</string>
- <string name="build_id_label">Versie-id</string>
- <string name="build_type_label">Versietype</string>
- <string name="build_user_label">Versiegebruiker</string>
- <string name="call_settings_title">Belinstellingen</string>
- <string name="cancel">Annuleren</string>
- <string name="checkin_button_label">Controleren op upgrade</string>
- <string name="checkin_download_failed_status">Downloaden mislukt</string>
- <string name="checkin_download_label">Downloadstatus</string>
- <string name="checkin_download_ongoing_status">Downloaden\u2026</string>
- <string name="checkin_download_succeeded_status">Downloaden gelukt, bezig met controleren\u2026</string>
- <string name="checkin_download_suspended_status">Downloaden uitgesteld</string>
- <string name="checkin_download_unknown_status">Onbekende status</string>
- <string name="checkin_failures_label">Mislukkingen sinds laatste succes</string>
- <string name="checkin_last_time_label">Laatste gelukte aanmelding</string>
- <string name="checkin_status_label">Aanmeldstatus</string>
- <string name="checkin_time_never">(nooit)</string>
- <string name="checkin_upgrade_label">Upgrade in behandeling</string>
- <string name="choose_timezone">Tijdzone selecteren</string>
- <string name="choose_timezone_region">Regio selecteren</string>
- <string name="connect">Verbinden</string>
- <string name="connect_to_blank">Verbinding maken met %1$s</string>
- <string name="date_and_time">Datum &amp; Tijd</string>
- <string name="date_and_time_settings_title">Datum &amp; Tijd</string>
- <string name="date_time_24hour">24-uurs indeling</string>
- <string name="date_time_auto">Auto</string>
- <string name="date_time_auto_summaryOff">Gebruik door gebruikers gekozen waardes</string>
- <string name="date_time_auto_summaryOn">Gebruik door netwerk geleverde waardes</string>
- <string name="date_time_changeDate_text">Datum veranderen</string>
- <string name="date_time_changeTime_text">Tijd veranderen</string>
- <string name="date_time_dateDisplay_text">3 nov 1997</string>
- <string name="date_time_date_format">Datumindeling instellen</string>
- <string name="date_time_set_date">Datum instellen</string>
- <string name="date_time_set_time">Tijd instellen</string>
- <string name="date_time_set_timezone">Tijdzone selecteren</string>
- <string name="date_time_setzone_text">Tijdzone veranderen</string>
- <string name="date_time_timeDisplay_text">11:45 AM</string>
- <string name="date_time_timezone_label">Tijdzone:</string>
- <string name="debug_intent_sender_label">Debug intent sender</string>
- <string name="default_date_format">dd/MM/yyyy</string>
- <string name="default_keyboard_device_label">Standaard toetsenbordapparaat</string>
- <string name="device_info_asleeptime">Slaaptijd</string>
- <string name="device_info_awaketime">Opwektijd</string>
- <string name="device_info_default">Onbekend</string>
- <string name="device_info_label">Toestelinfo</string>
- <string name="device_info_settings">Toestelinfo</string>
- <string name="device_info_uptime">Tijd geactiveerd</string>
- <string name="device_memory">Geheugen</string>
- <string name="device_memory_summary">Intern geheugen, sd-kaartgeheugen</string>
- <string name="device_status">Status</string>
- <string name="device_status_summary">IMEI, telefoonnummer, signaal, enz.</string>
- <string name="dim_screen">Scherm dimmen</string>
- <string name="disconnect_ums">Verbinding met usb-massaopslag verbreken</string>
- <string name="display_font_size_label">Lettergrootte:</string>
- <string name="display_label">Scherm</string>
- <string name="display_preview_label">Voorbld:</string>
- <string name="display_settings">Scherm</string>
- <string name="done">OK</string>
- <string name="error_apn_empty">APN kan niet blanco zijn</string>
- <string name="error_connecting">Fout bij maken van netwerkverbinding</string>
- <string name="error_mcc_not3">MMC-veld moet 3 tekens zijn</string>
- <string name="error_mnc_not23">MMC-veld moet 2 of 3 tekens zijn</string>
- <string name="error_name_empty">Naam kan niet blanco zijn</string>
- <string name="error_saving">Fout bij opslaan netwerk</string>
- <string name="error_scanning">Fout bij scannen naar netwerken</string>
- <string name="error_starting">Fout bij starten van wifi</string>
- <string name="error_stopping">Fout bij stoppen van wifi</string>
- <string name="error_title">Ongeldige gegevens</string>
- <string name="failed_to_connect">Geen verbinding gemaakt met\u0020</string>
- <string name="favorites_label">Favorieten</string>
- <string name="firmware_version">Firmwareversie</string>
- <string name="font_size_preview_text">Servez à ce monsieur une bière et des kiwis.</string>
- <string name="font_size_save">OK</string>
- <string name="forget_network">Vergeten</string>
- <string name="fragment_status_authenticating">Controleren met %1$s</string>
- <string name="fragment_status_connected">Verbonden met %1$s</string>
- <string name="fragment_status_connecting">Bezig met verbinding maken met %1$s</string>
- <string name="fragment_status_disconnected">Verbinding verbroken</string>
- <string name="fragment_status_disconnecting">Verbinding met %1$s wordt verbroken</string>
- <string name="fragment_status_failed">Mislukt</string>
- <string name="fragment_status_obtaining_ip">Ip-adres wordt verkregen van %1$s</string>
- <string name="fragment_status_scanning">Scannen</string>
- <string name="gsm_version_baseband_label">Basebandversie</string>
- <string name="gsm_version_ril_impl_label">RIL Impl-versie</string>
- <string name="intent_sender_account_label">Account: </string>
- <string name="intent_sender_action_label">Actie:</string>
- <string name="intent_sender_data_label">Gegevens:</string>
- <string name="intent_sender_resource_label">Netwerkbron: </string>
- <string name="intent_sender_sendbroadcast_text">Uitzending versturen</string>
- <string name="intent_sender_startactivity_text">Activiteit starten</string>
- <string name="ip_address">Ip-adres</string>
- <string name="kernel_version_label">Linux kernelversie</string>
- <string name="keyguard_label">Toetsbescherming</string>
- <string name="keyguard_password_button_text">OK</string>
- <string name="keyguard_password_confirm_new_label">Bevestig nieuw wachtwoord:</string>
- <string name="keyguard_password_mismatch_error_text">De twee wachtwoorden verschillen! Voer ze nogmaals in</string>
- <string name="keyguard_password_new_label">Nieuw wachtwoord:</string>
- <string name="keyguard_password_old_label">Oud wachtwoord:</string>
- <string name="keyguard_password_old_password_error_text">Het oude wachtwoord is onjuist! Probeer het opnieuw</string>
- <string name="keyguard_pin_mod_text">Pincode wijzigen</string>
- <string name="keyguard_pw_mod_text">Blokkeringspatroon selecteren</string>
- <string name="keyguard_sim_pin_label">SIM-pincode</string>
- <string name="language_picker_title">Taal</string>
- <string name="large_font">Groot</string>
- <string name="location_gps">Gebaseerd op gps</string>
- <string name="location_label">Locatieprovider:</string>
- <string name="location_neighborhood_level">Nauwkeurigheid op buurtniveau</string>
- <string name="location_network_based">Gebaseerd op netwerk</string>
- <string name="location_source">Locatienauwkeurigheid</string>
- <string name="location_status">Status:</string>
- <string name="location_street_level">Nauwkeurigheid op straatniveau</string>
- <string name="lock_settings_title">Blokkeergebaar</string>
- <string name="lockpattern_change_lock_pattern_label">Patroon voor veranderen blokkering</string>
- <string name="lockpattern_confirm_button_text">Bevestigen</string>
- <string name="lockpattern_need_to_unlock">Opgeslagen patroon bevestigen:</string>
- <string name="lockpattern_need_to_unlock_wrong">Onjuist! Nogmaals proberen:</string>
- <string name="lockpattern_pattern_confirmed_header">Het nieuwe blokkeringspatroon:</string>
- <string name="lockpattern_pattern_entered_header">U selecteerde:</string>
- <string name="lockpattern_recording_incorrect_less_than_three">Onjuist! U moet over minstens drie punten slepen</string>
- <string name="lockpattern_recording_inprogress">Til de vinger op als u klaar bent</string>
- <string name="lockpattern_recording_intro_footer">Druk op Menu voor hulp</string>
- <string name="lockpattern_recording_intro_header">Teken een patroon om als codeblokkering te gebruiken:</string>
- <string name="lockpattern_restart_button_text">Opnieuw starten</string>
- <string name="lockpattern_settings_change_lock_pattern">Gebaarpatroon voor veranderen blokkering</string>
- <string name="lockpattern_settings_choose_lock_pattern">Patroon voor blokkeringsgebaar selecteren</string>
- <string name="lockpattern_settings_enable_summary">Gebaar vereisen voor vrijgeven</string>
- <string name="lockpattern_settings_enable_title">Blokkeergebaar</string>
- <string name="lockpattern_settings_enable_visible_pattern_title">Zichtbaar patroon gebruiken</string>
- <string name="lockpattern_settings_help_how_to_record">Het opnemen van een blokkeringspatroon</string>
- <string name="lockpattern_settings_title">Blokkeergebaar</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_footer">Probeer opnieuw over <xliff:g id="number">%d</xliff:g> seconden</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_header">Te veel onjuiste bevestigingspogingen</string>
- <string name="master_clear_button_text">Apparaat opnieuw instellen</string>
- <string name="master_clear_desc">Herstelt de oorspronkelijke fabriekswaarden van het toestel, waarbij alle gegevens en gedownloade toepassingen worden gewist</string>
- <string name="master_clear_failed">Geen reset uitgevoerd omdat de service Systeem wissen niet beschikbaar is</string>
- <string name="master_clear_final_button_text">Alles wissen</string>
- <string name="master_clear_final_desc">Toestel resetten, waarbij alle gegevens en toepassingen worden gewist? Handeling kan niet worden teruggedraaid!</string>
- <string name="master_clear_gesture_explanation">U moet het blokkeringspatroon tekeken om een toestelreset goed te keuren</string>
- <string name="master_clear_gesture_prompt">Teken het blokkeringspatroon</string>
- <string name="master_clear_title">Hoofd wissen</string>
- <string name="medium_font">Normaal</string>
- <string name="menu_cancel">Wissen</string>
- <string name="menu_delete">APN verwijderen</string>
- <string name="menu_new">Nieuwe APN</string>
- <string name="menu_save">Opslaan</string>
- <string name="mobile_network">Mobiel netwerk</string>
- <string name="network_settings_title">Netwerkinstellingen</string>
- <string name="next_label">Volgende</string>
- <string name="notification_sound_dialog_title">Meldingsbeltonen selecteren</string>
- <string name="notification_sound_title">Meldingsbeltonen</string>
- <string name="phone_info_label">Telefooninfo</string>
- <string name="please_type_passphrase">Voer de draadloze wachtwoordcode in</string>
- <string name="power_management_label">Energiebeheer</string>
- <string name="progress_scanning">Scannen</string>
- <string name="proxy_action_text">Opslaan</string>
- <string name="proxy_clear_text">Wissen</string>
- <string name="proxy_defaultView_text">Beginwaarden</string>
- <string name="proxy_error">Let op!</string>
- <string name="proxy_error_dismiss">OK</string>
- <string name="proxy_error_empty_host_set_port">Het poortveld moet blanco zijn als het hostveld blanco is</string>
- <string name="proxy_error_empty_port">U moet het poortveld voltooien</string>
- <string name="proxy_error_invalid_host">De opgegeven hostnaam is ongeldig</string>
- <string name="proxy_error_invalid_port">De opgegeven poort is ongeldig</string>
- <string name="proxy_hostname_label">Hostnaam</string>
- <string name="proxy_port_label">Poort</string>
- <string name="proxy_settings_label">Proxyinstellingen</string>
- <string name="radioInfo_cid">CID</string>
- <string name="radioInfo_data_connected">Verbonden</string>
- <string name="radioInfo_data_connecting">Verbinding</string>
- <string name="radioInfo_data_disconnected">Verbinding verbroken</string>
- <string name="radioInfo_display_asu">asu</string>
- <string name="radioInfo_display_bytes">bytes</string>
- <string name="radioInfo_display_dbm">dBm</string>
- <string name="radioInfo_display_packets">pkts</string>
- <string name="radioInfo_lac">LAC</string>
- <string name="radioInfo_menu_disableData">Gegevensverbinding uitschakelen</string>
- <string name="radioInfo_menu_enableData">Gegevensverbinding inschakelen</string>
- <string name="radioInfo_menu_getPDP">PDP-lijst verkrijgen</string>
- <string name="radioInfo_menu_viewADN">SIM-adresboek weergeven</string>
- <string name="radioInfo_menu_viewFDN">Vaste nummers weergeven</string>
- <string name="radioInfo_menu_viewSDN">Service kiesnummers weergeven</string>
- <string name="radioInfo_phone_idle">Niet-actief</string>
- <string name="radioInfo_phone_offhook">Gesprek bezig</string>
- <string name="radioInfo_phone_ringing">Bezig met overgaan</string>
- <string name="radioInfo_roaming_in">Roaming</string>
- <string name="radioInfo_roaming_not">Geen roaming</string>
- <string name="radioInfo_service_emergency">Alleen alarmnummers</string>
- <string name="radioInfo_service_in">Geactiveerd</string>
- <string name="radioInfo_service_off">Radio uit</string>
- <string name="radioInfo_service_out">Buiten dienst</string>
- <string name="radioInfo_unknown">onbekend</string>
- <string name="radio_info_band_mode_label">Radioband selecteren</string>
- <string name="radio_info_call_redirect_label">Gesprek doorsturen:</string>
- <string name="radio_info_call_status_label">Oproepstatus:</string>
- <string name="radio_info_current_network_label">Huidig netwerk:</string>
- <string name="radio_info_data_attempts_label">Gegevenspogingen:</string>
- <string name="radio_info_data_successes_label">Gegevenssuccessen:</string>
- <string name="radio_info_gprs_service_label">Gprs-dienst:</string>
- <string name="radio_info_gsm_disconnects_label">Gsm-verbinding verbreken:</string>
- <string name="radio_info_gsm_service_label">Gsm-dienst:</string>
- <string name="radio_info_imei_label">IMEI:</string>
- <string name="radio_info_imsi_label">IMSI:</string>
- <string name="radio_info_message_waiting_label">Bericht wachtend op behandeling:</string>
- <string name="radio_info_neighboring_location_label">Omgevings-CID:</string>
- <string name="radio_info_network_type_label">Netwerktype:</string>
- <string name="radio_info_phone_number_label">Telefoonnummer:</string>
- <string name="radio_info_ppp_received_label">PPP ontvangen:</string>
- <string name="radio_info_ppp_resets_label">Aantal PPP-resets sinds opstarten:</string>
- <string name="radio_info_ppp_sent_label">PPP verzonden:</string>
- <string name="radio_info_radio_resets_label">Radio resets:</string>
- <string name="radio_info_roaming_label">Roaming:</string>
- <string name="radio_info_set_perferred_label">Voorkeursnetwerktype instellen:</string>
- <string name="radio_info_signal_location_label">Locatie:</string>
- <string name="radio_info_signal_strength_label">Signaalsterkte:</string>
- <string name="read_only">\u0020(Alleen lezen)</string>
- <string name="ring_volume_title">Belvolume</string>
- <string name="ringer_volume_instructions">Gebruik volumetoetsen om het belvolume aan te passen</string>
- <string name="ringer_volume_ringer_mode_label">Beltoonmodus</string>
- <string name="ringer_volume_ringtone_label">Beltoon</string>
- <string name="ringer_volume_screen_increasing_text">Belvolume verhogen</string>
- <string name="ringtone_title">Telefoonbeltoon</string>
- <string name="scan_wifi">Scannen</string>
- <string name="screen_off_timeout_label">Scherm uit time-out</string>
- <string name="sd_card_settings_label">Sd-kaart</string>
- <string name="sd_unavailable">Niet beschikbaar</string>
- <string name="sdcard_changes_instructions">Veranderingen worden toegepast zodra de usb-kabel opnieuw wordt aangesloten</string>
- <string name="sdcard_removal_alert_ok">OK</string>
- <string name="sdcard_removal_alert_scolding">De sd-kaart is verwijderd terwijl deze nog in gebruik was!
- Om beschadiging van de kaart te vorkomen, gebruikt u het venster Sd-kaartinstellingen om de kaart vrij te geven voordat deze wordt verwijderd</string>
- <string name="sdcard_removal_alert_title">Onveilige verwijdering van sd-kaart</string>
- <string name="sdcard_setting">Sd-kaart</string>
- <string name="sdcard_settings_available_bytes_label">Beschikbare bytes:</string>
- <string name="sdcard_settings_bad_removal_status">Sd-kaart is verwijderd terwijl deze nog in gebruik was!</string>
- <string name="sdcard_settings_mass_storage_status">Sd-kaart wordt gebruikt als apparaat voor massaopslag</string>
- <string name="sdcard_settings_not_present_status">Geen sd-kaart</string>
- <string name="sdcard_settings_read_only_status">Sd-kaart is alleen-lezen</string>
- <string name="sdcard_settings_scanning_status">Sd-kaart wordt gescand op media\u2026</string>
- <string name="sdcard_settings_screen_mass_storage_text">Usb-massaopslag inschakelen</string>
- <string name="sdcard_settings_total_bytes_label">Totaal aantal bytes:</string>
- <string name="sdcard_settings_unmounted_status">Nu kunt u de sd-kaart veilig verwijderen</string>
- <string name="sdcard_settings_used_bytes_label">Gebruikt aantal bytes:</string>
- <string name="sdcard_unmount">Sd-kaart vrijgeven</string>
- <string name="sdcard_unmountable_alert_ok">OK</string>
- <string name="sdcard_unmountable_alert_title">Sd-kaart onleesbaar</string>
- <string name="sdcard_unmountable_message">De sd-kaart kon niet worden gelezen.
- Het bestandssysteem is beschadigd of de kaart is defect</string>
- <string name="security">Beveiliging</string>
- <string name="security_label">Beveiliging</string>
- <string name="settings_chooser_pick_string">
- Instellingenpictogram moet verwijzen naar:
-</string>
- <string name="settings_label">Instellingen</string>
- <string name="signal">Signaalsterkte</string>
- <string name="silent_mode_title">Stil</string>
- <string name="sim_bad_pin">Let op: Onjuiste pincode</string>
- <string name="sim_change_failed">Veranderen van pincode mislukt\nWellicht onjuiste pincode</string>
- <string name="sim_change_pin">SIM-pincode wijzigen</string>
- <string name="sim_change_succeeded">Veranderen van SIM-pincode gelukt</string>
- <string name="sim_disable_sim_lock">SIM-kaartblokkering uitschakelen</string>
- <string name="sim_enable_sim_lock">SIM-kaartblokkering inschakelen</string>
- <string name="sim_enter_cancel">Annuleren</string>
- <string name="sim_enter_new">Nieuwe pincode invoeren</string>
- <string name="sim_enter_ok">OK</string>
- <string name="sim_enter_old">Oude pincode invoeren</string>
- <string name="sim_enter_pin">SIM-pincode invoeren</string>
- <string name="sim_lock_failed">Veranderen blokkeringsstatus van SIM-kaart mislukt\nWellicht onjuist pincode</string>
- <string name="sim_lock_off">SIM-kaartblokkering uit</string>
- <string name="sim_lock_on">SIM-kaartblokkering aan</string>
- <string name="sim_lock_settings">SIM-kaartblokkering</string>
- <string name="sim_lock_settings_title">SIM-blokkeerinstellingen</string>
- <string name="sim_pin_change">Pincode veranderen</string>
- <string name="sim_pin_toggle">SIM-kaartblokkering</string>
- <string name="sim_pins_dont_match">Let op: Pincodes verschillen</string>
- <string name="sim_reenter_new">Voer nieuwe pincode opnieuw in</string>
- <string name="small_font">Klein</string>
- <string name="software_version">Softwareversie</string>
- <string name="sound_and_alerts_settings">Geluid</string>
- <string name="status_authenticating">Bezig met verifiëren</string>
- <string name="status_awake_time">Opwektijd</string>
- <string name="status_connected">Verbonden</string>
- <string name="status_connecting">Verbinding</string>
- <string name="status_data_state">Gegevenstoegang</string>
- <string name="status_disconnected">Verbinding verbroken</string>
- <string name="status_disconnecting">Verbinding wordt verbroken</string>
- <string name="status_failed">Mislukt</string>
- <string name="status_imei">IMEI</string>
- <string name="status_imsi">IMSI</string>
- <string name="status_network_type">Netwerktype</string>
- <string name="status_number">Telefoonnummer</string>
- <string name="status_obtaining_ip">Bezig met verkrijgen van ip-adres</string>
- <string name="status_operator">Netwerk</string>
- <string name="status_roaming">Roaming</string>
- <string name="status_scanning">Scannen</string>
- <string name="status_service_state">Dienststatus</string>
- <string name="status_signal_strength">Signaalsterkte</string>
- <string name="status_up_time">Tijd geactiveerd</string>
- <string name="stay_on">Ingeschakeld laten als aangesloten</string>
- <string name="summary_not_in_range">Niet in bereik</string>
- <string name="summary_remembered">Onthouden</string>
- <string name="sync_calendar">Agenda</string>
- <string name="sync_contacts">Contacten</string>
- <string name="sync_disabled">Uit</string>
- <string name="sync_enabled">Synchroniseren met Google-server ingeschakeld</string>
- <string name="sync_gmail">Gmail</string>
- <string name="sync_menu_sync_cancel">Synchroniseren annuleren</string>
- <string name="sync_menu_sync_now">Nu synchroniseren</string>
- <string name="sync_settings">Synchronisatie</string>
- <string name="target_build_field_label">Opgevraagd versietype</string>
- <string name="telephony_apn_label">APN:</string>
- <string name="telephony_mcc_label">MCC:</string>
- <string name="telephony_mmsc_label">MMSC:</string>
- <string name="telephony_mmsport_label">MMS-poort:</string>
- <string name="telephony_mmsproxy_label">MMS-proxy:</string>
- <string name="telephony_mnc_label">MNC:</string>
- <string name="telephony_name_label">Naam:</string>
- <string name="telephony_password_label">Wachtwoord :</string>
- <string name="telephony_port_label">Poort:</string>
- <string name="telephony_proxy_label">Proxy:</string>
- <string name="telephony_server_label">Server:</string>
- <string name="telephony_user_label">Gebruiker:</string>
- <string name="turn_off_qxdm">QXDM sd-log uitschakelen</string>
- <string name="turn_off_radio">Radio uitschakelen</string>
- <string name="turn_on_qxdm">QXDM sd-log inschakelen</string>
- <string name="turn_on_radio">Radio uitschakelen</string>
- <string name="underdeveloped_settings_label">Onderontwikkelde instellingen</string>
- <string name="wallpaper_label">Achtergrond</string>
- <string name="wifi">Wi-Fi</string>
- <string name="wifi_access_points">Netwerken</string>
- <string name="wifi_dns_label">dns:</string>
- <string name="wifi_gateway_label">gateway:</string>
- <string name="wifi_host_ip">host-ip:</string>
- <string name="wifi_netmask_label">netmask:</string>
- <string name="wifi_prefer_wifi">Wifi heeft voorkeur</string>
- <string name="wifi_screen_activate_text">Activeren</string>
- <string name="wifi_screen_dhcp_text">automatisch</string>
- <string name="wifi_screen_dns_text">209.81.59.2</string>
- <string name="wifi_screen_gateway_text">192.168.20.1</string>
- <string name="wifi_screen_ip_text">192.168.20.10</string>
- <string name="wifi_screen_manual_text">handmatig</string>
- <string name="wifi_screen_netmask_text">255.255.255.0</string>
- <string name="wifi_screen_status_text">Wifi functioneert</string>
- <string name="wifi_screen_test_text">Testen</string>
- <string name="wifi_settings">Wifi-instellingen</string>
- <string name="wifi_wlan_id">wlan-id:</string>
+ <string name="device_info_default">"Onbekend"</string>
+ <string name="device_info_uptime">"Tijd geactiveerd"</string>
+ <string name="device_info_awaketime">"Opwektijd"</string>
+ <string name="device_info_asleeptime">"Slaaptijd"</string>
+ <string name="turn_on_radio">"Radio uitschakelen"</string>
+ <string name="turn_off_radio">"Radio uitschakelen"</string>
+ <string name="turn_on_qxdm">"QXDM sd-log inschakelen"</string>
+ <string name="turn_off_qxdm">"QXDM sd-log uitschakelen"</string>
+ <string name="radioInfo_menu_viewADN">"SIM-adresboek weergeven"</string>
+ <string name="radioInfo_menu_viewFDN">"Vaste nummers weergeven"</string>
+ <string name="radioInfo_menu_viewSDN">"Service kiesnummers weergeven"</string>
+ <string name="radioInfo_menu_getPDP">"PDP-lijst verkrijgen"</string>
+ <string name="radioInfo_menu_enableData">"Gegevensverbinding inschakelen"</string>
+ <string name="radioInfo_menu_disableData">"Gegevensverbinding uitschakelen"</string>
+ <!-- no translation found for radioInfo_menu_enableDataOnBoot (1926825935390738605) -->
+ <skip />
+ <!-- no translation found for radioInfo_menu_disableDataOnBoot (1229911918312837466) -->
+ <skip />
+ <string name="radioInfo_service_in">"Geactiveerd"</string>
+ <string name="radioInfo_service_out">"Buiten dienst"</string>
+ <string name="radioInfo_service_emergency">"Alleen alarmnummers"</string>
+ <string name="radioInfo_service_off">"Radio uit"</string>
+ <string name="radioInfo_roaming_in">"Roaming"</string>
+ <string name="radioInfo_roaming_not">"Geen roaming"</string>
+ <string name="radioInfo_phone_idle">"Niet-actief"</string>
+ <string name="radioInfo_phone_ringing">"Bezig met overgaan"</string>
+ <string name="radioInfo_phone_offhook">"Gesprek bezig"</string>
+ <string name="radioInfo_data_disconnected">"Verbinding verbroken"</string>
+ <string name="radioInfo_data_connecting">"Verbinding"</string>
+ <string name="radioInfo_data_connected">"Verbonden"</string>
+ <!-- no translation found for radioInfo_data_suspended (4953150687356763202) -->
+ <skip />
+ <string name="radioInfo_unknown">"onbekend"</string>
+ <string name="radioInfo_display_packets">"pkts"</string>
+ <string name="radioInfo_display_bytes">"bytes"</string>
+ <string name="radioInfo_display_dbm">"dBm"</string>
+ <string name="radioInfo_display_asu">"asu"</string>
+ <string name="radioInfo_lac">"LAC"</string>
+ <string name="radioInfo_cid">"CID"</string>
+ <string name="sdcard_unmount">"Sd-kaart vrijgeven"</string>
+ <string name="small_font">"Klein"</string>
+ <string name="medium_font">"Normaal"</string>
+ <string name="large_font">"Groot"</string>
+ <string name="font_size_save">"OK"</string>
+ <string name="sdcard_setting">"Sd-kaart"</string>
+ <string name="screen_off_timeout_label">"Scherm uit time-out"</string>
+ <string name="stay_on">"Ingeschakeld laten als aangesloten"</string>
+ <string name="app_launcher_newView_text">"Nieuwe AppLauncher"</string>
+ <string name="battery_info_status_label">"Batterijstatus:"</string>
+ <string name="battery_info_scale_label">"Batterijschaal:"</string>
+ <string name="battery_info_level_label">"Batterijniveau:"</string>
+ <string name="battery_info_health_label">"Batterijstatus:"</string>
+ <string name="battery_info_technology_label">"Batterijtechnologie:"</string>
+ <string name="battery_info_voltage_label">"Batterijvoltage:"</string>
+ <string name="battery_info_voltage_units">"mV"</string>
+ <string name="battery_info_temperature_label">"Batterijtemperatuur:"</string>
+ <string name="battery_info_temperature_units">"° C"</string>
+ <!-- no translation found for battery_info_uptime (1195623257533912354) -->
+ <skip />
+ <!-- no translation found for battery_info_awake_battery (1529944627925423756) -->
+ <skip />
+ <!-- no translation found for battery_info_awake_plugged (7272044960586959459) -->
+ <skip />
+ <!-- no translation found for battery_info_screen_on (832651425042656482) -->
+ <skip />
+ <string name="battery_info_status_unknown">"Onbekend"</string>
+ <string name="battery_info_status_charging">"opladen"</string>
+ <string name="battery_info_status_charging_ac">"(wisselstroom)"</string>
+ <string name="battery_info_status_charging_usb">"(Usb)"</string>
+ <string name="battery_info_status_discharging">"Bezig met ontladen"</string>
+ <string name="battery_info_status_not_charging">"Wordt niet opgeladen"</string>
+ <string name="battery_info_status_full">"Vol"</string>
+ <string name="battery_info_health_unknown">"Onbekend"</string>
+ <string name="battery_info_health_good">"Goed"</string>
+ <string name="battery_info_health_overheat">"Oververhitting"</string>
+ <string name="battery_info_health_dead">"Dood"</string>
+ <string name="battery_info_health_over_voltage">"Spanning te hoog"</string>
+ <string name="battery_info_health_unspecified_failure">"Onbekende fout"</string>
+ <string name="bluetooth">"Bluetooth"</string>
+ <string name="bluetooth_stopping">"Bluetooth wordt gestopt…"</string>
+ <string name="bluetooth_disabled">"Bluetooth is uitgeschakeld"</string>
+ <string name="bluetooth_enabled">"Bluetooth is nu ingeschakeld"</string>
+ <string name="bluetooth_enabling">"Bluetooth wordt ingeschakeld…"</string>
+ <string name="bluetooth_visibility">"Zichtbaarheid"</string>
+ <string name="bluetooth_is_discoverable">"Toestel is zichtbaar"</string>
+ <string name="bluetooth_not_discoverable">"Toestel is niet zichtbaar"</string>
+ <string name="bluetooth_devices">"Bluetooth-apparaten"</string>
+ <string name="bluetooth_device_name">"Apparaatnaam"</string>
+ <string name="bluetooth_name_not_set">"Geen naam ingesteld, accountnaam wordt gebruikt"</string>
+ <string name="bluetooth_scan_for_devices">"Zoeken naar Bluetooth-apparaten"</string>
+ <string name="bluetooth_clear_list">"Apparaatlijst wissen"</string>
+ <string name="bluetooth_disconnect_blank">"Verbinding met %1$s verbreken?"</string>
+ <string name="bluetooth_connected">"Verbonden"</string>
+ <!-- no translation found for bluetooth_disconnected (779512372559332317) -->
+ <skip />
+ <!-- no translation found for bluetooth_disconnecting (613305857810977890) -->
+ <skip />
+ <string name="bluetooth_connecting">"Verbinden…"</string>
+ <string name="bluetooth_unknown">"Onbekend"</string>
+ <string name="bluetooth_not_connected">"Niet verbonden"</string>
+ <!-- no translation found for bluetooth_failed_to_enable (10261849074413402) -->
+ <skip />
+ <!-- no translation found for bluetooth_pairing (8284273555047880444) -->
+ <skip />
+ <!-- no translation found for failed_to_pair (5265027255173301781) -->
+ <skip />
+ <string name="failed_to_connect">"Geen verbinding gemaakt met "</string>
+ <string name="bluetooth_paired">"Gekoppeld"</string>
+ <!-- no translation found for bluetooth_paired_not_nearby (2890021978719716438) -->
+ <skip />
+ <string name="bluetooth_device">"handsfree / headset"</string>
+ <!-- no translation found for bluetooth_disconnect (4070053533691322466) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect (6123567524009555372) -->
+ <skip />
+ <!-- no translation found for bluetooth_unpair (6786377316984999718) -->
+ <skip />
+ <!-- no translation found for bluetooth_pair (6433088623778842494) -->
+ <skip />
+ <string name="progress_scanning">"Scannen"</string>
+ <!-- no translation found for bluetooth_notif_ticker (6269529534945974964) -->
+ <skip />
+ <!-- no translation found for bluetooth_notif_title (3790273649365187417) -->
+ <skip />
+ <!-- no translation found for bluetooth_notif_message (3713615470961259613) -->
+ <skip />
+ <string name="date_and_time">"Datum &amp; Tijd"</string>
+ <!-- no translation found for date_time_12_hour_sample (3346099183513673921) -->
+ <skip />
+ <!-- no translation found for date_time_24_hour_sample (2930431568836213699) -->
+ <skip />
+ <string name="choose_timezone">"Tijdzone selecteren"</string>
+ <string name="display_preview_label">"Voorbld:"</string>
+ <string name="display_font_size_label">"Lettergrootte:"</string>
+ <string name="intent_sender_data_label">"Gegevens:"</string>
+ <string name="intent_sender_sendbroadcast_text">"Uitzending versturen"</string>
+ <string name="intent_sender_action_label">"Actie:"</string>
+ <string name="intent_sender_startactivity_text">"Activiteit starten"</string>
+ <string name="intent_sender_resource_label">"Netwerkbron:"</string>
+ <string name="intent_sender_account_label">"Account:"</string>
+ <string name="keyguard_pw_mod_text">"Blokkeringspatroon selecteren"</string>
+ <string name="keyguard_pin_mod_text">"Pincode wijzigen"</string>
+ <string name="keyguard_label">"Toetsbescherming"</string>
+ <string name="keyguard_sim_pin_label">"SIM-pincode"</string>
+ <string name="keyguard_password_old_password_error_text">"Het oude wachtwoord is onjuist! Probeer het opnieuw"</string>
+ <string name="keyguard_password_button_text">"OK"</string>
+ <string name="keyguard_password_confirm_new_label">"Bevestig nieuw wachtwoord:"</string>
+ <string name="keyguard_password_new_label">"Nieuw wachtwoord:"</string>
+ <string name="keyguard_password_old_label">"Oud wachtwoord:"</string>
+ <string name="keyguard_password_mismatch_error_text">"De twee wachtwoorden verschillen! Voer ze nogmaals in"</string>
+ <string name="proxy_clear_text">"Wissen"</string>
+ <string name="proxy_port_label">"Poort"</string>
+ <string name="proxy_defaultView_text">"Beginwaarden"</string>
+ <string name="proxy_action_text">"Opslaan"</string>
+ <string name="proxy_hostname_label">"Hostnaam"</string>
+ <string name="proxy_error">"Let op!"</string>
+ <string name="proxy_error_dismiss">"OK"</string>
+ <string name="proxy_error_invalid_host">"De opgegeven hostnaam is ongeldig"</string>
+ <string name="proxy_error_empty_port">"U moet het poortveld voltooien"</string>
+ <string name="proxy_error_empty_host_set_port">"Het poortveld moet blanco zijn als het hostveld blanco is"</string>
+ <string name="proxy_error_invalid_port">"De opgegeven poort is ongeldig"</string>
+ <string name="radio_info_signal_location_label">"Locatie:"</string>
+ <string name="radio_info_neighboring_location_label">"Omgevings-CID:"</string>
+ <string name="radio_info_data_attempts_label">"Gegevenspogingen:"</string>
+ <string name="radio_info_imsi_label">"IMSI:"</string>
+ <string name="radio_info_gprs_service_label">"Gprs-dienst:"</string>
+ <string name="radio_info_roaming_label">"Roaming:"</string>
+ <string name="radio_info_imei_label">"IMEI:"</string>
+ <string name="radio_info_call_redirect_label">"Gesprek doorsturen:"</string>
+ <string name="radio_info_ppp_resets_label">"Aantal PPP-resets sinds opstarten:"</string>
+ <string name="radio_info_gsm_disconnects_label">"Gsm-verbinding verbreken:"</string>
+ <string name="radio_info_current_network_label">"Huidig netwerk:"</string>
+ <string name="radio_info_data_successes_label">"Gegevenssuccessen:"</string>
+ <string name="radio_info_ppp_received_label">"PPP ontvangen:"</string>
+ <string name="radio_info_gsm_service_label">"Gsm-dienst:"</string>
+ <string name="radio_info_signal_strength_label">"Signaalsterkte:"</string>
+ <string name="radio_info_call_status_label">"Oproepstatus:"</string>
+ <string name="radio_info_ppp_sent_label">"PPP verzonden:"</string>
+ <string name="radio_info_radio_resets_label">"Radio resets:"</string>
+ <string name="radio_info_message_waiting_label">"Bericht wachtend op behandeling:"</string>
+ <string name="radio_info_phone_number_label">"Telefoonnummer:"</string>
+ <string name="radio_info_band_mode_label">"Radioband selecteren"</string>
+ <string name="radio_info_network_type_label">"Netwerktype:"</string>
+ <string name="radio_info_set_perferred_label">"Voorkeursnetwerktype instellen:"</string>
+ <!-- no translation found for radio_info_ping_ipaddr (7229811664688502621) -->
+ <skip />
+ <!-- no translation found for radio_info_ping_hostname (7817617877155199848) -->
+ <skip />
+ <!-- no translation found for radio_info_http_client_test (5100483824350561339) -->
+ <skip />
+ <!-- no translation found for radio_info_toggle_ciph_label (2705975697585878388) -->
+ <skip />
+ <!-- no translation found for ping_test_label (99396772665008247) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_label (6577522217730406517) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_update_label (6471155265532972448) -->
+ <skip />
+ <!-- no translation found for radio_info_smsc_refresh_label (4334057389927982364) -->
+ <skip />
+ <string name="band_mode_title">"Gsm/umts-band instellen"</string>
+ <string name="band_mode_loading">"Bandlijst wordt geladen…"</string>
+ <string name="band_mode_set">"Instellen"</string>
+ <string name="band_mode_failed">"Mislukt"</string>
+ <string name="band_mode_succeeded">"Geslaagd"</string>
+ <string name="ringer_volume_ringer_mode_label">"Beltoonmodus"</string>
+ <string name="ringer_volume_screen_increasing_text">"Belvolume verhogen"</string>
+ <string name="ringer_volume_ringtone_label">"Beltoon"</string>
+ <string name="ringer_volume_instructions">"Gebruik volumetoetsen om het belvolume aan te passen"</string>
+ <string name="sdcard_changes_instructions">"Veranderingen worden toegepast zodra de usb-kabel opnieuw wordt aangesloten"</string>
+ <string name="sdcard_settings_screen_mass_storage_text">"Usb-massaopslag inschakelen"</string>
+ <string name="sdcard_settings_total_bytes_label">"Totaal aantal bytes:"</string>
+ <string name="sdcard_settings_not_present_status">"Geen sd-kaart"</string>
+ <string name="sdcard_settings_available_bytes_label">"Beschikbare bytes:"</string>
+ <string name="sdcard_settings_mass_storage_status">"Sd-kaart wordt gebruikt als apparaat voor massaopslag"</string>
+ <string name="sdcard_settings_unmounted_status">"Nu kunt u de sd-kaart veilig verwijderen"</string>
+ <string name="sdcard_settings_bad_removal_status">"Sd-kaart is verwijderd terwijl deze nog in gebruik was!"</string>
+ <string name="sdcard_settings_used_bytes_label">"Gebruikt aantal bytes:"</string>
+ <string name="sdcard_settings_scanning_status">"Sd-kaart wordt gescand op media…"</string>
+ <string name="sdcard_settings_read_only_status">"Sd-kaart is alleen-lezen"</string>
+ <string name="sdcard_removal_alert_title">"Onveilige verwijdering van sd-kaart"</string>
+ <string name="sdcard_unmountable_alert_title">"Sd-kaart onleesbaar"</string>
+ <string name="telephony_user_label">"Gebruiker:"</string>
+ <string name="telephony_server_label">"Server:"</string>
+ <string name="telephony_name_label">"Naam:"</string>
+ <string name="telephony_mmsc_label">"MMSC:"</string>
+ <string name="telephony_apn_label">"APN:"</string>
+ <string name="telephony_mcc_label">"MCC:"</string>
+ <string name="telephony_port_label">"Poort:"</string>
+ <string name="telephony_password_label">"Wachtwoord :"</string>
+ <string name="telephony_proxy_label">"Proxy:"</string>
+ <string name="telephony_mnc_label">"MNC:"</string>
+ <string name="telephony_mmsproxy_label">"MMS-proxy:"</string>
+ <string name="telephony_mmsport_label">"MMS-poort:"</string>
+ <string name="next_label">"Volgende"</string>
+ <string name="language_picker_title">"Taal"</string>
+ <!-- no translation found for select_your_language (9081963472187973531) -->
+ <skip />
+ <string name="activity_picker_label">"Activiteit selecteren"</string>
+ <string name="device_info_label">"Toestelinfo"</string>
+ <string name="battery_info_label">"Batterij-info"</string>
+ <string name="display_label">"Scherm"</string>
+ <string name="phone_info_label">"Telefooninfo"</string>
+ <string name="sd_card_settings_label">"Sd-kaart"</string>
+ <string name="proxy_settings_label">"Proxyinstellingen"</string>
+ <string name="cancel">"Annuleren"</string>
+ <string name="settings_label">"Instellingen"</string>
+ <string name="airplane_mode">"Vliegtuigmodus"</string>
+ <!-- no translation found for airplane_mode_summary (3500557633417506553) -->
+ <skip />
+ <!-- no translation found for airplane_mode_turning_on (1243134862683209663) -->
+ <skip />
+ <!-- no translation found for airplane_mode_turning_off (2291183932542256190) -->
+ <skip />
+ <!-- no translation found for radio_controls_title (4981652151494753702) -->
+ <skip />
+ <!-- no translation found for radio_controls_summary (9105526969569292926) -->
+ <skip />
+ <string name="date_and_time_settings_title">"Datum &amp; Tijd"</string>
+ <!-- no translation found for date_and_time_settings_summary (3489093199543794055) -->
+ <skip />
+ <string name="date_time_auto">"Auto"</string>
+ <string name="date_time_auto_summaryOn">"Gebruik door netwerk geleverde waardes"</string>
+ <string name="date_time_auto_summaryOff">"Gebruik door gebruikers gekozen waardes"</string>
+ <string name="date_time_24hour">"24-uurs indeling"</string>
+ <string name="date_time_set_time">"Tijd instellen"</string>
+ <string name="date_time_set_timezone">"Tijdzone selecteren"</string>
+ <string name="date_time_set_date">"Datum instellen"</string>
+ <string name="date_time_date_format">"Datumindeling instellen"</string>
+ <!-- no translation found for zone_list_menu_sort_alphabetically (8983103881342552870) -->
+ <skip />
+ <!-- no translation found for zone_list_menu_sort_by_timezone (7025442915093990469) -->
+ <skip />
+ <!-- no translation found for security_settings_title (969550777120624897) -->
+ <skip />
+ <!-- no translation found for security_settings_summary (3202445632951595923) -->
+ <skip />
+ <!-- no translation found for security_passwords_title (4466520735598079063) -->
+ <skip />
+ <string name="bluetooth_quick_toggle_title">"Bluetooth"</string>
+ <!-- no translation found for bluetooth_quick_toggle_summary (2292894901949724405) -->
+ <skip />
+ <!-- no translation found for bluetooth_settings (1545097653816106117) -->
+ <skip />
+ <string name="bluetooth_settings_title">"Bluetooth-instellingen"</string>
+ <!-- no translation found for bluetooth_settings_summary (1419697742707330821) -->
+ <skip />
+ <string name="bluetooth_pin_entry">"Bluetooth-pincode invoeren"</string>
+ <string name="bluetooth_device_info">"Bluetooth-toestelinfo"</string>
+ <string name="bluetooth_pairing_msg">"Koppelen…"</string>
+ <string name="bluetooth_enter_pin_msg">"Voer pincode in voor"</string>
+ <string name="bluetooth_new_data">"Voer nieuwe gegevens in"</string>
+ <string name="bluetooth_new_data_confirm">"OK"</string>
+ <string name="bluetooth_new_data_cancel">"Annuleren"</string>
+ <string name="bluetooth_scan_for_new_devices">"Bezig met scannen naar nieuwe toestellen…"</string>
+ <string name="bluetooth_discoverability_panel_title">"Maak me…"</string>
+ <string name="bluetooth_discoverable">"Zichtbaar &amp; met verbinding"</string>
+ <string name="bluetooth_connectable">"Alleen waarmee verbinding mogelijk is"</string>
+ <string name="bluetooth_neither">"Zichtbaar noch met verbinding"</string>
+ <!-- no translation found for bluetooth_preference_scan_title (5457824526570506576) -->
+ <skip />
+ <!-- no translation found for bluetooth_preference_scan_summary (4169248439102381141) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect (1360133741981139570) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect (3848550418295778426) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_pair_connect (3526057462723016574) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_unpair (1842004154350000288) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_disconnect_unpair (302606151874724466) -->
+ <skip />
+ <!-- no translation found for bluetooth_device_context_connect_advanced (5004355397163127842) -->
+ <skip />
+ <!-- no translation found for bluetooth_connect_specific_profiles_title (8557599374974072579) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_a2dp (6848174297822591204) -->
+ <skip />
+ <!-- no translation found for bluetooth_profile_headset (8660680578951214915) -->
+ <skip />
+ <string name="wifi">"Wi-Fi"</string>
+ <!-- no translation found for wifi_quick_toggle_title (4404851801229148146) -->
+ <skip />
+ <!-- no translation found for wifi_quick_toggle_summary (5254705029759236850) -->
+ <skip />
+ <string name="wifi_settings">"Wifi-instellingen"</string>
+ <!-- no translation found for wifi_settings_category (610287013958209636) -->
+ <skip />
+ <!-- no translation found for wifi_settings_summary (8789964612748859011) -->
+ <skip />
+ <string name="forget_network">"Vergeten"</string>
+ <!-- no translation found for wifi_status (4374358089273446404) -->
+ <skip />
+ <!-- no translation found for wifi_link_speed (8766462457818203791) -->
+ <skip />
+ <!-- no translation found for wifi_signal_3 (1264702582845283580) -->
+ <skip />
+ <!-- no translation found for wifi_signal_2 (3765197678751351272) -->
+ <skip />
+ <!-- no translation found for wifi_signal_1 (3469786868912545422) -->
+ <skip />
+ <!-- no translation found for wifi_signal_0 (7285670709111185231) -->
+ <skip />
+ <string name="security">"Beveiliging"</string>
+ <!-- no translation found for wifi_security_open (6529463996240023139) -->
+ <skip />
+ <!-- no translation found for wifi_security_wep (8543279149057388909) -->
+ <skip />
+ <!-- no translation found for wifi_security_wpa (7229647924366572707) -->
+ <skip />
+ <!-- no translation found for wifi_security_wpa2 (641020427516679969) -->
+ <skip />
+ <!-- no translation found for wifi_security_unknown (7700764937580224930) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_open (7105261201983314526) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wep (2018232984976185738) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wpa (7240649761750328761) -->
+ <skip />
+ <!-- no translation found for wifi_security_verbose_wpa2 (5470387821577814216) -->
+ <skip />
+ <string name="ip_address">"Ip-adres"</string>
+ <string name="signal">"Signaalsterkte"</string>
+ <!-- no translation found for wifi_starting (380585178092358776) -->
+ <skip />
+ <!-- no translation found for wifi_stopping (1130828572786743854) -->
+ <skip />
+ <!-- no translation found for wifi_error (7223451684597210919) -->
+ <skip />
+ <string name="error_starting">"Fout bij starten van wifi"</string>
+ <string name="error_stopping">"Fout bij stoppen van wifi"</string>
+ <string name="error_scanning">"Fout bij scannen naar netwerken"</string>
+ <string name="error_connecting">"Fout bij maken van netwerkverbinding"</string>
+ <string name="error_saving">"Fout bij opslaan netwerk"</string>
+ <string name="connect">"Verbinden"</string>
+ <string name="connect_to_blank">"Verbinding maken met %1$s"</string>
+ <string name="please_type_passphrase">"Voer de draadloze wachtwoordcode in"</string>
+ <!-- no translation found for please_type_hex_key (3792966437690051423) -->
+ <skip />
+ <!-- no translation found for wifi_show_password (2142204324333077532) -->
+ <skip />
+ <string name="scan_wifi">"Scannen"</string>
+ <string name="summary_not_in_range">"Niet in bereik"</string>
+ <string name="summary_remembered">"Onthouden"</string>
+ <!-- no translation found for summary_connection_failed (5466501123715222542) -->
+ <skip />
+ <string name="wifi_access_points">"Netwerken"</string>
+ <!-- no translation found for wifi_type_ssid (4389276980911820577) -->
+ <skip />
+ <!-- no translation found for wifi_security (8115513846744543151) -->
+ <skip />
+ <!-- no translation found for wifi_save_config (1041957548332322297) -->
+ <skip />
+ <!-- no translation found for wifi_password_unchanged (5583782979192657008) -->
+ <skip />
+ <!-- no translation found for wifi_add_other_network (914072465709281633) -->
+ <skip />
+ <!-- no translation found for wifi_notify_open_networks (3091942233631075516) -->
+ <skip />
+ <!-- no translation found for wifi_notify_open_networks_summary (1793737931132127488) -->
+ <skip />
+ <!-- no translation found for wifi_password_incorrect_error (8656138222468900361) -->
+ <skip />
+ <!-- no translation found for wifi_generic_connection_error (4414845075108763948) -->
+ <skip />
+ <!-- no translation found for wifi_menu_advanced (7729886219986221918) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_titlebar (6646153875184353089) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_menu_save (5525488681356054899) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_menu_cancel (4123436217014637229) -->
+ <skip />
+ <!-- no translation found for wifi_ip_settings_invalid_ip (1648124374575025870) -->
+ <skip />
+ <!-- no translation found for wifi_use_static_ip (4076793026334955338) -->
+ <skip />
+ <!-- no translation found for wifi_ip_address (6067958502872259392) -->
+ <skip />
+ <!-- no translation found for wifi_dns1 (7502077213876989613) -->
+ <skip />
+ <!-- no translation found for wifi_dns2 (3296825469895827273) -->
+ <skip />
+ <!-- no translation found for wifi_gateway (393330487055540831) -->
+ <skip />
+ <!-- no translation found for wifi_netmask (6024777305439519433) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_connect (3348366738100644008) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_forget (5844111744505938081) -->
+ <skip />
+ <!-- no translation found for wifi_context_menu_change_password (7074463790535015442) -->
+ <skip />
+ <!-- no translation found for wifi_advanced_titlebar (7352048185262676955) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_title (4302664253747096207) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_summary (5137058932628594680) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_error (581404310349899492) -->
+ <skip />
+ <!-- no translation found for wifi_setting_num_channels_channel_phrase (8341967925173918983) -->
+ <skip />
+ <string name="fragment_status_scanning">"Scannen"</string>
+ <string name="fragment_status_connecting">"Bezig met verbinding maken met %1$s"</string>
+ <string name="fragment_status_authenticating">"Controleren met %1$s"</string>
+ <string name="fragment_status_obtaining_ip">"Ip-adres wordt verkregen van %1$s"</string>
+ <string name="fragment_status_connected">"Verbonden met %1$s"</string>
+ <string name="fragment_status_disconnecting">"Verbinding met %1$s wordt verbroken"</string>
+ <string name="fragment_status_disconnected">"Verbinding verbroken"</string>
+ <string name="fragment_status_failed">"Mislukt"</string>
+ <string name="status_scanning">"Scannen"</string>
+ <string name="status_connecting">"Verbinding"</string>
+ <string name="status_authenticating">"Bezig met verifiëren"</string>
+ <string name="status_obtaining_ip">"Bezig met verkrijgen van ip-adres"</string>
+ <string name="status_connected">"Verbonden"</string>
+ <string name="status_disconnecting">"Verbinding wordt verbroken"</string>
+ <string name="status_disconnected">"Verbinding verbroken"</string>
+ <string name="status_failed">"Mislukt"</string>
+ <!-- no translation found for sound_and_display_settings (4749118288236939460) -->
+ <skip />
+ <!-- no translation found for sound_settings (2706184235211157339) -->
+ <skip />
+ <!-- no translation found for sound_and_display_settings_summary (3672623202659031178) -->
+ <skip />
+ <string name="silent_mode_title">"Stil"</string>
+ <!-- no translation found for silent_mode_summary (6135093989634963053) -->
+ <skip />
+ <string name="ringtone_title">"Telefoonbeltoon"</string>
+ <!-- no translation found for ringtone_summary (1766080371183553822) -->
+ <skip />
+ <string name="ring_volume_title">"Belvolume"</string>
+ <!-- no translation found for ring_volume_summary (8107485240454889544) -->
+ <skip />
+ <!-- no translation found for vibrate_title (4376574310180696114) -->
+ <skip />
+ <!-- no translation found for vibrate_summary (6788068739601216797) -->
+ <skip />
+ <string name="notification_sound_title">"Meldingsbeltonen"</string>
+ <!-- no translation found for notification_sound_summary (7617168477811163700) -->
+ <skip />
+ <string name="notification_sound_dialog_title">"Meldingsbeltonen selecteren"</string>
+ <!-- no translation found for media_volume_title (1693540506432790482) -->
+ <skip />
+ <!-- no translation found for media_volume_summary (7399719776785079493) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_title (5173416183471867551) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_summary_on (7206798183944836534) -->
+ <skip />
+ <!-- no translation found for dtmf_tone_enable_summary_off (1555390648905350809) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_title (1955885794556255214) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_summary_on (1491009278452582375) -->
+ <skip />
+ <!-- no translation found for sound_effects_enable_summary_off (1932117674347216086) -->
+ <skip />
+ <string name="sync_settings">"Synchronisatie"</string>
+ <!-- no translation found for sync_settings_summary (2105151329390814783) -->
+ <skip />
+ <!-- no translation found for sync_too_many_deletes (5404332736593108449) -->
+ <skip />
+ <!-- no translation found for sync_automatically (1757054007777364379) -->
+ <skip />
+ <string name="sync_enabled">"Synchroniseren met Google-server ingeschakeld"</string>
+ <string name="sync_disabled">"Uit"</string>
+ <string name="sync_menu_sync_now">"Nu synchroniseren"</string>
+ <string name="sync_menu_sync_cancel">"Synchroniseren annuleren"</string>
+ <string name="sync_gmail">"Gmail"</string>
+ <string name="sync_calendar">"Agenda"</string>
+ <string name="sync_contacts">"Contacten"</string>
+ <!-- no translation found for sync_too_many_deletes_desc (4152554451720380120) -->
+ <skip />
+ <!-- no translation found for sync_really_delete (8529530859370540061) -->
+ <skip />
+ <!-- no translation found for sync_undo_deletes (5506677219430968015) -->
+ <skip />
+ <!-- no translation found for sync_do_nothing (8346666920786786758) -->
+ <skip />
+ <!-- no translation found for sync_is_failing (427555999473172925) -->
+ <skip />
+ <!-- no translation found for sync_plug (7544937220884084907) -->
+ <skip />
+ <string name="display_settings">"Scherm"</string>
+ <!-- no translation found for animations_title (8735876378664711924) -->
+ <skip />
+ <!-- no translation found for animations_summary_on (4910047473170373768) -->
+ <skip />
+ <!-- no translation found for animations_summary_off (7454248311417075336) -->
+ <skip />
+ <string name="brightness">"Helderheid"</string>
+ <!-- no translation found for screen_timeout (8939204183998677539) -->
+ <skip />
+ <string name="dim_screen">"Scherm dimmen"</string>
+ <string name="sim_lock_settings">"SIM-kaartblokkering"</string>
+ <!-- no translation found for sim_lock_settings_category (5039441655358781230) -->
+ <skip />
+ <string name="sim_lock_settings_title">"SIM-blokkeerinstellingen"</string>
+ <string name="sim_pin_toggle">"SIM-kaartblokkering"</string>
+ <string name="sim_lock_on">"SIM-kaartblokkering aan"</string>
+ <string name="sim_lock_off">"SIM-kaartblokkering uit"</string>
+ <string name="sim_pin_change">"Pincode veranderen"</string>
+ <string name="sim_enter_pin">"SIM-pincode invoeren"</string>
+ <string name="sim_enable_sim_lock">"SIM-kaartblokkering inschakelen"</string>
+ <string name="sim_disable_sim_lock">"SIM-kaartblokkering uitschakelen"</string>
+ <string name="sim_enter_old">"Oude pincode invoeren"</string>
+ <string name="sim_enter_new">"Nieuwe pincode invoeren"</string>
+ <string name="sim_reenter_new">"Voer nieuwe pincode opnieuw in"</string>
+ <string name="sim_change_pin">"SIM-pincode wijzigen"</string>
+ <string name="sim_bad_pin">"Let op: Onjuiste pincode"</string>
+ <string name="sim_pins_dont_match">"Let op: Pincodes verschillen"</string>
+ <string name="sim_change_failed">"Veranderen van pincode mislukt"\n"Wellicht onjuiste pincode"</string>
+ <string name="sim_change_succeeded">"Veranderen van SIM-pincode gelukt"</string>
+ <string name="sim_lock_failed">"Veranderen blokkeringsstatus van SIM-kaart mislukt"\n"Wellicht onjuist pincode"</string>
+ <string name="sim_enter_ok">"OK"</string>
+ <string name="sim_enter_cancel">"Annuleren"</string>
+ <string name="device_info_settings">"Toestelinfo"</string>
+ <!-- no translation found for system_update_settings_list_item_title (6730200310196695815) -->
+ <skip />
+ <!-- no translation found for system_update_settings_list_item_summary (6739352515982816664) -->
+ <skip />
+ <string name="firmware_version">"Firmwareversie"</string>
+ <!-- no translation found for model_number (4107796374489189882) -->
+ <skip />
+ <string name="baseband_version">"Basebandversie"</string>
+ <!-- no translation found for kernel_version (55378504731737055) -->
+ <skip />
+ <!-- no translation found for build_number (1198654854394859525) -->
+ <skip />
+ <!-- no translation found for device_info_not_available (6218382614449625943) -->
+ <skip />
+ <!-- no translation found for device_status_activity_title (7855799759928692423) -->
+ <skip />
+ <string name="device_status">"Status"</string>
+ <string name="device_status_summary">"IMEI, telefoonnummer, signaal, enz."</string>
+ <!-- no translation found for storage_settings_title (7861753874184164833) -->
+ <skip />
+ <!-- no translation found for storage_settings_summary (1416818376253802300) -->
+ <skip />
+ <string name="status_number">"Telefoonnummer"</string>
+ <string name="status_network_type">"Netwerktype"</string>
+ <string name="status_data_state">"Gegevenstoegang"</string>
+ <string name="status_service_state">"Dienststatus"</string>
+ <string name="status_signal_strength">"Signaalsterkte"</string>
+ <string name="status_roaming">"Roaming"</string>
+ <string name="status_operator">"Netwerk"</string>
+ <!-- no translation found for status_wifi_mac_address (6992831729694423293) -->
+ <skip />
+ <!-- no translation found for status_bt_address (504373592762785867) -->
+ <skip />
+ <!-- no translation found for status_unavailable (6051510065892966154) -->
+ <skip />
+ <string name="status_up_time">"Tijd geactiveerd"</string>
+ <string name="status_awake_time">"Opwektijd"</string>
+ <!-- no translation found for internal_memory (7561409402817962159) -->
+ <skip />
+ <!-- no translation found for sd_memory (1795406535114313767) -->
+ <skip />
+ <!-- no translation found for memory_available (2899158225295363424) -->
+ <skip />
+ <!-- no translation found for memory_size (427803224818498885) -->
+ <skip />
+ <!-- no translation found for sd_eject (5921913949386442101) -->
+ <skip />
+ <string name="sd_unavailable">"Niet beschikbaar"</string>
+ <string name="read_only">" (Alleen lezen)"</string>
+ <!-- no translation found for battery_status_title (4908729478929871241) -->
+ <skip />
+ <!-- no translation found for battery_level_title (7696801820825704716) -->
+ <skip />
+ <string name="apn_settings">"APN"</string>
+ <string name="apn_edit">"Toegangspunt bewerken"</string>
+ <string name="apn_not_set">"&lt;Niet ingesteld&gt;"</string>
+ <string name="apn_name">"Naam"</string>
+ <string name="apn_apn">"APN"</string>
+ <string name="apn_http_proxy">"Proxy"</string>
+ <string name="apn_http_port">"Poort"</string>
+ <string name="apn_user">"Gebruikersnaam"</string>
+ <string name="apn_password">"Wachtwoord"</string>
+ <string name="apn_server">"Server"</string>
+ <string name="apn_mmsc">"MMSC"</string>
+ <string name="apn_mms_proxy">"MMS-proxy"</string>
+ <string name="apn_mms_port">"MMS-poort"</string>
+ <string name="apn_mcc">"MCC"</string>
+ <string name="apn_mnc">"MNC"</string>
+ <!-- no translation found for apn_type (2506383481268652319) -->
+ <skip />
+ <string name="menu_delete">"APN verwijderen"</string>
+ <string name="menu_new">"Nieuwe APN"</string>
+ <string name="menu_save">"Opslaan"</string>
+ <string name="menu_cancel">"Wissen"</string>
+ <string name="error_title">"Ongeldige gegevens"</string>
+ <string name="error_name_empty">"Naam kan niet blanco zijn"</string>
+ <string name="error_apn_empty">"APN kan niet blanco zijn"</string>
+ <string name="error_mcc_not3">"MMC-veld moet 3 tekens zijn"</string>
+ <string name="error_mnc_not23">"MMC-veld moet 2 of 3 tekens zijn"</string>
+ <string name="master_clear_title">"Hoofd wissen"</string>
+ <!-- no translation found for master_clear_summary (2468534382451112879) -->
+ <skip />
+ <string name="master_clear_desc">"Herstelt de oorspronkelijke fabriekswaarden van het toestel, waarbij alle gegevens en gedownloade toepassingen worden gewist"</string>
+ <string name="master_clear_button_text">"Apparaat opnieuw instellen"</string>
+ <string name="master_clear_final_desc">"Toestel resetten, waarbij alle gegevens en toepassingen worden gewist? Handeling kan niet worden teruggedraaid!"</string>
+ <string name="master_clear_final_button_text">"Alles wissen"</string>
+ <string name="master_clear_gesture_prompt">"Teken het blokkeringspatroon"</string>
+ <string name="master_clear_gesture_explanation">"U moet het blokkeringspatroon tekeken om een toestelreset goed te keuren"</string>
+ <string name="master_clear_failed">"Geen reset uitgevoerd omdat de service Systeem wissen niet beschikbaar is"</string>
+ <string name="call_settings_title">"Belinstellingen"</string>
+ <!-- no translation found for call_settings_summary (3446216896482844237) -->
+ <skip />
+ <string name="network_settings_title">"Netwerkinstellingen"</string>
+ <!-- no translation found for network_settings_summary (8031949240036716110) -->
+ <skip />
+ <!-- no translation found for location_title (4501749309437121375) -->
+ <skip />
+ <string name="location_network_based">"Gebaseerd op netwerk"</string>
+ <!-- no translation found for location_networks_disabled (7048471014395968941) -->
+ <skip />
+ <string name="location_neighborhood_level">"Nauwkeurigheid op buurtniveau"</string>
+ <string name="location_gps">"Gebaseerd op gps"</string>
+ <string name="location_street_level">"Nauwkeurigheid op straatniveau"</string>
+ <!-- no translation found for location_gps_disabled (4004885356658024277) -->
+ <skip />
+ <!-- no translation found for about_settings (1468182090257585152) -->
+ <skip />
+ <!-- no translation found for about_settings_summary (7669309646592260587) -->
+ <skip />
+ <!-- no translation found for legal_information (6712607847710471677) -->
+ <skip />
+ <!-- no translation found for contributors_title (4798193298012318879) -->
+ <skip />
+ <!-- no translation found for copyright_title (2179228277436615247) -->
+ <skip />
+ <!-- no translation found for license_title (819526735187376873) -->
+ <skip />
+ <!-- no translation found for terms_title (7807601861320706623) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_title (7912723098716795094) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_unavailable (2081311778550755077) -->
+ <skip />
+ <!-- no translation found for settings_license_activity_loading (1663818560123999889) -->
+ <skip />
+ <string name="lock_settings_title">"Blokkeergebaar"</string>
+ <string name="lockpattern_change_lock_pattern_label">"Patroon voor veranderen blokkering"</string>
+ <string name="lockpattern_need_to_unlock">"Opgeslagen patroon bevestigen:"</string>
+ <string name="lockpattern_need_to_unlock_wrong">"Onjuist! Nogmaals proberen:"</string>
+ <string name="lockpattern_recording_intro_header">"Teken een patroon om als codeblokkering te gebruiken:"</string>
+ <string name="lockpattern_recording_intro_footer">"Druk op Menu voor hulp"</string>
+ <string name="lockpattern_recording_inprogress">"Til de vinger op als u klaar bent"</string>
+ <!-- no translation found for lockpattern_recording_incorrect_too_short (8234374450664107990) -->
+ <skip />
+ <string name="lockpattern_pattern_entered_header">"U selecteerde:"</string>
+ <!-- no translation found for lockpattern_need_to_confirm (6414172006294337771) -->
+ <skip />
+ <string name="lockpattern_pattern_confirmed_header">"Het nieuwe blokkeringspatroon:"</string>
+ <string name="lockpattern_confirm_button_text">"Bevestigen"</string>
+ <string name="lockpattern_restart_button_text">"Opnieuw starten"</string>
+ <!-- no translation found for lockpattern_retry_button_text (7695474740059017745) -->
+ <skip />
+ <!-- no translation found for lockpattern_continue_button_text (1077275957953266837) -->
+ <skip />
+ <string name="lockpattern_settings_title">"Blokkeergebaar"</string>
+ <string name="lockpattern_settings_enable_title">"Blokkeergebaar"</string>
+ <string name="lockpattern_settings_enable_summary">"Gebaar vereisen voor vrijgeven"</string>
+ <string name="lockpattern_settings_enable_visible_pattern_title">"Zichtbaar patroon gebruiken"</string>
+ <string name="lockpattern_settings_choose_lock_pattern">"Patroon voor blokkeringsgebaar selecteren"</string>
+ <string name="lockpattern_settings_change_lock_pattern">"Gebaarpatroon voor veranderen blokkering"</string>
+ <string name="lockpattern_settings_help_how_to_record">"Het opnemen van een blokkeringspatroon"</string>
+ <string name="lockpattern_too_many_failed_confirmation_attempts_header">"Te veel onjuiste bevestigingspogingen"</string>
+ <string name="lockpattern_too_many_failed_confirmation_attempts_footer">"Probeer opnieuw over <xliff:g id="NUMBER">%d</xliff:g> seconden"</string>
+ <!-- no translation found for skip_button_label (4850708311344393218) -->
+ <skip />
+ <!-- no translation found for next_button_label (3149701380025478958) -->
+ <skip />
+ <!-- no translation found for lock_title (999106562425756837) -->
+ <skip />
+ <!-- no translation found for lock_intro_message (2382351248538397170) -->
+ <skip />
+ <!-- no translation found for lock_example_title (6261868148302088973) -->
+ <skip />
+ <!-- no translation found for lock_example_message (2583534765034914458) -->
+ <skip />
+ <!-- no translation found for manageapplications_settings_title (3359899792647354589) -->
+ <skip />
+ <!-- no translation found for applications_settings (6104314134883460574) -->
+ <skip />
+ <!-- no translation found for applications_settings_summary (7666960391957493763) -->
+ <skip />
+ <!-- no translation found for applications_settings_header (6167136604757235210) -->
+ <skip />
+ <!-- no translation found for install_applications (8586540661161378543) -->
+ <skip />
+ <!-- no translation found for install_unknown_applications (8694019339326383901) -->
+ <skip />
+ <!-- no translation found for install_all_warning (5826871395153503952) -->
+ <skip />
+ <!-- no translation found for manage_applications_title (8288310040777485758) -->
+ <skip />
+ <!-- no translation found for application_info_label (605192869687093760) -->
+ <skip />
+ <!-- no translation found for storage_label (8765276782501761971) -->
+ <skip />
+ <!-- no translation found for auto_launch_label (3546876666453498673) -->
+ <skip />
+ <!-- no translation found for permissions_label (3244346920180368862) -->
+ <skip />
+ <!-- no translation found for total_size_label (5016115699600749568) -->
+ <skip />
+ <!-- no translation found for application_size_label (5378963933449396413) -->
+ <skip />
+ <!-- no translation found for data_size_label (6038126657652457179) -->
+ <skip />
+ <!-- no translation found for uninstall_text (2322009518449651787) -->
+ <skip />
+ <!-- no translation found for clear_user_data_text (3586758620250813061) -->
+ <skip />
+ <!-- no translation found for auto_launch_enable_text (8228619838865933982) -->
+ <skip />
+ <!-- no translation found for auto_launch_disable_text (4696687016762486484) -->
+ <skip />
+ <!-- no translation found for clear_activities (2399981667625036009) -->
+ <skip />
+ <!-- no translation found for unknown (7966307317466394761) -->
+ <skip />
+ <!-- no translation found for sort_order_alpha (210746743398042077) -->
+ <skip />
+ <!-- no translation found for sort_order_size (2716777274377923612) -->
+ <skip />
+ <!-- no translation found for manage_space_text (3118726017144542336) -->
+ <skip />
+ <!-- no translation found for filter_apps_all (5819127882791374920) -->
+ <skip />
+ <!-- no translation found for filter_apps_third_party (8693065498520334174) -->
+ <skip />
+ <!-- no translation found for filter_apps_running (2019159142681656258) -->
+ <skip />
+ <!-- no translation found for loading (5170696093820794830) -->
+ <skip />
+ <!-- no translation found for recompute_size (8376294373548662083) -->
+ <skip />
+ <!-- no translation found for clear_data_dlg_title (2115093619616088799) -->
+ <skip />
+ <!-- no translation found for clear_data_dlg_text (3004273956481932846) -->
+ <skip />
+ <!-- no translation found for dlg_ok (2225130755859653348) -->
+ <skip />
+ <!-- no translation found for dlg_cancel (8597172015374919396) -->
+ <skip />
+ <!-- no translation found for app_not_found_dlg_title (6649900521951617898) -->
+ <skip />
+ <!-- no translation found for app_not_found_dlg_text (6893475426667174751) -->
+ <skip />
+ <!-- no translation found for clear_data_failed (3040984234884359027) -->
+ <skip />
+ <!-- no translation found for security_settings_desc (5898339748632998613) -->
+ <skip />
+ <!-- no translation found for default_app_desc (3475613003133497043) -->
+ <skip />
+ <!-- no translation found for computing_size (7350089935999085554) -->
+ <skip />
+ <!-- no translation found for invalid_size_value (3054945647487201471) -->
+ <skip />
+ <!-- no translation found for language_settings (7247557040404006341) -->
+ <skip />
+ <!-- no translation found for language_settings_summary (721948806318958691) -->
+ <skip />
+ <!-- no translation found for language_category (6646529166552376418) -->
+ <skip />
+ <!-- no translation found for text_category (3133311779500246731) -->
+ <skip />
+ <!-- no translation found for phone_language (4084332836028530631) -->
+ <skip />
+ <!-- no translation found for auto_replace (6134508433464846627) -->
+ <skip />
+ <!-- no translation found for auto_replace_summary (1016177921245107750) -->
+ <skip />
+ <!-- no translation found for auto_caps (6021984352657087728) -->
+ <skip />
+ <!-- no translation found for auto_caps_summary (4783973594319542220) -->
+ <skip />
+ <!-- no translation found for auto_punctuate (2819742922158924703) -->
+ <skip />
+ <!-- no translation found for auto_punctuate_summary (2664143621323054924) -->
+ <skip />
+ <!-- no translation found for show_password (2353636034424349266) -->
+ <skip />
+ <!-- no translation found for show_password_summary (3920555488855590831) -->
+ <skip />
+ <!-- no translation found for testing (555268605244514909) -->
+ <skip />
+ <!-- no translation found for testing_phone_info (8718517606602144606) -->
+ <skip />
+ <!-- no translation found for testing_battery_info (3826036256683980425) -->
+ <skip />
+ <!-- no translation found for quick_launch_title (5423323579273213815) -->
+ <skip />
+ <!-- no translation found for quick_launch_summary (1272194567210324017) -->
+ <skip />
+ <!-- no translation found for quick_launch_assign_application (5949445664563354321) -->
+ <skip />
+ <!-- no translation found for quick_launch_no_shortcut (5958195604101558965) -->
+ <skip />
+ <!-- no translation found for quick_launch_shortcut (1115195051591830635) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_dialog_title (5217130241215296612) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_dialog_message (3420665419624963430) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_ok_button (2442832413597511429) -->
+ <skip />
+ <!-- no translation found for quick_launch_clear_cancel_button (1437354385792055993) -->
+ <skip />
+ <!-- no translation found for quick_launch_display_mode_applications (6570683843184675363) -->
+ <skip />
+ <!-- no translation found for quick_launch_display_mode_shortcuts (6642750364678074004) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_title (1752662012056721926) -->
+ <skip />
+ <!-- no translation found for input_methods_settings_summary (5481367119142131313) -->
+ <skip />
+ <!-- no translation found for development_settings_title (4671731485005432632) -->
+ <skip />
+ <!-- no translation found for development_settings_summary (5518361138194831299) -->
+ <skip />
+ <!-- no translation found for enable_adb (7770070343289262572) -->
+ <skip />
+ <!-- no translation found for enable_adb_summary (1498997582065835981) -->
+ <skip />
+ <!-- no translation found for keep_screen_on (5805533478834516956) -->
+ <skip />
+ <!-- no translation found for keep_screen_on_summary (5703353541069794974) -->
+ <skip />
+ <!-- no translation found for allow_mock_location (6204808904743157937) -->
+ <skip />
+ <!-- no translation found for allow_mock_location_summary (3154837501223277592) -->
+ <skip />
</resources>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
deleted file mode 100644
index 19907b1..0000000
--- a/res/values-zh-rTW/strings.xml
+++ /dev/null
@@ -1,700 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="about_settings">關於電話</string>
- <string name="about_settings_summary">檢視合法資訊、電話狀態、軟體版本</string>
- <string name="activity_picker_label">選取活動</string>
- <string name="airplane_mode">飛安模式</string>
- <string name="airplane_mode_summary">選取以便停用所有無線連線</string>
- <string name="airplane_mode_turning_off">正在啟用無線連線\u2026</string>
- <string name="airplane_mode_turning_on">正在停用無線連線\u2026</string>
- <string name="android_id_label">Android ID</string>
- <string name="apn_apn">APN</string>
- <string name="apn_edit">編輯存取點</string>
- <string name="apn_http_port">連接埠</string>
- <string name="apn_http_proxy">Proxy</string>
- <string name="apn_label">APN</string>
- <string name="apn_mcc">MCC</string>
- <string name="apn_mms_port">多媒體簡訊連接埠</string>
- <string name="apn_mms_proxy">多媒體簡訊 Proxy</string>
- <string name="apn_mmsc">MMSC</string>
- <string name="apn_mnc">MNC</string>
- <string name="apn_name">名稱</string>
- <string name="apn_not_set">&lt;尚未設定&gt;</string>
- <string name="apn_password">密碼</string>
- <string name="apn_server">伺服器</string>
- <string name="apn_settings">APN</string>
- <string name="apn_type">APN 類型</string>
- <string name="apn_user">使用者名稱</string>
- <string name="app_launcher_newView_text">新增 AppLauncher</string>
- <string name="app_not_found_dlg_text"> 已安裝之應用程式的清單中找
-不到此應用程式。</string>
- <string name="app_not_found_dlg_title">找不到應用程式</string>
- <string name="application_info_label">應用程式資訊</string>
- <string name="application_size_label">應用程式</string>
- <string name="applications_settings">應用程式</string>
- <string name="applications_settings_header">應用程式設定</string>
- <string name="applications_settings_summary">管理應用程式,設定快速啟動捷徑</string>
- <string name="auto_caps">自動大寫</string>
- <string name="auto_caps_summary">句子首字母大寫</string>
- <string name="auto_launch_disable_text">無預設設定。</string>
- <string name="auto_launch_enable_text">根據預設,您已經選取啟動此應用程式以便執行某些動作。</string>
- <string name="auto_launch_label">預設啟動</string>
- <string name="auto_punctuate">自動標點符號</string>
- <string name="auto_punctuate_summary">按下 Space 鍵兩次即可插入 \u0022。\u0022</string>
- <string name="auto_replace">自動取代</string>
- <string name="auto_replace_summary">修正輸入錯誤的字彙</string>
- <string name="autorotate">自動旋轉</string>
- <string name="autorotate_summary_off">變更畫面方向不會旋轉應用程式</string>
- <string name="autorotate_summary_on">變更畫面方向旋轉應用程式</string>
- <string name="b_text">B</string>
- <string name="band_mode_failed">失敗</string>
- <string name="band_mode_loading">正在載入波段清單\u2026</string>
- <string name="band_mode_set">設定</string>
- <string name="band_mode_succeeded">成功</string>
- <string name="band_mode_title">設定 GSM/UMTS 波段</string>
- <string name="baseband_version">Baseband 版本</string>
- <string name="basic_settings_title">電話基本資訊</string>
- <string name="battery_info_awake_battery">使用電池時的喚醒時間:</string>
- <string name="battery_info_awake_plugged">充電時的喚醒時間:</string>
- <string name="battery_info_health_dead">故障</string>
- <string name="battery_info_health_good">良好</string>
- <string name="battery_info_health_label">電池壽命:</string>
- <string name="battery_info_health_over_voltage">電壓超載</string>
- <string name="battery_info_health_overheat">過熱</string>
- <string name="battery_info_health_unknown">無法辨識</string>
- <string name="battery_info_health_unspecified_failure">無法辨識的錯誤</string>
- <string name="battery_info_label">電池資訊</string>
- <string name="battery_info_level_label">電池電量:</string>
- <string name="battery_info_scale_label">電池刻度:</string>
- <string name="battery_info_screen_on">畫面顯示時間:</string>
- <string name="battery_info_status_charging">正在充電</string>
- <string name="battery_info_status_charging_ac">(AC)</string>
- <string name="battery_info_status_charging_usb">(USB)</string>
- <string name="battery_info_status_discharging">正在放電</string>
- <string name="battery_info_status_full">充滿</string>
- <string name="battery_info_status_label">電池狀態:</string>
- <string name="battery_info_status_not_charging">尚未充電</string>
- <string name="battery_info_status_unknown">無法辨識</string>
- <string name="battery_info_technology_label">電池技術:</string>
- <string name="battery_info_temperature_label">電池溫度:</string>
- <string name="battery_info_temperature_units">\u00B0 C</string>
- <string name="battery_info_uptime">開機後使用時間已經超過:</string>
- <string name="battery_info_voltage_label">電池電壓:</string>
- <string name="battery_info_voltage_units">mV</string>
- <string name="battery_level_title">電池電量</string>
- <string name="battery_status_title">電池狀態</string>
- <string name="bluetooth">藍牙</string>
- <string name="bluetooth_clear_list">清除裝置清單</string>
- <string name="bluetooth_connect">連線</string>
- <string name="bluetooth_connectable">僅可連線</string>
- <string name="bluetooth_connected">已連線</string>
- <string name="bluetooth_connecting">正在連線\u2026</string>
- <string name="bluetooth_device">免持聽筒/耳機</string>
- <string name="bluetooth_device_info">藍牙裝置資訊</string>
- <string name="bluetooth_device_info_alias">裝置別名</string>
- <string name="bluetooth_device_info_delete">移除此裝置</string>
- <string name="bluetooth_device_info_no_alias">在此輸入類型別名\u2026</string>
- <string name="bluetooth_device_info_sdp">列出支援的服務</string>
- <string name="bluetooth_device_name">裝置名稱</string>
- <string name="bluetooth_devices">藍牙裝置</string>
- <string name="bluetooth_disabled">選取開啟藍牙</string>
- <string name="bluetooth_disconnect">中斷連線</string>
- <string name="bluetooth_disconnect_blank">將會與 <xliff:g id="device_name">%1$s</xliff:g> 中斷連線。</string>
- <string name="bluetooth_discoverability_panel_title">將我設成\u2026</string>
- <string name="bluetooth_discoverable">可搜尋 %1$s 秒</string>
- <string name="bluetooth_enable_text">清空按鍵\u2026</string>
- <string name="bluetooth_enabled">選取開啟藍牙</string>
- <string name="bluetooth_enabling">正在開啟藍牙\u2026</string>
- <string name="bluetooth_enter_pin_msg">輸入 PIN 碼\u0020</string>
- <string name="bluetooth_failed_to_enable">無法開啟藍牙</string>
- <string name="bluetooth_is_discoverable">可搜尋 %1$s 秒\u2026</string>
- <string name="bluetooth_name_not_set">尚未設定名稱,使用帳號名稱代替</string>
- <string name="bluetooth_neither">無法搜尋及連線</string>
- <string name="bluetooth_new_data">輸入新資料</string>
- <string name="bluetooth_new_data_cancel">取消</string>
- <string name="bluetooth_new_data_confirm">確定</string>
- <string name="bluetooth_not_connected">與此裝置配對</string>
- <string name="bluetooth_not_discoverable">選取讓裝置設成可搜尋</string>
- <string name="bluetooth_notif_message">選取配對目標\u0020</string>
- <string name="bluetooth_notif_ticker">藍牙配對要求</string>
- <string name="bluetooth_notif_title">藍牙配對要求</string>
- <string name="bluetooth_pair">配對</string>
- <string name="bluetooth_paired">已經配對</string>
- <string name="bluetooth_paired_not_nearby">已經配對</string>
- <string name="bluetooth_pairing">正在配對\u2026</string>
- <string name="bluetooth_pairing_msg">正在配對\u2026</string>
- <string name="bluetooth_pin_entry">輸入藍牙 PIN 碼</string>
- <string name="bluetooth_quick_toggle_summary">選取開啟藍牙</string>
- <string name="bluetooth_quick_toggle_title">藍牙</string>
- <string name="bluetooth_scan_for_devices">掃描裝置</string>
- <string name="bluetooth_scan_for_new_devices">正在掃描新裝置\u2026</string>
- <string name="bluetooth_scan_text">清空按鍵\u2026</string>
- <string name="bluetooth_settings">藍牙設定</string>
- <string name="bluetooth_settings_summary">管理連線,及設定裝置名稱與可搜尋性</string>
- <string name="bluetooth_settings_text">清空按鍵\u2026</string>
- <string name="bluetooth_settings_title">藍牙設定</string>
- <string name="bluetooth_starting">正在啟動藍牙\u2026</string>
- <string name="bluetooth_stopping">正在停止藍牙\u2026</string>
- <string name="bluetooth_unknown">無法辨識</string>
- <string name="bluetooth_unpair">取消配對</string>
- <string name="bluetooth_visibility">可搜尋的</string>
- <string name="bootloader_version">Boot Loader 版本</string>
- <string name="brightness">亮度</string>
- <string name="build_date_label">建置日期</string>
- <string name="build_description_label">建置說明</string>
- <string name="build_host_label">建置主機</string>
- <string name="build_id_label">建置 ID</string>
- <string name="build_number">建置號碼</string>
- <string name="build_type_label">建置類型</string>
- <string name="build_user_label">建置使用者</string>
- <string name="call_settings_summary">設定語音信箱、來電轉接、來電插撥、本機號碼</string>
- <string name="call_settings_title">通話設定</string>
- <string name="cancel">取消</string>
- <string name="checkin_button_label">檢查升級</string>
- <string name="checkin_download_failed">失敗</string>
- <string name="checkin_download_label">下載狀態</string>
- <string name="checkin_download_ongoing">正在下載</string>
- <string name="checkin_download_pending">等待</string>
- <string name="checkin_download_succeeded">已完成</string>
- <string name="checkin_download_suspended">已擱置</string>
- <string name="checkin_download_unknown">無法辨識的狀態</string>
- <string name="checkin_failures_label">自上次成功後發生失敗</string>
- <string name="checkin_last_time_label">最後一次成功檢查</string>
- <string name="checkin_started_message">已經開始檢查\u2026</string>
- <string name="checkin_status_label">檢查狀態</string>
- <string name="checkin_time_never">(永不)</string>
- <string name="checkin_upgrade_label">正在等待升級</string>
- <string name="choose_timezone">選取時區</string>
- <string name="choose_timezone_region">選取地區</string>
- <string name="clear_activities">清除預設值</string>
- <string name="clear_data_dlg_text">在此應用程式中已經儲存的所有資訊將會被永久刪除。</string>
- <string name="clear_data_dlg_title">刪除</string>
- <string name="clear_data_failed">無法清除應用程式資料。</string>
- <string name="clear_user_data_text">清除資料</string>
- <string name="computing_size">正在計算應用程式大小\u2026</string>
- <string name="connect">連線</string>
- <string name="connect_to_blank">連線到 <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="contributors_title">代理商</string>
- <string name="copyright_title">Copyright</string>
- <string name="data_settings">資料設定</string>
- <string name="data_settings_summary">SD 卡與電話儲存空間、資料同步</string>
- <string name="data_settings_title">資料</string>
- <string name="data_size_label">資料</string>
- <string name="date_and_time">日期與時間設定</string>
- <string name="date_and_time_settings_summary">設定日期、時間、時區與格式</string>
- <string name="date_and_time_settings_title">日期與時間</string>
- <string name="date_time_24hour">使用 24 小時格式</string>
- <string name="date_time_auto">自動</string>
- <string name="date_time_auto_summaryOff">使用網路提供的值</string>
- <string name="date_time_auto_summaryOn">使用網路提供的值</string>
- <string name="date_time_changeDate_text">變更日期</string>
- <string name="date_time_changeTime_text">變更時間</string>
- <string name="date_time_dateDisplay_text">1997 年 11 月 3 日</string>
- <string name="date_time_date_format">選取日期格式</string>
- <string name="date_time_set_date">設定日期</string>
- <string name="date_time_set_time">設定時間</string>
- <string name="date_time_set_timezone">設定時區</string>
- <string name="date_time_setzone_text">變更時區</string>
- <string name="date_time_timeDisplay_text">11:45 AM</string>
- <string name="date_time_timezone_label">時區:</string>
- <string name="debug_intent_sender_label">Debug intent sender</string>
- <string name="default_date_format">yyyy/MM/dd</string>
- <string name="default_keyboard_device_label">預設鍵盤裝置</string>
- <string name="development_settings_summary">應用程式開發設定</string>
- <string name="development_settings_title">開發</string>
- <string name="device_info_asleeptime">睡眠時間</string>
- <string name="device_info_awaketime">喚醒時間</string>
- <string name="device_info_default">無法辨識</string>
- <string name="device_info_label">裝置資訊</string>
- <string name="device_info_not_available">無法使用</string>
- <string name="device_info_settings">電話狀態</string>
- <string name="device_info_uptime">正常運作時間</string>
- <string name="device_status">狀態</string>
- <string name="device_status_summary">IMEI、電話號碼、訊號等</string>
- <string name="dim_screen">畫面變暗</string>
- <string name="disconnect_ums">與 USB 高容量儲存裝置中斷連線</string>
- <string name="display_font_size_label">字型大小:</string>
- <string name="display_label">顯示</string>
- <string name="display_preview_label">預覽:</string>
- <string name="display_settings">顯示設定</string>
- <string name="dlg_cancel">取消</string>
- <string name="dlg_ok">確定</string>
- <string name="done">確定</string>
- <string name="dtmf_tone_enable_summary_off">使用撥號鍵台時播放撥號音</string>
- <string name="dtmf_tone_enable_summary_on">使用撥號鍵台時播放撥號音</string>
- <string name="dtmf_tone_enable_title">可聽見的觸控撥號音</string>
- <string name="enable_adb">USB 偵錯</string>
- <string name="enable_adb_summary">連接 USB 時使用偵錯模式</string>
- <string name="error_apn_empty">APN 不可以空白。</string>
- <string name="error_connecting">無法連線到網路</string>
- <string name="error_mcc_not3">MCC 欄位必須是 3 個數字。</string>
- <string name="error_mnc_not23">MNC 欄位必須是 2 或 3 個數字。</string>
- <string name="error_name_empty">名稱欄位不可以空白。</string>
- <string name="error_saving">無法儲存網路</string>
- <string name="error_scanning">無法掃描網路</string>
- <string name="error_starting">無法啟動 Wi-Fi</string>
- <string name="error_stopping">無法停止 Wi-Fi</string>
- <string name="error_title">注意</string>
- <string name="failed_to_connect">無法連線到 <xliff:g id="device_name">%1$s</xliff:g></string>
- <string name="failed_to_pair">無法與 <xliff:g id="device_name">%1$s</xliff:g> 配對</string>
- <string name="favorites_label">我的最愛</string>
- <string name="firmware_version">韌體版本</string>
- <string name="font_size_preview_text">Servez à ce monsieur une bière et des kiwis.</string>
- <string name="font_size_save">確定</string>
- <string name="forget_network">忘記</string>
- <string name="fragment_status_authenticating">驗證 <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_connected">已連線到 <xliff:g id="network_name">%1$s</xliff:g></string>
- <string name="fragment_status_connecting">正在連線到 <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
- <string name="fragment_status_disconnected">已中斷連線</string>
- <string name="fragment_status_disconnecting">正在與 <xliff:g id="network_name">%1$s</xliff:g> 中斷連線\u2026</string>
- <string name="fragment_status_failed">失敗</string>
- <string name="fragment_status_obtaining_ip">正在從 <xliff:g id="network_name">%1$s</xliff:g> 取得 IP 位址\u2026</string>
- <string name="fragment_status_scanning">正在掃描\u2026</string>
- <string name="gsm_version_baseband_label">Baseband 版本</string>
- <string name="gsm_version_ril_impl_label">RIL Impl 版本</string>
- <string name="install_all_warning">您的電話及個人資料極為容易遭受無法辨識之來源的應用程式
-攻擊。您在此同意,任何
-因為使用
-這些應用程式而可能導致的電話損壞或資料遺失皆完全由您自行負責。</string>
- <string name="install_applications">無法辨識的來源</string>
- <string name="install_unknown_applications">允許安裝非 Market 的應用程式</string>
- <string name="intent_sender_account_label">帳號: </string>
- <string name="intent_sender_action_label">動作:</string>
- <string name="intent_sender_data_label">資料:</string>
- <string name="intent_sender_resource_label">資源: </string>
- <string name="intent_sender_sendbroadcast_text">傳送廣播</string>
- <string name="intent_sender_startactivity_text">開始活動</string>
- <string name="internal_memory">電話內建儲存空間</string>
- <string name="ip_address">IP 位址</string>
- <string name="kb_text">KB</string>
- <string name="keep_screen_on">保持喚醒狀態</string>
- <string name="keep_screen_on_summary">充電時畫面將不會進入睡眠模式</string>
- <string name="kernel_version">Kernel 版本</string>
- <string name="kernel_version_label">Linux Kernel 版本</string>
- <string name="keyguard_label">鍵盤鎖</string>
- <string name="keyguard_password_button_text">確定</string>
- <string name="keyguard_password_confirm_new_label">確認新密碼:</string>
- <string name="keyguard_password_mismatch_error_text">兩組密碼不相符。請再次輸入。</string>
- <string name="keyguard_password_new_label">新密碼:</string>
- <string name="keyguard_password_old_label">舊密碼:</string>
- <string name="keyguard_password_old_password_error_text">輸入的舊密碼不正確。請再試一次。</string>
- <string name="keyguard_pin_mod_text">變更 PIN 碼</string>
- <string name="keyguard_pw_mod_text">選取鎖定模式</string>
- <string name="keyguard_sim_pin_label">SIM 卡 PIN 碼</string>
- <string name="language_category">語言設定</string>
- <string name="language_picker_title">地區設定</string>
- <string name="language_settings">文字</string>
- <string name="language_settings_summary">選取文字自動修正選項</string>
- <string name="large_font">大</string>
- <string name="legal_information">法律資訊</string>
- <string name="legal_information_summary">檢視條款與細則</string>
- <string name="license_title">授權</string>
- <string name="location_gps">啟用 GPS 衛星</string>
- <string name="location_gps_disabled">定位到街道 (需要更多電池電量及更高衛星可見度)</string>
- <string name="location_label">位置提供者:</string>
- <string name="location_neighborhood_level">藉由 Wi-Fi 及/或行動電話網路判斷的位置</string>
- <string name="location_network_based">使用無線網路</string>
- <string name="location_networks_disabled">在應用程式中 (例如地圖) 使用無線網路檢視位置</string>
- <string name="location_source">我的位置</string>
- <string name="location_source_summary">選取判斷位置的來源</string>
- <string name="location_status">狀態:</string>
- <string name="location_street_level">精確定位到街道 (取消選取即可節省電池電量)</string>
- <string name="location_title">我的位置來源</string>
- <string name="lock_example_message">連接至少四個點。\n
- \n當您準備繪製專屬的模式時,請選取「下一步」。
- </string>
- <string name="lock_example_title">模式範例</string>
- <string name="lock_settings_title">畫面解除鎖定模式</string>
- <string name="lock_title">保護電話</string>
- <string name="lockpattern_change_lock_pattern_label">變更解除鎖定模式</string>
- <string name="lockpattern_confirm_button_text">確認</string>
- <string name="lockpattern_continue_button_text">繼續</string>
- <string name="lockpattern_need_to_confirm">再次繪製模式以便確定:</string>
- <string name="lockpattern_need_to_unlock">確認儲存的模式:</string>
- <string name="lockpattern_need_to_unlock_wrong">抱歉,再試一次:</string>
- <string name="lockpattern_pattern_confirmed_header">新的解除鎖定模式:</string>
- <string name="lockpattern_pattern_entered_header">已經記錄模式!</string>
- <string name="lockpattern_recording_incorrect_too_short">請連接至少 <xliff:g id="number">%d</xliff:g> 個點。再試一次:</string>
- <string name="lockpattern_recording_inprogress">完成後鬆開手指。</string>
- <string name="lockpattern_recording_intro_footer">按下功能表開啟說明。</string>
- <string name="lockpattern_recording_intro_header">繪製解除鎖定模式:</string>
- <string name="lockpattern_restart_button_text">重新繪製</string>
- <string name="lockpattern_retry_button_text">重試</string>
- <string name="lockpattern_settings_change_lock_pattern">變更解除鎖定模式</string>
- <string name="lockpattern_settings_choose_lock_pattern">設定解除鎖定模式</string>
- <string name="lockpattern_settings_enable_summary">必須繪製模式以便解除鎖定畫面</string>
- <string name="lockpattern_settings_enable_title">需要模式</string>
- <string name="lockpattern_settings_enable_visible_pattern_title">使用可見模式</string>
- <string name="lockpattern_settings_help_how_to_record">繪製解除鎖定模式的方式:</string>
- <string name="lockpattern_settings_title">解除鎖定模式</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_footer">請在 <xliff:g id="number">%d</xliff:g> 秒後再試一次。</string>
- <string name="lockpattern_too_many_failed_confirmation_attempts_header">過多不正確嘗試!</string>
- <string name="manage_applications_title">管理應用程式</string>
- <string name="manage_space_text">管理空間</string>
- <string name="manageapplications_settings_title">管理應用程式</string>
- <string name="mass_storage">用於 USB 儲存</string>
- <string name="master_clear_button_text">重設電話</string>
- <string name="master_clear_desc">此動作將會把電話重設為其初始的出廠狀態,並清除所有的資料及下載的應用程式!</string>
- <string name="master_clear_failed">尚未執行重設;因為無法使用系統清除服務。</string>
- <string name="master_clear_final_button_text">全部清除</string>
- <string name="master_clear_final_desc">重設電話,並清除所有的資料及應用程式?此動作無法還原!</string>
- <string name="master_clear_gesture_explanation">您必須繪製解除鎖定模式,以便確認重設電話。</string>
- <string name="master_clear_gesture_prompt">請繪製解除鎖定模式:</string>
- <string name="master_clear_summary">清除電話上的所有資料</string>
- <string name="master_clear_title">出廠資料重設</string>
- <string name="mb_text">MB</string>
- <string name="media_volume_summary">設定音樂及影片音量</string>
- <string name="media_volume_title">媒體音量</string>
- <string name="medium_font">中</string>
- <string name="memory_available">可用空間</string>
- <string name="memory_size">總空間</string>
- <string name="menu_cancel">放棄</string>
- <string name="menu_delete">刪除 APN</string>
- <string name="menu_new">新增 APN</string>
- <string name="menu_save">儲存</string>
- <string name="model_number">型號</string>
- <string name="network_settings_summary">設定漫遊、網路及 APN 選項</string>
- <string name="network_settings_title">行動電話網路</string>
- <string name="networks">選取電信業者</string>
- <string name="networks_title">網路設定</string>
- <string name="next_button_label">下一步</string>
- <string name="next_label">下一步</string>
- <string name="notification_sound_dialog_title">選取通知響鈴音調</string>
- <string name="notification_sound_summary">設定預設的通知響鈴音調</string>
- <string name="notification_sound_title">通知響鈴音調</string>
- <string name="permissions_label">權限</string>
- <string name="phone_info_label">電話資訊</string>
- <string name="phone_language">選取語言</string>
- <string name="ping_test_label">執行 Ping 測試</string>
- <string name="please_type_hex_key">WEP Hex 金鑰 (0-9、A-F)</string>
- <string name="please_type_passphrase">無線網路密碼</string>
- <string name="product_brand_label">產品品牌</string>
- <string name="product_device_label">電話類型</string>
- <string name="progress_scanning">正在掃描</string>
- <string name="proxy_action_text">儲存</string>
- <string name="proxy_clear_text">清除</string>
- <string name="proxy_defaultView_text">還原預設值</string>
- <string name="proxy_error">注意</string>
- <string name="proxy_error_dismiss">確定</string>
- <string name="proxy_error_empty_host_set_port">如果主機欄位保留空白,則連接埠欄位也必須保留空白。</string>
- <string name="proxy_error_empty_port">您必須填入連接埠欄位。</string>
- <string name="proxy_error_invalid_host">輸入的主機名稱無效。</string>
- <string name="proxy_error_invalid_port">輸入的連接埠無效。</string>
- <string name="proxy_hostname_label">主機名稱</string>
- <string name="proxy_port_label">連接埠</string>
- <string name="proxy_settings_label">Proxy 設定</string>
- <string name="quick_launch_assign_application">指定應用程式</string>
- <string name="quick_launch_clear_cancel_button">取消</string>
- <string name="quick_launch_clear_dialog_message">將會清除 <xliff:g id="shortcut_letter">%1$s</xliff:g> (<xliff:g id="application_name">%2$s</xliff:g>) 的捷徑。</string>
- <string name="quick_launch_clear_dialog_title">清除</string>
- <string name="quick_launch_clear_ok_button">確定</string>
- <string name="quick_launch_display_mode_applications">應用程式</string>
- <string name="quick_launch_display_mode_shortcuts">捷徑</string>
- <string name="quick_launch_no_shortcut">無捷徑</string>
- <string name="quick_launch_shortcut">搜尋 + <xliff:g id="shortcut_letter">%1$s</xliff:g></string>
- <string name="quick_launch_summary">設定鍵盤捷徑以便啟動應用程式</string>
- <string name="quick_launch_title">快速啟動</string>
- <string name="radioInfo_cid">CID</string>
- <string name="radioInfo_data_connected">已連線</string>
- <string name="radioInfo_data_connecting">正在連線</string>
- <string name="radioInfo_data_disconnected">已中斷連線</string>
- <string name="radioInfo_data_suspended">已擱置</string>
- <string name="radioInfo_display_asu">asu</string>
- <string name="radioInfo_display_bytes">位元組</string>
- <string name="radioInfo_display_dbm">dBm</string>
- <string name="radioInfo_display_packets">pkts</string>
- <string name="radioInfo_lac">LAC</string>
- <string name="radioInfo_menu_disableData">停用資料連線</string>
- <string name="radioInfo_menu_disableDataOnBoot">開機時停用資料</string>
- <string name="radioInfo_menu_enableData">啟用資料連線</string>
- <string name="radioInfo_menu_enableDataOnBoot">開機時啟用資料</string>
- <string name="radioInfo_menu_getPDP">取得 PDP 清單</string>
- <string name="radioInfo_menu_viewADN">檢視 SIM 卡通訊錄</string>
- <string name="radioInfo_menu_viewFDN">檢視固定撥號號碼</string>
- <string name="radioInfo_menu_viewSDN">檢視服務撥號號碼</string>
- <string name="radioInfo_phone_idle">閒置</string>
- <string name="radioInfo_phone_offhook">通話中</string>
- <string name="radioInfo_phone_ringing">響鈴中</string>
- <string name="radioInfo_roaming_in">漫遊中</string>
- <string name="radioInfo_roaming_not">尚未漫遊</string>
- <string name="radioInfo_service_emergency">僅限緊急通話</string>
- <string name="radioInfo_service_in">服務中</string>
- <string name="radioInfo_service_off">關閉無線電話</string>
- <string name="radioInfo_service_out">超出服務區域</string>
- <string name="radioInfo_unknown">無法辨識</string>
- <string name="radio_controls_summary">管理 Wi-Fi、藍牙、飛安模式及行動電話網路</string>
- <string name="radio_controls_title">無線控制</string>
- <string name="radio_info_band_mode_label">選取無線電波波段</string>
- <string name="radio_info_call_redirect_label">撥號重新導向:</string>
- <string name="radio_info_call_status_label">撥號狀態:</string>
- <string name="radio_info_current_network_label">目前網路:</string>
- <string name="radio_info_data_attempts_label">資料嘗試次數:</string>
- <string name="radio_info_data_successes_label">資料成功次數:</string>
- <string name="radio_info_gprs_service_label">GPRS 服務:</string>
- <string name="radio_info_gsm_disconnects_label">與 GSM 中斷連線:</string>
- <string name="radio_info_gsm_service_label">GSM 服務:</string>
- <string name="radio_info_http_client_test">HTTP 用戶端測試:</string>
- <string name="radio_info_imei_label">IMEI:</string>
- <string name="radio_info_imsi_label">IMSI:</string>
- <string name="radio_info_message_waiting_label">訊息等待中:</string>
- <string name="radio_info_neighboring_location_label">鄰近 CID:</string>
- <string name="radio_info_network_type_label">網路類型:</string>
- <string name="radio_info_phone_number_label">電話號碼:</string>
- <string name="radio_info_ping_hostname">Ping 主機名稱 (www.google.com):</string>
- <string name="radio_info_ping_ipaddr">Ping IpAddr:</string>
- <string name="radio_info_ppp_received_label">接收的 PPP:</string>
- <string name="radio_info_ppp_resets_label">開機後重設 PPP 號碼:</string>
- <string name="radio_info_ppp_sent_label">傳送的 PPP:</string>
- <string name="radio_info_radio_resets_label">無線電話重設:</string>
- <string name="radio_info_roaming_label">漫遊中:</string>
- <string name="radio_info_set_perferred_label">設定偏好的網路類型:</string>
- <string name="radio_info_signal_location_label">位置:</string>
- <string name="radio_info_signal_strength_label">訊號強度:</string>
- <string name="radio_info_smsc_label">SMSC:</string>
- <string name="radio_info_smsc_refresh_label">重新整理</string>
- <string name="radio_info_smsc_update_label">更新</string>
- <string name="radio_info_toggle_ciph_label">切換密碼</string>
- <string name="read_only">\u0020(唯讀)</string>
- <string name="recompute_size">正在重新計算大小\u2026</string>
- <string name="ring_volume_summary">設定來電音量</string>
- <string name="ring_volume_title">響鈴音量</string>
- <string name="ringer_volume_instructions">使用音量鍵調整響鈴音量</string>
- <string name="ringer_volume_ringer_mode_label">響鈴模式</string>
- <string name="ringer_volume_ringtone_label">響鈴音調</string>
- <string name="ringer_volume_screen_increasing_text">鈴聲漸強</string>
- <string name="ringtone_summary">設定預設的來電響鈴音調</string>
- <string name="ringtone_title">電話響鈴音調</string>
- <string name="roaming">資料漫遊</string>
- <string name="roaming_disable">漫遊時連線到資料服務</string>
- <string name="roaming_enable">漫遊時連線到資料服務</string>
- <string name="roaming_reenable_message">您已經關閉主網路的資料漫遊功能,所以無法進行資料連線。</string>
- <string name="roaming_reenable_title">注意</string>
- <string name="roaming_turn_it_on_button">請將其開啟</string>
- <string name="roaming_warning">允許資料漫遊?您可能需要支付一筆漫遊費用!</string>
- <string name="scan_wifi">掃描</string>
- <string name="screen_off_timeout_label">充電時永不逾時</string>
- <string name="screen_timeout">畫面逾時</string>
- <string name="sd_card_settings_label">SD 卡</string>
- <string name="sd_eject">卸載/退出 SD 卡</string>
- <string name="sd_memory">SD 卡</string>
- <string name="sd_unavailable">不可用</string>
- <string name="sdcard_changes_instructions">變更會在重新連接 USB 傳輸線時生效</string>
- <string name="sdcard_removal_alert_ok">確定</string>
- <string name="sdcard_removal_alert_scolding">SD 卡使用時被取出!
- 若要避免毀損,請先使用 SD 卡的設定畫面來將其卸載,然後再取出。</string>
- <string name="sdcard_removal_alert_title">不安全的 SD 卡取出動作!</string>
- <string name="sdcard_setting">SD 卡</string>
- <string name="sdcard_settings_available_bytes_label">可用的位元組:</string>
- <string name="sdcard_settings_bad_removal_status">SD 卡使用時被取出!</string>
- <string name="sdcard_settings_mass_storage_status">正在使用 SD 卡做為高容量儲存裝置</string>
- <string name="sdcard_settings_not_present_status">無 SD 卡</string>
- <string name="sdcard_settings_read_only_status">掛載的 SD 卡為唯讀</string>
- <string name="sdcard_settings_scanning_status">正在掃描 SD 卡的媒體\u2026</string>
- <string name="sdcard_settings_screen_mass_storage_text">啟用 USB 高容量儲存</string>
- <string name="sdcard_settings_total_bytes_label">總位元組:</string>
- <string name="sdcard_settings_unmounted_status">現在可以安全地移除 SD 卡</string>
- <string name="sdcard_settings_used_bytes_label">使用的位元組:</string>
- <string name="sdcard_unmount">卸載 SD 卡</string>
- <string name="sdcard_unmountable_alert_ok">確定</string>
- <string name="sdcard_unmountable_alert_title">無法讀取 SD 卡</string>
- <string name="sdcard_unmountable_message">無法讀取 SD 卡。
- 檔案系統可能已經毀損或卡片可能受損。</string>
- <string name="security">安全性</string>
- <string name="security_and_data_label">安全性與資料</string>
- <string name="security_passwords_title">密碼</string>
- <string name="security_settings_desc">此應用程式可以存取之電話上的資料如下所示:</string>
- <string name="security_settings_summary">我的位置、畫面解除鎖定、SIM 卡鎖定</string>
- <string name="security_settings_title">安全性與位置</string>
- <string name="select_your_language">選取您的語言</string>
- <string name="set_lock_pattern_label">繪製解除鎖定模式:</string>
- <string name="settings_chooser_pick_string">
- 設定的圖示應該移動到:
- </string>
- <string name="settings_label">設定</string>
- <string name="settings_license_activity_loading">正在載入\u2026</string>
- <string name="settings_license_activity_title">開啟來源授權</string>
- <string name="settings_license_activity_unavailable">載入授權時發生問題。</string>
- <string name="show_password">可見的密碼</string>
- <string name="show_password_summary">輸入時顯示密碼</string>
- <string name="signal">訊號強度</string>
- <string name="silent_mode_summary">除了媒體以外的所有聲音都會變為靜音。</string>
- <string name="silent_mode_title">靜音模式</string>
- <string name="sim_bad_pin">PIN 碼不正確!</string>
- <string name="sim_change_failed">無法變更 PIN 碼。\n可能是 PIN 碼不正確。</string>
- <string name="sim_change_pin">變更 SIM 卡 PIN 碼</string>
- <string name="sim_change_succeeded">變更 SIM 卡 PIN 碼成功</string>
- <string name="sim_disable_sim_lock">停用 SIM 卡鎖定</string>
- <string name="sim_enable_sim_lock">啟用 SIM 卡鎖定</string>
- <string name="sim_enter_cancel">取消</string>
- <string name="sim_enter_new">輸入新 PIN 碼</string>
- <string name="sim_enter_ok">確定</string>
- <string name="sim_enter_old">輸入舊 PIN 碼</string>
- <string name="sim_enter_pin">輸入 SIM 卡 PIN 碼</string>
- <string name="sim_lock_failed">無法變更 SIM 卡鎖定狀態。\n可能是 PIN 碼不正確。</string>
- <string name="sim_lock_off">需要 PIN 碼才能使用電話</string>
- <string name="sim_lock_on">需要 PIN 碼才能使用電話</string>
- <string name="sim_lock_settings">SIM 卡鎖定設定</string>
- <string name="sim_lock_settings_category">設定 SIM 卡鎖定</string>
- <string name="sim_lock_settings_title">SIM 卡鎖定</string>
- <string name="sim_pin_change">變更 PIN 碼</string>
- <string name="sim_pin_toggle">鎖定 SIM 卡</string>
- <string name="sim_pins_dont_match">PIN 碼不相符!</string>
- <string name="sim_reenter_new">重新輸入新 PIN 碼</string>
- <string name="skip_button_label">取消</string>
- <string name="small_font">小</string>
- <string name="software_version">軟體版本</string>
- <string name="sort_order_alpha">依照字母順序排序</string>
- <string name="sort_order_size">依照大小排序 (遞減)</string>
- <string name="sound_and_display_settings">聲音與顯示</string>
- <string name="sound_and_display_settings_summary">設定響鈴音調、通知、畫面亮度</string>
- <string name="sound_effects_enable_summary_off">點選畫面選項時播放聲音</string>
- <string name="sound_effects_enable_summary_on">點選畫面選項時播放聲音</string>
- <string name="sound_effects_enable_title">聲音選取</string>
- <string name="sound_settings">聲音設定</string>
- <string name="status_authenticating">正在驗證\u2026</string>
- <string name="status_awake_time">喚醒時間</string>
- <string name="status_bt_address">藍牙位址</string>
- <string name="status_connected">已連線</string>
- <string name="status_connecting">正在連線\u2026</string>
- <string name="status_data_state">資料存取</string>
- <string name="status_disconnected">已中斷連線</string>
- <string name="status_disconnecting">正在中斷連線\u2026</string>
- <string name="status_failed">失敗</string>
- <string name="status_imei">IMEI</string>
- <string name="status_imei_sv">IMEI SV</string>
- <string name="status_imsi">IMSI</string>
- <string name="status_network_type">網路類型</string>
- <string name="status_number">電話號碼</string>
- <string name="status_obtaining_ip">正在取得位址\u2026</string>
- <string name="status_operator">網路</string>
- <string name="status_roaming">漫遊中</string>
- <string name="status_scanning">正在掃描\u2026</string>
- <string name="status_service_state">服務狀態</string>
- <string name="status_signal_strength">訊號強度</string>
- <string name="status_unavailable">不可用</string>
- <string name="status_up_time">正常運作時間</string>
- <string name="status_wifi_mac_address">Wi-Fi MAC 位址</string>
- <string name="stay_on">充電時畫面永遠保持開啟</string>
- <string name="storage_label">儲存空間</string>
- <string name="storage_settings_summary">卸載 SD 卡,檢視可用的儲存空間</string>
- <string name="storage_settings_title">SD 卡與電話儲存空間</string>
- <string name="sum_carrier_select">選取網路電信業者</string>
- <string name="summary_connection_failed">連線失敗,選取以便再試一次</string>
- <string name="summary_not_in_range">超出範圍</string>
- <string name="summary_remembered">已記住</string>
- <string name="sync_automatically">自動同步</string>
- <string name="sync_calendar">行事曆</string>
- <string name="sync_contacts">連絡人</string>
- <string name="sync_disabled">選取自動同步資料</string>
- <string name="sync_do_nothing">目前不執行任何動作。</string>
- <string name="sync_enabled">自動同步資料</string>
- <string name="sync_gmail">Gmail</string>
- <string name="sync_is_failing">同步目前發生問題。將會立即恢復正常。</string>
- <string name="sync_menu_sync_cancel">取消同步</string>
- <string name="sync_menu_sync_now">立即同步</string>
- <string name="sync_really_delete">刪除項目。</string>
- <string name="sync_settings">資料同步</string>
- <string name="sync_settings_summary">選取要同步的應用程式</string>
- <string name="sync_too_many_deletes">已經超過刪除上限</string>
- <string name="sync_too_many_deletes_desc">%d 個 %s 刪除的項目,來自 %s 帳號。處理的方式為?</string>
- <string name="sync_undo_deletes">復原刪除的項目。</string>
- <string name="target_build_field_label">要求的建置類型</string>
- <string name="team_title">團隊</string>
- <string name="telephony_apn_label">APN:</string>
- <string name="telephony_mcc_label">MCC:</string>
- <string name="telephony_mmsc_label">MMSC:</string>
- <string name="telephony_mmsport_label">多媒體簡訊連接埠:</string>
- <string name="telephony_mmsproxy_label">多媒體簡訊 Proxy:</string>
- <string name="telephony_mnc_label">MNC:</string>
- <string name="telephony_name_label">名稱:</string>
- <string name="telephony_password_label">密碼:</string>
- <string name="telephony_port_label">連接埠:</string>
- <string name="telephony_proxy_label">Proxy:</string>
- <string name="telephony_server_label">伺服器:</string>
- <string name="telephony_user_label">使用者:</string>
- <string name="terms_title">條款和條件</string>
- <string name="testing">正在測試</string>
- <string name="testing_battery_info">電池資訊</string>
- <string name="testing_phone_info">電話資訊</string>
- <string name="testing_sim_toolkit">SIM Toolkit</string>
- <string name="text_category">文字設定</string>
- <string name="total_size_label">總計</string>
- <string name="turn_off_qxdm">停用 QXDM SD 記錄</string>
- <string name="turn_off_radio">關閉無線電話</string>
- <string name="turn_on_qxdm">啟用 QXDM SD 記錄</string>
- <string name="turn_on_radio">開啟無線電話</string>
- <string name="underdeveloped_settings_label">開發中的設定</string>
- <string name="uninstall_failed">無法解除安裝應用程式。</string>
- <string name="uninstall_text">解除安裝</string>
- <string name="unknown">無法辨識</string>
- <string name="vibrate_summary">來電時震動電話</string>
- <string name="vibrate_title">電話震動</string>
- <string name="wallpaper_label">桌布</string>
- <string name="wifi">Wi-Fi</string>
- <string name="wifi_access_points">Wi-Fi 網路</string>
- <string name="wifi_add_other_network">新增 Wi-Fi 網路</string>
- <string name="wifi_context_menu_change_password">變更密碼</string>
- <string name="wifi_context_menu_connect">連線到網路</string>
- <string name="wifi_context_menu_forget">忽略網路</string>
- <string name="wifi_dhcp_timeout_error">取得 IP 位址時發生問題。</string>
- <string name="wifi_dns1">DNS 1</string>
- <string name="wifi_dns2">DNS 2</string>
- <string name="wifi_dns3">DNS 3</string>
- <string name="wifi_dns_label">DNS:</string>
- <string name="wifi_error">錯誤</string>
- <string name="wifi_gateway">閘道</string>
- <string name="wifi_gateway_label">閘道:</string>
- <string name="wifi_generic_connection_error">連線到網路時發生問題。請再試一次。</string>
- <string name="wifi_host_ip">主機 IP:</string>
- <string name="wifi_ip_address">IP 位址</string>
- <string name="wifi_ip_settings_invalid_ip">請輸入有效的 IP 位址。</string>
- <string name="wifi_ip_settings_menu_cancel">取消</string>
- <string name="wifi_ip_settings_menu_save">儲存</string>
- <string name="wifi_ip_settings_titlebar">IP 設定</string>
- <string name="wifi_link_speed">速度</string>
- <string name="wifi_menu_advanced">進階</string>
- <string name="wifi_netmask">網路遮罩</string>
- <string name="wifi_netmask_label">網路遮罩:</string>
- <string name="wifi_notify_open_networks">網路通知</string>
- <string name="wifi_notify_open_networks_summary">當找到可用的開放網路時通知我</string>
- <string name="wifi_password_incorrect_error">輸入的網路密碼不正確。請再試一次。</string>
- <string name="wifi_password_unchanged">(尚未變更)</string>
- <string name="wifi_prefer_wifi">偏好 Wi-Fi</string>
- <string name="wifi_quick_toggle_summary">選取啟動 Wi-Fi</string>
- <string name="wifi_quick_toggle_title">Wi-Fi</string>
- <string name="wifi_save_config">儲存</string>
- <string name="wifi_screen_activate_text">啟動</string>
- <string name="wifi_screen_dhcp_text">自動</string>
- <string name="wifi_screen_dns_text">209.81.59.2</string>
- <string name="wifi_screen_gateway_text">192.168.20.1</string>
- <string name="wifi_screen_ip_text">192.168.20.10</string>
- <string name="wifi_screen_manual_text">手動</string>
- <string name="wifi_screen_netmask_text">255.255.255.0</string>
- <string name="wifi_screen_status_text">Wi-Fi 運作中</string>
- <string name="wifi_screen_test_text">測試</string>
- <string name="wifi_security">安全性</string>
- <string name="wifi_security_open">開啟</string>
- <string name="wifi_security_unknown">無法辨識</string>
- <string name="wifi_security_verbose_open">開啟網路</string>
- <string name="wifi_security_verbose_wep">已經受到 WEP 保護</string>
- <string name="wifi_security_verbose_wpa">已經受到 WPA 保護</string>
- <string name="wifi_security_verbose_wpa2">已經受到 WPA2 保護</string>
- <string name="wifi_security_wep">WEP</string>
- <string name="wifi_security_wpa">WPA</string>
- <string name="wifi_security_wpa2">WPA2</string>
- <string name="wifi_settings">Wi-Fi 設定</string>
- <string name="wifi_settings_category">Wi-Fi 設定</string>
- <string name="wifi_settings_summary">設定與管理無線存取點</string>
- <string name="wifi_show_password">顯示密碼。</string>
- <string name="wifi_signal_0">弱</string>
- <string name="wifi_signal_1">尚可</string>
- <string name="wifi_signal_2">良好</string>
- <string name="wifi_signal_3">強</string>
- <string name="wifi_starting">正在啟動\u2026</string>
- <string name="wifi_status">狀態</string>
- <string name="wifi_stopping">正在關閉\u2026</string>
- <string name="wifi_type_ssid">輸入網路 SSID:</string>
- <string name="wifi_use_static_ip">使用靜態 IP</string>
- <string name="wifi_wlan_id">WLAN ID:</string>
-</resources>
diff --git a/res/values/arrays.xml b/res/values/arrays.xml
index c571e28..2a51d27 100644
--- a/res/values/arrays.xml
+++ b/res/values/arrays.xml
@@ -20,76 +20,106 @@
<resources>
<!-- Choices for timezone picker first level.
These values will be used as search terms for TimeZone displayName
- strings. -->
+ strings. --> <skip />
+ <!-- The time zone picker screen has two levels. The first level allows the user to choose a region. -->
<string-array name="timezone_filters">
+ <!-- The next level of the time zoner picker should show time zones from the Americas. -->
<item>America</item>
+ <!-- The next level of the time zoner picker should show time zones from Europe. -->
<item>Europe</item>
+ <!-- The next level of the time zoner picker should show time zones from Africa. -->
<item>Africa</item>
+ <!-- The next level of the time zoner picker should show time zones from Asia. -->
<item>Asia</item>
+ <!-- The next level of the time zoner picker should show time zones from Australia. -->
<item>Australia</item>
+ <!-- The next level of the time zoner picker should show time zones from Pacific. -->
<item>Pacific</item>
+ <!-- The next level of the time zoner picker should show time zones from ALL regions. -->
<item>All</item>
</string-array>
- <!-- List of formats for date display to display
- in Date & Time Settings screen -->
+ <!-- There is a setting to control the format of dates displayed throughout the system. This is in the Date & Time Settings screen. Unfortunately, these cannot be changed at all. --> <skip />
+ <!-- Do not translate. This is fed directly to the formatter. -->
<string-array name="date_format_values">
+ <!-- Do not translate. This is fed directly to the formatter. -->
<item>MM-dd-yyyy</item>
+ <!-- Do not translate. This is fed directly to the formatter. -->
<item>dd-MM-yyyy</item>
+ <!-- Do not translate. This is fed directly to the formatter. -->
<item>MMM dd, yyyy</item>
+ <!-- Do not translate. This is fed directly to the formatter. -->
<item>dd-MMM-yyyy</item>
+ <!-- Do not translate. This is fed directly to the formatter. -->
<item>yyyy-MM-dd</item>
</string-array>
- <!-- Display settings -->
+ <!-- Display settings. The delay in inactivity before the screen is turned off. These are shown ain a list dialog. -->
<string-array name="screen_timeout_entries">
<item>15 seconds</item>
<item>30 seconds</item>
<item>1 minute</item>
<item>2 minutes</item>
<item>10 minutes</item>
+ <!-- Choosing this means the screen will only turn off after the user manually does so. There will be no inactivity check. -->
<item>Never timeout</item>
</string-array>
+ <!-- Do not translate. -->
<string-array name="screen_timeout_values">
+ <!-- Do not translate. -->
<item>15000</item>
+ <!-- Do not translate. -->
<item>30000</item>
+ <!-- Do not translate. -->
<item>60000</item>
+ <!-- Do not translate. -->
<item>120000</item>
+ <!-- Do not translate. -->
<item>600000</item>
+ <!-- Do not translate. -->
<item>-1</item>
</string-array>
<!-- Wi-Fi settings -->
- <!-- Match this with code. -->
+ <!-- Match this with code. --> <skip />
+ <!-- Wi-Fi settings. The type of security a Wi-Fi network has. The user can choose this when he adds a manual network, or configures an existing network. -->
<string-array name="wifi_security_entries">
+ <!-- Let the phone figure out the security type auutomatically. -->
<item>Auto</item>
+ <!-- The Wi-Fi network does not have any security. -->
<item>None</item>
+ <!-- Do not translate. The Wi-Fi network has WEP security. -->
<item>WEP</item>
+ <!-- The Wi-Fi network has WPA personal security. WPA Personal is a tech term, and might be better left untranslated? -->
<item>WPA Personal</item>
+ <!-- The Wi-Fi network has WPA2 personal security. WPA Personal is a tech term, and might be better left untranslated? -->
<item>WPA2 Personal</item>
</string-array>
- <!-- Match this with code. -->
+ <!-- Match this with code. --> <skip />
+ <!-- Wi-Fi settings. The type of security a Wi-Fi network has. The user can choose this when he adds a manual network, or configures an existing network. -->
<string-array name="wifi_security_without_auto_entries">
+ <!-- The Wi-Fi network does not have any security. -->
<item>None</item>
+ <!-- Do not translate. The Wi-Fi network has WEP security. -->
<item>WEP</item>
+ <!-- The Wi-Fi network has WPA personal security. WPA Personal is a tech term, and might be better left untranslated? -->
<item>WPA Personal</item>
+ <!-- The Wi-Fi network has WPA2 personal security. WPA Personal is a tech term, and might be better left untranslated? -->
<item>WPA2 Personal</item>
</string-array>
- <!-- Match this with code. -->
+ <!-- Match this with code. --> <skip />
+ <!-- Wi-Fi settings. Presented as a list dialog to the user. He chooses the type of WEP key he entered. -->
<string-array name="wifi_wep_type">
+ <!-- This means the phone should figure out the type automatically the best it can. -->
<item>Auto</item>
+ <!-- Do not translate. -->
<item>WEP ASCII</item>
+ <!-- WEP key that is in hexadecimal. -->
<item>WEP hexadecimal</item>
</string-array>
- <string-array name="friction_values">
- <item>normal</item>
- <item>no friction</item>
- <item>no inertia</item>
- </string-array>
-
</resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index ed3eba3..061d114 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -16,473 +16,764 @@
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!-- Device Info -->
+ <!-- Device Info --> <skip />
+ <!-- Device Info screen. Used for a status item's value when the proper value is not known -->
<string name="device_info_default">Unknown</string>
+ <!-- Device Info screen. Status item label. How long the phone has been running since it was turned on -->
<string name="device_info_uptime">Uptime</string>
+ <!-- Device Info screen. Status item label. How long the main processor in the phone has been running -->
<string name="device_info_awaketime">Awake time</string>
+ <!-- Device Info screen. Status item label. How long the main processor in the phone has not been running -->
<string name="device_info_asleeptime">Asleep time</string>
+ <!-- Do not translate. Device Info screen. Status item label. The description of the software running on the phone. -->
<string name="build_description_label">Build description</string>
+ <!-- Do not translate. Device Info screen. Status item label. A short identifier of the software running on the phone. -->
<string name="build_id_label">Build ID</string>
+ <!-- Do not translate. Device Info screen. Status item label. The date that the software currently running on the phone was built. -->
<string name="build_date_label">Build date</string>
+ <!-- Do not translate. Device Info screen. Status item label. The type of configuration used while building the software -->
<string name="build_type_label">Build type</string>
+ <!-- Do not translate. Device Info screen. Status item label. The product type (probably a code name) -->
<string name="product_device_label">Phone type</string>
+ <!-- Do not translate. Device Info screen. Status item label. The product brand. -->
<string name="product_brand_label">Product brand</string>
+ <!-- Do not translate. Device Info screen. Status item label. The user that compiled/built the software -->
<string name="build_user_label">Build user</string>
+ <!-- Do not translate. Device Info screen. Status item label. The computer that compiled/built the software -->
<string name="build_host_label">Build host</string>
+ <!-- Do not translate. Device Info screen. Status item label. The version of the Linux kernel -->
<string name="kernel_version_label">Linux kernel version</string>
+ <!-- Do not translate. Device Info screen. Status item label. The version of the radio on the phone -->
<string name="gsm_version_baseband_label">Baseband version</string>
+ <!-- Do not translate. Device Info screen. Status item label. The version of the radio interface layer implementation -->
<string name="gsm_version_ril_impl_label">RIL Impl version</string>
+ <!-- Do not translate. Device Info screen. Status item label. The default keyboard's name -->
<string name="default_keyboard_device_label">Default keyboard device</string>
+ <!-- Do not translate. Device Info screen. Status item label. The Android ID (a unique ID) -->
<string name="android_id_label">Android ID</string>
+ <!-- Do not translate. Device Info screen. Status item label. The last time the device checked into the servers -->
<string name="checkin_last_time_label">Last successful checkin</string>
+ <!-- Do not translate. Device Info screen. Status item label. The number of failures since the last successful checkin -->
<string name="checkin_failures_label">Failures since last success</string>
+ <!-- Do not translate. Device Info screen. Status item label. Whether there is an upgrade pending -->
<string name="checkin_upgrade_label">Pending upgrade</string>
+ <!-- Do not translate. Device Info screen. Status item label. The download status of an upgrade -->
<string name="checkin_download_label">Download status</string>
+ <!-- Do not translate. Device Info screen. Status item label. Displayed for checkin_last_time_label if it has never checked in -->
<string name="checkin_time_never">(never)</string>
+ <!-- Do not translate. Device Info screen. Status item label. The current status of the checkin -->
<string name="checkin_status_label">Check-in status</string>
+ <!-- Do not translate. Device Info screen. Status item label. The request type of build to get upgrades from -->
<string name="target_build_field_label">Requested build type</string>
+ <!-- Do not translate. Device Info screen. Checks to see if an upgade is available -->
<string name="checkin_button_label">Check for upgrade</string>
+ <!-- Do not translate. Device Info screen. Message printed when a checkin has started -->
<string name="checkin_started_message">Checkin started\u2026</string>
+ <!-- Do not translate. Device Info screen. Status for checkin request when it is suspended -->
<string name="checkin_download_suspended">Suspended</string>
+ <!-- Do not translate. Device Info screen. Status for checkin request when it is pending -->
<string name="checkin_download_pending">Pending</string>
+ <!-- Do not translate. Device Info screen. Status for checkin request when it is downloading -->
<string name="checkin_download_ongoing">Downloading</string>
+ <!-- Do not translate. Device Info screen. Status for checkin request when it is unsuccessful -->
<string name="checkin_download_failed">Unsuccessful</string>
+ <!-- Do not translate. Device Info screen. Status for checkin request when it has completed -->
<string name="checkin_download_succeeded">Completed</string>
+ <!-- Do not translate. Device Info screen. Status for checkin request when it is unknown -->
<string name="checkin_download_unknown">Unknown status</string>
<!-- Phone info -->
+ <!-- Phone Info screen. Button label to turn on the radio . Only shown in diagnostic screen, so precise translation is not needed. -->
<string name="turn_on_radio">Turn on radio</string>
+ <!-- Phone Info screen. Button label to turn off the radio . Only shown in diagnostic screen, so precise translation is not needed. -->
<string name="turn_off_radio">Turn off radio</string>
+ <!-- Phone Info screen. Button label to turn on the log for QXDM SD . Only shown in diagnostic screen, so precise translation is not needed. -->
<string name="turn_on_qxdm">Enable QXDM SD log</string>
+ <!-- Phone Info screen. Button label to turn off the log for QXDM SD . Only shown in diagnostic screen, so precise translation is not needed. -->
<string name="turn_off_qxdm">Disable QXDM SD log</string>
+ <!-- Phone Info screen. Menu item label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_menu_viewADN">View SIM address book</string>
+ <!-- Phone Info screen. Menu item label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_menu_viewFDN">View Fixed Dialing Numbers</string>
+ <!-- Phone Info screen. Menu item label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_menu_viewSDN">View Service Dialing Numbers</string>
+ <!-- Phone Info screen. Menu item label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_menu_getPDP">Get PDP list</string>
+ <!-- Phone Info screen. Menu item label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_menu_enableData">Enable data connection</string>
+ <!-- Phone Info screen. Menu item label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_menu_disableData">Disable data connection</string>
+ <!-- Phone Info screen. Menu item label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_menu_enableDataOnBoot">Enable data on boot</string>
+ <!-- Phone Info screen. Menu item label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_menu_disableDataOnBoot">Disable data on boot</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_service_in">In service</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_service_out">Out of service</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_service_emergency">Emergency calls only</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_service_off">Radio off</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_roaming_in">Roaming</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_roaming_not">Not roaming</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_phone_idle">Idle</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_phone_ringing">Ringing</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_phone_offhook">Call in progress</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_data_disconnected">Disconnected</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_data_connecting">Connecting</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_data_connected">Connected</string>
+ <!-- Phone Info screen. Status label. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_data_suspended">Suspended</string>
+ <!-- Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_unknown">unknown</string>
+ <!-- Phone Info screen. Units shown after a value. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_display_packets">pkts</string>
+ <!-- Phone Info screen. Units shown after a value. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_display_bytes">bytes</string>
+ <!-- Phone Info screen. Units shown after a value. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_display_dbm">dBm</string>
+ <!-- Phone Info screen. Units shown after a value. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_display_asu">asu</string>
+ <!-- Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_lac">LAC</string>
+ <!-- Used for diagnostic info screens, precise translation isn't needed -->
<string name="radioInfo_cid">CID</string>
+ <!-- Used for diagnostic info screens, precise translation isn't needed. Unmounts the SD card from the phone, meaning it will become available for an attached computer -->
<string name="sdcard_unmount">Unmount SD card</string>
- <string name="disconnect_ums">Disconnect USB mass storage</string>
- <!-- labels for the font size spinner -->
+ <!-- choice for the font size spinner -->
<string name="small_font">Small</string>
+ <!-- choice for the font size spinner -->
<string name="medium_font">Medium</string>
+ <!-- choice for the font size spinner -->
<string name="large_font">Large</string>
- <!-- label for font size preview -->
+ <!-- Do not translate. label for font size preview. Does not need to be translated. -->
<string name="font_size_preview_text">Servez à ce monsieur une bière et des kiwis.</string>
+ <!-- Button. Chosen when they want to save the chosen text size. -->
<string name="font_size_save">OK</string>
- <!-- SD card setting -->
+ <!-- Title for a notification shown. -->
<string name="sdcard_setting">SD card</string>
- <!-- power management settings -->
+ <!-- Label for when the screen will timeout. Used for diagnostic info screens, precise translation isn't needed -->
<string name="screen_off_timeout_label">Never timeout while charging</string>
+ <!-- Checkbox for whether the screen will stay on when charging.This is in a hidden setting panel, so it's not too important -->
<string name="stay_on">Screen is always on while charging</string>
+ <!-- Used for diagnostic info screens, precise translation isn't needed -->
<string name="app_launcher_newView_text">New AppLauncher</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_status_label">Battery status:</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_scale_label">Battery scale:</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_level_label">Battery level:</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_health_label">Battery health:</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_technology_label">Battery technology:</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_voltage_label">Battery voltage:</string>
+ <!-- Battery Info screen. Units shown after a value. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_voltage_units">mV</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_temperature_label">Battery temperature:</string>
+ <!-- Battery Info screen. Units shown after a value. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_temperature_units">\u00B0 C</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_uptime">Time since boot:</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_awake_battery">Awake time on battery:</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_awake_plugged">Awake time when charging:</string>
+ <!-- Battery Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_screen_on">Screen ON time:</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_status_unknown">Unknown</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_status_charging">Charging</string>
+ <!-- Battery Info screen. Units shown after a value. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_status_charging_ac">(AC)</string>
+ <!-- Battery Info screen. Units shown after a value. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_status_charging_usb">(USB)</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_status_discharging">Discharging</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_status_not_charging">Not charging</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_status_full">Full</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_health_unknown">Unknown</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_health_good">Good</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_health_overheat">Overheat</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_health_dead">Dead</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_health_over_voltage">Over voltage</string>
+ <!-- Battery Info screen. Value for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="battery_info_health_unspecified_failure">Unknown error</string>
- <!--Used as option name on second screen after selecting Bluetooth settings -->
+ <!-- Used as setting title (for checkbox) on second screen after selecting Bluetooth settings -->
<string name="bluetooth">Bluetooth</string>
- <!-- Summary text while Bluetooth is starting or stopping: -->
- <string name="bluetooth_starting">Bluetooth starting\u2026</string>
+ <!-- Summary text while Bluetooth is stopping -->
<string name="bluetooth_stopping">Bluetooth stopping\u2026</string>
- <string name="bluetooth_disabled">Select to turn on Bluetooth</string>
- <string name="bluetooth_enabled">Select to turn on Bluetooth</string>
+ <!-- Summary used for the Bluetooth on/off checkbox when bluetooth is currently disabled. -->
+ <string name="bluetooth_disabled">Turn on Bluetooth</string>
+ <!-- Summary used for the Bluetooth on/off checkbox when bluetooth is currently enabled. -->
+ <string name="bluetooth_enabled"></string>
+ <!-- Summary text while Bluetooth is turning on -->
<string name="bluetooth_enabling">Turning on Bluetooth\u2026</string>
- <!-- Bluetooth settings screen, check box label -->
+ <!-- Bluetooth settings screen, check box label when the Bluetooth device can be seen by others -->
<string name="bluetooth_visibility">Discoverable</string>
- <!-- Bluetooth settings screen, summary after selecting Discoverable check box -->
- <string name="bluetooth_is_discoverable">Discoverable for %1$s seconds\u2026</string>
- <!-- Bluetooth settings screen, Discoverable summary text -->
- <string name="bluetooth_not_discoverable">Select to make device discoverable</string>
- <!-- Bluetooth settings screen, heading -->
+ <!-- Bluetooth settings screen, summary after selecting Discoverable check box -->
+ <string name="bluetooth_is_discoverable">Discoverable for <xliff:g id="discoverable_time_period">%1$s</xliff:g> seconds\u2026</string>
+ <!-- Bluetooth settings screen, Discoverable checkbox summary text -->
+ <string name="bluetooth_not_discoverable">Make device discoverable</string>
+ <!-- Bluetooth settings screen, heading above the list of nearby bluetooth devices -->
<string name="bluetooth_devices">Bluetooth devices</string>
- <!-- Bluetooth settings screen, heading -->
+ <!-- Bluetooth settings screen, title for the current bluetooth name setting -->
<string name="bluetooth_device_name">Device name</string>
- <!-- Bluetooth settings screen, summary text -->
+ <!-- Bluetooth settings screen, summary text when there isn't a name set (for the name setting) -->
<string name="bluetooth_name_not_set">No name set, using account name</string>
- <!-- Bluetooth settings screen, menu item -->
+ <!-- Bluetooth settings screen, menu item to scan for nearby bluetooth devices -->
<string name="bluetooth_scan_for_devices">Scan for devices</string>
- <!-- Bluetooth settings screen, menu item -->
+ <!-- Bluetooth settings screen, menu item to clear the nearby bluetooth device list -->
<string name="bluetooth_clear_list">Clear device list</string>
- <string name="bluetooth_disconnect_blank"><xliff:g id="device_name">%1$s</xliff:g> will be disconnected</string>
+ <!-- Bluetooth settings. Message for disconnecting from a bluetooth device -->
+ <string name="bluetooth_disconnect_blank"><xliff:g id="device_name">%1$s</xliff:g> will be disconnected.</string>
+ <!-- Bluetooth settings. Message when cnonected to a device -->
<string name="bluetooth_connected">Connected</string>
+ <!-- Bluetooth settings. Message when a device is disconnected -->
+ <string name="bluetooth_disconnected">Disconnected</string>
+ <!-- Bluetooth settings. Message when disconnecting from a device -->
+ <string name="bluetooth_disconnecting">Disconnecting\u2026</string>
+ <!-- Bluetooth settings. Message when connecting to a device -->
<string name="bluetooth_connecting">Connecting\u2026</string>
+ <!-- Bluetooth settings. Message when the device state is unknown -->
+ <string name="bluetooth_unknown"></string>
<!--Bluetooth settings screen, summary text under individual Bluetooth devices when not paired yet -->
<string name="bluetooth_not_connected">Pair with this device</string>
+ <!--Bluetooth settings screen, summary text when unable to turn on Bluetooth -->
<string name="bluetooth_failed_to_enable">Unable to turn on Bluetooth</string>
<!--Bluetooth settings screen, summary text under individual Bluetooth devices when pairing -->
<string name="bluetooth_pairing">Pairing\u2026</string>
- <string name="failed_to_pair">Unable to pair with <xliff:g id="device_name">%1$s</xliff:g></string>
- <string name="failed_to_connect">Unable to connect to <xliff:g id="device_name">%1$s</xliff:g></string>
+ <!--Bluetooth settings screen, summary text under individual Bluetooth devices when failure to pair with one -->
+ <string name="failed_to_pair">Unable to pair with <xliff:g id="device_name">%1$s</xliff:g>.</string>
+ <!--Bluetooth settings screen, summary text under individual Bluetooth devices when failure to connect with one-->
+ <string name="failed_to_connect">Unable to connect to <xliff:g id="device_name">%1$s</xliff:g>.</string>
+ <!--Bluetooth settings screen, summary text under individual Bluetooth devices when paired with one -->
<string name="bluetooth_paired">Paired</string>
+ <!--Bluetooth settings screen, summary text under individual Bluetooth devices when paired with one and the device is not nearby -->
<string name="bluetooth_paired_not_nearby">Paired</string>
+ <!--Bluetooth settings screen, summary text under individual Bluetooth devices that are hands free or a headset -->
<string name="bluetooth_device">handsfree/headset</string>
<!-- Context menu items for bluetooth device entries -->
<string name="bluetooth_disconnect">Disconnect</string>
+ <!-- Context menu items for bluetooth device entries -->
<string name="bluetooth_connect">Connect</string>
+ <!-- Context menu items for bluetooth device entries -->
<string name="bluetooth_unpair">Unpair</string>
+ <!-- Context menu items for bluetooth device entries -->
<string name="bluetooth_pair">Pair</string>
<!--Bluetooth settings screen, text that appears in heading bar when scanning for devices -->
<string name="progress_scanning">Scanning</string>
+ <!-- Notification ticker text (shown in the status bar) when a Bluetooth device wants to pair with us -->
<string name="bluetooth_notif_ticker">Bluetooth pairing request</string>
- <string name="bluetooth_notif_title">Bluetooth pairing request</string>
+ <!-- Notification title when a Bluetooth device wants to pair with us -->
+ <string name="bluetooth_notif_title">Pairing request</string>
+ <!-- Notification message when a Bluetooth device wants to pair with us -->
<string name="bluetooth_notif_message">Select to pair with\u0020</string>
+ <!-- Do not translate. Used for diagnostic screens, precise translation is not necessary -->
<string name="bluetooth_scan_text">Empty button\u2026</string>
+ <!-- Do not translate. Used for diagnostic screens, precise translation is not necessary -->
<string name="bluetooth_settings_text">Empty button\u2026</string>
+ <!-- Do not translate. Used for diagnostic screens, precise translation is not necessary -->
<string name="bluetooth_enable_text">Empty button\u2026</string>
- <string name="bluetooth_device_info_connectButton_text"></string>
+ <!-- Do not translate. Used for diagnostic screens, precise translation is not necessary -->
+ <string name="bluetooth_device_info_connectButton_text">Turn on Bluetooth</string>
+ <!-- Do not translate. Used for diagnostic screens, precise translation is not necessary -->
<string name="bluetooth_device_info_deviceInfo_text"></string>
+ <!-- Do not translate. Used for diagnostic screens, precise translation is not necessary -->
<string name="bluetooth_sdp_query_services_text"></string>
<!-- Date & time settings screen title -->
<string name="date_and_time">Date &amp; time settings</string>
+ <!-- Do not translate. Sample date format -->
<string name="date_time_dateDisplay_text">Nov 3 1997</string>
+ <!-- Do not translate. Sample time format -->
<string name="date_time_timeDisplay_text">11:45 AM</string>
+ <!-- Date/time settings. Summary of the checkbox for choosing between 12 hour time or 24 hour time. Sample of 12-hour time -->
+ <string name="date_time_12_hour_sample">1:00 pm</string>
+ <!-- Date/time settings. Summary of the checkbox for choosing between 12 hour time or 24 hour time. Sample of 24-hour time -->
+ <string name="date_time_24_hour_sample">13:00</string>
+ <!-- Do not translate. Title to change time -->
<string name="date_time_changeTime_text">Change time</string>
- <string name="date_time_changeDate_text">Change date</string>
+ <!-- Do not translate. Title to change date -->
+ <string name="date_time_changeDate_text">Date</string>
+ <!-- Do not translate. Title to change time zone -->
<string name="date_time_setzone_text">Change time zone</string>
+ <!-- Do not translate. Label for current time zone -->
<string name="date_time_timezone_label">Time zone:</string>
- <string name="choose_timezone_region">Select region</string>
- <!-- Date & time settings screen, setting option name -->
+ <!-- The title of the activity to pick a time zone. -->
<string name="choose_timezone">Select time zone</string>
- <string name="default_date_format">MM/dd/yyyy</string>
+ <!-- Do not translate. Used as the value for a setting. -->
+ <string name="default_date_format"><xliff:g id="default_date_format">MM/dd/yyyy</xliff:g></string>
+ <!-- Label of preview text when tweaking font size -->
<string name="display_preview_label">Preview:</string>
+ <!-- Label for chosen font size -->
<string name="display_font_size_label">Font size:</string>
- <string name="intent_sender_data_label">Data:</string>
- <string name="intent_sender_sendbroadcast_text">Send broadcast</string>
- <string name="intent_sender_action_label">Action:</string>
- <string name="intent_sender_startactivity_text">Start activity</string>
- <string name="intent_sender_resource_label">Resource: </string>
+ <!-- Used for diagnostic screens, precise translation is not necessary -->
+ <string name="intent_sender_data_label"><xliff:g id="data">Data:</xliff:g></string>
+ <!-- Used for diagnostic screens, precise translation is not necessary -->
+ <string name="intent_sender_sendbroadcast_text">Send <xliff:g id="broadcast">broadcast</xliff:g></string>
+ <!-- Used for diagnostic screens, precise translation is not necessary -->
+ <string name="intent_sender_action_label"><xliff:g id="action">Action</xliff:g>:</string>
+ <!-- Used for diagnostic screens, precise translation is not necessary -->
+ <string name="intent_sender_startactivity_text">Start <xliff:g id="activity">activity</xliff:g></string>
+ <!-- Used for diagnostic screens, precise translation is not necessary -->
+ <string name="intent_sender_resource_label"><xliff:g id="resource">Resource</xliff:g>: </string>
+ <!-- Used for diagnostic screens, precise translation is not necessary -->
<string name="intent_sender_account_label">Account: </string>
+ <!-- Setting title to choose a lock pattern -->
<string name="keyguard_pw_mod_text">Select lock pattern</string>
+ <!-- Setting title to change the PIN -->
<string name="keyguard_pin_mod_text">Change PIN</string>
+ <!-- Setting title for keyguard settings -->
<string name="keyguard_label">Keyguard</string>
+ <!-- Setting title for SIM PIN -->
<string name="keyguard_sim_pin_label">SIM PIN</string>
+ <!-- Error message when the password entered is incorrect -->
<string name="keyguard_password_old_password_error_text">The old password you typed is not correct. Please try again.</string>
+ <!-- Button text after they've entered passwords -->
<string name="keyguard_password_button_text">OK</string>
+ <!-- Label used for field to confirm the entered password -->
<string name="keyguard_password_confirm_new_label">Confirm new password:</string>
+ <!-- When changing password, the label for the new password -->
<string name="keyguard_password_new_label">New password:</string>
+ <!-- When changing password, the label for the Old password -->
<string name="keyguard_password_old_label">Old password:</string>
+ <!-- When changing password, the error message if the new password and the confirmatino don't match -->
<string name="keyguard_password_mismatch_error_text">The two passwords don\'t match. Please type them again.</string>
- <!-- HTTP proxy settings -->
+ <!-- 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 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>
+ <!-- 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-->
<string name="proxy_error">Attention</string>
+ <!-- HTTP proxy settings. Button to get rid of error box-->
<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. Error msg -->
<string name="proxy_error_empty_port">You must complete the port field.</string>
+ <!-- HTTP proxy settings. Error msg -->
<string name="proxy_error_empty_host_set_port">The port field must be empty if the host field is empty.</string>
+ <!-- HTTP proxy settings. Error msg -->
<string name="proxy_error_invalid_port">The port you typed is not valid.</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_signal_location_label">Location:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_neighboring_location_label">Neighboring CID:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_data_attempts_label">Data attempts:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_imsi_label">IMSI:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_gprs_service_label">GPRS service:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_roaming_label">Roaming:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_imei_label">IMEI:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_call_redirect_label">Call redirect:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_ppp_resets_label">Number of PPP reset since boot:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_gsm_disconnects_label">GSM disconnects:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_current_network_label">Current network:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_data_successes_label">Data successes:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_ppp_received_label">PPP received:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_gsm_service_label">GSM service:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_signal_strength_label">Signal strength:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_call_status_label">Call status:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_ppp_sent_label">PPP sent:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_radio_resets_label">Radio resets:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_message_waiting_label">Message waiting:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_phone_number_label">Phone number:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_band_mode_label">Select radio band</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_network_type_label">Network type:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_set_perferred_label">Set preferred network type:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_ping_ipaddr">Ping IpAddr:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_ping_hostname">Ping Hostname(www.google.com):</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_http_client_test">HTTP Client test:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_toggle_ciph_label">Toggle ciphering</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="ping_test_label">Run ping test</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_smsc_label">SMSC:</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_smsc_update_label">Update</string>
+ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed -->
<string name="radio_info_smsc_refresh_label">Refresh</string>
<!-- Band Mode Selection -->
+ <!-- Band mode screen. Title of activity. -->
<string name="band_mode_title">Set GSM/UMTS band</string>
+ <!-- Band mode screen. Loading message. -->
<string name="band_mode_loading">Loading band list\u2026</string>
+ <!-- Band mode screen. Button caption to set the bandmode. -->
<string name="band_mode_set">Set</string>
+ <!-- Band mode screen. Status message when unsuccessful. -->
<string name="band_mode_failed">Unsuccessful</string>
+ <!-- Band mode screen. Statusm essage when successful. -->
<string name="band_mode_succeeded">Successful</string>
-
+ <!-- The label when choosing a ringer mode -->
<string name="ringer_volume_ringer_mode_label">Ringer mode</string>
+ <!-- The label for the 'increasing ring' checkbox setting -->
<string name="ringer_volume_screen_increasing_text">Increasing ring</string>
+ <!-- The label/title for the ringtone setting -->
<string name="ringer_volume_ringtone_label">Ringtone</string>
+ <!-- Instructions telling user hwo to adjust volume using the hardware volume keys -->
<string name="ringer_volume_instructions">Use volume buttons to adjust ringer volume</string>
+ <!-- Instructions after the user changes the mass storage settings -->
<string name="sdcard_changes_instructions">Changes take effect when USB cable is reconnected</string>
+ <!-- Enable USB mass storage mode checkbox title -->
<string name="sdcard_settings_screen_mass_storage_text">Enable USB mass storage</string>
+ <!-- The label for total bytes on SD card -->
<string name="sdcard_settings_total_bytes_label">Total bytes:</string>
+ <!-- Message when there is no SD card present -->
<string name="sdcard_settings_not_present_status">No SD card</string>
+ <!-- Th label for the available (free) sapce on the SD card -->
<string name="sdcard_settings_available_bytes_label">Available bytes:</string>
+ <!-- Message when the SD card is being used by the computer as mass storage -->
<string name="sdcard_settings_mass_storage_status">SD card is being used as a mass storage device</string>
+ <!-- Message when it is safe to remove the SD card -->
<string name="sdcard_settings_unmounted_status">It is now safe to remove the SD card</string>
+ <!-- Error message when the SD card was removed without properly unmounting -->
<string name="sdcard_settings_bad_removal_status">SD card was removed while still in use!</string>
+ <!-- Label for used bytes on the SD card -->
<string name="sdcard_settings_used_bytes_label">Used bytes:</string>
+ <!-- Message when it is scanning the SD card for new files -->
<string name="sdcard_settings_scanning_status">Scanning SD card for media\u2026</string>
+ <!-- Message when the SD card is mounted as read only -->
<string name="sdcard_settings_read_only_status">SD card mounted read-only</string>
+ <!-- Title for dialog when SD card is removed unsafely -->
<string name="sdcard_removal_alert_title">Unsafe SD card removal!</string>
- <string name="sdcard_removal_alert_scolding">The SD card was removed while still in use!
- To avoid card corruption, use the SD card Settings screen to unmount the card before removal.</string>
- <string name="sdcard_removal_alert_ok">OK</string>
+ <!-- Error dialog's title when SD card is unreadable -->
<string name="sdcard_unmountable_alert_title">SD card unreadable</string>
- <string name="sdcard_unmountable_message">The SD card could not be read.
- The file system may be corrupted or the card may be defective.</string>
- <string name="sdcard_unmountable_alert_ok">OK</string>
+ <!-- Used by the APN editor. The label for user name to use. -->
<string name="telephony_user_label">User:</string>
+ <!-- Used by the APN editor. The label for server to use. -->
<string name="telephony_server_label">Server:</string>
+ <!-- Used by the APN editor. The label for the name of the APN. -->
<string name="telephony_name_label">Name:</string>
+ <!-- Used by the APN editor. The label for the MMSC. -->
<string name="telephony_mmsc_label">MMSC:</string>
+ <!-- Used by the APN editor. The label for the APN. -->
<string name="telephony_apn_label">APN:</string>
+ <!-- Used by the APN editor. The label for the MCC. -->
<string name="telephony_mcc_label">MCC:</string>
+ <!-- Used by the APN editor. The label for the port. -->
<string name="telephony_port_label">Port:</string>
+ <!-- Used by the APN editor. The label for the password. -->
<string name="telephony_password_label">Password:</string>
+ <!-- Used by the APN editor. The label for the proxy. -->
<string name="telephony_proxy_label">Proxy:</string>
+ <!-- Used by the APN editor. The label for the MNC. -->
<string name="telephony_mnc_label">MNC:</string>
+ <!-- Used by the APN editor. The label for the MMS proxy. -->
<string name="telephony_mmsproxy_label">MMS proxy:</string>
+ <!-- Used by the APN editor. The label for the MMS port. -->
<string name="telephony_mmsport_label">MMS port:</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi sample netmask -->
<string name="wifi_screen_netmask_text">255.255.255.0</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi busy text -->
<string name="wifi_screen_status_text">Wi-Fi is working</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi sample DNS -->
<string name="wifi_screen_dns_text">209.81.59.2</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi sample gateway -->
<string name="wifi_screen_gateway_text">192.168.20.1</string>
+ <!-- Do not translate. (This is for unused legacy code) Translatoin not needed -->
<string name="wifi_screen_test_text">Test</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi label for gateway -->
<string name="wifi_gateway_label">gateway:</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi label for netmask -->
<string name="wifi_netmask_label">netmask:</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi label DHCP -->
<string name="wifi_screen_dhcp_text">automatic</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi label for host IP -->
<string name="wifi_host_ip">host ip:</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi label for choosing a wifi access point -->
<string name="wifi_screen_activate_text">Activate</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi label for ID -->
<string name="wifi_wlan_id">wlan id:</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi sample IP -->
<string name="wifi_screen_ip_text">192.168.20.10</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi code for manually entered info -->
<string name="wifi_screen_manual_text">manual</string>
+ <!-- Do not translate. (This is for unused legacy code) Wi-Fi label for DNS -->
<string name="wifi_dns_label">dns:</string>
- <!-- SetupWizard strings used by DateTimeSettingsSetupWizard -->
+ <!-- SetupWizard strings used by DateTimeSettingsSetupWizard. The button label for going to the next screen. -->
<string name="next_label">Next</string>
<!-- 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>
<!-- TODO: 881807 -->
- <!-- Settings chooser -->
+ <!-- Do not translate. Settings chooser, does not need to be translated -->
<string name="settings_chooser_pick_string">
Settings icon should forward to:
</string>
- <string name="wallpaper_label">Wallpaper</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>
- <string name="underdeveloped_settings_label">Underdeveloped settings</string>
+ <!-- Do not translate. -->
<string name="debug_intent_sender_label">Debug intent sender</string>
+ <!-- The title of the activity to see random device info. -->
<string name="device_info_label">Device info</string>
+ <!-- The title of the activity to see battery info. -->
<string name="battery_info_label">Battery info</string>
+ <!-- The title of the activity to adjust display settings -->
<string name="display_label">Display</string>
+ <!-- The title of the activity to see phone info -->
<string name="phone_info_label">Phone info</string>
+ <!-- The title of the activity to adjust SD card settings-->
<string name="sd_card_settings_label">SD card</string>
- <string name="favorites_label">Favorites</string>
- <string name="apn_label">APN</string>
+ <!-- The title of the activity to adjust proxy settings -->
<string name="proxy_settings_label">Proxy settings</string>
<!-- ======================================================================================= -->
<!-- NEW STUFF -->
<!-- ======================================================================================= -->
- <!-- Widgets -->
- <string name="done">OK</string>
+ <!-- Button label for generic cancel action -->
<string name="cancel">Cancel</string>
<!-- Main Settings screen title -->
<string name="settings_label">Settings</string>
- <string name="basic_settings_title">Phone basics</string>
<!-- Wireless controls settings screen, setting check box label -->
<string name="airplane_mode">Airplane mode</string>
<!-- Wireless controls settings screen, setting option summary text -->
- <string name="airplane_mode_summary">Select to disable all wireless connections</string>
- <!-- Wireless controls settings screen, setting option summary text as check box is selected -->
+ <string name="airplane_mode_summary">Disable all wireless connections</string>
+ <!-- Wireless controls settings screen, setting option summary text as airplane mode is being enabled (so it is disabling all wireless connections) -->
<string name="airplane_mode_turning_on">Disabling wireless connections\u2026</string>
- <!-- Wireless controls settings screen, setting option summary text as check box is cleared -->
+ <!-- Wireless controls settings screen, setting option summary text as airplane mode is being disabled (so it is re-enabling all the wireless conenctions) -->
<string name="airplane_mode_turning_off">Enabling wireless connections\u2026</string>
- <!-- Main Settings screen settings title -->
+ <!-- Main Settings screen settings title for things like Wi-Fi, bluetooth, airplane mode. This will take you to another screen with those settings. -->
<string name="radio_controls_title">Wireless controls</string>
- <!-- Main Settings screen settings summary text -->
+ <!-- Main Settings screen settings summary text for the "Wireless controls" setting -->
<string name="radio_controls_summary">Manage Wi-Fi, Bluetooth, airplane mode, &amp; mobile networks</string>
- <string name="networks_title">Network settings</string>
-
- <!-- mobile network settings screen, setting check box title -->
- <string name="roaming">Data roaming</string>
- <!-- mobile network settings screen, setting option summary text when check box is selected -->
- <string name="roaming_enable">Connect to data services when roaming</string>
- <!-- mobile network settings screen, setting option summary text when check box is clear -->
- <string name="roaming_disable">Connect to data services when roaming</string>
- <!-- mobile network settings screen, dialog message when you are roaming and clear the "Data roaming" check box -->
- <string name="roaming_reenable_message">You have lost data connectivity because you left your home network with data roaming turned off.</string>
- <!-- mobile network settings screen, button on dialog box that appears when you are roaming and clear the "Data roaming" check box -->
- <string name="roaming_turn_it_on_button">Turn it on</string>
- <!-- mobile network settings screen, message in dialog box that appears when you select the "Data roaming" check box -->
- <string name="roaming_warning">Allow data roaming? You may incur significant roaming charges!</string>
- <!-- mobile network settings screen, title of dialog box that appears when you select the "Data roaming" check box -->
- <string name="roaming_reenable_title">Attention</string>
- <!-- mobile network settings screen, setting option name -->
- <string name="networks">Operator selection</string>
- <!-- mobile network settings screen, setting option summary text -->
- <string name="sum_carrier_select">Select a network operator</string>
+
<!-- Date and time settings -->
- <!-- Main Settings screen setting option name -->
+ <!-- Main Settings screen setting option name to go into the date and time settings-->
<string name="date_and_time_settings_title">Date &amp; time</string>
- <!-- Main Settings screen setting option summary text -->
+ <!-- Main Settings screen setting option summary text for the item to go into the date and time settings. -->
<string name="date_and_time_settings_summary">Set date, time, time zone &amp; formats</string>
- <!-- Date & time setting screen setting check box title -->
+ <!-- Date & time setting screen setting check box title if the date and time should be determined automatically -->
<string name="date_time_auto">Automatic</string>
- <!-- Date & time setting screen setting option summary text when Automatic check box is selected -->
+ <!-- Date & time setting screen setting option summary text when Automatic check box is selected (that is, when date and time should be determined automatically) -->
<string name="date_time_auto_summaryOn">Use network-provided values</string>
<!-- Date & time setting screen setting option summary text when Automatic check box is clear -->
<string name="date_time_auto_summaryOff">Use network-provided values</string>
<!-- Date & time setting screen setting check box title -->
<string name="date_time_24hour">Use 24-hour format</string>
- <!-- Date & time setting screen setting option name -->
+ <!-- Date & time setting screen setting option title -->
<string name="date_time_set_time">Set time</string>
- <!-- Date & time setting screen setting option name -->
- <string name="date_time_set_timezone">Set time zone</string>
- <!-- Date & time setting screen setting option name -->
+ <!-- Date & time setting screen setting option title -->
+ <string name="date_time_set_timezone">Select time zone</string>
+ <!-- Date & time setting screen setting option title -->
<string name="date_time_set_date">Set date</string>
- <!-- Date & time setting screen setting option name -->
+ <!-- Date & time setting screen setting option title. This setting allows the user to choose how the date should be displayed in apps (what ordering for month and day, etc.) -->
<string name="date_time_date_format">Select date format</string>
<!-- Menu item on Select time zone screen -->
<string name="zone_list_menu_sort_alphabetically">Sort alphabetically</string>
<!-- Menu item on Select time zone screen -->
<string name="zone_list_menu_sort_by_timezone">Sort by time zone</string>
- <!-- Security and data settings -->
- <string name="security_and_data_label">Security &amp; data</string>
- <!-- Main Settings screen setting option name -->
+ <!-- Main Settings screen setting option title for the item to take you the security and location screen -->
<string name="security_settings_title">Security &amp; location</string>
- <!-- Main Settings screen setting option summary text -->
- <string name="security_settings_summary">My Location, screen unlock, SIM card lock</string>
- <string name="data_settings">Data settings</string>
- <string name="data_settings_title">Data</string>
- <string name="data_settings_summary">SD card &amp; phone storage, data sync</string>
+ <!-- Main Settings screen setting option summary text for the item tot ake you to the security and location screen -->
+ <string name="security_settings_summary">Set My Location, screen unlock, SIM card lock</string>
+ <!-- In the security screen, the header title for settings related to Passwords-->
<string name="security_passwords_title">Passwords</string>
<!-- Bluetooth settings -->
- <!-- Bluetooth settings check box title on Main Settings screen; probably unused now -->
+ <!-- Bluetooth settings check box title on Main Settings screen -->
<string name="bluetooth_quick_toggle_title">Bluetooth</string>
- <string name="bluetooth_quick_toggle_summary">Select to turn on Bluetooth</string>
+ <!-- Bluetooth settings check box summary for turning on bluetooth -->
+ <string name="bluetooth_quick_toggle_summary">Turn on Bluetooth</string>
<!--Used as title on second screen after selecting Bluetooth settings -->
<string name="bluetooth_settings">Bluetooth settings</string>
- <!--Wireless controls screen, settings title -->
+ <!--Wireless controls screen, settings title for the item to take you to the bluetooth settings screen -->
<string name="bluetooth_settings_title">Bluetooth settings</string>
- <!--Wireless controls screen, settings summary -->
+ <!--Wireless controls screen, settings summary for the item tot ake you to the bluetooth settings screen -->
<string name="bluetooth_settings_summary">Manage connections, set device name &amp; discoverability</string>
- <string name="bluetooth_pin_entry">Bluetooth PIN entry</string>
+ <!-- Title for the dialog to enter PIN. -->
+ <string name="bluetooth_pin_entry">Bluetooth pairing request</string>
+ <!-- Title for the bluetooth device info screen. -->
<string name="bluetooth_device_info">Bluetooth device info</string>
-
+ <!-- Message when the bluetooth is pairing with anotehr device -->
<string name="bluetooth_pairing_msg">Pairing\u2026</string>
- <string name="bluetooth_enter_pin_msg">Type PIN for\u0020</string>
+ <!-- Message when bluetooth dialog for pin entry is shwoing -->
+ <string name="bluetooth_enter_pin_msg"><xliff:g id="device_name">%1$s</xliff:g>\n\nType PIN to pair.\n(Try 0000 or 1234.)</string>
+
+ <!-- Title for BT error dialogs. -->
+ <string name="bluetooth_error_title">Attention</string>
+ <!-- Message for the error dialog when BT pairing fails generically. -->
+ <string name="bluetooth_pairing_error_message">There was a problem pairing with <xliff:g id="device_name">%1$s</xliff:g>.</string>
+ <!-- Alternative message for the error dialog when BT pairing fails generically. This message suggests the user to try another PIN. -->
+ <string name="bluetooth_pairing_alternate_error_message">There was a problem pairing with <xliff:g id="device_name">%1$s</xliff:g>. Please try another PIN.</string>
+ <!-- Message for the error dialog when BT pairing fails because the PIN entered is incorrect. -->
+ <string name="bluetooth_pairing_pin_error_message">There was a problem pairing with <xliff:g id="device_name">%1$s</xliff:g> because the typed PIN is incorrect.</string>
+
+ <!-- Message for the error dialog when BT connecting operation fails generically. -->
+ <string name="bluetooth_connecting_error_message">There was a problem connecting to <xliff:g id="device_name">%1$s</xliff:g>.</string>
+ <!-- Bluetooth title for entering new data -->
<string name="bluetooth_new_data">Type new data</string>
+ <!-- Bluetooth button for confirming new data-->
<string name="bluetooth_new_data_confirm">OK</string>
+ <!-- Bluetooth button for canceling new data-->
<string name="bluetooth_new_data_cancel">Cancel</string>
+ <!-- Bluetooth message when scanning for new devices -->
<string name="bluetooth_scan_for_new_devices">Scanning for new devices\u2026</string>
-
+ <!-- Do not translate -->
<string name="bluetooth_device_info_alias">Device alias</string>
+ <!-- Do not translate -->
<string name="bluetooth_device_info_no_alias">Type alias here\u2026</string>
+ <!-- Do not translate -->
<string name="bluetooth_device_info_delete">Remove this device</string>
+ <!-- Do not translate -->
<string name="bluetooth_device_info_sdp">List supported services</string>
+ <!-- Caption for bluetooth discoverability setting dialog. -->
<string name="bluetooth_discoverability_panel_title">Make me\u2026</string>
- <string name="bluetooth_discoverable">Discoverable for %1$s seconds</string>
+ <!-- Summary for discoverable setting when device is discoverable for some amount of time -->
+ <string name="bluetooth_discoverable">Discoverable for <xliff:g id="discoverable_time_period">%1$s</xliff:g> seconds</string>
+ <!-- Summary for discoverable setting when device is connectable -->
<string name="bluetooth_connectable">Connectable only</string>
+ <!-- Summary for discoverable setting when device is not discoverable or conenctable -->
<string name="bluetooth_neither">Neither discoverable nor connectable</string>
- <string name="bluetooth_unknown">Unknown</string>
+ <!-- Bluetooth settings: The title of the preference (list item) that initiates a scan for devices -->
+ <string name="bluetooth_preference_scan_title">Scan for devices</string>
+ <!-- Bluetooth settings: The summary of the preference (list item) that initiates a scan for devices -->
+ <string name="bluetooth_preference_scan_summary">Find devices to pair with</string>
+
+ <!-- Bluetooth settings. Context menu item for a device. Action will connect to all profiles on the device. -->
+ <string name="bluetooth_device_context_connect">Connect</string>
+ <!-- Bluetooth settings. Context menu item for a device. Action will disconnect from all profiles on the device. -->
+ <string name="bluetooth_device_context_disconnect">Disconnect</string>
+ <!-- Bluetooth settings. Context menu item for a device. Action will first pair, and then connect to all profiles on the device. -->
+ <string name="bluetooth_device_context_pair_connect">Pair &amp; connect</string>
+ <!-- Bluetooth settings. Context menu item for a device. Action will remove pairing with the device. -->
+ <string name="bluetooth_device_context_unpair">Unpair</string>
+ <!-- Bluetooth settings. Context menu item for a device. Action will disconnect and remove pairing with the device. -->
+ <string name="bluetooth_device_context_disconnect_unpair">Disconnect &amp; unpair</string>
+ <!-- Bluetooth settings. Context menu item for a device. Action will take the user to another screen where they can choose exactly which profiles to connect to. -->
+ <string name="bluetooth_device_context_connect_advanced">Options\u2026</string>
+
+ <!-- Bluetooth settings. The title of the screen to pick which profiles to connect to on the device. For example, headphones may have both A2DP and headset, this allows the user to choose which one he wants to connect to. -->
+ <string name="bluetooth_connect_specific_profiles_title">Connect to\u2026</string>
+
+ <!-- Bluetooth settings. The user-visible string that is used whenever referring to the A2DP profile. -->
+ <string name="bluetooth_profile_a2dp">Media</string>
+ <!-- Bluetooth settings. The user-visible string that is used whenever referring to the headset or handsfree profile. -->
+ <string name="bluetooth_profile_headset">Phone</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>
+ <!-- Bluetooth settings. The summary string when a device is connected to the headset profile. -->
+ <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. 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>
+ <!-- Bluetooth settings. Connection options screen. The title of the checkbox that controls whether the device is in "online" mode or "offline" mode. This essentially is the checkbox that controls whether any checks / unchecks on a profile should be applied immediately, or next time the device is connected. -->
+ <string name="bluetooth_device_advanced_online_mode_title">Connect</string>
+ <!-- Bluetooth settings. Connection options screen. The summary of the online mode checkbox. This describes what the setting does in the context of the screen. -->
+ <string name="bluetooth_device_advanced_online_mode_summary">Connect to Bluetooth device</string>
+ <!-- Bluetooth settings. Connection options screen. The title of the header that is above all of the profiles. -->
+ <string name="bluetooth_device_advanced_profile_header_title">Profiles</string>
+ <!-- Bluetooth settings. Connection options screen. The summary for the A2DP checkbox preference when A2DP is connected. -->
+ <string name="bluetooth_a2dp_profile_summary_connected">Connected to media audio</string>
+ <!-- Bluetooth settings. Connection options screen. The summary for the headset checkbox preference when headset is connected. -->
+ <string name="bluetooth_headset_profile_summary_connected">Connected to phone audio</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>
+ <!-- Bluetooth settings. Connection options screen. The summary for the headset checkbox preference that describes how checking it will set the headset profile as preferred. -->
+ <string name="bluetooth_headset_profile_summary_use_for">Use for phone audio</string>
<!-- Wi-Fi settings -->
<!-- Used in the 2nd-level settings screen to turn on Wi-Fi -->
@@ -490,43 +781,72 @@
<!-- Used in the 1st-level settings screen to turn on Wi-Fi -->
<string name="wifi_quick_toggle_title">Wi-Fi</string>
<!-- Used in the 1st-level settings screen as the turn-on summary -->
- <string name="wifi_quick_toggle_summary">Select to turn on Wi-Fi</string>
+ <string name="wifi_quick_toggle_summary">Turn on Wi-Fi</string>
<!-- Used in the 1st-level settings screen to go to the 2nd-level settings screen -->
<string name="wifi_settings">Wi-Fi settings</string>
+ <!-- Title of the Wi-fi settings screen -->
<string name="wifi_settings_category">Wi-Fi settings</string>
<!--Wireless controls setting screen, Wi-Fi settings summary text -->
<string name="wifi_settings_summary">Set up &amp; manage wireless access points</string>
+ <!-- Button caption to forget a wifi network -->
<string name="forget_network">Forget</string>
+ <!-- Label for status of connection -->
<string name="wifi_status">Status</string>
+ <!-- Label for link speed (wifi) -->
<string name="wifi_link_speed">Speed</string>
+ <!-- Verbose wifi signal strength. This is the best out of 4 levels. -->
<string name="wifi_signal_3">Excellent</string>
+ <!-- Verbose wifi signal strength. This is the 2nd best out of 4 levels. -->
<string name="wifi_signal_2">Good</string>
+ <!-- Verbose wifi signal strength. This is the 3rd best out of 4 levels. -->
<string name="wifi_signal_1">Fair</string>
+ <!-- Verbose wifi signal strength. This is the worst out of 4 levels. -->
<string name="wifi_signal_0">Poor</string>
+ <!-- Label for the security of a wifi network -->
<string name="security">Security</string>
+ <!-- Value for the wifi security. This means no encryption. -->
<string name="wifi_security_open">Open</string>
+ <!-- Value for the wifi security -->
<string name="wifi_security_wep">WEP</string>
+ <!-- Value for the wifi security -->
<string name="wifi_security_wpa">WPA</string>
+ <!-- Value for the wifi security -->
<string name="wifi_security_wpa2">WPA2</string>
+ <!-- Value for the wifi security when it is unknown -->
<string name="wifi_security_unknown">Unknown</string>
+ <!-- Verbose security type of a wifi network. Open means no security. -->
<string name="wifi_security_verbose_open">Open network</string>
+ <!-- Verbose security type of a wifi network. -->
<string name="wifi_security_verbose_wep">Secured with WEP</string>
+ <!-- Verbose security type of a wifi network. -->
<string name="wifi_security_verbose_wpa">Secured with WPA</string>
+ <!-- Verbose security type of a wifi network. -->
<string name="wifi_security_verbose_wpa2">Secured with WPA2</string>
+ <!-- Wi-Fi IP addrress label -->
<string name="ip_address">IP address</string>
+ <!-- Label for the signal strength -->
<string name="signal">Signal strength</string>
<!--Wireless controls setting screen, Wi-Fi check box summary text when turning Wi-Fi on -->
<string name="wifi_starting">Turning on\u2026</string>
<!--Wireless controls setting screen, Wi-Fi check box summary text when turning Wi-Fi off -->
<string name="wifi_stopping">Turning off\u2026</string>
+ <!-- Generic error message , probably not used-->
<string name="wifi_error">Error</string>
+ <!-- Error message when Wi-Fi can't start -->
<string name="error_starting">Unable to start Wi-Fi</string>
+ <!-- Error message when Wi-Fi can't stop -->
<string name="error_stopping">Unable to stop Wi-Fi</string>
+ <!-- Error message when Wi-Fi can't scan for networks -->
<string name="error_scanning">Unable to scan for networks</string>
+ <!-- Error message when Wi-Fi can't connect -->
<string name="error_connecting">Unable to connect to the network</string>
+ <!-- Error message when Wi-Fi can't save the network -->
<string name="error_saving">Unable to save the network</string>
+ <!-- Button label to connect to a wifi network-->
<string name="connect">Connect</string>
+ <!-- Dialog title for when the user is trying to connect to a particular network-->
<string name="connect_to_blank">Connect to <xliff:g id="network_name">%1$s</xliff:g></string>
+ <!-- Caption for the wireless password -->
<string name="please_type_passphrase">Wireless password</string>
<!--Wi-Fi settings screen, connect to network dialog box, field label and hint text -->
<string name="please_type_hex_key">WEP hex key (0-9, A-F)</string>
@@ -534,35 +854,53 @@
<string name="wifi_show_password">Show password.</string>
<!--Wi-Fi settings screen menu option -->
<string name="scan_wifi">Scan</string>
+ <!-- Wifi network summary when not in nearby -->
<string name="summary_not_in_range">Not in range</string>
+ <!-- Wifi network summary when the network is configured previously -->
<string name="summary_remembered">Remembered</string>
+ <!-- Wifi network summary when there was an error connecting -->
<string name="summary_connection_failed">Connection unsuccessful, select to try again</string>
- <string name="wifi_prefer_wifi">Prefer Wi-Fi</string>
+ <!-- Header for the list of wifi networks-->
<string name="wifi_access_points">Wi-Fi networks</string>
- <string name="wifi_type_ssid">Type the network SSID:</string>
+ <!-- Caption for entering the SSID of a wifi network -->
+ <string name="wifi_type_ssid">Network SSID</string>
+ <!-- The label for security -->
<string name="wifi_security">Security</string>
+ <!-- Button caption to save a configuration wifi -->
<string name="wifi_save_config">Save</string>
+ <!-- An edit field's grayed out value when it has not been modified -->
<string name="wifi_password_unchanged">(unchanged)</string>
- <string name="wifi_add_other_network">Add a Wi-Fi network</string>
+ <!-- Action message to add a wifi network -->
+ <string name="wifi_add_other_network">Add Wi-Fi network</string>
+ <!-- Checkbox title for option to notify user when open networks are nearby -->
<string name="wifi_notify_open_networks">Network notification</string>
+ <!-- Checkbox summary for option to notify user when open networks are nearby -->
<string name="wifi_notify_open_networks_summary">Notify me when an open network is available</string>
<!-- This dialog will use the error_title as the title. -->
- <string name="wifi_dhcp_timeout_error">There is a problem obtaining an IP address.</string>
- <!-- This dialog will use the error_title as the title. -->
<string name="wifi_password_incorrect_error">The network password you typed is not correct. Please try again.</string>
+ <!-- Generic error message -->
<string name="wifi_generic_connection_error">There is a problem connecting to the network. Please try again.</string>
<!--Wi-Fi settings screen menu option -->
<string name="wifi_menu_advanced">Advanced</string>
+ <!-- Title of the screen to adjust IP settings -->
<string name="wifi_ip_settings_titlebar">IP settings</string>
+ <!-- Menu ietm to save the IP settings -->
<string name="wifi_ip_settings_menu_save">Save</string>
+ <!-- Menu ietm to cancel the IP settings -->
<string name="wifi_ip_settings_menu_cancel">Cancel</string>
+ <!-- Error message if the IP address is not valid -->
<string name="wifi_ip_settings_invalid_ip">Please type a valid IP address.</string>
+ <!-- Checkbox for whether to use a static IP address -->
<string name="wifi_use_static_ip">Use static IP</string>
+ <!-- Label for the IP address -->
<string name="wifi_ip_address">IP address</string>
+ <!-- Label for the DNS (first one) -->
<string name="wifi_dns1">DNS 1</string>
+ <!-- Label for the DNS (second one)-->
<string name="wifi_dns2">DNS 2</string>
- <string name="wifi_dns3">DNS 3</string>
+ <!-- Label for the gateway of the network -->
<string name="wifi_gateway">Gateway</string>
+ <!-- Label for the netmask of the network -->
<string name="wifi_netmask">Netmask</string>
<!--Wi-Fi settings screen, network context menu item -->
<string name="wifi_context_menu_connect">Connect to network</string>
@@ -571,47 +909,74 @@
<!--Wi-Fi settings screen, network context menu item -->
<string name="wifi_context_menu_change_password">Change password</string>
- <!-- These fragment_status_* will have the network name substituted in -->
+ <!-- Wi-Fi settings screen, advanced, settings section. This is a header shown above advanced wifi settings. -->
+ <string name="wifi_advanced_titlebar">Advanced</string>
+ <!-- Wi-Fi settings screen, setting title for choosing the number of channels to be used -->
+ <string name="wifi_setting_num_channels_title">Regulatory domain</string>
+ <!-- Wi-Fi settings screen, setting summary for choosing the number of channels to be used -->
+ <string name="wifi_setting_num_channels_summary">Set the number of channels to use</string>
+ <!-- Wi-Fi settings screen, generic error message when the regulatory domain could not be set. -->
+ <string name="wifi_setting_num_channels_error">There was a problem setting the regulatory domain.</string>
+ <!-- Wi-Fi settings screen, label to be appended to the count in displaying the list of valid channel counts -->
+ <string name="wifi_setting_num_channels_channel_phrase"><xliff:g id="num_channels">%1$d</xliff:g> channels</string>
+
+ <!-- Wi-Fi settings screen, advanced, title of the item to show the Wi-Fi device's MAC address. -->
+ <string name="wifi_advanced_mac_address_title">MAC address</string>
+
+ <!-- Status message of Wi-Fi when it is scanning -->
<string name="fragment_status_scanning">Scanning\u2026</string>
+ <!-- Status message of Wi-Fi when it is connecting to a particular network -->
<string name="fragment_status_connecting">Connecting to <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
+ <!-- Status message of Wi-Fi when it is authenticating with a network -->
<string name="fragment_status_authenticating">Authenticating with <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
+ <!-- Status message of Wi-Fi when it is obtaining the IP address from a netwrok -->
<string name="fragment_status_obtaining_ip">Obtaining IP address from <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
+ <!-- Status message of Wi-Fi when it is connect to a network -->
<string name="fragment_status_connected">Connected to <xliff:g id="network_name">%1$s</xliff:g></string>
+ <!-- Status message of Wi-Fi when it is disconnecting from a network -->
<string name="fragment_status_disconnecting">Disconnecting from <xliff:g id="network_name">%1$s</xliff:g>\u2026</string>
+ <!-- Status message of Wi-Fi when it is disconnected from a network-->
<string name="fragment_status_disconnected">Disconnected</string>
+ <!-- Status message of Wi-Fi when it is a failure (connection) -->
<string name="fragment_status_failed">Unsuccessful</string>
- <!-- These status_* will only be the status -->
+
+ <!-- Status message of Wi-Fi when it is scanning -->
<string name="status_scanning">Scanning\u2026</string>
+ <!-- Status message of Wi-Fi when it is connecting (but the network is not known right now) -->
<string name="status_connecting">Connecting\u2026</string>
+ <!-- Status message of Wi-Fi when it is authenticating (but the network is not known right now) -->
<string name="status_authenticating">Authenticating\u2026</string>
<!--Wi-Fi settings screen, summary text for network when connecting -->
<string name="status_obtaining_ip">Obtaining address\u2026</string>
<!--Wi-Fi settings screen, summary text for network when connected -->
<string name="status_connected">Connected</string>
+ <!-- Status message of Wi-Fi when it is disconnecting (but the network is not known right now) -->
<string name="status_disconnecting">Disconnecting\u2026</string>
+ <!-- Status message of Wi-Fi when it is disconnected (but the network is not known right now) -->
<string name="status_disconnected">Disconnected</string>
+ <!-- Status message of Wi-Fi when it is a failure (but the network is not known right now) -->
<string name="status_failed">Unsuccessful</string>
<!-- Sound and alerts settings -->
- <!-- Main Settings screen setting option name -->
+ <!-- Main Settings screen setting option name to go into the sound and display settings screen -->
<string name="sound_and_display_settings">Sound &amp; display</string>
<!-- Sound settings screen heading -->
<string name="sound_settings">Sound settings</string>
- <!-- Main Settings screen setting option summary text -->
+ <!-- Main Settings screen setting option summary text for the item to go into the soudn and display settings screen-->
<string name="sound_and_display_settings_summary">Set ringtones, notifications, screen brightness</string>
- <!-- Sound settings screen, setting option name -->
+ <!-- Sound settings screen, setting option name checkbox -->
<string name="silent_mode_title">Silent mode</string>
<!-- Sound settings screen, setting option summary text -->
- <string name="silent_mode_summary">All sounds except media are silenced</string>
- <!-- Sound settings screen, setting option name -->
+ <string name="silent_mode_summary">All sounds except media &amp; alarms are silenced</string>
+ <!-- Sound settings screen, setting option name to pick ringtone (a list dialog comes up)-->
<string name="ringtone_title">Phone ringtone</string>
<!-- Sound settings screen, setting option summary text -->
<string name="ringtone_summary">Set your default incoming call ringtone</string>
<!-- Sound settings screen, setting option name -->
<string name="ring_volume_title">Ringer volume</string>
<!-- Sound settings screen, setting option summary text -->
- <string name="ring_volume_summary">Set volume for incoming calls</string>
- <!-- Sound settings screen, setting option name -->
+ <string name="ring_volume_summary">Set volume for incoming calls and notifications</string>
+ <!-- Sound settings screen, setting option name checkbox -->
<string name="vibrate_title">Phone vibrate</string>
<!-- Sound settings screen, setting option summary text -->
<string name="vibrate_summary">Vibrate phone for incoming calls</string>
@@ -619,7 +984,14 @@
<string name="notification_sound_title">Notification ringtone</string>
<!-- Sound settings screen, setting option summary text -->
<string name="notification_sound_summary">Set your default notification ringtone</string>
- <!-- Sound settings screen, unused -->
+ <!-- Sound settings screen, the title of the volume bar to adjust the incoming call volume -->
+ <string name="incoming_call_volume_title">Incoming call volume</string>
+ <!-- Sound settings screen, the title of the volume bar to adjust the notification volume -->
+ <string name="notification_volume_title">Notification volume</string>
+ <!-- Sound settings screen, the caption of the checkbox for having the notification volume be
+ the same as the incoming call volume. -->
+ <string name="checkbox_notification_same_as_incoming_call">Use incoming call volume for notifications</string>
+ <!-- Sound settings screen, setting option title-->
<string name="notification_sound_dialog_title">Select notification ringtone</string>
<!-- Sound settings screen, setting option name -->
<string name="media_volume_title">Media volume</string>
@@ -639,10 +1011,15 @@
<string name="sound_effects_enable_summary_off">Play sound when making screen selection</string>
<!-- Sync settings -->
- <!-- Main Settings screen setting option name -->
+ <!-- Main Settings screen setting option name to go into the screen for data sync settings-->
<string name="sync_settings">Data synchronization</string>
- <!-- Main Settings screen setting option summary text -->
+ <!-- Main Settings screen setting option summary text for the itme to go into the screen with data sync settings-->
<string name="sync_settings_summary">Select which applications are synchronized</string>
+ <!-- Data synchronization settings screen, the header title for the settings that are general, for example background data on/off. -->
+ <string name="sync_settings_header_general_settings">General sync settings</string>
+ <!-- Data synchronization settings screen, the header title for the settings that are application-specific. -->
+ <string name="sync_settings_header_application_settings">Application sync settings</string>
+ <!-- Error message when the sync tried to delete too many things -->
<string name="sync_too_many_deletes">Delete limit exceeded</string>
<!-- Data synchronization settings screen, setting option name -->
<string name="sync_automatically">Auto-sync</string>
@@ -654,134 +1031,162 @@
<string name="sync_menu_sync_now">Sync now</string>
<!-- Data synchronization settings screen, menu option -->
<string name="sync_menu_sync_cancel">Cancel sync</string>
- <!-- Data synchronization settings screen, setting option name -->
+ <!-- Data synchronization settings screen, checkbox setting option name. Controls whether Gmail should be synced. -->
<string name="sync_gmail">Gmail</string>
- <!-- Data synchronization settings screen, setting option name -->
+ <!-- Data synchronization settings screen, checkbox setting option name. Controls whether Calendar shoudl be synced. -->
<string name="sync_calendar">Calendar</string>
- <!-- Data synchronization settings screen, setting option name -->
+ <!-- Data synchronization settings screen, checkbox setting option name -->
<string name="sync_contacts">Contacts</string>
- <string name="sync_too_many_deletes_desc">There are %d deleted items for %s, account %s. What would you like to do?</string>
+ <!-- Dialog message for when there are too many deletes that would take place and we want user confirmation -->
+ <string name="sync_too_many_deletes_desc">There are <xliff:g id="number_of_deleted_items">%1$d</xliff:g> deleted items for <xliff:g id="type_of_sync">%2$s</xliff:g>, account <xliff:g id="account_name">%3$s</xliff:g>. What would you like to do?</string>
+ <!-- Dialog action for when there are too many deletes that would take place and we want user confirmation, and the user wants to delete the items -->
<string name="sync_really_delete">Delete the items.</string>
+ <!-- Dialog action for when there are too many deletes that would take place and we want user confirmation, and the user wants to undo the deletions -->
<string name="sync_undo_deletes">Undo the deletes.</string>
+ <!-- Dialog action for when there are too many deletes that would take place and we want user confirmation, and the user wants to do nothing for now -->
<string name="sync_do_nothing">Do nothing for now.</string>
+ <!-- Message when sync is currently failing -->
<string name="sync_is_failing">Sync is currently experiencing problems. It will be back shortly.</string>
+ <string name="sync_plug"><font fgcolor="#ffffffff">Welcome to Google Sync!</font>
+ \nA Google approach to synchronizing data to allow access to your contacts, appointments and more from wherever you are.
+ </string>
<!-- Display settings -->
- <!-- Sound & display settings screen, section header -->
+ <!-- Sound & display settings screen, section header for settings related to display -->
<string name="display_settings">Display settings</string>
- <!-- Sound & display settings screen, setting option name -->
+ <!-- Sound & display settings screen, animations check box label -->
+ <string name="animations_title">Animation</string>
+ <!-- Sound & display settings screen, animations option summary text when check box is selected -->
+ <string name="animations_summary_on">Show animation when opening/closing windows</string>
+ <!-- Sound & display settings screen, animations option summary text when check box is clear -->
+ <string name="animations_summary_off">Show animation when opening/closing windows</string>
+ <!-- Sound & display settings screen, setting option name to change brightness -->
<string name="brightness">Brightness</string>
- <string name="autorotate">Auto-rotate</string>
- <string name="autorotate_summary_on">Changing screen orientation rotates application</string>
- <string name="autorotate_summary_off">Changing screen orientation does not rotate application</string>
- <!-- Sound & display settings screen, setting option name -->
+ <!-- Sound & display settings screen, setting option name to chagne screen timeout -->
<string name="screen_timeout">Screen timeout</string>
+ <!-- Sound & display settings screen, setting option name to change whether the screen dims automatically before it is about to turn off -->
<string name="dim_screen">Dim screen</string>
- <!-- SIM lock settings -->
+ <!-- SIM lock settings title -->
<string name="sim_lock_settings">SIM card lock settings</string>
<!-- Security & location settings screen, setting option name -->
<string name="sim_lock_settings_category">Set up SIM card lock</string>
- <!-- Security & location settings screen, section heading -->
+ <!-- Security & location settings screen, section heading for settings related to sim card locking -->
<string name="sim_lock_settings_title">SIM card lock</string>
- <!-- SIM card lock settings screen, setting check box label & resulting dialog box title -->
+ <!-- SIM card lock settings screen, setting check box label -->
<string name="sim_pin_toggle">Lock SIM card</string>
- <!-- SIM card lock settings screen, setting option summary text when check box is selected -->
+ <!-- SIM card lock settings screen, setting option summary text when SIM lock check box is selected -->
<string name="sim_lock_on">Require PIN to use phone</string>
- <!-- SIM card lock settings screen, setting option summary text when check box is clear -->
+ <!-- SIM card lock settings screen, setting option summary text when SIM lock check box is clear -->
<string name="sim_lock_off">Require PIN to use phone</string>
- <!-- SIM card lock settings screen, setting option name -->
- <string name="sim_pin_change">Change PIN code</string>
- <!-- SIM card lock settings screen, SIM PIN dialog title -->
- <string name="sim_enter_pin">Type SIM PIN</string>
- <!-- SIM card lock settings screen, SIM PIN dialog title -->
- <string name="sim_enable_sim_lock">Enable SIM card lock</string>
- <!-- SIM card lock settings screen, SIM PIN dialog title -->
- <string name="sim_disable_sim_lock">Disable SIM card lock</string>
+ <!-- SIM card lock settings screen, setting option name to change the SIM PIN -->
+ <string name="sim_pin_change">Change SIM PIN</string>
+ <!-- SIM card lock settings screen, SIM PIN dialog message instruction -->
+ <string name="sim_enter_pin">SIM PIN</string>
+ <!-- SIM card lock settings screen, SIM PIN dialog message instruction -->
+ <string name="sim_enable_sim_lock">Lock SIM card</string>
<!-- SIM card lock settings screen, SIM PIN dialog message instruction -->
- <string name="sim_enter_old">Type old PIN</string>
+ <string name="sim_disable_sim_lock">Unlock SIM card</string>
<!-- SIM card lock settings screen, SIM PIN dialog message instruction -->
- <string name="sim_enter_new">Type new PIN</string>
+ <string name="sim_enter_old">Old SIM PIN</string>
<!-- SIM card lock settings screen, SIM PIN dialog message instruction -->
+ <string name="sim_enter_new">New SIM PIN</string>
<string name="sim_reenter_new">Re-type new PIN</string>
- <string name="sim_change_pin">Change SIM PIN</string>
+ <!-- SIM card lock settings screen, SIM PIN dialog message instruction -->
+ <string name="sim_change_pin">SIM PIN</string>
+ <!-- SIM card lock settings screen, SIM PIN dialog message when wrong PIN is entered -->
<string name="sim_bad_pin">Incorrect PIN!</string>
+ <!-- SIM card lock settings screen, SIM PIN dialog message when PINs don't match -->
<string name="sim_pins_dont_match">PINs don\'t match!</string>
<!-- SIM card lock settings screen, toast after not entering correct SIM PIN -->
<string name="sim_change_failed">Unable to change PIN.\nPossibly incorrect PIN.</string>
+ <!-- SIM card lock settings screen, SIM PIN dialog message when the entered PIN is correct-->
<string name="sim_change_succeeded">SIM PIN changed successfully</string>
<!-- SIM card lock settings screen, toast after not entering correct SIM PIN -->
<string name="sim_lock_failed">Unable to change SIM card lock state.\nPossibly incorrect PIN.</string>
<!-- SIM card lock settings screen, SIM PIN dialog button labels: -->
<string name="sim_enter_ok">OK</string>
+ <!-- SIM card lock settings screen, SIM PIN dialog button labels: -->
<string name="sim_enter_cancel">Cancel</string>
- <!-- Device info settings -->
+ <!-- Advanced (used for diagnostics) device info activity title -->
<string name="device_info_settings">Phone status</string>
- <string name="software_version">Software version</string>
- <!-- About phone screen, setting option name -->
+ <!-- About phone screen, list item title. Takes the user to the screen for seeing and installing system updates. -->
+ <string name="system_update_settings_list_item_title">System updates</string>
+ <!-- About phone screen, list item summary. Takes the user to the screen for seeing and installing system updates. -->
+ <string name="system_update_settings_list_item_summary">Check for system updates</string>
+
+ <!-- About phone screen, status item label -->
<string name="firmware_version">Firmware version</string>
- <!-- About phone screen, setting option name -->
+ <!-- About phone screen, status item label-->
<string name="model_number">Model number</string>
- <!-- About phone screen, setting option name -->
+ <!-- About phone screen, setting option name-->
<string name="baseband_version">Baseband version</string>
- <string name="bootloader_version">Boot loader version</string>
- <!-- About phone screen, setting option name -->
+ <!-- About phone screen, setting option name-->
<string name="kernel_version">Kernel version</string>
- <!-- About phone screen, setting option name -->
+ <!-- About phone screen, setting option name-->
<string name="build_number">Build number</string>
+ <!-- About phone screen, show when a value of some status item is unavailable. -->
<string name="device_info_not_available">Not available</string>
- <!-- About phone screen, setting option name -->
+ <!-- About phone screen, phone status screen title -->
+ <string name="device_status_activity_title">Status</string>
+ <!-- About phone screen, title of the item to go into the Phone status screen -->
<string name="device_status">Status</string>
- <!-- About phone screen, setting option summary text -->
+ <!-- About phone screen, summary of the item to go into the phone status screen -->
<string name="device_status_summary">IMEI, phone number, signal, etc.</string>
+ <!-- Main settings screen item's title to go into the SD card and storage settings screen-->
<string name="storage_settings_title">SD card &amp; phone storage</string>
+ <!-- Main settings screen item's summary for the SD card and storage settings -->
<string name="storage_settings_summary">Unmount SD card, view available storage</string>
- <!-- About phone, Status screen option title -->
+ <!-- Do not translate. About phone, status item title -->
<string name="status_imei">IMEI</string>
- <!-- About phone, Status screen option title -->
+ <!-- Do not translate. About phone, status item title -->
<string name="status_imei_sv">IMEI SV</string>
- <!-- About phone, Status screen option title -->
+ <!-- Do not translate. About phone, status item title -->
<string name="status_imsi">IMSI</string>
- <!-- About phone, Status screen option title -->
+ <!-- About phone, status item title. The phone number of the current device.-->
<string name="status_number">Phone number</string>
- <!-- About phone, Status screen option title -->
+ <!-- About phone, status item title for the type of data phone network we're connected to, for example 3G or Edge or GPRS -->
<string name="status_network_type">Network type</string>
- <!-- About phone, Status screen option title -->
+ <!-- About phone, status item title. The status of data access. For example, the value may be "Connected" -->
<string name="status_data_state">Data access</string>
- <!-- About phone, Status screen option title -->
+ <!-- About phone, status item title. The status of whether we have service. for example, the value may be "In service" -->
<string name="status_service_state">Service state</string>
- <!-- About phone, Status screen option title -->
+ <!-- About phone, status item title. The current cell tower signal strength -->
<string name="status_signal_strength">Signal strength</string>
+ <!-- About phone, status item title, The status for roaming. For example, the value might be "Not roaming" -->
<string name="status_roaming">Roaming</string>
- <!-- About phone, Status screen option title -->
+ <!-- About phone, status item title. The cell carrier that the user is connected to. -->
<string name="status_operator">Network</string>
+ <!-- About phone, status item title. The MAC address of the Wi-Fi network adapter. -->
<string name="status_wifi_mac_address">Wi-Fi MAC address</string>
- <!-- About phone, Status screen option title -->
+ <!-- About phone, status item title. The bluetooth adapter's hardware address-->
<string name="status_bt_address">Bluetooth address</string>
- <!-- About phone, Status screen option summary text -->
+ <!-- About phone, status item value if the actual value is not available. -->
<string name="status_unavailable">Unavailable</string>
- <!-- About phone, Status screen option title -->
+ <!-- About phone, status item title. How long the device has been running since its last reboot. -->
<string name="status_up_time">Up time</string>
- <!-- About phone, Status screen option title -->
+ <!-- About phone, status item title. How much time the device has had its main CPU awake. -->
<string name="status_awake_time">Awake time</string>
- <!-- SD card & phone storage settings screen heading -->
+ <!-- SD card & phone storage settings screen heading. This is displayed above items that pertain to the phone's internal storage -->
<string name="internal_memory">Internal phone storage</string>
- <!-- SD card & phone storage settings screen heading -->
+ <!-- SD card & phone storage settings screen heading. This is displayed above items that pertain to the SD card -->
<string name="sd_memory">SD card</string>
- <!-- SD card & phone storage settings title -->
+ <!-- SD card & phone storage settings title. The amount of free space for some storage partition. For example, this is listed under both the "Internal phone storage" section and the "SD card" section. -->
<string name="memory_available">Available space</string>
- <!-- SD card & phone storage settings screen heading -->
+ <!-- SD card & phone storage settings screen heading. The total amount of storage space for some storage partition. For example, this is listed under both the "Internal phone storage" section and the "SD card" section -->
<string name="memory_size">Total space</string>
- <!-- SD card & phone storage settings screen heading -->
+ <!-- SD card & phone storage settings item title that will result in the phone unmounting the SD card. This will be done before the user phyiscally removes the SD card from the phone. Kind of like the "Safely remove" on some operating systems. -->
<string name="sd_eject">Unmount/eject SD card</string>
+ <!-- SD card status when it is not available status -->
<string name="sd_unavailable">Unavailable</string>
+ <!-- SD card status when it is mounted as read only -->
<string name="read_only">\u0020(Read-only)</string>
- <string name="mass_storage">Use for USB storage</string>
<!-- Phone info screen, section titles: -->
<string name="battery_status_title">Battery status</string>
+ <!-- Phone info screen, section titles: -->
<string name="battery_level_title">Battery level</string>
<!-- APN Settings -->
@@ -791,38 +1196,53 @@
<string name="apn_edit">Edit access point</string>
<!-- Edit access point label summary text when no value has been set -->
<string name="apn_not_set">&lt;Not set&gt;</string>
- <!-- Edit access point labels: -->
+ <!-- Edit access point labels: A label the user can give to the APN to allow him to differentiate it from the others -->
<string name="apn_name">Name</string>
+ <!-- Edit access point labels: The actual access point name-->
<string name="apn_apn">APN</string>
+ <!-- Edit access point labels: The addess of the proxy to use for this APN -->
<string name="apn_http_proxy">Proxy</string>
+ <!-- Edit access point labels: The port number of the proxy to use for this APN -->
<string name="apn_http_port">Port</string>
+ <!-- Edit access point labels: The username that will be used when conencting to this APN-->
<string name="apn_user">Username</string>
+ <!-- Edit access point labels: The password that will be used when connecting to this APN -->
<string name="apn_password">Password</string>
+ <!-- Edit access point labels: The server address to conenct to for this APN -->
<string name="apn_server">Server</string>
+ <!-- Edit access point labels: -->
<string name="apn_mmsc">MMSC</string>
+ <!-- Edit access point labels: The proxy to use for MMS (multimedia messages)-->
<string name="apn_mms_proxy">MMS proxy</string>
+ <!-- Edit access point labels: The port on the proxy used for MMS-->
<string name="apn_mms_port">MMS port</string>
+ <!-- Edit access point labels: -->
<string name="apn_mcc">MCC</string>
+ <!-- Edit access point labels: -->
<string name="apn_mnc">MNC</string>
+ <!-- Edit access point labels: The type of APN -->
<string name="apn_type">APN type</string>
- <!-- Edit access point screen menu option -->
+ <!-- Edit access point screen menu option to delete this APN -->
<string name="menu_delete">Delete APN</string>
- <!-- APNs screen menu option -->
+ <!-- APNs screen menu option to create a brand spanking new APN -->
<string name="menu_new">New APN</string>
- <!-- Edit access point screen menu option -->
+ <!-- Edit access point screen menu option to save the user's changes for this APN to the persistent storage -->
<string name="menu_save">Save</string>
- <!-- Edit access point screen menu option -->
+ <!-- Edit access point screen menu option to discard the user's changes for this APN -->
<string name="menu_cancel">Discard</string>
<!-- APN error dialog title -->
<string name="error_title">Attention</string>
<!-- APN error dialog messages: -->
<string name="error_name_empty">The Name field cannot be empty.</string>
+ <!-- APN error dialog messages: -->
<string name="error_apn_empty">The APN cannot be empty.</string>
+ <!-- APN error dialog messages: -->
<string name="error_mcc_not3">MCC field must be 3 digits.</string>
+ <!-- APN error dialog messages: -->
<string name="error_mnc_not23">MNC field must be 2 or 3 digits.</string>
<!-- Master Clear -->
- <!-- SD card & phone storage settings screen, setting option name under Internal phone storage heading. Also screen title after user selects this setting -->
+ <!-- SD card & phone storage settings screen, setting option name under Internal phone storage heading -->
<string name="master_clear_title">Factory data reset</string>
<!-- SD card & phone storage settings screen, setting option summary text under Internal phone storage heading -->
<string name="master_clear_summary">Erases all data on phone</string>
@@ -834,58 +1254,62 @@
<string name="master_clear_final_desc">Reset phone, erasing all your data and applications? Action cannot be reversed!</string>
<!-- SD card & phone storage settings screen, button on screen after user selects Reset phone button -->
<string name="master_clear_final_button_text">Erase everything</string>
- <string name="master_clear_gesture_prompt">Please draw your unlock pattern:</string>
+ <!-- Message to draw an unlock pattern before clearing the device -->
+ <string name="master_clear_gesture_prompt">Draw your unlock pattern</string>
+ <!-- Explanation of drawing unlockp attern to reset phone -->
<string name="master_clear_gesture_explanation">You must draw your unlock pattern to confirm a phone reset.</string>
+ <!-- Master clear failed message -->
<string name="master_clear_failed">No reset was performed because the System Clear service is not available.</string>
- <!-- Main settings screen, Call settings title -->
+ <!-- Main settings screen, Call settings title for item to go into the call settings -->
<string name="call_settings_title">Call settings</string>
- <!-- Main settings screen, Call settings message -->
+ <!-- Main settings screen, Call settings summary for item to go into call settings -->
<string name="call_settings_summary">Set up voicemail, call forwarding, call waiting, caller ID</string>
- <!-- Network settings -->
+ <!-- Wireless controls, item title to go into the network settings -->
<string name="network_settings_title">Mobile networks</string>
+ <!-- Wireless controls, the item summary for the user to go into the network settings -->
<string name="network_settings_summary">Set options for roaming, networks, APNs</string>
- <!-- Location Source Settings -->
- <string name="location_source">My Location</string>
- <string name="location_source_summary">Select sources for determining location</string>
- <!-- Security & location settings screen, section header -->
+ <!-- Security & location settings screen, section header for settings relating to location -->
<string name="location_title">My Location sources</string>
- <!-- Security & location settings screen, setting check box label -->
+ <!-- Security & location settings screen, setting check box label if the user wants to use wireless network-based positioning (cell ID, wifi, etc.) -->
<string name="location_network_based">Use wireless networks</string>
<!-- Security & location settings screen, setting summary when Use wireless networks check box is clear -->
<string name="location_networks_disabled">See location in applications (such as Maps) using wireless networks</string>
<!-- Security & location settings screen, setting summary when Use wireless networks check box is selected -->
<string name="location_neighborhood_level">Location determined by Wi-Fi and/or mobile networks</string>
- <!-- Security & location settings screen, setting check box label -->
+ <!-- Security & location settings screen, setting check box label if the GPS receiver should be enabled -->
<string name="location_gps">Enable GPS satellites</string>
<!-- Security & location settings screen, setting summary when Enable GPS satellites check box is selected -->
<string name="location_street_level">When locating, accurate to street level (deselect to conserve battery)</string>
<!-- Security & location settings screen, setting summary when Enable GPS satellites check box is clear -->
<string name="location_gps_disabled">Locate to street-level (requires more battery plus view of sky)</string>
+ <!-- Do not translate. -->
<string name="location_label">Location provider:</string>
+ <!-- Do not translate. -->
<string name="location_status">Status:</string>
<!-- About -->
- <!-- Main settings screen, setting option name -->
+ <!-- Main settings screen, setting title for the user to go into the About phone screen -->
<string name="about_settings">About phone</string>
- <!-- Main settings screen, setting summary -->
+ <!-- Main settings screen, setting summary for the user to go into the About phone screen-->
<string name="about_settings_summary">View legal info, phone status, software version</string>
- <!-- About phone settings screen, setting option name -->
+ <!-- About phone settings screen, setting option name to go to dialog that shows legal info -->
<string name="legal_information">Legal information</string>
- <string name="legal_information_summary">View terms &amp; conditions</string>
- <!-- About phone settings screen, setting option name -->
+ <!-- About phone settings screen, setting option name to see a list of contributors -->
<string name="contributors_title">Contributors</string>
- <string name="team_title">Team</string>
- <!-- Note: this may be replaced by a more-specific title of the activity that will get launched -->
+ <!-- Note: this may be replaced by a more-specific title of the activity that will get launched --> <skip />
+ <!-- About phone settings screen, setting option name to see copyright-related info -->
<string name="copyright_title">Copyright</string>
- <!-- Note: this may be replaced by a more-specific title of the activity that will get launched -->
+ <!-- Note: this may be replaced by a more-specific title of the activity that will get launched --> <skip />
+ <!-- About phone settings screen, setting option name to see licensing info -->
<string name="license_title">License</string>
- <!-- Note: this may be replaced by a more-specific title of the activity that will get launched -->
+ <!-- Note: this may be replaced by a more-specific title of the activity that will get launched --> <skip />
+ <!-- About phone settings screen, setting option name to see terms and conditions -->
<string name="terms_title">Terms and conditions</string>
- <!-- Title for actual Settings license activity. -->
+ <!-- Title for actual Settings license activity. --> <skip />
<!-- About phone settings, Legal information setting option name and title of dialog box holding license info -->
<string name="settings_license_activity_title">Open source licenses</string>
<!-- About phone settings screen, Open source license dialog message when licenses cannot be loaded -->
@@ -898,15 +1322,17 @@
<string name="lock_settings_title">Screen unlock pattern</string>
<!-- Security & location settings screen, setting option name -->
<string name="lockpattern_change_lock_pattern_label">Change unlock pattern</string>
- <!-- Security & location settings screen, change unlock pattern screen instruction -->
- <string name="lockpattern_need_to_unlock">Confirm saved pattern:</string>
+ <!-- Security & location settings screen, change unlock pattern screen instruction when the user chooses "Change unlock pattern". We first ask the user toe nter the current pattern, and this is the message seen -->
+ <string name="lockpattern_need_to_unlock">Confirm saved pattern</string>
+ <!-- Do not translate. -->
<string name="lockpattern_need_to_unlock_footer"></string>
<!-- Security & location settings screen, change unlock pattern screen instruction if user draws incorrect pattern -->
<string name="lockpattern_need_to_unlock_wrong">Sorry, try again:</string>
+ <!-- Do not translate. -->
<string name="lockpattern_need_to_unlock_wrong_footer"></string>
- <!-- Security & location settings screen, change unlock pattern screen instruction on top of screen -->
- <string name="lockpattern_recording_intro_header">Draw an unlock pattern:</string>
- <!-- Security & location settings screen, change unlock pattern screen hint on bottom of screen -->
+ <!-- Security & location settings screen, change unlock pattern screen instruction on top of screen. This si when they are supposed to draw a new unlock pattern (for example, if they are changing their unlock patterns)..-->
+ <string name="lockpattern_recording_intro_header">Draw an unlock pattern</string>
+ <!-- Security & location settings screen, change unlock pattern screen hint on bottom of screen. We are telling them to press the menu button to see more options or help. -->
<string name="lockpattern_recording_intro_footer">Press Menu for help.</string>
<!-- Security & location settings screen, change unlock pattern screen instruction on top of screen while drawing pattern -->
<string name="lockpattern_recording_inprogress">Release finger when done.</string>
@@ -917,33 +1343,39 @@
<!-- Security & location settings screen, change unlock pattern screen instruction on top of screen to confirm pattern -->
<string name="lockpattern_need_to_confirm">Draw pattern again to confirm:</string>
<string name="lockpattern_pattern_confirmed_header">Your new unlock pattern:</string>
- <!-- Security & location settings screen, change unlock pattern screen button, on bottom of screen -->
+ <!-- Security & location settings screen, change unlock pattern screen button, on bottom of screen. After they draw a pattern and release their finger, we display the pattern so they remember. When they are ready to draw it once again to confirm it, they press this button. -->
<string name="lockpattern_confirm_button_text">Confirm</string>
+ <!-- Security & location settings screen, change unlock pattern screen button, on bottom of screen. After they draw a pattern and release their finger, we display the pattern so they remember. If they are nto satisfied with this pattern, they click this button to redraw the pattern. -->
<string name="lockpattern_restart_button_text">Redraw</string>
- <!-- Security & location settings screen, change unlock pattern screen button, on bottom of screen -->
+ <!-- Security & location settings screen, change unlock pattern screen button, on bottom of screen. If they are supposed to enter their current pattern before being able to draw another one, and they screw up, they hit this button to try again -->
<string name="lockpattern_retry_button_text">Retry</string>
- <!-- Security & location settings screen, change unlock pattern screen button, on bottom of screen -->
+ <!-- Security & location settings screen, change unlock pattern screen button, on bottom of screen. Once they draw a new pattern and confirm it by drawing it again, they press this button to exit -->
<string name="lockpattern_continue_button_text">Continue</string>
+ <!-- Security & location settings screen, unlock screen activity title -->
<string name="lockpattern_settings_title">Unlock pattern</string>
- <!-- Security & location settings screen, setting check box title -->
+ <!-- Security & location settings screen, setting check box title if the unlock pattern MUST be drawn everytime they turn on the screen -->
<string name="lockpattern_settings_enable_title">Require pattern</string>
- <!-- Security & location settings screen, setting summary -->
+ <!-- Security & location settings screen, setting summary for the checkbox "Require pattern" -->
<string name="lockpattern_settings_enable_summary">Must draw pattern to unlock screen</string>
- <!-- Security & location settings screen, setting check box title -->
+ <!-- Security & location settings screen, setting check box title. This setting controls whether a visible green line is drawn as the user moves his finger around while drawing the unlock pattern. If checked, this line is drawn. If unchecked, there is nothing drawn so the user does not reveal his pattern while he unlocks the phone.-->
<string name="lockpattern_settings_enable_visible_pattern_title">Use visible pattern</string>
+ <!-- Security & location settings screen, setting check box title. This setting controls whether tactile feedback will be produced when the user draws the pattern.-->
+ <string name="lockpattern_settings_enable_tactile_feedback_title">Use tactile feedback</string>
<!-- Security & location settings screen, setting option name when user has never set an unlock pattern -->
<string name="lockpattern_settings_choose_lock_pattern">Set unlock pattern</string>
- <!-- Security & location settings screen, setting option name when user has previously set an unlock pattern -->
+ <!-- Security & location settings screen, setting option name when user has previously set an unlock pattern and wants to change to a new pattern -->
<string name="lockpattern_settings_change_lock_pattern">Change unlock pattern</string>
- <string name="lockpattern_settings_help_how_to_record">How to draw an unlock pattern:</string>
+ <!-- Security & location settings screen, the help instructions (an animation) caption -->
+ <string name="lockpattern_settings_help_how_to_record">How to draw an unlock pattern</string>
<!-- Security & location settings screen, change unlock pattern screen instruction on top of screen after too many incorrect attempts -->
<string name="lockpattern_too_many_failed_confirmation_attempts_header">Too many incorrect attempts!</string>
<!-- Security & location settings screen, change unlock pattern screen countdown hint on bottom of screen after too many incorrect attempts -->
<string name="lockpattern_too_many_failed_confirmation_attempts_footer">Try again in <xliff:g id="number">%d</xliff:g> seconds.</string>
- <!-- ChooseLockPatternTutorial -->
- <!-- ChooseLockPatternTutorial, button labels: -->
+ <!-- ChooseLockPatternTutorial --> <skip />
+ <!-- ChooseLockPatternTutorial, button labels: This is to cancel the tutorial -->
<string name="skip_button_label">Cancel</string>
+ <!-- ChooseLockPatternTutorial, button labels: Continue to the next page of the tutorial -->
<string name="next_button_label">Next</string>
<!-- ChooseLockPatternTutorial, tutorial screen title -->
<string name="lock_title">Securing your phone</string>
@@ -956,149 +1388,185 @@
\n<font height="3">\n</font>To leave your phone unprotected, select \u201CCancel\u201D.</font>
</string>
- <!-- ChooseLockPatternExample -->
- <!-- ChooseLockPatternExample, screen title -->
+ <!-- ChooseLockPatternExample --> <skip />
+ <!-- ChooseLockPatternExample, screen title that shows an example pattern -->
<string name="lock_example_title">Example pattern</string>
- <!-- ChooseLockPatternExample, screen hint text at bottom of screen. -->
+ <!-- ChooseLockPatternExample, screen hint text at bottom of screen. These are instructions and rules for drawing a good patttern -->
<string name="lock_example_message">Connect at least four dots.\n
\nSelect \u201CNext\u201D when you\u2019re ready to draw your own pattern.
</string>
- <!-- ChooseLockPatternExample, screen instruction text at top of screen. -->
- <string name="set_lock_pattern_label">Draw your unlock pattern:</string>
- <!-- Applications Settings -->
- <!-- Applications settings screen, setting option name -->
+ <!-- Applications Settings --> <skip />
+ <!-- Applications settings screen, setting option name for the user to go to the screen to manage installed applications -->
<string name="manageapplications_settings_title">Manage applications</string>
- <!-- Applications settings title, on main settings screen -->
+ <!-- Applications settings title, on main settings screen. If clicked, the user is taken to a settings screen full of application settings-->
<string name="applications_settings">Applications</string>
- <!-- Applications settings summary, on main settings screen -->
+ <!-- Applications settings summary, on main settings screen. The summary for the "Applications" item on the main settings screen. Describes what settings are accessible from the "Applications" screen. -->
<string name="applications_settings_summary">Manage applications, set up quick launch shortcuts</string>
- <!-- Applications settings screen heading-->
+ <!-- Applications settings screen heading. The header for the Application settings screen. -->
<string name="applications_settings_header">Application settings</string>
- <!-- Applications settings screen, setting check box title -->
+ <!-- Applications settings screen, setting check box title. If checked, the system allows installation of applications that are downloaded from random places, such as web sites. -->
<string name="install_applications">Unknown sources</string>
- <!-- Applications settings screen, setting check box summary -->
+ <!-- Applications settings screen, setting check box summary. This is the summary for "Unknown sources" checkbox -->
<string name="install_unknown_applications">Allow install of non-Market applications</string>
- <!-- Applications settings screen, message text of alert that appears if user selects the "Unknown applications" check box -->
+ <!-- Applications settings screen, message text of alert that appears if user selects the "Unknown sources" check box -->
<string name="install_all_warning">Your phone and personal data are more vulnerable to attack by applications
from unknown sources. You agree that you are solely responsible for any
damage to your phone or loss of data that may result from using
these applications.</string>
- <!-- Manage applications settings screen, screen title -->
+ <!-- Manage applications settings screen, screen title. This screen is for managing installed apps, and is a list of apps. -->
<string name="manage_applications_title">Manage applications</string>
- <!-- Manage applications, individual application info screen title -->
+ <!-- Manage applications, individual application info screen title. For example, if they click on "Browser" in "Manage applications", the title of the next screen will be this -->
<string name="application_info_label">Application info</string>
- <!-- Manage applications, individual application info heading -->
+ <!-- Manage applications, individual application info screen, section heading for stuff relating to an app's storage settings. -->
<string name="storage_label">Storage</string>
- <!-- Manage applications, individual application info heading -->
+ <!-- Manage applications, individual application info screen, heading for settings related to controlling whether this app is the default for some actions -->
<string name="auto_launch_label">Launch by default</string>
- <!-- Manage applications, individual application info heading -->
+ <!-- Manage applications, individual application info screen, heading for settings related to the app's permissions. for example, it may list all the permissions the app has. -->
<string name="permissions_label">Permissions</string>
- <!-- Manage applications, individual application info label under Storage heading-->
+ <!-- Manage applications, individual application info screen,label under Storage heading. The total storage space taken up by this app. -->
<string name="total_size_label">Total</string>
- <!-- Manage applications, individual application info label under Storage heading-->
+ <!-- Manage applications, individual application info screen, label under Storage heading. The amount of space taken up by the application itself (for example, the java compield files and things like that) -->
<string name="application_size_label">Application</string>
- <!-- Manage applications, individual application info label under Storage heading-->
+ <!-- Manage applications, individual application info screen, label under Storage heading. The amount of sapce taken up by the app's data (for example, downloaded emails or something like that) -->
<string name="data_size_label">Data</string>
- <!-- Manage applications, individual application button label under Storage heading-->
+ <!-- Manage applications, individual application info screen, button label under Storage heading. Button to remove the application from the system. -->
<string name="uninstall_text">Uninstall</string>
- <!-- Manage applications, individual application button label under Storage heading-->
+ <!-- Manage applications, individual application info screen, button label under Storage heading. Button to clear all data associated with tis app (for exampel, remove all cached emails for an Email app) -->
<string name="clear_user_data_text">Clear data</string>
- <!-- Manage applications, individual application screen, text under Launch by default heading -->
+ <!-- Manage applications, individual application info screen, screen, message text under Launch by default heading. This is present if the app is set as a default for some actions. -->
<string name="auto_launch_enable_text">You have selected to launch this application by default for some actions.</string>
- <!-- Manage applications, individual application screen, text under Launch by default heading -->
+ <!-- Manage applications, individual application screen, text under Launch by default heading if the app is NOT a default for actions -->
<string name="auto_launch_disable_text">No defaults set.</string>
- <!-- Manage applications, individual application button label under Launch by default heading-->
+ <!-- Manage applications, individual application screen, button label under Launch by default heading. This is used to clear any default actions that may be assigned to this app. -->
<string name="clear_activities">Clear defaults</string>
- <!-- Unknown context -->
+ <!-- Manage apps, individual app screen, substituted for the application's label when the app's label CAN NOT be determined.-->
<string name="unknown">Unknown</string>
- <!-- Manage applications screen, menu item -->
- <string name="sort_order_alpha">Sort alphabetically</string>
- <!-- Manage applications screen, menu item -->
- <string name="sort_order_size">Sort by size (descending)</string>
+ <!-- Manage applications screen, menu item. Sorts all of the apps in the list alphabetically. -->
+ <string name="sort_order_alpha">Sort</string>
+ <!-- Manage applications screen, menu item. Sorts all of the apps in the list based on their file size. This is used to uninstall when space is getting low. -->
+ <string name="sort_order_size">Sort by size</string>
+ <!-- Manage applications screen, individual app screen, button label when the user wants to manage the space taken up by an app. -->
<string name="manage_space_text">Manage space</string>
- <string name="computing_size">Computing application sizes\u2026</string>
+ <!-- Text for menu option in ManageApps screen to display all installed
+ applications -->
+ <string name="filter_apps_all">All</string>
+ <!-- Text for menu option in ManageApps screen to display third party
+ applications only -->
+ <string name="filter_apps_third_party">Third-party</string>
+ <!-- Text for menu option in ManageApps screen to display list of running
+ packages only. -->
+ <string name="filter_apps_running">Running</string>
+ <string name="loading">Loading\u2026</string>
+ <!-- Manage app screen, shown when the activity is busy recomputing the size of each app -->
<string name="recompute_size">Recomputing size\u2026</string>
- <!-- Manage applications, individual application confirmation dialog title. Displays when user selects to "Clear data". -->
+ <!-- Manage applications, individual application screen, confirmation dialog title. Displays when user selects to "Clear data". -->
<string name="clear_data_dlg_title">Delete</string>
- <!-- Manage applications, individual application confirmation dialog message. Displays when user selects to "Clear data". -->
+ <!-- Manage applications, individual application screen, confirmation dialog message. Displays when user selects to "Clear data". It warns the user of the consequences of clearing the data for an app. -->
<string name="clear_data_dlg_text">All information you\'ve saved in this application will be deleted permanently.</string>
- <!-- Manage applications, individual application confirmation dialog button. Displays when user selects to "Clear data". -->
+ <!-- Manage applications, individual application screen, confirmation dialog button. Displays when user selects to "Clear data". Goes through with the clearing of the data. -->
<string name="dlg_ok">OK</string>
- <!-- Manage applications, individual application confirmation dialog button. Displays when user selects to "Clear data". -->
+ <!-- Manage applications, individual application screen, confirmation dialog button. Displays when user selects to "Clear data". -->
<string name="dlg_cancel">Cancel</string>
- <!-- Manage applications, individual application dialog box title. -->
+ <!-- Manage applications, individual application dialog box title. Shown when the user somehow got into a state where it wants to manage some app that isn't found. -->
<string name="app_not_found_dlg_title">Application not found</string>
- <!-- Manage applications, individual application dialog box message. -->
+ <!-- Manage applications, individual application dialog box message. Shown when the user somehow got into a state where it wants to manage some app that isn't found. -->
<string name="app_not_found_dlg_text"> The application was not
found in the list of installed applications.</string>
- <string name="uninstall_failed">Unable to uninstall application.</string>
+ <!-- Manage applications, individual application dialog box message. Shown when there was an error trying to clear the data. -->
<string name="clear_data_failed">Unable to clear application data.</string>
- <string name="b_text">B</string>
- <string name="kb_text">KB</string>
- <string name="mb_text">MB</string>
- <!-- Manage applications, individual application info screen, text that appears under the "Permissions" heading. -->
- <string name="security_settings_desc">Here\'s what this application can access on your phone:</string>
-
- <!-- Language Settings -->
- <!-- Title of setting on main settings screen -->
- <string name="language_settings">Text</string>
- <!-- Summary of setting on main settings screen -->
- <string name="language_settings_summary">Select text auto-correction options</string>
- <!-- On Text & language settings screen, heading -->
- <string name="language_category">Language setting</string>
- <!-- On Text & language settings screen, heading -->
+ <!-- Manage applications, individual application info screen, text that appears under the "Permissions" heading. This describes the permissions that the application has. -->
+ <string name="security_settings_desc">This application can access the following on your phone:</string>
+ <string name="computing_size">Still computing\u2026</string>
+ <string name="invalid_size_value">Unable to compute package size</string>
+ <!-- String displayed when list is empty -->
+ <string name="empty_list_msg">You do not have any third-party apps installed.</string>
+ <!-- Manage applications, Header name used for cache information -->
+ <string name="cache_header_label">Cache</string>
+ <!-- Manage applications, text label for button -->
+ <string name="clear_cache_btn_text">Clear cache</string>
+ <!-- Manage applications, label that appears next to the cache size -->
+ <string name="cache_size_label">Cache</string>
+
+ <!-- Language Settings --> <skip />
+ <!-- Title of setting on main settings screen. This item will take the user to the screen to tweak settings realted to locale and text -->
+ <string name="language_settings">Locale &amp; text</string>
+ <!-- Summary of setting on main settings screen. This item will take the user to the screen to tweak settings realted to locale and text -->
+ <string name="language_settings_summary">Set locale (language and region), text input and auto-correction options</string>
+ <!-- On Text & language settings screen, heading. Inside the "Locale & text" screen, this is the header for settings that are for locale changes. -->
+ <string name="language_category">Locale setting</string>
+ <!-- On Text & language settings screen, heading. Inside the "Locale & text" screen, this is the header for settings that relate to text (autotext, autoreplace, autocapitalization). -->
<string name="text_category">Text settings</string>
- <!-- On Text & language settings screen, setting option name -->
- <string name="phone_language">Select language</string>
- <!-- On Text & language settings screen, setting option name -->
+ <!-- On Text & language settings screen, setting option name. title of the setting to take the user to a screen to select the locale. -->
+ <string name="phone_language">Select locale</string>
+ <!-- On Text & language settings screen, setting option name. title of the setting to enable autoreplace of entered text. auto replace is a feature that will automatically correct mistyped words. -->
<string name="auto_replace">Auto-replace</string>
- <!-- On Text & language settings screen, setting summary -->
+ <!-- On Text & language settings screen, setting summary. This is the summary for the "Auto-replace" setting. -->
<string name="auto_replace_summary">Correct mistyped words</string>
- <!-- On Text & language settings screen, setting option name -->
+ <!-- On Text & language settings screen, setting option name. title of the setting to enable autocapitalization of entered text. for example, after the user finishes a sentence, the next letter he types will automatically be capitalizated. -->
<string name="auto_caps">Auto-cap</string>
- <!-- On Text & language settings screen, setting summary -->
+ <!-- On Text & language settings screen, setting summary. Summary for the Auto-cap setting. -->
<string name="auto_caps_summary">Capitalize first letter in sentences</string>
- <!-- On Text & language settings screen, setting option name -->
+ <!-- On Text & language settings screen, setting option name. title of the setting to enable automatic punctuation of entered text. for example, it will change an entered "youre" to "you're". -->
<string name="auto_punctuate">Auto-punctuate</string>
- <!-- On Text & language settings screen, setting summary -->
+ <!-- On Text & language settings screen, setting summary for the Auto-punctuate setting. -->
<string name="auto_punctuate_summary">Press Space key twice to insert \u0022.\u0022</string>
- <!-- On Security & location settings screen, setting check box name -->
+ <!-- On Security & location settings screen, setting check box name. Title of the checkbox to set whether password edit fields will show the most recent character typed and then hide it, or just hide it right away. By hide, I mean mask it out. -->
<string name="show_password">Visible passwords</string>
- <!-- On Security & location settings screen, setting check box summary -->
+ <!-- On Security & location settings screen, setting check box summary. Summary for the visible passwords setting. -->
<string name="show_password_summary">Show password as you type</string>
- <!-- Testing -->
+ <!-- This is for diagnostics screen. The title of a screen with various items realted to launching screens that will giev the user info. For example, it contains "Phone information" and "Battery information" -->
<string name="testing">Testing</string>
+ <!-- In the Testing screen. The item title of the activity that shows a bunch of phone-related information. -->
<string name="testing_phone_info">Phone information</string>
+ <!-- In the Testing screen. The item title of the activity that shows a bunch of battery-related information. -->
<string name="testing_battery_info">Battery information</string>
+ <!-- Do not translate. In the Testing screen. The item title of the activity that shows a bunch of SIM-related operations. -->
<string name="testing_sim_toolkit">SIM toolkit</string>
- <!-- Quick launch settings -->
+ <!-- The title of the item to go into the Quick launch settings. -->
<string name="quick_launch_title">Quick launch</string>
+ <!-- The summary of the item to go into the Quick launch settings. This is a description of what Quick launch offers. -->
<string name="quick_launch_summary">Set keyboard shortcuts to launch applications</string>
- <!-- On the Quick launch settings screen, title for letters that are not assigned. -->
+ <!-- On the Quick launch settings screen, title of the item for shortcut letters that are not assigned to an application yet. Quick launch is assigning a global shortcut to launch a specific app. -->
<string name="quick_launch_assign_application">Assign application</string>
- <!-- On the Quick launch settings screen, summary text for letters that are not assigned. -->
+ <!-- On the Quick launch settings screen, summary text for the item of letters that are not assigned. See the quick launch "Assign application" for a description of quick launch -->
<string name="quick_launch_no_shortcut">No shortcut</string>
- <!-- On the Quick launch settings screen, summary text under each assigned letter. -->
+ <!-- On the Quick launch settings screen, summary text under the item for each assigned letter. -->
<string name="quick_launch_shortcut">Search + <xliff:g id="shortcut_letter">%1$s</xliff:g></string>
- <!-- On the Quick launch settings screen, title of "Clear shortcut" confirmation dialog. -->
+ <!-- On the Quick launch settings screen, title of "Clear shortcut" confirmation dialog. This is reached by longpressing an item for a shortcut letter. This allows the user to clear the assigned applicatino for that shortcut letter. -->
<string name="quick_launch_clear_dialog_title">Clear</string>
- <!-- On the Quick launch settings screen, message in the "Clear shortcut" confirmation dialog. -->
+ <!-- On the Quick launch settings screen, message in the "Clear shortcut" confirmation dialog. See the title for this dialog for more info. -->
<string name="quick_launch_clear_dialog_message">Your shortcut for <xliff:g id="shortcut_letter">%1$s</xliff:g> (<xliff:g id="application_name">%2$s</xliff:g>) will be cleared.</string>
- <!-- Clear dialog box button labels: -->
+ <!-- Clear dialog for quick launch setting box button labels: -->
<string name="quick_launch_clear_ok_button">OK</string>
+ <!-- Clear dialog for quick launch setting box button labels: -->
<string name="quick_launch_clear_cancel_button">Cancel</string>
+ <!-- Quick launch screen, when assigning an app to a shortcut, this menu item to show a list of all applications. -->
<string name="quick_launch_display_mode_applications">Applications</string>
+ <!-- Quick launch screen, when assigning an app to a shortcut, this menu item to show a list of all shortcutable applications -->
<string name="quick_launch_display_mode_shortcuts">Shortcuts</string>
- <!-- Development Settings -->
+ <!-- Input methods Settings -->
+ <string name="input_methods_settings_title">Text input</string>
+ <string name="input_methods_settings_summary">Manage text input options</string>
+
+ <!-- Development Settings. the title for the item to take the user to Development settings. Development settings are settings meant for application developers. -->
<string name="development_settings_title">Development</string>
- <string name="development_settings_summary">Settings for application development</string>
+ <!-- Development Settings summary. The summary of the item to take the user to Development settings. Development settings are settings meant for application developers. -->
+ <string name="development_settings_summary">Set options for application development</string>
+ <!-- Setting checkbox title for Whether to enable USB debugging support on the phone. -->
<string name="enable_adb">USB debugging</string>
+ <!-- Setting checkbox summary for Whether to enable USB debugging support on the phone -->
<string name="enable_adb_summary">Debug mode when USB is connected</string>
+ <!-- Setting Checkbox title whether to keep the screen on when plugged in to a power source -->
<string name="keep_screen_on">Stay awake</string>
+ <!-- setting Checkbox summary whether to keep the screen on when plugged in -->
<string name="keep_screen_on_summary">Screen will never sleep while charging</string>
+ <!-- Setting Checkbox title whether to allow mock locations -->
+ <string name="allow_mock_location">Allow mock locations</string>
+ <!-- setting Checkbox summary whether to allow mock locations -->
+ <string name="allow_mock_location_summary">Allow mock locations</string>
</resources>
diff --git a/res/xml/application_settings.xml b/res/xml/application_settings.xml
index 832adb2..c4f2bd0 100644
--- a/res/xml/application_settings.xml
+++ b/res/xml/application_settings.xml
@@ -30,6 +30,7 @@
android:persistent="false" />
<PreferenceScreen
+ android:key="quick_launch"
android:title="@string/quick_launch_title"
android:summary="@string/quick_launch_summary">
<intent android:action="android.intent.action.MAIN"
diff --git a/res/xml/bluetooth_device_advanced.xml b/res/xml/bluetooth_device_advanced.xml
new file mode 100644
index 0000000..5611595
--- /dev/null
+++ b/res/xml/bluetooth_device_advanced.xml
@@ -0,0 +1,36 @@
+<?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.
+-->
+
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <PreferenceCategory
+ android:key="title" />
+
+ <CheckBoxPreference
+ android:key="online_mode"
+ android:title="@string/bluetooth_device_advanced_online_mode_title"
+ android:persistent="false" />
+
+ <PreferenceCategory
+ android:key="profile_container"
+ android:title="@string/bluetooth_device_advanced_profile_header_title">
+
+ <!-- Profile checkboxes will be added here programmatically. -->
+
+ </PreferenceCategory>
+
+</PreferenceScreen>
diff --git a/res/xml/bluetooth_settings.xml b/res/xml/bluetooth_settings.xml
index 83fb142..8449343 100644
--- a/res/xml/bluetooth_settings.xml
+++ b/res/xml/bluetooth_settings.xml
@@ -14,33 +14,43 @@
limitations under the License.
-->
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
- android:title="@string/bluetooth_settings"/>
+ android:title="@string/bluetooth_settings" />
- <CheckBoxPreference android:key="bt_checkbox"
- android:title="@string/bluetooth"
- android:summaryOff="@string/bluetooth_disabled"
- android:summaryOn="@string/bluetooth_enabled"
- />
+ <CheckBoxPreference
+ android:key="bt_checkbox"
+ android:title="@string/bluetooth"
+ android:summary="@string/bluetooth_quick_toggle_summary" />
- <CheckBoxPreference android:key="bt_visibility"
- android:title="@string/bluetooth_visibility"
- android:dependency="bt_checkbox"
- android:summaryOn="@string/bluetooth_is_discoverable"
- android:summaryOff="@string/bluetooth_not_discoverable"
- android:persistent="false"
- />
-
- <EditTextPreference android:key="bt_name"
+ <com.android.settings.bluetooth.BluetoothNamePreference
+ android:key="bt_name"
android:title="@string/bluetooth_device_name"
android:summary="@string/bluetooth_name_not_set"
android:dialogTitle="@string/bluetooth_device_name"
android:dependency="bt_checkbox"
- android:singleLine="true"/>
- <com.android.settings.ProgressCategory
- android:key="bt_device_list"
+ android:persistent="false"
+ android:singleLine="true" />
+
+ <CheckBoxPreference
+ android:key="bt_discoverable"
+ android:title="@string/bluetooth_visibility"
+ android:dependency="bt_checkbox"
+ android:summaryOn="@string/bluetooth_is_discoverable"
+ android:summaryOff="@string/bluetooth_not_discoverable"
+ android:persistent="false" />
+
+ <Preference
+ android:key="bt_scan"
+ android:dependency="bt_checkbox"
+ android:title="@string/bluetooth_preference_scan_title" />
+
+ <com.android.settings.ProgressCategory
+ android:key="bt_device_list"
android:title="@string/bluetooth_devices"
- android:dependency="bt_checkbox"/>
+ android:dependency="bt_checkbox"
+ android:orderingFromXml="false" />
+
</PreferenceScreen>
diff --git a/res/xml/date_time_prefs.xml b/res/xml/date_time_prefs.xml
index 641030f..47e047a 100644
--- a/res/xml/date_time_prefs.xml
+++ b/res/xml/date_time_prefs.xml
@@ -35,8 +35,8 @@
/>
<CheckBoxPreference android:key="24 hour"
android:title="@string/date_time_24hour"
- android:summaryOn="13:00"
- android:summaryOff="1:00 pm"/>
+ android:summaryOn="@string/date_time_24_hour_sample"
+ android:summaryOff="@string/date_time_12_hour_sample"/>
<ListPreference
android:key="date_format"
android:title="@string/date_time_date_format"
diff --git a/res/xml/development_prefs.xml b/res/xml/development_prefs.xml
index c64f07a..286497e 100644
--- a/res/xml/development_prefs.xml
+++ b/res/xml/development_prefs.xml
@@ -29,4 +29,9 @@
android:title="@string/keep_screen_on"
android:summary="@string/keep_screen_on_summary"/>
+ <CheckBoxPreference
+ android:key="allow_mock_location"
+ android:title="@string/allow_mock_location"
+ android:summary="@string/allow_mock_location_summary"/>
+
</PreferenceScreen>
diff --git a/res/xml/device_info_settings.xml b/res/xml/device_info_settings.xml
index c39d51e..07716da 100644
--- a/res/xml/device_info_settings.xml
+++ b/res/xml/device_info_settings.xml
@@ -17,6 +17,13 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="@string/about_settings">
+ <!-- System update settings - launches activity -->
+ <PreferenceScreen android:key="system_update_settings"
+ android:title="@string/system_update_settings_list_item_title"
+ android:summary="@string/system_update_settings_list_item_summary">
+ <intent android:action="android.settings.SYSTEM_UPDATE_SETTINGS" />
+ </PreferenceScreen>
+
<!-- Device status - launches activity -->
<PreferenceScreen android:key="status_info"
android:title="@string/device_status"
diff --git a/res/xml/device_info_status.xml b/res/xml/device_info_status.xml
index da4cdca..8fc75cd 100644
--- a/res/xml/device_info_status.xml
+++ b/res/xml/device_info_status.xml
@@ -15,7 +15,7 @@
-->
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
- <PreferenceCategory android:title="@string/device_status"/>
+ <PreferenceCategory android:title="@string/device_status_activity_title"/>
<Preference android:key="battery_status"
style="?android:attr/preferenceInformationStyle"
diff --git a/res/xml/input_methods_prefs.xml b/res/xml/input_methods_prefs.xml
new file mode 100644
index 0000000..b8a415f
--- /dev/null
+++ b/res/xml/input_methods_prefs.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * Copyright 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.
+ */
+-->
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+ <PreferenceCategory
+ android:title="@string/input_methods_settings_title" />
+
+</PreferenceScreen>
diff --git a/res/xml/ip_settings.xml b/res/xml/ip_settings.xml
index 3c958a8..e5a2b95 100644
--- a/res/xml/ip_settings.xml
+++ b/res/xml/ip_settings.xml
@@ -17,6 +17,22 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
+ android:title="@string/wifi_advanced_titlebar"
+ />
+
+ <ListPreference
+ android:key="num_channels"
+ android:title="@string/wifi_setting_num_channels_title"
+ android:summary="@string/wifi_setting_num_channels_summary"
+ android:persistent="false"
+ />
+
+ <Preference android:key="mac_address"
+ style="?android:attr/preferenceInformationStyle"
+ android:title="@string/wifi_advanced_mac_address_title"
+ />
+
+ <PreferenceCategory
android:title="@string/wifi_ip_settings_titlebar"
/>
diff --git a/res/xml/language_settings.xml b/res/xml/language_settings.xml
index 5d3010c..78b61aa 100644
--- a/res/xml/language_settings.xml
+++ b/res/xml/language_settings.xml
@@ -21,11 +21,10 @@
android:key="language_category"
android:title="@string/language_category">
<!--
- <ListPreference
+ <ListPreference
android:title="@string/phone_language"/>
-->
-
<PreferenceScreen
android:title="@string/phone_language">
<intent android:action="android.intent.action.MAIN"
@@ -36,6 +35,13 @@
<PreferenceCategory
android:title="@string/text_category" />
+ <PreferenceScreen
+ android:title="@string/input_methods_settings_title"
+ android:summary="@string/input_methods_settings_summary">
+ <intent android:action="android.intent.action.MAIN"
+ android:targetPackage="com.android.settings"
+ android:targetClass="com.android.settings.InputMethodsSettings" />
+ </PreferenceScreen>
<CheckBoxPreference
android:key="auto_replace"
android:title="@string/auto_replace"
diff --git a/res/xml/sound_and_display_settings.xml b/res/xml/sound_and_display_settings.xml
index 065f50b..709f89b 100644
--- a/res/xml/sound_and_display_settings.xml
+++ b/res/xml/sound_and_display_settings.xml
@@ -27,7 +27,7 @@
android:persistent="false"
android:disableDependentsState="true" />
- <VolumePreference
+ <com.android.settings.RingerVolumePreference
android:key="ring_volume"
android:title="@string/ring_volume_title"
android:summary="@string/ring_volume_summary"
@@ -42,7 +42,6 @@
android:summary="@string/media_volume_summary"
android:dialogTitle="@string/media_volume_title"
android:persistent="false"
- android:dependency="silent"
android:streamType="music" />
<com.android.settings.DefaultRingtonePreference
@@ -90,6 +89,14 @@
<PreferenceCategory
android:title="@string/display_settings">
+
+ <CheckBoxPreference
+ android:key="animations"
+ android:title="@string/animations_title"
+ android:summaryOn="@string/animations_summary_on"
+ android:summaryOff="@string/animations_summary_off"
+ android:dependency="silent" />
+
<com.android.settings.BrightnessPreference
android:key="brightness"
diff --git a/res/xml/wireless_settings.xml b/res/xml/wireless_settings.xml
index 555a570..5cef5e9 100644
--- a/res/xml/wireless_settings.xml
+++ b/res/xml/wireless_settings.xml
@@ -51,7 +51,7 @@
<intent
android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.BluetoothSettings" />
+ android:targetClass="com.android.settings.bluetooth.BluetoothSettings" />
</PreferenceScreen>
<CheckBoxPreference
diff --git a/src/com/android/settings/AirplaneModeEnabler.java b/src/com/android/settings/AirplaneModeEnabler.java
index f47d679..0bd950b 100644
--- a/src/com/android/settings/AirplaneModeEnabler.java
+++ b/src/com/android/settings/AirplaneModeEnabler.java
@@ -100,9 +100,10 @@ public class AirplaneModeEnabler implements Preference.OnPreferenceChangeListene
*/
private void onAirplaneModeChanged() {
ServiceState serviceState = mPhoneStateReceiver.getServiceState();
- boolean isPhoneOff = serviceState.getState() == ServiceState.STATE_POWER_OFF;
- mCheckBoxPref.setChecked(isPhoneOff);
- mCheckBoxPref.setSummary(R.string.airplane_mode_summary);
+ 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);
}
diff --git a/src/com/android/settings/ApnEditor.java b/src/com/android/settings/ApnEditor.java
index 9b74eea..f1fa2ef 100644
--- a/src/com/android/settings/ApnEditor.java
+++ b/src/com/android/settings/ApnEditor.java
@@ -63,6 +63,8 @@ public class ApnEditor extends PreferenceActivity
private EditTextPreference mMmsProxy;
private EditTextPreference mMmsPort;
private EditTextPreference mApnType;
+ private String mCurMnc;
+ private String mCurMcc;
private Uri mUri;
private Cursor mCursor;
@@ -210,6 +212,8 @@ public class ApnEditor extends PreferenceActivity
// Auto populate MNC and MCC for new entries, based on what SIM reports
mMcc.setText(mcc);
mMnc.setText(mnc);
+ mCurMnc = mnc;
+ mCurMcc = mcc;
}
}
}
@@ -338,6 +342,12 @@ public class ApnEditor extends PreferenceActivity
values.put(Telephony.Carriers.NUMERIC, mcc + mnc);
+ if (mCurMnc != null && mCurMcc != null) {
+ if (mCurMnc.equals(mnc) && mCurMcc.equals(mcc)) {
+ values.put(Telephony.Carriers.CURRENT, 1);
+ }
+ }
+
getContentResolver().update(mUri, values, null, null);
return true;
diff --git a/src/com/android/settings/ApnSettings.java b/src/com/android/settings/ApnSettings.java
index ea13ee7..83efa3f 100644
--- a/src/com/android/settings/ApnSettings.java
+++ b/src/com/android/settings/ApnSettings.java
@@ -27,6 +27,7 @@ import android.preference.PreferenceActivity;
import android.preference.PreferenceCategory;
import android.preference.PreferenceScreen;
import android.provider.Telephony;
+import android.text.TextUtils;
import android.view.Menu;
import android.view.MenuItem;
@@ -68,12 +69,16 @@ public class ApnSettings extends PreferenceActivity {
String name = mCursor.getString(NAME_INDEX);
String apn = mCursor.getString(APN_INDEX);
- Preference pref = new Preference((Context) this);
- pref.setKey(mCursor.getString(ID_INDEX));
- pref.setTitle(name);
- pref.setSummary(apn);
- pref.setPersistent(false);
- apnList.addPreference(pref);
+ if (name != null && apn != null && TextUtils.getTrimmedLength(name) > 0
+ && TextUtils.getTrimmedLength(apn) > 0) {
+ Preference pref = new Preference((Context) this);
+ pref.setKey(mCursor.getString(ID_INDEX));
+ pref.setTitle(name);
+ pref.setSummary(apn);
+ pref.setPersistent(false);
+ apnList.addPreference(pref);
+ }
+
mCursor.moveToNext();
}
}
diff --git a/src/com/android/settings/ApplicationSettings.java b/src/com/android/settings/ApplicationSettings.java
index 0ee2789..85fe11f 100644
--- a/src/com/android/settings/ApplicationSettings.java
+++ b/src/com/android/settings/ApplicationSettings.java
@@ -18,6 +18,7 @@ package com.android.settings;
import android.app.AlertDialog;
import android.content.DialogInterface;
+import android.content.res.Configuration;
import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.preference.Preference;
@@ -29,6 +30,7 @@ public class ApplicationSettings extends PreferenceActivity implements
DialogInterface.OnClickListener {
private static final String KEY_TOGGLE_INSTALL_APPLICATIONS = "toggle_install_applications";
+ private static final String KEY_QUICK_LAUNCH = "quick_launch";
private CheckBoxPreference mToggleAppInstallation;
@@ -42,7 +44,12 @@ public class ApplicationSettings extends PreferenceActivity implements
mToggleAppInstallation = (CheckBoxPreference) findPreference(KEY_TOGGLE_INSTALL_APPLICATIONS);
mToggleAppInstallation.setChecked(isNonMarketAppsAllowed());
-
+
+ if (getResources().getConfiguration().keyboard == Configuration.KEYBOARD_NOKEYS) {
+ // No hard keyboard, remove the setting for quick launch
+ Preference quickLaunchSetting = findPreference(KEY_QUICK_LAUNCH);
+ getPreferenceScreen().removePreference(quickLaunchSetting);
+ }
}
@Override
@@ -68,13 +75,13 @@ public class ApplicationSettings extends PreferenceActivity implements
private void setNonMarketAppsAllowed(boolean enabled) {
// Change the system setting
- Settings.System.putInt(getContentResolver(), Settings.System.INSTALL_NON_MARKET_APPS,
+ Settings.Secure.putInt(getContentResolver(), Settings.Secure.INSTALL_NON_MARKET_APPS,
enabled ? 1 : 0);
}
private boolean isNonMarketAppsAllowed() {
- return Settings.System.getInt(getContentResolver(),
- Settings.System.INSTALL_NON_MARKET_APPS, 0) > 0;
+ return Settings.Secure.getInt(getContentResolver(),
+ Settings.Secure.INSTALL_NON_MARKET_APPS, 0) > 0;
}
private void warnAppInstallation() {
diff --git a/src/com/android/settings/BatteryInfo.java b/src/com/android/settings/BatteryInfo.java
index ef60fc3..ed3e3e3 100644
--- a/src/com/android/settings/BatteryInfo.java
+++ b/src/com/android/settings/BatteryInfo.java
@@ -29,7 +29,7 @@ import android.os.Message;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.SystemClock;
-import android.pim.DateUtils;
+import android.text.format.DateUtils;
import android.widget.TextView;
import com.android.internal.app.IBatteryStats;
diff --git a/src/com/android/settings/BluetoothDataEntry.java b/src/com/android/settings/BluetoothDataEntry.java
deleted file mode 100644
index 1c7e0b6..0000000
--- a/src/com/android/settings/BluetoothDataEntry.java
+++ /dev/null
@@ -1,93 +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.Activity;
-import android.content.Intent;
-import android.os.Bundle;
-import android.view.KeyEvent;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.view.View.OnKeyListener;
-import android.widget.Button;
-import android.widget.EditText;
-import android.widget.TextView;
-
-public class BluetoothDataEntry extends Activity implements OnKeyListener {
-
- private Bundle extras;
-
- @Override
- public void onCreate(Bundle icicle) {
- super.onCreate(icicle);
-
- setContentView(R.layout.bluetooth_data_entry);
-
- mDataLabel = (TextView)findViewById(R.id.dataLabel);
- mDataEntry = (EditText)findViewById(R.id.dataEntry);
- mConfirmButton = (Button)findViewById(R.id.confirmButton);
- mCancelButton = (Button)findViewById(R.id.cancelButton);
-
- mDataEntry.setOnKeyListener(this);
- Intent intent = getIntent();
- String label = null;
- {
- String labelExtra = intent.getStringExtra("label");
- if (labelExtra != null) {
- label = labelExtra;
- }
- }
- extras = intent.getBundleExtra("extras");
- if (label != null && label.length() > 0) {
- mDataLabel.setText(label);
- }
-
- mConfirmButton.setOnClickListener(new ConfirmButtonListener());
- mCancelButton.setOnClickListener(new CancelButtonListener());
- }
-
- private class ConfirmButtonListener implements OnClickListener {
- public void onClick(View v) {
- activityResult(RESULT_OK, mDataEntry.getText().toString(), extras);
- }
- }
-
- private class CancelButtonListener implements OnClickListener {
- public void onClick(View v) {
- activityResult(RESULT_CANCELED, null, null);
- }
- }
-
- protected void activityResult(int result, String data, Bundle extras) {
- setResult(result, (new Intent()).setAction(data).putExtras(extras));
- finish();
- }
-
- public boolean onKey(View v, int keyCode, KeyEvent event) {
- if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER
- || keyCode == KeyEvent.KEYCODE_ENTER) {
- activityResult(RESULT_OK, mDataEntry.getText().toString(), extras);
- return true;
- }
- return false;
- }
-
- protected TextView mDataLabel;
- protected EditText mDataEntry;
- protected Button mConfirmButton;
- protected Button mCancelButton;
-}
diff --git a/src/com/android/settings/BluetoothListItem.java b/src/com/android/settings/BluetoothListItem.java
deleted file mode 100644
index c75be13..0000000
--- a/src/com/android/settings/BluetoothListItem.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package com.android.settings;
-
-import android.content.Context;
-import android.preference.Preference;
-import android.util.AttributeSet;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ImageView;
-
-import java.util.Map;
-
-/**
- * This class extends Preference to display bluetooth status icons. One
- * icon specifies the connection/pairing status that is right-aligned.
- * An optional headset icon can be added to its left as well.
- */
-public class BluetoothListItem extends Preference {
-
- private boolean mIsHeadset;
- private int mWeight;
-
- public BluetoothListItem(Context context, AttributeSet attrs) {
- super(context, attrs);
- setWidgetLayoutResource(R.layout.preference_widget_btdevice_status);
- }
-
- private void updateIcons(View view) {
- ImageView headsetView = (ImageView) view.findViewById(R.id.device_headset);
- headsetView.setVisibility(mIsHeadset ? View.VISIBLE : View.GONE);
- }
-
- @Override
- public void onBindView(View view) {
- super.onBindView(view);
- updateIcons(view);
- }
-
- /**
- * Set whether the device is of headset type
- * @param headset whether or not the headset icon should be shown
- */
- public void setHeadset(boolean headset) {
- mIsHeadset = headset;
- notifyChanged();
- }
-
- /**
- * Sets the weight for ordering by signal strength or importance
- * @param weight the ordering weight
- */
- public void setWeight(int weight) {
- mWeight = weight;
- }
-
- /**
- * Returns the currently set ordering weight
- * @return the current ordering weight
- */
- public int getWeight() {
- return mWeight;
- }
-
- @Override
- public int compareTo(Preference another) {
- int diff = ((BluetoothListItem)another).mWeight - mWeight;
- // Let the new one be after the old one, if they are the same weight
- // TODO: Implement a more reliable way to consistently order items of
- // the same weight
- if (diff == 0) diff = 1;
- return diff;
- }
-}
diff --git a/src/com/android/settings/BluetoothPINEntry.java b/src/com/android/settings/BluetoothPINEntry.java
deleted file mode 100644
index 8933c03..0000000
--- a/src/com/android/settings/BluetoothPINEntry.java
+++ /dev/null
@@ -1,77 +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.NotificationManager;
-import android.bluetooth.BluetoothDevice;
-import android.bluetooth.BluetoothIntent;
-import android.content.Context;
-import android.content.Intent;
-import android.os.Bundle;
-import android.util.Log;
-
-public class BluetoothPINEntry extends BluetoothDataEntry {
- private BluetoothDevice mBluetooth;
- private String mAddress;
-
- @Override
- public void onCreate(Bundle icicle) {
- super.onCreate(icicle);
-
- Intent intent = getIntent();
- if (!intent.getAction().equals(BluetoothIntent.PAIRING_REQUEST_ACTION))
- {
- Log.e(this.getClass().getName(),
- "Error: this activity may be started only with intent " +
- BluetoothIntent.PAIRING_REQUEST_ACTION);
- finish();
- }
-
- // Cancel the notification, if any
- NotificationManager manager = (NotificationManager)
- getSystemService(Context.NOTIFICATION_SERVICE);
- manager.cancel(0xb100ceee);
-
- mAddress = intent.getStringExtra(BluetoothIntent.ADDRESS);
-
- mBluetooth = (BluetoothDevice)getSystemService(BLUETOOTH_SERVICE);
-
- String remoteName = mBluetooth.getRemoteName(mAddress);
- if (remoteName == null) {
- remoteName = mAddress;
- }
-
- mDataLabel.setText(getString(R.string.bluetooth_enter_pin_msg) + remoteName);
- }
-
- @Override
- public void activityResult(int result, String data, Bundle extras) {
- switch (result) {
- case RESULT_OK:
- byte[] pin = BluetoothDevice.convertPinToBytes(mDataEntry.getText().toString());
- if (pin == null) {
- return;
- }
- mBluetooth.setPin(mAddress, pin);
- break;
- case RESULT_CANCELED:
- mBluetooth.cancelPin(mAddress);
- break;
- }
- finish();
- }
-}
diff --git a/src/com/android/settings/BluetoothPinRequest.java b/src/com/android/settings/BluetoothPinRequest.java
deleted file mode 100644
index d6a12f3..0000000
--- a/src/com/android/settings/BluetoothPinRequest.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * 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.
- */
-
-package com.android.settings;
-
-import android.app.Notification;
-import android.app.NotificationManager;
-import android.app.PendingIntent;
-import android.bluetooth.BluetoothDevice;
-import android.bluetooth.BluetoothIntent;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.res.Resources;
-
-/**
- * This class handles the Bluetooth pairing PIN request from the bluetooth service
- * It checks if the BluetoothSettings activity is currently visible and lets that
- * activity handle the request. Otherwise it puts a Notification in the status bar,
- * which can be clicked to bring up the PIN entry dialog.
- */
-public class BluetoothPinRequest extends BroadcastReceiver {
-
- @Override
- public void onReceive(Context context, Intent intent) {
- if (intent.getAction().equals(BluetoothIntent.PAIRING_REQUEST_ACTION)) {
- if (BluetoothSettings.isRunning()) {
- // Let the BluetoothSettings activity handle it
- return;
- } else {
- Resources res = context.getResources();
- String address = intent.getStringExtra(BluetoothIntent.ADDRESS);
- Notification pair = new Notification(
- android.R.drawable.stat_sys_data_bluetooth,
- res.getString(R.string.bluetooth_notif_ticker),
- System.currentTimeMillis());
-
- Intent pinIntent = new Intent();
- pinIntent.setClass(context, BluetoothPINEntry.class);
- pinIntent.putExtra(BluetoothIntent.ADDRESS, address);
- pinIntent.setAction(BluetoothIntent.PAIRING_REQUEST_ACTION);
- PendingIntent pending = PendingIntent.getActivity(context, 0,
- pinIntent, PendingIntent.FLAG_ONE_SHOT);
-
- String name = intent.getStringExtra(BluetoothIntent.NAME);
-
- if (name == null) {
- BluetoothDevice bluetooth =
- (BluetoothDevice)context.getSystemService(Context.BLUETOOTH_SERVICE);
- name = bluetooth.getRemoteName(address);
- if (name == null) {
- name = address;
- }
- }
-
- pair.setLatestEventInfo(context,
- res.getString(R.string.bluetooth_notif_title),
- res.getString(R.string.bluetooth_notif_message) + name,
- pending);
-
- NotificationManager manager = (NotificationManager)
- context.getSystemService(Context.NOTIFICATION_SERVICE);
- manager.notify(0xb100ceee, pair);
- }
- }
- }
-}
diff --git a/src/com/android/settings/BluetoothSettings.java b/src/com/android/settings/BluetoothSettings.java
deleted file mode 100644
index 6a19ec4..0000000
--- a/src/com/android/settings/BluetoothSettings.java
+++ /dev/null
@@ -1,1035 +0,0 @@
-/*
- * 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.
- */
-
-package com.android.settings;
-
-import android.app.AlertDialog;
-import android.bluetooth.BluetoothDevice;
-import android.bluetooth.BluetoothHeadset;
-import android.bluetooth.BluetoothIntent;
-import android.bluetooth.DeviceClass;
-import android.bluetooth.IBluetoothDeviceCallback;
-import android.bluetooth.IBluetoothHeadsetCallback;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.content.Intent;
-import android.content.IntentFilter;
-import android.content.SharedPreferences;
-import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
-import android.content.res.Configuration;
-import android.content.res.Resources;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.Message;
-import android.os.SystemClock;
-import android.os.SystemProperties;
-import android.preference.CheckBoxPreference;
-import android.preference.EditTextPreference;
-import android.preference.Preference;
-import android.preference.PreferenceActivity;
-import android.preference.PreferenceScreen;
-import android.provider.Settings;
-import android.text.method.PasswordTransformationMethod;
-import android.util.Log;
-import android.view.ContextMenu;
-import android.view.KeyEvent;
-import android.view.LayoutInflater;
-import android.view.Menu;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ContextMenu.ContextMenuInfo;
-import android.view.View.OnKeyListener;
-import android.widget.AdapterView;
-import android.widget.EditText;
-import android.widget.Toast;
-import android.widget.AdapterView.AdapterContextMenuInfo;
-
-import java.util.HashMap;
-
-public class BluetoothSettings
- extends PreferenceActivity
- implements OnSharedPreferenceChangeListener, OnKeyListener,
- View.OnCreateContextMenuListener {
-
- private static final String TAG = "BluetoothSettings";
-
- private static final int MENU_SCAN_ID = Menu.FIRST;
- private static final int MENU_CLEAR_ID = Menu.FIRST + 1;
-
- private static final int MENU_CONNECT = ContextMenu.FIRST;
- private static final int MENU_DISCONNECT = ContextMenu.FIRST + 1;
- private static final int MENU_PAIR = ContextMenu.FIRST + 2;
- private static final int MENU_UNPAIR = ContextMenu.FIRST + 3;
-
- private static final String BT_ENABLE = "bt_checkbox";
- private static final String BT_VISIBILITY = "bt_visibility";
- private static final String BT_NAME = "bt_name";
-
- private static final String BT_KEY_PREFIX = "bt_dev_";
- private static final int BT_KEY_LENGTH = BT_KEY_PREFIX.length();
- private static final String FREEZE_ADDRESSES = "addresses";
- private static final String FREEZE_TYPES = "types";
- private static final String FREEZE_PIN = "pinText";
- private static final String FREEZE_PIN_ADDRESS = "pinAddress";
- private static final String FREEZE_RSSI = "rssi";
- private static final String FREEZE_DISCOVERABLE_START = "dstart";
-
- private static final int HANDLE_FAILED_TO_CONNECT = 1;
- private static final int HANDLE_CONNECTING = 2;
- private static final int HANDLE_CONNECTED = 3;
- private static final int HANDLE_DISCONNECTED = 4;
- private static final int HANDLE_PIN_REQUEST = 5;
- private static final int HANDLE_DISCOVERABLE_TIMEOUT = 6;
- private static final int HANDLE_INITIAL_SCAN = 7;
- private static final int HANDLE_PAIRING_FAILED = 8;
- private static final int HANDLE_PAIRING_PASSED = 9;
- private static final int HANDLE_PAUSE_TIMEOUT = 10;
-
-
-
- private static String STR_CONNECTED;
- private static String STR_PAIRED;
- private static String STR_PAIRED_NOT_NEARBY;
- private static String STR_NOT_CONNECTED;
- private static String STR_CONNECTING;
- private static String STR_PAIRING;
-
- private static final int WEIGHT_CONNECTED = 1;
- private static final int WEIGHT_PAIRED = 0;
- private static final int WEIGHT_UNKNOWN = -1;
-
- private CheckBoxPreference mBTToggle;
- private CheckBoxPreference mBTVisibility;
- private EditTextPreference mBTName;
- private ProgressCategory mBTDeviceList;
- private AlertDialog mPinDialog;
- private String mPinAddress;
- private EditText mPinEdit;
- private View mPinButton1;
- private String mDisconnectAddress;
-
- private BluetoothDevice mBluetooth;
- private BluetoothHeadset mBluetoothHeadset;
- private boolean mIsEnabled;
- private String mLastConnected;
- private static boolean sIsRunning;
- private static DeviceCallback sDeviceCallback;
- private IntentFilter mIntentFilter;
- private Resources mRes;
- private long mDiscoverableStartTime;
- private int mDiscoverableTime;
- private static final String DISCOVERABLE_TIME = "debug.bt.discoverable_time";
- private static final int DISCOVERABLE_TIME_DEFAULT = 120;
- private boolean mAutoDiscovery;
- // After a few seconds after a pause, if the user doesn't restart the
- // BT settings, then we need to cleanup a few things in the message handler
- private static final int PAUSE_TIMEOUT = 3000;
-
- private boolean mStartScan;
- private static final String AUTO_DISCOVERY = "debug.bt.auto_discovery";
- private HashMap<String,Preference> mDeviceMap;
-
- @Override
- protected void onCreate(Bundle icicle) {
- super.onCreate(icicle);
-
- addPreferencesFromResource(R.xml.bluetooth_settings);
-
- // Deal with restarted activities by passing a static callback object to
- // the Bluetooth service
- if (sDeviceCallback == null) {
- sDeviceCallback = new DeviceCallback();
- }
- sDeviceCallback.setHandler(mHandler);
-
- mDiscoverableTime = SystemProperties.getInt(DISCOVERABLE_TIME, -1);
- if (mDiscoverableTime <= 0) {
- mDiscoverableTime= DISCOVERABLE_TIME_DEFAULT;
- }
- mAutoDiscovery = SystemProperties.getBoolean(AUTO_DISCOVERY, true);
-
- if (!initBluetoothAPI()) {
- finish();
- return;
- }
- initUI();
- getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
-
- mDeviceMap = new HashMap<String,Preference>();
- if (icicle != null && icicle.containsKey(FREEZE_ADDRESSES)) {
- addDevices(icicle.getStringArray(FREEZE_ADDRESSES),
- icicle.getStringArray(FREEZE_TYPES),
- icicle.getIntArray(FREEZE_RSSI));
- if (icicle.containsKey(FREEZE_PIN)) {
- String savedPin = icicle.getString(FREEZE_PIN);
- String pinAddress = icicle.getString(FREEZE_PIN_ADDRESS);
- mPinDialog = showPinDialog(savedPin, pinAddress);
- }
- mDiscoverableStartTime = icicle.getLong(FREEZE_DISCOVERABLE_START);
- } else {
- mStartScan = true;
- }
- }
-
- private void initUI() {
- mBTToggle = (CheckBoxPreference) findPreference(BT_ENABLE);
- mBTVisibility = (CheckBoxPreference) findPreference(BT_VISIBILITY);
- mBTName = (EditTextPreference) findPreference(BT_NAME);
- mBTDeviceList = (ProgressCategory) findPreference("bt_device_list");
- mBTDeviceList.setOrderingAsAdded(false);
- mRes = getResources();
- if (mIsEnabled) {
- String name = mBluetooth.getName();
- if (name != null) {
- mBTName.setSummary(name);
- }
- }
- mBTVisibility.setEnabled(mIsEnabled);
- mBTName.setEnabled(mIsEnabled);
- STR_CONNECTED = mRes.getString(R.string.bluetooth_connected);
- STR_PAIRED = mRes.getString(R.string.bluetooth_paired);
- STR_PAIRED_NOT_NEARBY =
- mRes.getString(R.string.bluetooth_paired_not_nearby);
- STR_CONNECTING = mRes.getString(R.string.bluetooth_connecting);
- STR_PAIRING = mRes.getString(R.string.bluetooth_pairing);
- STR_NOT_CONNECTED = mRes.getString(R.string.bluetooth_not_connected);
- getListView().setOnCreateContextMenuListener(this);
- }
-
- private boolean initBluetoothAPI() {
- mIntentFilter =
- new IntentFilter(BluetoothIntent.REMOTE_DEVICE_CONNECTED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.REMOTE_DEVICE_DISCONNECTED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.BONDING_CREATED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.ENABLED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.DISABLED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.REMOTE_DEVICE_FOUND_ACTION);
- mIntentFilter.addAction(BluetoothIntent.REMOTE_DEVICE_DISAPPEARED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.REMOTE_NAME_UPDATED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.PAIRING_REQUEST_ACTION);
- mIntentFilter.addAction(BluetoothIntent.HEADSET_STATE_CHANGED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.DISCOVERY_COMPLETED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.DISCOVERY_STARTED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.MODE_CHANGED_ACTION);
-
- mBluetooth = (BluetoothDevice)getSystemService(BLUETOOTH_SERVICE);
- mBluetoothHeadset = new BluetoothHeadset(this);
- if (mBluetooth == null) { // If the environment doesn't support BT
- return false;
- }
- mIsEnabled = mBluetooth.isEnabled();
- return true;
- }
-
- @Override
- protected void onResume() {
- super.onResume();
-
- sIsRunning = true;
- mHandler.removeMessages(HANDLE_PAUSE_TIMEOUT);
- registerReceiver(mReceiver, mIntentFilter);
-
- mIsEnabled = mBluetooth.isEnabled();
- updateStatus();
- final boolean discoverable = mBluetooth.getMode() ==
- BluetoothDevice.MODE_DISCOVERABLE;
- mBTDeviceList.setProgress(mIsEnabled && mBluetooth.isDiscovering());
- mBTVisibility.setChecked(mIsEnabled && discoverable);
-
- if (discoverable) {
- mHandler.sendMessage(
- mHandler.obtainMessage(HANDLE_DISCOVERABLE_TIMEOUT));
- }
-
- if (mIsEnabled && mStartScan) {
- // First attempt after 100ms
- mHandler.sendMessageDelayed(
- mHandler.obtainMessage(HANDLE_INITIAL_SCAN, 1), 100);
- }
- mStartScan = false;
-
- // Check if headset status changed since we paused
- String connected = mBluetoothHeadset.getHeadsetAddress();
- if (connected != null) {
- updateRemoteDeviceStatus(connected);
- }
- if (mLastConnected != null) {
- updateRemoteDeviceStatus(mLastConnected);
- }
- }
-
- @Override
- protected void onPause() {
- sIsRunning = false;
-
- unregisterReceiver(mReceiver);
-
- // Wait for a few seconds and cleanup any pending requests, states
- mHandler.sendMessageDelayed(
- mHandler.obtainMessage(HANDLE_PAUSE_TIMEOUT,
- new Object[] { mBluetooth, mPinAddress }),
- PAUSE_TIMEOUT);
- super.onPause();
- }
-
- @Override
- protected void onDestroy() {
- mBluetoothHeadset.close();
- sDeviceCallback.setHandler(null);
-
- super.onDestroy();
- }
-
- @Override
- public void onConfigurationChanged(Configuration c) {
- super.onConfigurationChanged(c);
- // Don't do anything on keyboardHidden/orientation change, as we need
- // to make sure that we don't lose pairing request intents.
- }
-
- public static boolean isRunning() {
- return sIsRunning;
- }
-
- @Override
- protected void onSaveInstanceState(Bundle icicle) {
- int deviceCount = mBTDeviceList.getPreferenceCount();
- String [] addresses = new String[deviceCount];
- String [] states = new String[deviceCount];
- int [] weights = new int[deviceCount];
- for (int i = 0; i < deviceCount; i++) {
- BluetoothListItem p = (BluetoothListItem) mBTDeviceList.getPreference(i);
- CharSequence summary = p.getSummary();
- if (summary != null) {
- states[i] = summary.toString();
- } else {
- states[i] = STR_NOT_CONNECTED;
- }
- addresses[i] = getAddressFromKey(p.getKey());
- weights[i] = p.getWeight();
- }
- icicle.putStringArray(FREEZE_ADDRESSES, addresses);
- icicle.putStringArray(FREEZE_TYPES, states);
- icicle.putIntArray(FREEZE_RSSI, weights);
- icicle.putLong(FREEZE_DISCOVERABLE_START, mDiscoverableStartTime);
- if (mPinDialog != null && mPinDialog.isShowing()) {
- icicle.putString(FREEZE_PIN, mPinEdit.getText().toString());
- icicle.putString(FREEZE_PIN_ADDRESS, mPinAddress);
- }
- super.onSaveInstanceState(icicle);
- }
-
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- super.onCreateOptionsMenu(menu);
- menu.add(0, MENU_SCAN_ID, 0,
- mRes.getString(R.string.bluetooth_scan_for_devices))
- .setIcon(R.drawable.ic_menu_scan_bluetooth);
- menu.add(0, MENU_CLEAR_ID, 0,
- mRes.getString(R.string.bluetooth_clear_list))
- .setIcon(android.R.drawable.ic_menu_close_clear_cancel);
- return true;
- }
-
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- switch (item.getItemId()) {
- case MENU_SCAN_ID:
- startScanning();
- return true;
- case MENU_CLEAR_ID:
- clearDevices();
- return true;
- }
- return super.onOptionsItemSelected(item);
- }
-
- @Override
- public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo menuInfo) {
- if (!(menuInfo instanceof AdapterContextMenuInfo)) {
- return;
- }
- int position = ((AdapterContextMenuInfo)menuInfo).position;
- Preference pref = (Preference) getPreferenceScreen().getRootAdapter().getItem(position);
- if (!(pref instanceof BluetoothListItem)) {
- return;
- }
- String address = getAddressFromKey(pref.getKey());
- // Setup the menu header
- String name = mBluetooth.getRemoteName(address);
- menu.setHeaderTitle(name != null? name : address);
- int n = 0;
- if (mBluetoothHeadset.isConnected(address)) {
- menu.add(0, MENU_DISCONNECT, n++, R.string.bluetooth_disconnect);
- } else {
- menu.add(0, MENU_CONNECT, n++, R.string.bluetooth_connect);
- }
- if (mBluetooth.hasBonding(address)) {
- menu.add(0, MENU_UNPAIR, n++, R.string.bluetooth_unpair);
- } else {
- menu.add(0, MENU_PAIR, n++, R.string.bluetooth_pair);
- }
- }
-
- @Override
- public boolean onContextItemSelected(MenuItem item) {
- AdapterView.AdapterContextMenuInfo info;
- if (!(item.getMenuInfo() instanceof AdapterContextMenuInfo)) {
- return false;
- }
- info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
- Preference pref = (Preference) getPreferenceScreen().getRootAdapter().
- getItem(info.position);
- String address = getAddressFromKey(pref.getKey());
- mBluetooth.cancelDiscovery();
- switch (item.getItemId()) {
- case MENU_DISCONNECT:
- if (mBluetoothHeadset.isConnected(address)) {
- mBluetoothHeadset.disconnectHeadset();
- }
- break;
- case MENU_CONNECT:
- if (!mBluetoothHeadset.isConnected(address)) {
- updateRemoteDeviceStatus(address, STR_CONNECTING);
- connect(pref, address);
- }
- break;
- case MENU_UNPAIR:
- if (mBluetooth.hasBonding(address)) {
- mBluetooth.removeBonding(address);
- updateRemoteDeviceStatus(address);
- }
- break;
- case MENU_PAIR:
- if (!mBluetooth.hasBonding(address)) {
- pair(pref, address);
- }
- break;
- }
- return true;
- }
-
- private void startScanning() {
- if (mIsEnabled && mBluetooth.isDiscovering()) {
- return;
- }
- resetDeviceListUI();
- if (mIsEnabled) {
- mBluetooth.startDiscovery();
- }
- }
-
- private void clearDevices() {
- String [] addresses = mBluetooth.listBondings();
- if (addresses != null) {
- for (int i = 0; i < addresses.length; i++) {
- unbond(addresses[i]);
- }
- }
- resetDeviceListUI();
- }
-
- /* Update the Bluetooth toggle and visibility summary */
- private void updateStatus() {
- boolean started = mIsEnabled;
- mBTToggle.setChecked(started);
- }
-
- private void updateRemoteDeviceStatus(String address) {
- if (address != null) {
- Preference device = mDeviceMap.get(address);
- if (device == null) {
- // This device is not in our discovered list
- // Let's add the device, if BT is not shut down already
- if (mIsEnabled) {
- addDeviceToUI(address, null, null, WEIGHT_PAIRED);
- }
- return;
- }
- device.setEnabled(true);
- if (address.equals(mBluetoothHeadset.getHeadsetAddress())) {
- int state = mBluetoothHeadset.getState();
- switch (state) {
- case BluetoothHeadset.STATE_CONNECTED:
- device.setSummary(STR_CONNECTED);
- mLastConnected = address;
- break;
- case BluetoothHeadset.STATE_CONNECTING:
- device.setSummary(STR_CONNECTING);
- break;
- case BluetoothHeadset.STATE_DISCONNECTED:
- if (mBluetooth.hasBonding(address)) {
- device.setSummary(STR_PAIRED);
- }
- break;
- }
- } else if (mBluetooth.hasBonding(address)) {
- device.setSummary(STR_PAIRED);
- } else {
- device.setSummary(STR_NOT_CONNECTED);
- }
- }
- }
-
- private void updateRemoteDeviceStatus(String address, String summary) {
- Preference device = mDeviceMap.get(address);
- if (device != null) {
- device.setEnabled(true);
- device.setSummary(summary);
- }
- }
-
- public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
- if (key.equals(BT_NAME)) {
- String name = sharedPreferences.getString(key, null);
- if (name == null) {
- return;
- }
- if (mBluetooth.setName(name)) {
- mBTName.setSummary(name);
- }
- }
- }
-
- private String getAddressFromKey(String key) {
- if (key != null) {
- return key.substring(BT_KEY_LENGTH);
- }
- return "";
- }
-
- private void sendPin(String pin) {
- byte[] pinBytes = BluetoothDevice.convertPinToBytes(pin);
- if (pinBytes == null) {
- mBluetooth.cancelPin(mPinAddress);
- } else {
- mBluetooth.setPin(mPinAddress, pinBytes);
- }
- mPinAddress = null;
- }
-
- private AlertDialog showPinDialog(String savedPin, String pinAddress) {
- if (mPinDialog != null) {
- return mPinDialog;
- }
- View view = LayoutInflater.from(this).inflate(
- R.layout.bluetooth_pin_entry, null);
- mPinEdit = (EditText) view.findViewById(R.id.text);
- mPinEdit.setTransformationMethod(PasswordTransformationMethod.getInstance());
- mPinEdit.setOnKeyListener(this);
- mPinAddress = pinAddress;
-
- if (savedPin != null) {
- mPinEdit.setText(savedPin);
- }
-
- String remoteName = mBluetooth.getRemoteName(mPinAddress);
- if (remoteName == null) {
- remoteName = mPinAddress;
- }
-
- AlertDialog ad = new AlertDialog.Builder(this)
- .setTitle(getString(R.string.bluetooth_notif_title))
- .setMessage(getString(R.string.bluetooth_enter_pin_msg) + remoteName)
- .setView(view)
- .setPositiveButton(android.R.string.ok, mDisconnectListener)
- .setNegativeButton(android.R.string.cancel, mDisconnectListener)
- .setOnCancelListener(mCancelListener)
- .show();
- ad.setCanceledOnTouchOutside(false);
- // Making an assumption here that the dialog buttons have the ids starting
- // with ...button1 as below
- mPinButton1 = ad.findViewById(com.android.internal.R.id.button1);
- if (mPinButton1 != null) {
- mPinButton1.setEnabled(savedPin != null? savedPin.length() > 0 : false);
- }
- return ad;
- }
-
- public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
- if (preference == mBTToggle) {
- toggleBT();
- return false;
- } else if (preference == mBTVisibility) {
- boolean vis = mBTVisibility.isChecked();
- if (!vis) {
- // Cancel discoverability
- mBluetooth.setMode(BluetoothDevice.MODE_CONNECTABLE);
- mHandler.removeMessages(HANDLE_DISCOVERABLE_TIMEOUT);
- } else {
- mBluetooth.setMode(BluetoothDevice.MODE_DISCOVERABLE);
- mBTVisibility.setSummaryOn(
- getResources().getString(R.string.bluetooth_is_discoverable,
- String.valueOf(mDiscoverableTime)));
- mDiscoverableStartTime = SystemClock.elapsedRealtime();
- mHandler.sendMessageDelayed(
- mHandler.obtainMessage(HANDLE_DISCOVERABLE_TIMEOUT), 1000);
- }
- } else {
- String key = preference.getKey();
- if (key.startsWith(BT_KEY_PREFIX)) {
- // Extract the device address from the key
- String address = getAddressFromKey(key);
- if (mBluetoothHeadset.isConnected(address)) {
- askDisconnect(address);
- } else if (mBluetooth.hasBonding(address)) {
- if (mIsEnabled) {
- mBluetooth.cancelDiscovery();
- }
- updateRemoteDeviceStatus(address, STR_CONNECTING);
- connect(preference, address);
- } else {
- if (mIsEnabled) {
- mBluetooth.cancelDiscovery();
- }
- pair(preference, address);
- }
- }
- }
- return false;
- }
-
- /* Handle the key input to the PIN entry dialog */
- public boolean onKey(View v, int keyCode, KeyEvent event) {
-
- if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER
- || keyCode == KeyEvent.KEYCODE_ENTER) {
- String pin = ((EditText)v).getText().toString();
- if (pin != null && pin.length() > 0) {
- sendPin(pin);
- mPinDialog.dismiss();
- return true;
- }
- } else if (mPinButton1 != null) {
- boolean valid =
- BluetoothDevice.convertPinToBytes(((EditText)v).getText().toString()) != null;
- mPinButton1.setEnabled(valid);
- }
- return false;
- }
-
- private void askDisconnect(String address) {
- String name = mBluetooth.getRemoteName(address);
- if (name == null) {
- name = mRes.getString(R.string.bluetooth_device);
- }
- String message = mRes.getString(R.string.bluetooth_disconnect_blank, name);
-
- mDisconnectAddress = address;
-
- AlertDialog ad = new AlertDialog.Builder(this)
- .setTitle(message)
- .setPositiveButton(android.R.string.ok, mDisconnectListener)
- .setNegativeButton(android.R.string.cancel, null)
- .show();
- ad.setCanceledOnTouchOutside(false);
-
- }
-
- private void pairingDone(String address, boolean result) {
- Preference pref = mDeviceMap.get(address);
- if (pref != null) {
- pref.setEnabled(true);
- updateRemoteDeviceStatus(address);
- } else if (result) {
- // We've paired to a device that isn't in our list
- addDeviceToUI(address, STR_PAIRED, mBluetooth.getRemoteName(address),
- WEIGHT_PAIRED);
- }
- }
-
- private void pair(Preference pref, String address) {
- pref.setEnabled(false);
- pref.setSummary(STR_PAIRING);
- mBluetooth.createBonding(address, sDeviceCallback);
- }
-
- private void connect(Preference pref, String address) {
- pref.setEnabled(false);
- //TODO: Prompt the user to confirm they will disconnect current headset
- disconnect();
- mBluetoothHeadset.connectHeadset(address, mHeadsetCallback);
- }
-
- private void disconnect() {
- int state = mBluetoothHeadset.getState();
- if (state == BluetoothHeadset.STATE_CONNECTING ||
- state == BluetoothHeadset.STATE_CONNECTED) {
- mBluetoothHeadset.disconnectHeadset();
- }
- }
-
- private void toggleBT() {
- if (mIsEnabled) {
- mBTToggle.setSummaryOn(mRes.getString(R.string.bluetooth_stopping));
- mBTDeviceList.setProgress(false);
- // Force shutdown.
- mBluetooth.cancelDiscovery();
- mBluetooth.disable();
- } else {
- mBTToggle.setSummaryOff(mRes.getString(R.string.bluetooth_enabling));
- mBTToggle.setChecked(false);
- mBTToggle.setEnabled(false);
- if (!mBluetooth.enable()) {
- mBTToggle.setEnabled(true);
- }
- }
- }
-
- private void addDeviceToUI(String address, String summary, String name,
- int rssi) {
-
- if (address == null) {
- return;
- }
-
- BluetoothListItem p;
- if (mDeviceMap.containsKey(address)) {
- p = (BluetoothListItem) mDeviceMap.get(address);
- if (summary != null && summary.equals(STR_NOT_CONNECTED)) {
- if (mBluetooth.hasBonding(address)) {
- summary = STR_PAIRED;
- }
- }
- CharSequence oldSummary = p.getSummary();
- if (oldSummary != null && oldSummary.equals(STR_CONNECTED)) {
- summary = STR_CONNECTED; // Don't override connected with paired
- mLastConnected = address;
- }
- } else {
- p = new BluetoothListItem(this, null);
- }
- if (name == null) {
- name = mBluetooth.getRemoteName(address);
- }
- if (name == null) {
- name = address;
- }
-
- p.setTitle(name);
- p.setSummary(summary);
- p.setKey(BT_KEY_PREFIX + address);
- // Enable the headset icon if it is most probably a headset class device
- if (DeviceClass.getMajorClass(mBluetooth.getRemoteClass(address)) ==
- DeviceClass.MAJOR_CLASS_AUDIO_VIDEO) {
- p.setHeadset(true);
- }
- p.setWeight(rssi);
- if (!mDeviceMap.containsKey(address)) {
- mBTDeviceList.addPreference(p);
- mDeviceMap.put(address, p);
- }
- }
-
- private void addDevices(String [] addresses,
- String[] deviceStatus, int[] rssi) {
- for (int i = 0; i < addresses.length; i++) {
- String status = deviceStatus[i];
- String name = mBluetooth.getRemoteName(addresses[i]);
- String address = addresses[i];
- // Query the status if it's not known
- if (status == null) {
- if (mBluetoothHeadset.isConnected(addresses[i])) {
- status = STR_CONNECTED;
- mLastConnected = address;
- } else if (mBluetooth.hasBonding(addresses[i])) {
- status = STR_PAIRED;
- } else {
- status = STR_NOT_CONNECTED;
- }
- }
- addDeviceToUI(address, status, name, rssi[i]);
- }
- }
-
- private void removeDeviceFromUI(String address) {
- Preference p = mDeviceMap.get(address);
- if (p == null) {
- return;
- }
- mBTDeviceList.removePreference(p);
- mDeviceMap.remove(address);
- }
-
- private void updateDeviceName(String address, String name) {
- Preference p = mDeviceMap.get(address);
- if (p != null) {
- p.setTitle(name);
- }
- }
-
- private void resetDeviceListUI() {
- mDeviceMap.clear();
-
- while (mBTDeviceList.getPreferenceCount() > 0) {
- mBTDeviceList.removePreference(mBTDeviceList.getPreference(0));
- }
- if (!mIsEnabled) {
- return;
- }
-
- String connectedDevice = mBluetoothHeadset.getHeadsetAddress();
- if (connectedDevice != null && mBluetoothHeadset.isConnected(connectedDevice)) {
- addDeviceToUI(connectedDevice, STR_CONNECTED,
- mBluetooth.getRemoteName(connectedDevice), WEIGHT_CONNECTED);
- }
- String [] bondedDevices = mBluetooth.listBondings();
- if (bondedDevices != null) {
- for (int i = 0; i < bondedDevices.length; i++) {
- addDeviceToUI(bondedDevices[i], STR_PAIRED_NOT_NEARBY,
- mBluetooth.getRemoteName(bondedDevices[i]), WEIGHT_PAIRED);
- }
- }
- }
-
- private void unbond(String address) {
- mBluetooth.removeBonding(address);
- }
-
- private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
- @Override
- public void onReceive(Context context, Intent intent) {
- String action = intent.getAction();
- String address = intent.getStringExtra(BluetoothIntent.ADDRESS);
- if (action.equals(BluetoothIntent.ENABLED_ACTION)) {
- mIsEnabled = true;
- mBTToggle.setChecked(true);
- mBTToggle.setSummaryOn(mRes.getString(R.string.bluetooth_enabled));
- mBTToggle.setEnabled(true);
- String name = mBluetooth.getName();
- if (name != null) {
- mBTName.setSummary(name);
- }
- // save the "enabled" setting to database, so we can
- // remember it on startup.
- Settings.System.putInt(getContentResolver(),
- Settings.System.BLUETOOTH_ON, 1);
- resetDeviceListUI();
- if (mAutoDiscovery) {
- mBluetooth.startDiscovery();
- }
- } else if (action.equals(BluetoothIntent.DISABLED_ACTION)) {
- mIsEnabled = false;
- mBTToggle.setSummaryOff(mRes.getString(R.string.bluetooth_disabled));
- resetDeviceListUI();
- mBTVisibility.setChecked(false);
- // save the "disabled" setting to database
- Settings.System.putInt(getContentResolver(),
- Settings.System.BLUETOOTH_ON, 0);
- } else if (action.equals(BluetoothIntent.REMOTE_DEVICE_FOUND_ACTION)) {
- if (address != null) {
- int rssi = intent.getShortExtra(BluetoothIntent.RSSI,
- (short) WEIGHT_UNKNOWN);
- addDeviceToUI(address, STR_NOT_CONNECTED, null, rssi);
- }
- } else if (action.equals(BluetoothIntent.REMOTE_NAME_UPDATED_ACTION)) {
- String name = intent.getStringExtra(BluetoothIntent.NAME);
- updateDeviceName(address, name);
- } else if (action.equals(BluetoothIntent.REMOTE_DEVICE_DISAPPEARED_ACTION)) {
- removeDeviceFromUI(address);
- } else if (action.equals(BluetoothIntent.PAIRING_REQUEST_ACTION)) {
- mHandler.sendMessage(mHandler.obtainMessage(HANDLE_PIN_REQUEST, address));
- } else if (action.equals(BluetoothIntent.HEADSET_STATE_CHANGED_ACTION)) {
- int state = intent.getIntExtra(BluetoothIntent.HEADSET_STATE,
- BluetoothHeadset.STATE_ERROR);
- if (state == BluetoothHeadset.STATE_CONNECTED) {
- mHandler.sendMessage(mHandler.obtainMessage(HANDLE_CONNECTED, address));
- } else if (state == BluetoothHeadset.STATE_DISCONNECTED) {
- mHandler.sendMessage(mHandler.obtainMessage(HANDLE_DISCONNECTED, address));
- } else if (state == BluetoothHeadset.STATE_CONNECTING) {
- mHandler.sendMessage(mHandler.obtainMessage(HANDLE_CONNECTING, address));
- }
- } else if (action.equals(BluetoothIntent.DISCOVERY_STARTED_ACTION)) {
- mBTDeviceList.setProgress(true);
- } else if (action.equals(BluetoothIntent.DISCOVERY_COMPLETED_ACTION)) {
- mBTDeviceList.setProgress(false);
- } else if (action.equals(BluetoothIntent.MODE_CHANGED_ACTION)) {
- mBTVisibility.setChecked(
- mBluetooth.getMode() == BluetoothDevice.MODE_DISCOVERABLE);
- } else if (action.equals(BluetoothIntent.BONDING_CREATED_ACTION)) {
- mHandler.sendMessage(mHandler.obtainMessage(HANDLE_PAIRING_PASSED, address));
- } else if (action.equals(BluetoothIntent.REMOTE_DEVICE_CONNECTED_ACTION)) {
- mHandler.sendMessage(mHandler.obtainMessage(HANDLE_CONNECTED, address));
- } else if (action.equals(BluetoothIntent.REMOTE_DEVICE_DISCONNECTED_ACTION)) {
- mHandler.sendMessage(mHandler.obtainMessage(HANDLE_DISCONNECTED, address));
- }
- }
- };
-
-
- static class DeviceCallback extends IBluetoothDeviceCallback.Stub {
- Handler messageHandler;
-
- public void setHandler(Handler handler) {
- synchronized (this) {
- messageHandler = handler;
- }
- }
-
- public void onCreateBondingResult(String address, int result) {
- synchronized (this) {
- if (messageHandler != null) {
- if (result == BluetoothDevice.RESULT_FAILURE) {
- messageHandler.sendMessage(messageHandler.obtainMessage(
- HANDLE_PAIRING_FAILED, address));
- } else {
- messageHandler.sendMessage(messageHandler.obtainMessage(
- HANDLE_PAIRING_PASSED, address));
- }
- }
- }
- }
-
- public void onEnableResult(int result) { }
- public void onGetRemoteServiceChannelResult(String address, int channel) { }
- };
-
- private IBluetoothHeadsetCallback mHeadsetCallback = new IBluetoothHeadsetCallback.Stub() {
- public void onConnectHeadsetResult(String address, int resultCode) {
- if (resultCode == BluetoothHeadset.RESULT_SUCCESS) {
- mHandler.sendMessage(mHandler.obtainMessage(HANDLE_CONNECTED, address));
- } else {
- // Make toast in UI thread
- mHandler.sendMessage(mHandler.obtainMessage(HANDLE_FAILED_TO_CONNECT, resultCode,
- -1, address));
- }
- }
- };
-
- private Handler mHandler = new Handler() {
- @Override
- public void handleMessage(Message msg) {
- switch (msg.what) {
- case HANDLE_CONNECTED:
- case HANDLE_DISCONNECTED:
- case HANDLE_CONNECTING:
- updateRemoteDeviceStatus((String) msg.obj);
- break;
- case HANDLE_FAILED_TO_CONNECT:
- updateRemoteDeviceStatus((String) msg.obj);
- String name = mBluetooth.getRemoteName((String) msg.obj);
- if (name == null) {
- name = (String) msg.obj;
- }
- if (msg.arg1 == BluetoothHeadset.RESULT_FAILURE) {
- Toast.makeText(BluetoothSettings.this,
- mRes.getString(R.string.failed_to_connect, name),
- Toast.LENGTH_SHORT).show();
- }
- break;
- case HANDLE_PIN_REQUEST:
- mPinDialog = showPinDialog(null, (String) msg.obj);
- break;
- case HANDLE_DISCOVERABLE_TIMEOUT:
- long nowTime = SystemClock.elapsedRealtime();
- int secondsLeft = mDiscoverableTime
- - (int) (nowTime - mDiscoverableStartTime) / 1000;
- if (secondsLeft > 0) {
- mBTVisibility.setSummaryOn(
- getResources().getString(R.string.bluetooth_is_discoverable,
- String.valueOf(secondsLeft)));
- sendMessageDelayed(obtainMessage(HANDLE_DISCOVERABLE_TIMEOUT), 1000);
- } else {
- mBluetooth.setMode(BluetoothDevice.MODE_CONNECTABLE);
- mBTVisibility.setChecked(false);
- }
- break;
- case HANDLE_INITIAL_SCAN:
- if (mBluetoothHeadset.getState() == BluetoothHeadset.STATE_ERROR &&
- ((Integer)msg.obj).intValue() < 2) {
- // Second attempt after another 100ms
- sendMessageDelayed(obtainMessage(HANDLE_INITIAL_SCAN, 2), 100);
- } else {
- resetDeviceListUI();
- if (mAutoDiscovery) {
- mBluetooth.cancelDiscovery();
- mBluetooth.startDiscovery();
- }
- }
- break;
- case HANDLE_PAIRING_PASSED:
- String addr = (String) msg.obj;
- pairingDone(addr, true);
- break;
- case HANDLE_PAIRING_FAILED:
- String address = (String) msg.obj;
- pairingDone(address, false);
- String pairName = mBluetooth.getRemoteName(address);
- if (pairName == null) {
- pairName = address;
- }
- Toast.makeText(BluetoothSettings.this,
- mRes.getString(R.string.failed_to_pair, pairName),
- Toast.LENGTH_SHORT).show();
- break;
- case HANDLE_PAUSE_TIMEOUT:
- // Possibility of race condition, but not really harmful
- if (!sIsRunning) {
- Object[] params = (Object[]) msg.obj;
- BluetoothDevice bluetooth = (BluetoothDevice) params[0];
- if (bluetooth.isEnabled()) {
- if (bluetooth.isDiscovering()) {
- bluetooth.cancelDiscovery();
- }
- if (params[1] != null) {
- bluetooth.cancelBondingProcess((String) params[1]);
- }
- bluetooth.setMode(BluetoothDevice.MODE_CONNECTABLE);
- }
- }
- break;
- }
- }
- };
-
- private DialogInterface.OnClickListener mDisconnectListener =
- new DialogInterface.OnClickListener() {
-
- public void onClick(DialogInterface dialog, int which) {
- if (dialog == mPinDialog) {
- if (which == DialogInterface.BUTTON1) {
- String pin = mPinEdit.getText().toString();
- if (pin != null && pin.length() > 0) {
- sendPin(pin);
- } else {
- sendPin(null);
- }
- } else {
- sendPin(null);
- }
- mPinDialog = null;
- mPinEdit = null;
- } else {
- if (which == DialogInterface.BUTTON1) {
- disconnect();
- }
- }
- }
- };
-
- private DialogInterface.OnCancelListener mCancelListener =
- new DialogInterface.OnCancelListener() {
- public void onCancel(DialogInterface dialog) {
- if (dialog == mPinDialog) {
- sendPin(null);
- }
- mPinDialog = null;
- mPinEdit = null;
- }
- };
-}
-
diff --git a/src/com/android/settings/ChooseLockPattern.java b/src/com/android/settings/ChooseLockPattern.java
index 973e655..3097e96 100644
--- a/src/com/android/settings/ChooseLockPattern.java
+++ b/src/com/android/settings/ChooseLockPattern.java
@@ -45,6 +45,17 @@ import java.util.List;
*/
public class ChooseLockPattern extends Activity implements View.OnClickListener{
+ /**
+ * Used by the choose lock pattern wizard to indicate the wizard is
+ * finished, and each activity in the wizard should finish.
+ * <p>
+ * Previously, each activity in the wizard would finish itself after
+ * starting the next activity. However, this leads to broken 'Back'
+ * behavior. So, now an activity does not finish itself until it gets this
+ * result.
+ */
+ static final int RESULT_FINISHED = RESULT_FIRST_USER;
+
// how long after a confirmation message is shown before moving on
static final int INFORMATION_MSG_TIMEOUT_MS = 3000;
@@ -298,6 +309,8 @@ public class ChooseLockPattern extends Activity implements View.OnClickListener{
mLockPatternView.clearPattern();
updateStage(Stage.Introduction);
} else if (mUiStage.leftMode == LeftButtonMode.Cancel) {
+ // They are canceling the entire wizard
+ setResult(RESULT_FINISHED);
finish();
} else {
throw new IllegalStateException("left footer button pressed, but stage of " +
@@ -368,6 +381,7 @@ public class ChooseLockPattern extends Activity implements View.OnClickListener{
}
if (resultCode != Activity.RESULT_OK) {
+ setResult(RESULT_FINISHED);
finish();
}
updateStage(Stage.Introduction);
@@ -475,6 +489,8 @@ public class ChooseLockPattern extends Activity implements View.OnClickListener{
mLockPatternUtils.setLockPatternEnabled(true);
mLockPatternUtils.setVisiblePatternEnabled(true);
}
+
+ setResult(RESULT_FINISHED);
finish();
}
}
diff --git a/src/com/android/settings/ChooseLockPatternExample.java b/src/com/android/settings/ChooseLockPatternExample.java
index 5feba4c..77517b9 100644
--- a/src/com/android/settings/ChooseLockPatternExample.java
+++ b/src/com/android/settings/ChooseLockPatternExample.java
@@ -25,6 +25,7 @@ import android.view.View;
import android.widget.ImageView;
public class ChooseLockPatternExample extends Activity implements View.OnClickListener {
+ private static final int REQUESTCODE_CHOOSE = 1;
private static final long START_DELAY = 1000;
protected static final String TAG = "Settings";
private View mNextButton;
@@ -59,15 +60,24 @@ public class ChooseLockPatternExample extends Activity implements View.OnClickLi
public void onClick(View v) {
if (v == mSkipButton) {
+ // Canceling, so finish all
+ setResult(ChooseLockPattern.RESULT_FINISHED);
finish();
} else if (v == mNextButton) {
stopAnimation(mAnimation);
Intent intent = new Intent(this, ChooseLockPattern.class);
- startActivity(intent);
+ startActivityForResult(intent, REQUESTCODE_CHOOSE);
+ }
+ }
+
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if (requestCode == REQUESTCODE_CHOOSE && resultCode == ChooseLockPattern.RESULT_FINISHED) {
+ setResult(resultCode);
finish();
}
}
-
+
private void initViews() {
mNextButton = findViewById(R.id.next_button);
mNextButton.setOnClickListener(this);
diff --git a/src/com/android/settings/ChooseLockPatternTutorial.java b/src/com/android/settings/ChooseLockPatternTutorial.java
index 9687b55..a0a878a 100644
--- a/src/com/android/settings/ChooseLockPatternTutorial.java
+++ b/src/com/android/settings/ChooseLockPatternTutorial.java
@@ -24,8 +24,10 @@ import android.os.Bundle;
import android.view.View;
public class ChooseLockPatternTutorial extends Activity implements View.OnClickListener {
- protected View mNextButton;
- protected View mSkipButton;
+ private static final int REQUESTCODE_EXAMPLE = 1;
+
+ private View mNextButton;
+ private View mSkipButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -52,11 +54,22 @@ public class ChooseLockPatternTutorial extends Activity implements View.OnClickL
public void onClick(View v) {
if (v == mSkipButton) {
+ // Canceling, so finish all
+ setResult(ChooseLockPattern.RESULT_FINISHED);
finish();
} else if (v == mNextButton) {
- startActivity(new Intent(this, ChooseLockPatternExample.class));
+ startActivityForResult(new Intent(this, ChooseLockPatternExample.class),
+ REQUESTCODE_EXAMPLE);
+ }
+ }
+
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if (requestCode == REQUESTCODE_EXAMPLE && resultCode == ChooseLockPattern.RESULT_FINISHED) {
+ setResult(resultCode);
finish();
}
}
+
}
diff --git a/src/com/android/settings/DateTimeSettings.java b/src/com/android/settings/DateTimeSettings.java
index ce9dd8c..ead38d1 100644
--- a/src/com/android/settings/DateTimeSettings.java
+++ b/src/com/android/settings/DateTimeSettings.java
@@ -27,7 +27,6 @@ import android.content.SharedPreferences;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.os.Bundle;
import android.os.SystemClock;
-import android.pim.DateFormat;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference;
import android.preference.Preference;
@@ -35,6 +34,7 @@ import android.preference.PreferenceActivity;
import android.preference.PreferenceScreen;
import android.provider.Settings;
import android.provider.Settings.SettingNotFoundException;
+import android.text.format.DateFormat;
import android.widget.DatePicker;
import android.widget.TimePicker;
@@ -281,9 +281,7 @@ public class DateTimeSettings
/* Get & Set values from the system settings */
private boolean is24Hour() {
- String setting = Settings.System.getString(getContentResolver(),
- Settings.System.TIME_12_24);
- return HOURS_24.equals(setting);
+ return DateFormat.is24HourFormat(this);
}
private void set24Hour(boolean is24Hour) {
diff --git a/src/com/android/settings/DevelopmentSettings.java b/src/com/android/settings/DevelopmentSettings.java
index 02b852b..155f085 100644
--- a/src/com/android/settings/DevelopmentSettings.java
+++ b/src/com/android/settings/DevelopmentSettings.java
@@ -16,6 +16,7 @@
package com.android.settings;
+import android.os.BatteryManager;
import android.os.Bundle;
import android.os.SystemProperties;
import android.preference.Preference;
@@ -32,9 +33,11 @@ public class DevelopmentSettings extends PreferenceActivity {
private static final String ENABLE_ADB = "enable_adb";
private static final String KEEP_SCREEN_ON = "keep_screen_on";
+ private static final String ALLOW_MOCK_LOCATION = "allow_mock_location";
private CheckBoxPreference mEnableAdb;
private CheckBoxPreference mKeepScreenOn;
+ private CheckBoxPreference mAllowMockLocation;
@Override
protected void onCreate(Bundle icicle) {
@@ -44,16 +47,19 @@ public class DevelopmentSettings extends PreferenceActivity {
mEnableAdb = (CheckBoxPreference) findPreference(ENABLE_ADB);
mKeepScreenOn = (CheckBoxPreference) findPreference(KEEP_SCREEN_ON);
+ mAllowMockLocation = (CheckBoxPreference) findPreference(ALLOW_MOCK_LOCATION);
}
@Override
protected void onResume() {
super.onResume();
- mEnableAdb.setChecked(Settings.System.getInt(getContentResolver(),
- Settings.System.ADB_ENABLED, 0) != 0);
+ mEnableAdb.setChecked(Settings.Secure.getInt(getContentResolver(),
+ Settings.Secure.ADB_ENABLED, 0) != 0);
mKeepScreenOn.setChecked(Settings.System.getInt(getContentResolver(),
Settings.System.STAY_ON_WHILE_PLUGGED_IN, 0) != 0);
+ mAllowMockLocation.setChecked(Settings.Secure.getInt(getContentResolver(),
+ Settings.Secure.ALLOW_MOCK_LOCATION, 0) != 0);
}
@Override
@@ -66,11 +72,15 @@ public class DevelopmentSettings extends PreferenceActivity {
}
if (preference == mEnableAdb) {
- Settings.System.putInt(getContentResolver(), Settings.System.ADB_ENABLED,
+ Settings.Secure.putInt(getContentResolver(), Settings.Secure.ADB_ENABLED,
mEnableAdb.isChecked() ? 1 : 0);
} else if (preference == mKeepScreenOn) {
Settings.System.putInt(getContentResolver(), Settings.System.STAY_ON_WHILE_PLUGGED_IN,
- mKeepScreenOn.isChecked() ? 1 : 0);
+ mKeepScreenOn.isChecked() ?
+ (BatteryManager.BATTERY_PLUGGED_AC | BatteryManager.BATTERY_PLUGGED_USB) : 0);
+ } else if (preference == mAllowMockLocation) {
+ Settings.Secure.putInt(getContentResolver(), Settings.Secure.ALLOW_MOCK_LOCATION,
+ mAllowMockLocation.isChecked() ? 1 : 0);
}
return false;
diff --git a/src/com/android/settings/DeviceInfoSettings.java b/src/com/android/settings/DeviceInfoSettings.java
index 58fc91e..5d72afc 100644
--- a/src/com/android/settings/DeviceInfoSettings.java
+++ b/src/com/android/settings/DeviceInfoSettings.java
@@ -46,6 +46,7 @@ public class DeviceInfoSettings extends PreferenceActivity {
private static final String KEY_TERMS = "terms";
private static final String KEY_LICENSE = "license";
private static final String KEY_COPYRIGHT = "copyright";
+ private static final String KEY_SYSTEM_UPDATE_SETTINGS = "system_update_settings";
@Override
protected void onCreate(Bundle icicle) {
@@ -56,7 +57,7 @@ public class DeviceInfoSettings extends PreferenceActivity {
setSummary("firmware_version", "ro.build.version.release");
setSummary("baseband_version", "gsm.version.baseband");
setSummary("device_model", "ro.product.model");
- setSummary("build_number", "ro.build.description");
+ setSummary("build_number", "ro.build.version.incremental");
findPreference("kernel_version").setSummary(getFormattedKernelVersion());
/*
@@ -74,6 +75,8 @@ public class DeviceInfoSettings extends PreferenceActivity {
Utils.UPDATE_PREFERENCE_FLAG_SET_TITLE_TO_MATCHING_ACTIVITY);
Utils.updatePreferenceToSpecificActivityOrRemove(this, parentPreference, KEY_TEAM,
Utils.UPDATE_PREFERENCE_FLAG_SET_TITLE_TO_MATCHING_ACTIVITY);
+ Utils.updatePreferenceToSpecificActivityOrRemove(this, parentPreference, KEY_SYSTEM_UPDATE_SETTINGS,
+ Utils.UPDATE_PREFERENCE_FLAG_SET_TITLE_TO_MATCHING_ACTIVITY);
}
private void setSummary(String preference, String property) {
diff --git a/src/com/android/settings/InputMethodsSettings.java b/src/com/android/settings/InputMethodsSettings.java
new file mode 100644
index 0000000..d38779d
--- /dev/null
+++ b/src/com/android/settings/InputMethodsSettings.java
@@ -0,0 +1,191 @@
+/*
+ * 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.
+ */
+
+package com.android.settings;
+
+import java.util.HashSet;
+import java.util.List;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+import android.os.RemoteException;
+import android.os.SystemProperties;
+import android.preference.Preference;
+import android.preference.PreferenceActivity;
+import android.preference.PreferenceScreen;
+import android.preference.CheckBoxPreference;
+import android.provider.Settings;
+import android.text.TextUtils;
+import android.view.inputmethod.InputMethodInfo;
+import android.view.inputmethod.InputMethodManager;
+
+/*
+ * Displays preferences for input methods.
+ */
+public class InputMethodsSettings extends PreferenceActivity {
+ private List<InputMethodInfo> mInputMethodProperties;
+
+ final TextUtils.SimpleStringSplitter mStringColonSplitter
+ = new TextUtils.SimpleStringSplitter(':');
+
+ private String mLastInputMethodId;
+ private String mLastTickedInputMethodId;
+
+ static public String getInputMethodIdFromKey(String key) {
+ return key;
+ }
+
+ @Override
+ protected void onCreate(Bundle icicle) {
+ super.onCreate(icicle);
+
+ addPreferencesFromResource(R.xml.input_methods_prefs);
+
+ InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
+
+ mInputMethodProperties = imm.getInputMethodList();
+
+ mLastInputMethodId = Settings.Secure.getString(getContentResolver(),
+ Settings.Secure.DEFAULT_INPUT_METHOD);
+
+ int N = (mInputMethodProperties == null ? 0 : mInputMethodProperties
+ .size());
+ for (int i = 0; i < N; ++i) {
+ InputMethodInfo property = mInputMethodProperties.get(i);
+ String prefKey = property.getId();
+
+ CharSequence label = property.loadLabel(getPackageManager());
+
+ // Add a check box.
+ CheckBoxPreference chkbxPref = new CheckBoxPreference(this);
+ chkbxPref.setKey(prefKey);
+ chkbxPref.setTitle(label);
+ getPreferenceScreen().addPreference(chkbxPref);
+
+ // If setting activity is available, add a setting screen entry.
+ if (null != property.getSettingsActivity()) {
+ PreferenceScreen prefScreen = new PreferenceScreen(this, null);
+ prefScreen.setKey(property.getSettingsActivity());
+ // XXX TODO: handle localization properly.
+ prefScreen.setTitle(label + " settings");
+ getPreferenceScreen().addPreference(prefScreen);
+ }
+ }
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+
+ final HashSet<String> enabled = new HashSet<String>();
+ String enabledStr = Settings.Secure.getString(getContentResolver(),
+ Settings.Secure.ENABLED_INPUT_METHODS);
+ if (enabledStr != null) {
+ final TextUtils.SimpleStringSplitter splitter = mStringColonSplitter;
+ splitter.setString(enabledStr);
+ while (splitter.hasNext()) {
+ enabled.add(splitter.next());
+ }
+ }
+
+ // Update the statuses of the Check Boxes.
+ int N = mInputMethodProperties.size();
+ for (int i = 0; i < N; ++i) {
+ final String id = mInputMethodProperties.get(i).getId();
+ CheckBoxPreference pref = (CheckBoxPreference) findPreference(mInputMethodProperties
+ .get(i).getId());
+ pref.setChecked(enabled.contains(id));
+ }
+ mLastTickedInputMethodId = null;
+ }
+
+ @Override
+ protected void onPause() {
+ super.onPause();
+
+ StringBuilder builder = new StringBuilder(256);
+
+ boolean haveLastInputMethod = false;
+
+ int firstEnabled = -1;
+ int N = mInputMethodProperties.size();
+ for (int i = 0; i < N; ++i) {
+ final String id = mInputMethodProperties.get(i).getId();
+ CheckBoxPreference pref = (CheckBoxPreference) findPreference(id);
+ boolean hasIt = id.equals(mLastInputMethodId);
+ if (pref.isChecked()) {
+ if (builder.length() > 0) builder.append(':');
+ builder.append(id);
+ if (firstEnabled < 0) {
+ firstEnabled = i;
+ }
+ if (hasIt) haveLastInputMethod = true;
+ } else if (hasIt) {
+ mLastInputMethodId = mLastTickedInputMethodId;
+ }
+ }
+
+ // If the last input method is unset, set it as the first enabled one.
+ if (null == mLastInputMethodId || "".equals(mLastInputMethodId)) {
+ if (firstEnabled >= 0) {
+ mLastInputMethodId = mInputMethodProperties.get(firstEnabled).getId();
+ } else {
+ mLastInputMethodId = null;
+ }
+ }
+
+ Settings.Secure.putString(getContentResolver(),
+ Settings.Secure.ENABLED_INPUT_METHODS, builder.toString());
+ Settings.Secure.putString(getContentResolver(),
+ Settings.Secure.DEFAULT_INPUT_METHOD, mLastInputMethodId);
+ }
+
+ @Override
+ public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen,
+ Preference preference) {
+
+ // Those monkeys kept committing suicide, so we add this property
+ // to disable this functionality
+ if (!TextUtils.isEmpty(SystemProperties.get("ro.monkey"))) {
+ return false;
+ }
+
+ if (preference instanceof CheckBoxPreference) {
+ CheckBoxPreference chkPref = (CheckBoxPreference) preference;
+ String id = getInputMethodIdFromKey(chkPref.getKey());
+ if (chkPref.isChecked()) {
+ mLastTickedInputMethodId = id;
+ } else if (id.equals(mLastTickedInputMethodId)) {
+ mLastTickedInputMethodId = null;
+ }
+ } else if (preference instanceof PreferenceScreen) {
+ if (preference.getIntent() == null) {
+ PreferenceScreen pref = (PreferenceScreen) preference;
+ String activityName = pref.getKey();
+ String packageName = activityName.substring(0, activityName
+ .lastIndexOf("."));
+ if (activityName.length() > 0) {
+ Intent i = new Intent(Intent.ACTION_MAIN);
+ i.setClassName(packageName, activityName);
+ startActivity(i);
+ }
+ }
+ }
+
+ return false;
+ }
+}
diff --git a/src/com/android/settings/InstalledAppDetails.java b/src/com/android/settings/InstalledAppDetails.java
index 712f94d..d3e7344 100644
--- a/src/com/android/settings/InstalledAppDetails.java
+++ b/src/com/android/settings/InstalledAppDetails.java
@@ -29,7 +29,6 @@ import android.content.IntentFilter;
import android.content.pm.ApplicationInfo;
import android.content.pm.IPackageDataObserver;
import android.content.pm.IPackageStatsObserver;
-import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageStats;
import android.content.pm.PackageManager.NameNotFoundException;
@@ -37,6 +36,7 @@ import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
+import android.text.format.Formatter;
import android.util.Config;
import android.util.Log;
import java.util.ArrayList;
@@ -50,33 +50,62 @@ import android.widget.LinearLayout;
import android.widget.TextView;
/**
- * Activity to display application information from Settings
- *
+ * Activity to display application information from Settings. This activity presents
+ * extended information associated with a package like code, data, total size, permissions
+ * used by the application and also the set of default launchable activities.
+ * For system applications, an option to clear user data is displayed only if data size is > 0.
+ * System applications that do not want clear user data do not have this option.
+ * For non-system applications, there is no option to clear data. Instead there is an option to
+ * uninstall the application.
*/
public class InstalledAppDetails extends Activity implements View.OnClickListener, DialogInterface.OnClickListener {
private static final String TAG="InstalledAppDetails";
private static final int _UNKNOWN_APP=R.string.unknown;
- //wait times used for the async package manager api
private ApplicationInfo mAppInfo;
- private Button mUninstallButton;
+ private Button mAppButton;
private Button mActivitiesButton;
- private boolean mSysPackage;
- private boolean localLOGV=Config.LOGV || true;
+ private boolean mCanUninstall;
+ private boolean localLOGV=Config.LOGV || false;
private TextView mTotalSize;
private TextView mAppSize;
private TextView mDataSize;
+ private PkgSizeObserver mSizeObserver;
+ private ClearUserDataObserver mClearDataObserver;
+ // Views related to cache info
+ private View mCachePanel;
+ private TextView mCacheSize;
+ private Button mClearCacheButton;
+ private ClearCacheObserver mClearCacheObserver;
+
PackageStats mSizeInfo;
private Button mManageSpaceButton;
private PackageManager mPm;
- private String mBStr, mKbStr, mMbStr;
//internal constants used in Handler
- private static final int CLEAR_USER_DATA = 1;
private static final int OP_SUCCESSFUL = 1;
private static final int OP_FAILED = 2;
+ private static final int CLEAR_USER_DATA = 1;
private static final int GET_PKG_SIZE = 2;
+ private static final int CLEAR_CACHE = 3;
private static final String ATTR_PACKAGE_STATS="PackageStats";
+ // invalid size value used initially and also when size retrieval through PackageManager
+ // fails for whatever reason
+ private static final int SIZE_INVALID = -1;
+
+ // Resource strings
+ private CharSequence mInvalidSizeStr;
+ private CharSequence mComputingStr;
+ private CharSequence mAppButtonText;
+
+ // Possible btn states
+ private enum AppButtonStates {
+ CLEAR_DATA,
+ UNINSTALL,
+ NONE
+ }
+ private AppButtonStates mAppButtonState;
+
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
@@ -86,17 +115,22 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
case GET_PKG_SIZE:
refreshSizeInfo(msg);
break;
+ case CLEAR_CACHE:
+ // Refresh size info
+ mPm.getPackageSizeInfo(mAppInfo.packageName, mSizeObserver);
+ break;
default:
break;
}
}
};
- private boolean isSystemPackage() {
- if ((mAppInfo.flags&ApplicationInfo.FLAG_SYSTEM) != 0) {
- return true;
+ private boolean isUninstallable() {
+ if (((mAppInfo.flags&ApplicationInfo.FLAG_SYSTEM) != 0) &&
+ ((mAppInfo.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) == 0)) {
+ return false;
}
- return false;
+ return true;
}
class ClearUserDataObserver extends IPackageDataObserver.Stub {
@@ -119,28 +153,46 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
}
}
+ class ClearCacheObserver extends IPackageDataObserver.Stub {
+ public void onRemoveCompleted(final String packageName, final boolean succeeded) {
+ final Message msg = mHandler.obtainMessage(CLEAR_CACHE);
+ msg.arg1 = succeeded?OP_SUCCESSFUL:OP_FAILED;
+ mHandler.sendMessage(msg);
+ }
+ }
+
private String getSizeStr(long size) {
- String retStr = "";
- if(size < 1024) {
- return String.valueOf(size)+mBStr;
+ if (size == SIZE_INVALID) {
+ return mInvalidSizeStr.toString();
}
- long kb, mb, rem;
- kb = size >> 10;
- rem = size - (kb << 10);
- if(kb < 1024) {
- if(rem > 512) {
- kb++;
+ return Formatter.formatFileSize(this, size);
+ }
+
+ private void setAppBtnState() {
+ boolean visible = false;
+ if(mCanUninstall) {
+ //app can clear user data
+ if((mAppInfo.flags & ApplicationInfo.FLAG_ALLOW_CLEAR_USER_DATA)
+ == ApplicationInfo.FLAG_ALLOW_CLEAR_USER_DATA) {
+ mAppButtonText = getText(R.string.clear_user_data_text);
+ mAppButtonState = AppButtonStates.CLEAR_DATA;
+ visible = true;
+ } else {
+ //hide button if diableClearUserData is set
+ visible = false;
+ mAppButtonState = AppButtonStates.NONE;
}
- retStr += String.valueOf(kb)+mKbStr;
- return retStr;
+ } else {
+ visible = true;
+ mAppButtonState = AppButtonStates.UNINSTALL;
+ mAppButtonText = getText(R.string.uninstall_text);
+ }
+ if(visible) {
+ mAppButton.setText(mAppButtonText);
+ mAppButton.setVisibility(View.VISIBLE);
+ } else {
+ mAppButton.setVisibility(View.GONE);
}
- mb = kb >> 10;
- if(kb >= 512) {
- //round off
- mb++;
- }
- retStr += String.valueOf(mb)+ mMbStr;
- return retStr;
}
/** Called when the activity is first created. */
@@ -152,45 +204,25 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
//get application's name from intent
Intent intent = getIntent();
final String packageName = intent.getStringExtra(ManageApplications.APP_PKG_NAME);
- mSizeInfo = intent.getParcelableExtra(ManageApplications.APP_PKG_SIZE);
- long total = -1;
- long code = -1;
- long data = -1;
- if(mSizeInfo != null) {
- total = mSizeInfo.cacheSize+mSizeInfo.codeSize+mSizeInfo.dataSize;
- code = mSizeInfo.codeSize;
- data = mSizeInfo.dataSize+mSizeInfo.cacheSize;
- }
- String unknownStr = getString(_UNKNOWN_APP);
- mBStr = getString(R.string.b_text);
- mKbStr = getString(R.string.kb_text);
- mMbStr = getString(R.string.mb_text);
- String totalSizeStr = unknownStr;
- if(total != -1) {
- totalSizeStr = getSizeStr(total);
- }
- String appSizeStr = unknownStr;
- if(code != -1) {
- appSizeStr = getSizeStr(code);
- }
- String dataSizeStr = unknownStr;
- if(data != -1) {
- dataSizeStr = getSizeStr(data);
- }
- if(localLOGV) Log.i(TAG, "packageName:"+packageName+", total="+total+
- "code="+code+", data="+data);
+ mComputingStr = getText(R.string.computing_size);
+ // Try retrieving package stats again
+ CharSequence totalSizeStr, appSizeStr, dataSizeStr;
+ totalSizeStr = appSizeStr = dataSizeStr = mComputingStr;
+ if(localLOGV) Log.i(TAG, "Have to compute package sizes");
+ mSizeObserver = new PkgSizeObserver();
+ mPm.getPackageSizeInfo(packageName, mSizeObserver);
+
try {
- mAppInfo = mPm.getApplicationInfo(packageName, 0);
+ mAppInfo = mPm.getApplicationInfo(packageName,
+ PackageManager.GET_UNINSTALLED_PACKAGES);
} catch (NameNotFoundException e) {
- Throwable th = e.fillInStackTrace();
Log.e(TAG, "Exception when retrieving package:"+packageName, e);
displayErrorDialog(R.string.app_not_found_dlg_text, true, true);
}
- setContentView(R.layout.installed_app_details);
- ((ImageView)findViewById(R.id.app_icon)).setImageDrawable(mPm.
- getApplicationIcon(mAppInfo));
+ setContentView(R.layout.installed_app_details);
+ ((ImageView)findViewById(R.id.app_icon)).setImageDrawable(mAppInfo.loadIcon(mPm));
//set application name TODO version
- CharSequence appName = mPm.getApplicationLabel(mAppInfo);
+ CharSequence appName = mAppInfo.loadLabel(mPm);
if(appName == null) {
appName = getString(_UNKNOWN_APP);
}
@@ -208,33 +240,22 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
mDataSize = (TextView)findViewById(R.id.data_size_text);
mDataSize.setText(dataSizeStr);
- mUninstallButton = ((Button)findViewById(R.id.uninstall_button));
+ mAppButton = ((Button)findViewById(R.id.uninstall_button));
//determine if app is a system app
- mSysPackage = isSystemPackage();
- if(localLOGV) Log.i(TAG, "Is systemPackage "+mSysPackage);
- int btnText;
- boolean btnClickable = true;
-
- if(mSysPackage) {
- //app can clear user data
- if((mAppInfo.flags & ApplicationInfo.FLAG_ALLOW_CLEAR_USER_DATA)
- == ApplicationInfo.FLAG_ALLOW_CLEAR_USER_DATA) {
- mUninstallButton.setText(R.string.clear_user_data_text);
- //disable button if data is 0
- if(data == 0) {
- mUninstallButton.setEnabled(false);
- } else {
- //enable button
- mUninstallButton.setOnClickListener(this);
- }
- } else {
- //hide button if diableClearUserData is set
- mUninstallButton.setVisibility(View.GONE);
- }
- } else {
- mUninstallButton.setText(R.string.uninstall_text);
- mUninstallButton.setOnClickListener(this);
+ mCanUninstall = !isUninstallable();
+ if(localLOGV) Log.i(TAG, "Is systemPackage "+mCanUninstall);
+ setAppBtnState();
+ mManageSpaceButton = (Button)findViewById(R.id.manage_space_button);
+ if(mAppInfo.manageSpaceActivityName != null) {
+ mManageSpaceButton.setVisibility(View.VISIBLE);
+ mManageSpaceButton.setOnClickListener(this);
}
+
+ // Cache section
+ mCachePanel = findViewById(R.id.cache_panel);
+ mCacheSize = (TextView) findViewById(R.id.cache_size_text);
+ mClearCacheButton = (Button) findViewById(R.id.clear_cache_button);
+
//clear activities
mActivitiesButton = (Button)findViewById(R.id.clear_activities_button);
List<ComponentName> prefActList = new ArrayList<ComponentName>();
@@ -251,23 +272,19 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
autoLaunchView.setText(R.string.auto_launch_enable_text);
mActivitiesButton.setOnClickListener(this);
}
- mManageSpaceButton = (Button)findViewById(R.id.manage_space_button);
- if(mAppInfo.manageSpaceActivityName != null) {
- mManageSpaceButton.setVisibility(View.VISIBLE);
- mManageSpaceButton.setOnClickListener(this);
+
+ // security permissions section
+ LinearLayout permsView = (LinearLayout) findViewById(R.id.permissions_section);
+ AppSecurityPermissions asp = new AppSecurityPermissions(this, packageName);
+ if(asp.getPermissionCount() > 0) {
+ permsView.setVisibility(View.VISIBLE);
+ // Make the security sections header visible
+ LinearLayout securityList = (LinearLayout) permsView.findViewById(
+ R.id.security_settings_list);
+ securityList.addView(asp.getPermissionsView());
+ } else {
+ permsView.setVisibility(View.GONE);
}
- //security permissions section
- AppSecurityPermissions asp = new AppSecurityPermissions(this);
- PackageInfo pkgInfo;
- try {
- pkgInfo = mPm.getPackageInfo(packageName, PackageManager.GET_PERMISSIONS);
- } catch (NameNotFoundException e) {
- Log.w(TAG, "Couldnt retrieve permissions for package:"+packageName);
- return;
- }
- asp.setSecurityPermissionsView(pkgInfo);
- LinearLayout securityList = (LinearLayout) findViewById(R.id.security_settings_list);
- securityList.addView(asp.getPermissionsView());
}
private void displayErrorDialog(int msgId, final boolean finish, final boolean changed) {
@@ -292,7 +309,7 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
Intent intent = new Intent();
intent.putExtra(ManageApplications.APP_CHG, appChanged);
setResult(ManageApplications.RESULT_OK, intent);
- mUninstallButton.setEnabled(false);
+ mAppButton.setEnabled(false);
if(finish) {
finish();
}
@@ -305,29 +322,53 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
*/
private void refreshSizeInfo(Message msg) {
boolean changed = false;
- Intent intent = new Intent();
PackageStats newPs = msg.getData().getParcelable(ATTR_PACKAGE_STATS);
long newTot = newPs.cacheSize+newPs.codeSize+newPs.dataSize;
- long oldTot = mSizeInfo.cacheSize+mSizeInfo.codeSize+mSizeInfo.dataSize;
- if(newTot != oldTot) {
+ if(mSizeInfo == null) {
+ mSizeInfo = newPs;
mTotalSize.setText(getSizeStr(newTot));
- changed = true;
- }
- if(newPs.codeSize != mSizeInfo.codeSize) {
mAppSize.setText(getSizeStr(newPs.codeSize));
- changed = true;
- }
- if((newPs.dataSize != mSizeInfo.dataSize) || (newPs.cacheSize != mSizeInfo.cacheSize)) {
mDataSize.setText(getSizeStr(newPs.dataSize+newPs.cacheSize));
- changed = true;
+ } else {
+ long oldTot = mSizeInfo.cacheSize+mSizeInfo.codeSize+mSizeInfo.dataSize;
+ if(newTot != oldTot) {
+ mTotalSize.setText(getSizeStr(newTot));
+ changed = true;
+ }
+ if(newPs.codeSize != mSizeInfo.codeSize) {
+ mAppSize.setText(getSizeStr(newPs.codeSize));
+ changed = true;
+ }
+ if((newPs.dataSize != mSizeInfo.dataSize) || (newPs.cacheSize != mSizeInfo.cacheSize)) {
+ mDataSize.setText(getSizeStr(newPs.dataSize+newPs.cacheSize));
+ }
+ if(changed) {
+ mSizeInfo = newPs;
+ }
}
- if(changed) {
- mUninstallButton.setText(R.string.clear_user_data_text);
- mSizeInfo = newPs;
- intent.putExtra(ManageApplications.APP_PKG_SIZE, mSizeInfo);
+
+ long data = mSizeInfo.dataSize+mSizeInfo.cacheSize;
+ // Disable button if data is 0
+ if(mAppButtonState != AppButtonStates.NONE){
+ mAppButton.setText(mAppButtonText);
+ if((mAppButtonState == AppButtonStates.CLEAR_DATA) && (data == 0)) {
+ mAppButton.setEnabled(false);
+ } else {
+ mAppButton.setEnabled(true);
+ mAppButton.setOnClickListener(this);
+ }
+ }
+ refreshCacheInfo(newPs.cacheSize);
+ }
+
+ private void refreshCacheInfo(long cacheSize) {
+ // Set cache info
+ mCacheSize.setText(getSizeStr(cacheSize));
+ if (cacheSize <= 0) {
+ mClearCacheButton.setEnabled(false);
+ } else {
+ mClearCacheButton.setOnClickListener(this);
}
- intent.putExtra(ManageApplications.APP_CHG, changed);
- setResult(ManageApplications.RESULT_OK, intent);
}
/*
@@ -339,11 +380,10 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
String packageName = mAppInfo.packageName;
if(result == OP_SUCCESSFUL) {
Log.i(TAG, "Cleared user data for system package:"+packageName);
- PkgSizeObserver observer = new PkgSizeObserver();
- mPm.getPackageSizeInfo(packageName, observer);
+ mPm.getPackageSizeInfo(packageName, mSizeObserver);
} else {
- mUninstallButton.setText(R.string.clear_user_data_text);
- mUninstallButton.setEnabled(true);
+ mAppButton.setText(R.string.clear_user_data_text);
+ mAppButton.setEnabled(true);
}
}
@@ -352,20 +392,21 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
* button for a system package
*/
private void initiateClearUserDataForSysPkg() {
- mUninstallButton.setEnabled(false);
+ mAppButton.setEnabled(false);
//invoke uninstall or clear user data based on sysPackage
- boolean recomputeSizes = false;
String packageName = mAppInfo.packageName;
Log.i(TAG, "Clearing user data for system package");
- ClearUserDataObserver observer = new ClearUserDataObserver();
+ if(mClearDataObserver == null) {
+ mClearDataObserver = new ClearUserDataObserver();
+ }
ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
- boolean res = am.clearApplicationUserData(packageName, observer);
+ boolean res = am.clearApplicationUserData(packageName, mClearDataObserver);
if(!res) {
//doesnt initiate clear. some error. should not happen but just log error for now
Log.i(TAG, "Couldnt clear application user data for package:"+packageName);
displayErrorDialog(R.string.clear_data_failed, false, false);
} else {
- mUninstallButton.setText(R.string.recompute_size);
+ mAppButton.setText(R.string.recompute_size);
}
}
@@ -375,8 +416,8 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
*/
public void onClick(View v) {
String packageName = mAppInfo.packageName;
- if(v == mUninstallButton) {
- if(mSysPackage) {
+ if(v == mAppButton) {
+ if(mCanUninstall) {
//display confirmation dialog
new AlertDialog.Builder(this)
.setTitle(getString(R.string.clear_data_dlg_title))
@@ -399,11 +440,17 @@ public class InstalledAppDetails extends Activity implements View.OnClickListene
Intent intent = new Intent(Intent.ACTION_DEFAULT);
intent.setClassName(mAppInfo.packageName, mAppInfo.manageSpaceActivityName);
startActivityForResult(intent, -1);
+ } else if (v == mClearCacheButton) {
+ // Lazy initialization of observer
+ if (mClearCacheObserver == null) {
+ mClearCacheObserver = new ClearCacheObserver();
+ }
+ mPm.deleteApplicationCacheFiles(packageName, mClearCacheObserver);
}
}
public void onClick(DialogInterface dialog, int which) {
- if(which == AlertDialog.BUTTON1) {
+ if(which == AlertDialog.BUTTON_POSITIVE) {
//invoke uninstall or clear user data based on sysPackage
initiateClearUserDataForSysPkg();
} else {
diff --git a/src/com/android/settings/LocalePicker.java b/src/com/android/settings/LocalePicker.java
index 46d9b52..9ee8260 100644
--- a/src/com/android/settings/LocalePicker.java
+++ b/src/com/android/settings/LocalePicker.java
@@ -63,30 +63,55 @@ public class LocalePicker extends ListActivity {
setContentView(getContentView());
String[] locales = getAssets().getLocales();
- final int N = locales.length;
- mLocales = new Loc[N];
- for (int i = 0; i < N; i++) {
- Locale locale = null;
+ 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 == 0) {
- locale = new Locale("en", "US");
- } else if (len == 2) {
- locale = new Locale(s);
+ if (len == 2) {
+ Locale l = new Locale(s);
+ preprocess[finalSize++] = new Loc(l.getDisplayLanguage(), l);
} else if (len == 5) {
- locale = new Locale(s.substring(0, 2), s.substring(3, 5));
- }
- String displayName = "";
- if (locale != null) {
- displayName = locale.getDisplayName();
+ String language = s.substring(0, 2);
+ String country = s.substring(3, 5);
+ Locale l = new Locale(language, country);
+
+ if (finalSize == 0) {
+ preprocess[finalSize++] = new Loc(l.getDisplayLanguage(), l);
+ } else {
+ // check previous entry:
+ // same lang and no country -> overwrite it with a lang-only name
+ // 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)) {
+ String prevCountry = preprocess[finalSize-1].locale.getCountry();
+ if (prevCountry.length() == 0) {
+ preprocess[finalSize-1].locale = l;
+ preprocess[finalSize-1].label = l.getDisplayLanguage();
+ } else {
+ preprocess[finalSize-1].label = preprocess[finalSize-1].locale.getDisplayName();
+ preprocess[finalSize++] = new Loc(l.getDisplayName(), l);
+ }
+ } else {
+ String displayName;
+ if (s.equals("zz_ZZ")) {
+ displayName = "Pseudo...";
+ } else {
+ displayName = l.getDisplayLanguage();
+ }
+ preprocess[finalSize++] = new Loc(displayName, l);
+ }
+ }
}
- if ("zz_ZZ".equals(s)) {
- displayName = "Pseudo...";
- }
-
- mLocales[i] = new Loc(displayName, locale);
}
-
+ mLocales = new Loc[finalSize];
+ for (int i = 0; i < finalSize ; i++) {
+ mLocales[i] = preprocess[i];
+ }
int layoutId = R.layout.locale_picker_item;
int fieldId = R.id.locale;
ArrayAdapter<Loc> adapter = new ArrayAdapter<Loc>(this, layoutId, fieldId, mLocales);
@@ -107,25 +132,11 @@ public class LocalePicker extends ListActivity {
Loc loc = mLocales[position];
config.locale = loc.locale;
- final String language = loc.locale.getLanguage();
- final String region = loc.locale.getCountry();
+
+ // indicate this isn't some passing default - the user wants this remembered
+ config.userSetLocale = true;
am.updateConfiguration(config);
-
- // Update the System properties
- SystemProperties.set("user.language", language);
- SystemProperties.set("user.region", region);
- // Write to file for persistence across reboots
- try {
- BufferedWriter bw = new BufferedWriter(new java.io.FileWriter(
- System.getenv("ANDROID_DATA") + "/locale"));
- bw.write(language + "_" + region);
- bw.close();
- } catch (java.io.IOException ioe) {
- Log.e(TAG,
- "Unable to persist locale. Error writing to locale file."
- + ioe);
- }
} catch (RemoteException e) {
// Intentionally left blank
}
diff --git a/src/com/android/settings/ManageApplications.java b/src/com/android/settings/ManageApplications.java
index 8389502..f1550f9 100644
--- a/src/com/android/settings/ManageApplications.java
+++ b/src/com/android/settings/ManageApplications.java
@@ -18,8 +18,12 @@ package com.android.settings;
import com.android.settings.R;
import android.app.Activity;
+import android.app.ActivityManager;
+import android.app.ListActivity;
+import android.app.ProgressDialog;
import android.content.BroadcastReceiver;
import android.content.Context;
+import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.ApplicationInfo;
@@ -27,320 +31,954 @@ import android.content.pm.IPackageStatsObserver;
import android.content.pm.PackageManager;
import android.content.pm.PackageStats;
import android.content.pm.PackageManager.NameNotFoundException;
+import android.content.res.Resources;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
+import android.text.format.Formatter;
import android.util.Config;
import android.util.Log;
+import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
+import android.view.ViewGroup;
+import android.view.Window;
import android.widget.AdapterView;
+import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListView;
-import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.AdapterView.OnItemClickListener;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import java.util.TreeMap;
/**
* Activity to pick an application that will be used to display installation information and
- * options to upgrade/uninstall/delete user data for system applications.
+ * options to uninstall/delete user data for system applications. This activity
+ * can be launched through Settings or via the ACTION_MANAGE_PACKAGE_STORAGE
+ * intent.
* Initially a compute in progress message is displayed while the application retrieves
- * the size information of installed packages which is done asynchronously through a
- * handler. Once the computation is done package resource information is retrieved
- * and then the information is displayed on the screen. All
- * messages are passed through a Handler object.
- * Known issue: There could be some ordering issues when installing/uninstalling
- * applications when the application list is being scanned.
+ * the list of application information from the PackageManager. The size information
+ * for each package is refreshed to the screen. The resource(app description and
+ * icon) information for each package is not available yet, so some default values for size
+ * icon and descriptions are used initially. Later the resource information for each
+ * application is retrieved and dynamically updated on the screen.
+ * A Broadcast receiver registers for package additions or deletions when the activity is
+ * in focus. If the user installs or deletes packages when the activity has focus, the receiver
+ * gets notified and proceeds to add/delete these packages from the list on the screen.
+ * This is an unlikely scenario but could happen. The entire list gets created every time
+ * the activity's onStart gets invoked. This is to avoid having the receiver for the entire
+ * life cycle of the application.
+ * The applications can be sorted either alphabetically or
+ * based on size(descending). If this activity gets launched under low memory
+ * situations(A low memory notification dispatches intent
+ * ACTION_MANAGE_PACKAGE_STORAGE) the list is sorted per size.
+ * If the user selects an application, extended info(like size, uninstall/clear data options,
+ * permissions info etc.,) is displayed via the InstalledAppDetails activity.
+ * This activity passes the package name and size information to the
+ * InstalledAppDetailsActivity to avoid recomputation of the package size information.
*/
-public class ManageApplications extends Activity implements SimpleAdapter.ViewBinder, OnItemClickListener {
+public class ManageApplications extends ListActivity implements
+ OnItemClickListener, DialogInterface.OnCancelListener {
+ // TAG for this activity
private static final String TAG = "ManageApplications";
- //Application prefix information
- public static final String APP_PKG_PREFIX="com.android.settings.";
- public static final String APP_PKG_NAME=APP_PKG_PREFIX+"ApplicationPkgName";
- public static final String APP_PKG_SIZE= APP_PKG_PREFIX+"size";
- public static final String APP_CHG=APP_PKG_PREFIX+"changed";
- //constant value that can be used to check return code from sub activity.
- private static final int INSTALLED_APP_DETAILS = 1;
- //application attributes passed to sub activity that displays more app info
- private static final String KEY_APP_NAME = "ApplicationName";
- private static final String KEY_APP_ICON = "ApplicationIcon";
- private static final String KEY_APP_DESC = "ApplicationDescription";
- private static final String KEY_APP_SIZE= "ApplicationSize";
- //sort order that can be changed through the menu
- public static final int SORT_ORDER_ALPHA = 0;
- public static final int SORT_ORDER_SIZE = 1;
- //key and resource values used in constructing map for SimpleAdapter
- private static final String sKeys[] = new String[] { KEY_APP_NAME, KEY_APP_ICON,
- KEY_APP_DESC, KEY_APP_SIZE};
- private static final int sResourceIds[] = new int[] { R.id.app_name, R.id.app_icon,
- R.id.app_description, R.id.app_size};
- //List of ApplicationInfo objects for various applications
- private List<ApplicationInfo> mAppList;
- //SimpleAdapter used for managing items in the list
- private SimpleAdapter mAppAdapter;
- //map used to store size information which is used for displaying size information
- //in this activity as well as the subactivity. this is to avoid invoking package manager
- //api to retrieve size information
- private HashMap<String, PackageStats> mSizeMap;
- private HashMap<String, Map<String, ?> > mAppAdapterMap;
- //sort order
- private int mSortOrder = SORT_ORDER_ALPHA;
- //log information boolean
+ // log information boolean
private boolean localLOGV = Config.LOGV || false;
- private ApplicationInfo mCurrentPkg;
- private int mCurrentPkgIdx = 0;
- private static final int COMPUTE_PKG_SIZE_START = 1;
- private static final int COMPUTE_PKG_SIZE_DONE = 2;
- private static final int REMOVE_PKG=3;
- private static final int REORDER_LIST=4;
- private static final int ADD_PKG=5;
- private static final String ATTR_APP_IDX="ApplicationIndex";
- private static final String ATTR_CHAINED="Chained";
+
+ // attributes used as keys when passing values to InstalledAppDetails activity
+ public static final String APP_PKG_PREFIX = "com.android.settings.";
+ public static final String APP_PKG_NAME = APP_PKG_PREFIX+"ApplicationPkgName";
+ public static final String APP_PKG_SIZE = APP_PKG_PREFIX+"size";
+ public static final String APP_CHG = APP_PKG_PREFIX+"changed";
+
+ // attribute name used in receiver for tagging names of added/deleted packages
private static final String ATTR_PKG_NAME="PackageName";
+ private static final String ATTR_APP_PKG_STATS="ApplicationPackageStats";
+
+ // constant value that can be used to check return code from sub activity.
+ private static final int INSTALLED_APP_DETAILS = 1;
+
+ // sort order that can be changed through the menu can be sorted alphabetically
+ // or size(descending)
+ private static final int MENU_OPTIONS_BASE = 0;
+ public static final int SORT_ORDER_ALPHA = MENU_OPTIONS_BASE + 0;
+ public static final int SORT_ORDER_SIZE = MENU_OPTIONS_BASE + 1;
+ // Filter options used for displayed list of applications
+ public static final int FILTER_APPS_ALL = MENU_OPTIONS_BASE + 2;
+ public static final int FILTER_APPS_THIRD_PARTY = MENU_OPTIONS_BASE + 3;
+ public static final int FILTER_APPS_RUNNING = MENU_OPTIONS_BASE + 4;
+ // sort order
+ private int mSortOrder = SORT_ORDER_ALPHA;
+ // Filter value
+ int mFilterApps = FILTER_APPS_ALL;
+
+ // Custom Adapter used for managing items in the list
+ private AppInfoAdapter mAppInfoAdapter;
+
+ // messages posted to the handler
+ private static final int HANDLER_MESSAGE_BASE = 0;
+ private static final int COMPUTE_PKG_SIZE_START = HANDLER_MESSAGE_BASE+1;
+ private static final int COMPUTE_PKG_SIZE_DONE = HANDLER_MESSAGE_BASE+2;
+ private static final int REMOVE_PKG = HANDLER_MESSAGE_BASE+3;
+ private static final int REORDER_LIST = HANDLER_MESSAGE_BASE+4;
+ private static final int ADD_PKG_START = HANDLER_MESSAGE_BASE+5;
+ private static final int ADD_PKG_DONE = HANDLER_MESSAGE_BASE+6;
+ private static final int REFRESH_ICONS = HANDLER_MESSAGE_BASE+7;
+
+ // observer object used for computing pkg sizes
private PkgSizeObserver mObserver;
+ // local handle to PackageManager
private PackageManager mPm;
+ // Broadcast Receiver object that receives notifications for added/deleted
+ // packages
private PackageIntentReceiver mReceiver;
+ // atomic variable used to track if computing pkg sizes is in progress. should be volatile?
+
private boolean mDoneIniting = false;
- private String mKbStr;
- private String mMbStr;
- private String mBStr;
+ // default icon thats used when displaying applications initially before resource info is
+ // retrieved
+ private Drawable mDefaultAppIcon;
+
+ // temporary dialog displayed while the application info loads
+ private ProgressDialog mLoadingDlg = null;
+
+ // compute index used to track the application size computations
+ private int mComputeIndex;
+
+ // Size resource used for packages whose size computation failed for some reason
+ private CharSequence mInvalidSizeStr;
+ private CharSequence mComputingSizeStr;
+
+ // map used to store list of added and removed packages. Immutable Boolean
+ // variables indicate if a package has been added or removed. If a package is
+ // added or deleted multiple times a single entry with the latest operation will
+ // be recorded in the map.
+ private Map<String, Boolean> mAddRemoveMap;
+
+ // layout inflater object used to inflate views
+ private LayoutInflater mInflater;
+
+ // invalid size value used initially and also when size retrieval through PackageManager
+ // fails for whatever reason
+ private static final int SIZE_INVALID = -1;
+
+ // debug boolean variable to test delays from PackageManager API's
+ private boolean DEBUG_PKG_DELAY = false;
+
+ // Thread to load resources
+ ResourceLoaderThread mResourceThread;
+
+ String mCurrentPkgName;
+
+ //TODO implement a cache system
+ private Map<String, AppInfo> mAppPropCache;
/*
* Handler class to handle messages for various operations
+ * Most of the operations that effect Application related data
+ * are posted as messages to the handler to avoid synchronization
+ * when accessing these structures.
+ * When the size retrieval gets kicked off for the first time, a COMPUTE_PKG_SIZE_START
+ * message is posted to the handler which invokes the getSizeInfo for the pkg at index 0
+ * When the PackageManager's asynchronous call back through
+ * PkgSizeObserver.onGetStatsCompleted gets invoked, the application resources like
+ * label, description, icon etc., is loaded in the same thread and these values are
+ * set on the observer. The observer then posts a COMPUTE_PKG_SIZE_DONE message
+ * to the handler. This information is updated on the AppInfoAdapter associated with
+ * the list view of this activity and size info retrieval is initiated for the next package as
+ * indicated by mComputeIndex
+ * When a package gets added while the activity has focus, the PkgSizeObserver posts
+ * ADD_PKG_START message to the handler. If the computation is not in progress, the size
+ * is retrieved for the newly added package through the observer object and the newly
+ * installed app info is updated on the screen. If the computation is still in progress
+ * the package is added to an internal structure and action deferred till the computation
+ * is done for all the packages.
+ * When a package gets deleted, REMOVE_PKG is posted to the handler
+ * if computation is not in progress(as indicated by
+ * mDoneIniting), the package is deleted from the displayed list of apps. If computation is
+ * still in progress the package is added to an internal structure and action deferred till
+ * the computation is done for all packages.
+ * When the sizes of all packages is computed, the newly
+ * added or removed packages are processed in order.
+ * If the user changes the order in which these applications are viewed by hitting the
+ * menu key, REORDER_LIST message is posted to the handler. this sorts the list
+ * of items based on the sort order.
*/
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
PackageStats ps;
ApplicationInfo info;
Bundle data;
- String pkgName;
- int idx;
- int size;
- boolean chained = false;
+ String pkgName = null;
+ AppInfo appInfo;
data = msg.getData();
+ if(data != null) {
+ pkgName = data.getString(ATTR_PKG_NAME);
+ }
switch (msg.what) {
case COMPUTE_PKG_SIZE_START:
- mDoneIniting = false;
- //initialize lists
- mAppList = new ArrayList<ApplicationInfo>();
- mSizeMap = new HashMap<String, PackageStats>();
- mAppAdapterMap = new HashMap<String, Map<String, ?> >();
- //update application list from PackageManager
- mAppList = mPm.getInstalledApplications(0);
- if(mAppList.size() == 0) {
- return;
- }
- mCurrentPkgIdx = 0;
- mCurrentPkg = mAppList.get(0);
- if(localLOGV) Log.i(TAG, "Initiating compute sizes for first time");
- //register receiver
- mReceiver = new PackageIntentReceiver();
- mReceiver.registerReceiver();
- pkgName = mCurrentPkg.packageName;
- mObserver = new PkgSizeObserver(0);
- mObserver.invokeGetSizeInfo(pkgName, true);
+ if(localLOGV) Log.i(TAG, "Message COMPUTE_PKG_SIZE_START");
+ setProgressBarIndeterminateVisibility(true);
+ mComputeIndex = 0;
+ initAppList(mFilterApps);
break;
case COMPUTE_PKG_SIZE_DONE:
- ps = mObserver.ps;
- info = mObserver.appInfo;
- chained = data.getBoolean(ATTR_CHAINED);
- if(!mObserver.succeeded) {
- if(chained) {
- removePackageFromAppList(ps.packageName);
- } else {
- //do not go to adding phase
+ if(localLOGV) Log.i(TAG, "Message COMPUTE_PKG_SIZE_DONE");
+ if(pkgName == null) {
+ Log.w(TAG, "Ignoring message");
+ break;
+ }
+ ps = data.getParcelable(ATTR_APP_PKG_STATS);
+ if(ps == null) {
+ Log.i(TAG, "Invalid package stats for package:"+pkgName);
+ } else {
+ int pkgId = mAppInfoAdapter.getIndex(pkgName);
+ if(mComputeIndex != pkgId) {
+ //spurious call from stale observer
+ Log.w(TAG, "Stale call back from PkgSizeObserver");
break;
}
- } else {
- //insert size value
- mSizeMap.put(ps.packageName, ps);
- Map<String, Object> entry = createMapEntry(mPm.getApplicationLabel(info),
- mPm.getApplicationIcon(info),
- info.loadDescription(mPm),
- getSizeStr(ps));
- mAppAdapterMap.put(ps.packageName, entry);
+ mAppInfoAdapter.updateAppSize(pkgName, ps);
}
- if(chained) {
- //here app list is precomputed
- idx = data.getInt(ATTR_APP_IDX);
- //increment only if succeded
- if(mObserver.succeeded) {
- idx++;
+ mComputeIndex++;
+ if (mComputeIndex < mAppInfoAdapter.getCount()) {
+ // initiate compute package size for next pkg in list
+ mObserver.invokeGetSizeInfo(mAppInfoAdapter.getApplicationInfo(
+ mComputeIndex),
+ COMPUTE_PKG_SIZE_DONE);
+ } else {
+ // check for added/removed packages
+ Set<String> keys = mAddRemoveMap.keySet();
+ Iterator<String> iter = keys.iterator();
+ List<String> removeList = new ArrayList<String>();
+ boolean added = false;
+ boolean removed = false;
+ while (iter.hasNext()) {
+ String key = iter.next();
+ if (mAddRemoveMap.get(key) == Boolean.TRUE) {
+ // add
+ try {
+ info = mPm.getApplicationInfo(key, 0);
+ mAppInfoAdapter.addApplicationInfo(info);
+ added = true;
+ } catch (NameNotFoundException e) {
+ Log.w(TAG, "Invalid added package:"+key+" Ignoring entry");
+ }
+ } else {
+ // remove
+ removeList.add(key);
+ removed = true;
+ }
}
- if(idx < mAppList.size()) {
- pkgName = mAppList.get(idx).packageName;
- //increment record index and invoke getSizeInfo for next record
- mObserver.invokeGetSizeInfo(pkgName, true);
+ // remove uninstalled packages from list
+ if (removed) {
+ mAppInfoAdapter.removeFromList(removeList);
+ }
+ // handle newly installed packages
+ if (added) {
+ mObserver.invokeGetSizeInfo(mAppInfoAdapter.getApplicationInfo(
+ mComputeIndex),
+ COMPUTE_PKG_SIZE_DONE);
} else {
- sortAppList();
- createListFromValues();
+ // end computation here
mDoneIniting = true;
- }
- } else {
- //add app info object as well
- mAppList.add(info);
- sortAppList();
- size = mAppList.size();
- int i;
- for(i = 0; i < size; i++) {
- if(mAppList.get(i).packageName.equalsIgnoreCase(mCurrentPkg.packageName)) {
- if(i > mCurrentPkgIdx) {
- mCurrentPkgIdx = i;
- }
- break;
+ mAppInfoAdapter.sortList(mSortOrder);
+ //load resources now
+ if(mResourceThread.isAlive()) {
+ mResourceThread.interrupt();
}
+ mResourceThread.loadAllResources(mAppInfoAdapter.getAppList());
}
- createListFromValues();
}
break;
case REMOVE_PKG:
- if(!mDoneIniting) {
- //insert message again after some delay
- sendMessageToHandler(REMOVE_PKG, data, 10*1000);
+ if(localLOGV) Log.i(TAG, "Message REMOVE_PKG");
+ if(pkgName == null) {
+ Log.w(TAG, "Ignoring message:REMOVE_PKG for null pkgName");
break;
}
- pkgName = data.getString(ATTR_PKG_NAME);
- removePackageFromAppList(pkgName);
- if(mSizeMap.remove(pkgName) == null) {
- Log.i(TAG, "Coudnt remove from size map package:"+pkgName);
- }
- if(mAppAdapterMap.remove(pkgName) == null) {
- Log.i(TAG, "Coudnt remove from app adapter map package:"+pkgName);
- }
- if(mCurrentPkg.packageName.equalsIgnoreCase(pkgName)) {
- if(mCurrentPkgIdx == (mAppList.size()-1)) {
- mCurrentPkgIdx--;
+ if (!mDoneIniting) {
+ Boolean currB = mAddRemoveMap.get(pkgName);
+ if (currB == null || (currB.equals(Boolean.TRUE))) {
+ mAddRemoveMap.put(pkgName, Boolean.FALSE);
}
- mCurrentPkg = mAppList.get(mCurrentPkgIdx);
+ break;
}
- createListFromValues();
+ List<String> pkgList = new ArrayList<String>();
+ pkgList.add(pkgName);
+ mAppInfoAdapter.removeFromList(pkgList);
break;
case REORDER_LIST:
- int sortOrder = msg.arg1;
- if(sortOrder != mSortOrder) {
- mSortOrder = sortOrder;
- if(localLOGV) Log.i(TAG, "Changing sort order to "+mSortOrder);
- sortAppList();
- mCurrentPkgIdx = 0;
- mCurrentPkg = mAppList.get(mCurrentPkgIdx);
- createListFromValues();
+ if(localLOGV) Log.i(TAG, "Message REORDER_LIST");
+ int menuOption = msg.arg1;
+ if((menuOption == SORT_ORDER_ALPHA) ||
+ (menuOption == SORT_ORDER_SIZE)) {
+ // Option to sort list
+ if (menuOption != mSortOrder) {
+ mSortOrder = menuOption;
+ if (localLOGV) Log.i(TAG, "Changing sort order to "+mSortOrder);
+ mAppInfoAdapter.sortList(mSortOrder);
+ }
+ } else if(menuOption != mFilterApps) {
+ // Option to filter list
+ mFilterApps = menuOption;
+ boolean ret = mAppInfoAdapter.resetAppList(mFilterApps,
+ getInstalledApps(mFilterApps));
+ if(!ret) {
+ // Reset cache
+ mAppPropCache = null;
+ mFilterApps = FILTER_APPS_ALL;
+ mHandler.sendEmptyMessage(COMPUTE_PKG_SIZE_START);
+ sendMessageToHandler(REORDER_LIST, menuOption);
+ }
}
break;
- case ADD_PKG:
- pkgName = data.getString(ATTR_PKG_NAME);
- if(!mDoneIniting) {
- //insert message again after some delay
- sendMessageToHandler(ADD_PKG, data, 10*1000);
+ case ADD_PKG_START:
+ if(localLOGV) Log.i(TAG, "Message ADD_PKG_START");
+ if(pkgName == null) {
+ Log.w(TAG, "Ignoring message:ADD_PKG_START for null pkgName");
break;
}
- mObserver.invokeGetSizeInfo(pkgName, false);
+ if (!mDoneIniting) {
+ Boolean currB = mAddRemoveMap.get(pkgName);
+ if (currB == null || (currB.equals(Boolean.FALSE))) {
+ mAddRemoveMap.put(pkgName, Boolean.TRUE);
+ }
+ break;
+ }
+ try {
+ info = mPm.getApplicationInfo(pkgName, 0);
+ } catch (NameNotFoundException e) {
+ Log.w(TAG, "Couldnt find application info for:"+pkgName);
+ break;
+ }
+ mObserver.invokeGetSizeInfo(info, ADD_PKG_DONE);
break;
+ case ADD_PKG_DONE:
+ if(localLOGV) Log.i(TAG, "Message COMPUTE_PKG_SIZE_DONE");
+ if(pkgName == null) {
+ Log.w(TAG, "Ignoring message:ADD_PKG_START for null pkgName");
+ break;
+ }
+ ps = data.getParcelable(ATTR_APP_PKG_STATS);
+ mAppInfoAdapter.addToList(pkgName, ps);
+ break;
+ case REFRESH_ICONS:
+ Map<String, AppInfo> iconMap = (Map<String, AppInfo>) msg.obj;
+ if(iconMap == null) {
+ Log.w(TAG, "Error loading icons for applications");
+ } else {
+ mAppInfoAdapter.updateAppsResourceInfo(iconMap);
+ setProgressBarIndeterminateVisibility(false);
+ }
default:
break;
}
}
};
- private void removePackageFromAppList(String pkgName) {
- int size = mAppList.size();
- for(int i = 0; i < size; i++) {
- if(mAppList.get(i).packageName.equalsIgnoreCase(pkgName)) {
- mAppList.remove(i);
- break;
+ List<ApplicationInfo> getInstalledApps(int filterOption) {
+ List<ApplicationInfo> installedAppList = mPm.getInstalledApplications(
+ PackageManager.GET_UNINSTALLED_PACKAGES);
+ if (installedAppList == null) {
+ return new ArrayList<ApplicationInfo> ();
+ }
+ if (filterOption == FILTER_APPS_THIRD_PARTY) {
+ List<ApplicationInfo> appList =new ArrayList<ApplicationInfo> ();
+ for (ApplicationInfo appInfo : installedAppList) {
+ if ((appInfo.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0) {
+ appList.add(appInfo);
+ }
+ }
+ return appList;
+ } else if (filterOption == FILTER_APPS_RUNNING) {
+ List<ApplicationInfo> appList =new ArrayList<ApplicationInfo> ();
+ List<ActivityManager.RunningAppProcessInfo> procList = getRunningAppProcessesList();
+ if ((procList == null) || (procList.size() == 0)) {
+ return appList;
}
+ // Retrieve running processes from ActivityManager
+ for (ActivityManager.RunningAppProcessInfo appProcInfo : procList) {
+ if ((appProcInfo != null) && (appProcInfo.pkgList != null)){
+ int size = appProcInfo.pkgList.length;
+ for (int i = 0; i < size; i++) {
+ ApplicationInfo appInfo = null;
+ try {
+ appInfo = mPm.getApplicationInfo(appProcInfo.pkgList[i],
+ PackageManager.GET_UNINSTALLED_PACKAGES);
+ } catch (NameNotFoundException e) {
+ Log.w(TAG, "Error retrieving ApplicationInfo for pkg:"+appProcInfo.pkgList[i]);
+ continue;
+ }
+ if(appInfo != null) {
+ appList.add(appInfo);
+ }
+ }
+ }
+ }
+ return appList;
+ } else {
+ return installedAppList;
}
}
- private void clearMessages() {
- synchronized(mHandler) {
- mHandler.removeMessages(COMPUTE_PKG_SIZE_START);
- mHandler.removeMessages(COMPUTE_PKG_SIZE_DONE);
- mHandler.removeMessages(REMOVE_PKG);
- mHandler.removeMessages(REORDER_LIST);
- mHandler.removeMessages(ADD_PKG);
+ private List<ActivityManager.RunningAppProcessInfo> getRunningAppProcessesList() {
+ ActivityManager am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
+ return am.getRunningAppProcesses();
+ }
+
+ // some initialization code used when kicking off the size computation
+ private void initAppList(int filterOption) {
+ mDoneIniting = false;
+ // Initialize lists
+ List<ApplicationInfo> appList = getInstalledApps(filterOption);
+ mAddRemoveMap = new TreeMap<String, Boolean>();
+ mAppInfoAdapter = new AppInfoAdapter(this, appList);
+ dismissLoadingMsg();
+ // get list and set listeners and adapter
+ ListView lv= (ListView) findViewById(android.R.id.list);
+ lv.setOnItemClickListener(this);
+ lv.setSaveEnabled(true);
+ lv.setItemsCanFocus(true);
+ lv.setOnItemClickListener(this);
+ lv.setAdapter(mAppInfoAdapter);
+ // register receiver
+ mReceiver = new PackageIntentReceiver();
+ mReceiver.registerReceiver();
+ // initiate compute pkg sizes
+ if (localLOGV) Log.i(TAG, "Initiating compute sizes for first time");
+ mObserver = new PkgSizeObserver();
+ if(appList.size() > 0) {
+ mObserver.invokeGetSizeInfo(appList.get(0), COMPUTE_PKG_SIZE_DONE);
+ } else {
+ mDoneIniting = true;
}
}
- private void sendMessageToHandler(int msgId, Bundle data, long delayMillis) {
- synchronized(mHandler) {
- Message msg = mHandler.obtainMessage(msgId);
- msg.setData(data);
- if(delayMillis == 0) {
- mHandler.sendMessage(msg);
- } else {
- mHandler.sendMessageDelayed(msg, delayMillis);
- }
+ // internal structure used to track added and deleted packages when
+ // the activity has focus
+ class AddRemoveInfo {
+ String pkgName;
+ boolean add;
+ public AddRemoveInfo(String pPkgName, boolean pAdd) {
+ pkgName = pPkgName;
+ add = pAdd;
}
}
- private void sendMessageToHandler(int msgId, int arg1) {
- synchronized(mHandler) {
- Message msg = mHandler.obtainMessage(msgId);
- msg.arg1 = arg1;
+ class ResourceLoaderThread extends Thread {
+ List<ApplicationInfo> mAppList;
+
+ void loadAllResources(List<ApplicationInfo> appList) {
+ if(appList == null || appList.size() <= 0) {
+ Log.w(TAG, "Empty or null application list");
+ return;
+ }
+ mAppList = appList;
+ start();
+ }
+
+ public void run() {
+ Map<String, AppInfo> iconMap = new HashMap<String, AppInfo>();
+ for (ApplicationInfo appInfo : mAppList) {
+ CharSequence appName = appInfo.loadLabel(mPm);
+ Drawable appIcon = appInfo.loadIcon(mPm);
+ iconMap.put(appInfo.packageName,
+ new AppInfo(appInfo.packageName, appName, appIcon));
+ }
+ Message msg = mHandler.obtainMessage(REFRESH_ICONS);
+ msg.obj = iconMap;
mHandler.sendMessage(msg);
}
}
- private void sendMessageToHandler(int msgId) {
- synchronized(mHandler) {
- mHandler.sendEmptyMessage(msgId);
+ /* Internal class representing an application or packages displayable attributes
+ *
+ */
+ class AppInfo {
+ public String pkgName;
+ int index;
+ public CharSequence appName;
+ public Drawable appIcon;
+ public CharSequence appSize;
+ public PackageStats appStats;
+
+ public void refreshIcon(AppInfo pInfo) {
+ appName = pInfo.appName;
+ appIcon = pInfo.appIcon;
+ }
+
+ public AppInfo(String pName, CharSequence aName, Drawable aIcon) {
+ index = -1;
+ pkgName = pName;
+ appName = aName;
+ appIcon = aIcon;
+ appStats = null;
+ appSize = mComputingSizeStr;
+ }
+
+ public AppInfo(String pName, int pIndex, CharSequence aName, Drawable aIcon,
+ PackageStats ps) {
+ index = pIndex;
+ pkgName = pName;
+ appName = aName;
+ appIcon = aIcon;
+ if(ps == null) {
+ appSize = mComputingSizeStr;
+ } else {
+ appStats = ps;
+ appSize = getSizeStr();
+ }
+ }
+ public void setSize(PackageStats ps) {
+ appStats = ps;
+ if (ps != null) {
+ appSize = getSizeStr();
+ }
+ }
+ public long getTotalSize() {
+ PackageStats ps = appStats;
+ if (ps != null) {
+ return ps.cacheSize+ps.codeSize+ps.dataSize;
+ }
+ return SIZE_INVALID;
+ }
+
+ private String getSizeStr() {
+ PackageStats ps = appStats;
+ String retStr = "";
+ // insert total size information into map to display in view
+ // at this point its guaranteed that ps is not null. but checking anyway
+ if (ps != null) {
+ long size = getTotalSize();
+ if (size == SIZE_INVALID) {
+ return mInvalidSizeStr.toString();
+ }
+ return Formatter.formatFileSize(ManageApplications.this, size);
+ }
+ return retStr;
}
}
- class PkgSizeObserver extends IPackageStatsObserver.Stub {
- public PackageStats ps;
- public ApplicationInfo appInfo;
- public Drawable appIcon;
- public CharSequence appName;
- public CharSequence appDesc = "";
- private int mIdx = 0;
- private boolean mChained = false;
- public boolean succeeded;
- PkgSizeObserver(int i) {
- mIdx = i;
+ // View Holder used when displaying views
+ static class AppViewHolder {
+ TextView appName;
+ ImageView appIcon;
+ TextView appSize;
+ }
+
+ /* Custom adapter implementation for the ListView
+ * This adapter maintains a map for each displayed application and its properties
+ * An index value on each AppInfo object indicates the correct position or index
+ * in the list. If the list gets updated dynamically when the user is viewing the list of
+ * applications, we need to return the correct index of position. This is done by mapping
+ * the getId methods via the package name into the internal maps and indices.
+ * The order of applications in the list is mirrored in mAppLocalList
+ */
+ class AppInfoAdapter extends BaseAdapter {
+ private Map<String, AppInfo> mAppPropMap;
+ private List<ApplicationInfo> mAppLocalList;
+ ApplicationInfo.DisplayNameComparator mAlphaComparator;
+ AppInfoComparator mSizeComparator;
+
+ private AppInfo getFromCache(String packageName) {
+ if(mAppPropCache == null) {
+ return null;
+ }
+ return mAppPropCache.get(packageName);
}
- private void getAppDetails() {
+ public AppInfoAdapter(Context c, List<ApplicationInfo> appList) {
+ mAppLocalList = appList;
+ boolean useCache = false;
+ int sortOrder = SORT_ORDER_ALPHA;
+ int imax = mAppLocalList.size();
+ if(mAppPropCache != null) {
+ useCache = true;
+ // Activity has been resumed. can use the cache to populate values initially
+ mAppPropMap = mAppPropCache;
+ sortOrder = mSortOrder;
+ }
+ sortAppList(sortOrder);
+ // Recreate property map
+ mAppPropMap = new TreeMap<String, AppInfo>();
+ for (int i = 0; i < imax; i++) {
+ ApplicationInfo info = mAppLocalList.get(i);
+ AppInfo aInfo = getFromCache(info.packageName);
+ if(aInfo == null){
+ aInfo = new AppInfo(info.packageName, i,
+ info.packageName, mDefaultAppIcon, null);
+ } else {
+ aInfo.index = i;
+ }
+ mAppPropMap.put(info.packageName, aInfo);
+ }
+ }
+
+ public int getCount() {
+ return mAppLocalList.size();
+ }
+
+ public Object getItem(int position) {
+ return mAppLocalList.get(position);
+ }
+
+ /*
+ * This method returns the index of the package position in the application list
+ */
+ public int getIndex(String pkgName) {
+ if(pkgName == null) {
+ Log.w(TAG, "Getting index of null package in List Adapter");
+ }
+ int imax = mAppLocalList.size();
+ ApplicationInfo appInfo;
+ for(int i = 0; i < imax; i++) {
+ appInfo = mAppLocalList.get(i);
+ if(appInfo.packageName.equalsIgnoreCase(pkgName)) {
+ return i;
+ }
+ }
+ return -1;
+ }
+
+ public ApplicationInfo getApplicationInfo(int position) {
+ int imax = mAppLocalList.size();
+ if( (position < 0) || (position >= imax)) {
+ Log.w(TAG, "Position out of bounds in List Adapter");
+ return null;
+ }
+ return mAppLocalList.get(position);
+ }
+
+ public void addApplicationInfo(ApplicationInfo info) {
+ if(info == null) {
+ Log.w(TAG, "Ignoring null add in List Adapter");
+ return;
+ }
+ mAppLocalList.add(info);
+ }
+
+ public long getItemId(int position) {
+ int imax = mAppLocalList.size();
+ if( (position < 0) || (position >= imax)) {
+ Log.w(TAG, "Position out of bounds in List Adapter");
+ return -1;
+ }
+ return mAppPropMap.get(mAppLocalList.get(position).packageName).index;
+ }
+
+ public List<ApplicationInfo> getAppList() {
+ return mAppLocalList;
+ }
+
+ public View getView(int position, View convertView, ViewGroup parent) {
+ // A ViewHolder keeps references to children views to avoid unneccessary calls
+ // to findViewById() on each row.
+ AppViewHolder holder;
+
+ // When convertView is not null, we can reuse it directly, there is no need
+ // to reinflate it. We only inflate a new View when the convertView supplied
+ // by ListView is null.
+ if (convertView == null) {
+ convertView = mInflater.inflate(R.layout.manage_applications_item, null);
+
+ // Creates a ViewHolder and store references to the two children views
+ // we want to bind data to.
+ holder = new AppViewHolder();
+ holder.appName = (TextView) convertView.findViewById(R.id.app_name);
+ holder.appIcon = (ImageView) convertView.findViewById(R.id.app_icon);
+ holder.appSize = (TextView) convertView.findViewById(R.id.app_size);
+ convertView.setTag(holder);
+ } else {
+ // Get the ViewHolder back to get fast access to the TextView
+ // and the ImageView.
+ holder = (AppViewHolder) convertView.getTag();
+ }
+
+ // Bind the data efficiently with the holder
+ ApplicationInfo appInfo = mAppLocalList.get(position);
+ AppInfo mInfo = mAppPropMap.get(appInfo.packageName);
+ if(mInfo != null) {
+ if(mInfo.appName != null) {
+ holder.appName.setText(mInfo.appName);
+ }
+ if(mInfo.appIcon != null) {
+ holder.appIcon.setImageDrawable(mInfo.appIcon);
+ }
+ holder.appSize.setText(mInfo.appSize);
+ } else {
+ Log.w(TAG, "No info for package:"+appInfo.packageName+" in property map");
+ }
+ return convertView;
+ }
+
+ private void adjustIndex() {
+ int imax = mAppLocalList.size();
+ ApplicationInfo info;
+ for (int i = 0; i < imax; i++) {
+ info = mAppLocalList.get(i);
+ mAppPropMap.get(info.packageName).index = i;
+ }
+ }
+
+ public void sortAppList(int sortOrder) {
+ Collections.sort(mAppLocalList, getAppComparator(sortOrder));
+ }
+
+ public void sortList(int sortOrder) {
+ sortAppList(sortOrder);
+ adjustIndex();
+ notifyDataSetChanged();
+ }
+
+ public boolean resetAppList(int filterOption, List<ApplicationInfo> appList) {
+ // Create application list based on the filter value
+ mAppLocalList = appList;
+ // Check for all properties in map before sorting. Populate values from cache
+ for(ApplicationInfo applicationInfo : mAppLocalList) {
+ AppInfo appInfo = mAppPropMap.get(applicationInfo.packageName);
+ if(appInfo == null) {
+ AppInfo rInfo = getFromCache(applicationInfo.packageName);
+ if(rInfo == null) {
+ // Need to load resources again. Inconsistency somewhere
+ return false;
+ }
+ mAppPropMap.put(applicationInfo.packageName, rInfo);
+ }
+ }
+ sortList(mSortOrder);
+ return true;
+ }
+
+ private Comparator<ApplicationInfo> getAppComparator(int sortOrder) {
+ if (sortOrder == SORT_ORDER_ALPHA) {
+ // Lazy initialization
+ if (mAlphaComparator == null) {
+ mAlphaComparator = new ApplicationInfo.DisplayNameComparator(mPm);
+ }
+ return mAlphaComparator;
+ }
+ // Lazy initialization
+ if(mSizeComparator == null) {
+ mSizeComparator = new AppInfoComparator(mAppPropMap);
+ }
+ return mSizeComparator;
+ }
+
+ public void updateAppsResourceInfo(Map<String, AppInfo> iconMap) {
+ if(iconMap == null) {
+ Log.w(TAG, "Null iconMap when refreshing icon in List Adapter");
+ return;
+ }
+ boolean changed = false;
+ for (ApplicationInfo info : mAppLocalList) {
+ AppInfo pInfo = iconMap.get(info.packageName);
+ if(pInfo != null) {
+ AppInfo aInfo = mAppPropMap.get(info.packageName);
+ aInfo.refreshIcon(pInfo);
+ changed = true;
+ }
+ }
+ if(changed) {
+ notifyDataSetChanged();
+ }
+ }
+
+ public void addToList(String pkgName, PackageStats ps) {
+ if(pkgName == null) {
+ Log.w(TAG, "Adding null pkg to List Adapter");
+ return;
+ }
+ ApplicationInfo info;
try {
- appInfo = mPm.getApplicationInfo(ps.packageName, 0);
+ info = mPm.getApplicationInfo(pkgName, 0);
} catch (NameNotFoundException e) {
+ Log.w(TAG, "Ignoring non-existent package:"+pkgName);
+ return;
+ }
+ if(info == null) {
+ // Nothing to do log error message and return
+ Log.i(TAG, "Null ApplicationInfo for package:"+pkgName);
+ return;
+ }
+ // Binary search returns a negative index (ie --index) of the position where
+ // this might be inserted.
+ int newIdx = Collections.binarySearch(mAppLocalList, info,
+ getAppComparator(mSortOrder));
+ if(newIdx >= 0) {
+ Log.i(TAG, "Strange. Package:"+pkgName+" is not new");
return;
}
- appName = appInfo.loadLabel(mPm);
- appIcon = appInfo.loadIcon(mPm);
+ // New entry
+ newIdx = -newIdx-1;
+ mAppLocalList.add(newIdx, info);
+ mAppPropMap.put(info.packageName, new AppInfo(pkgName, newIdx,
+ info.loadLabel(mPm), info.loadIcon(mPm), ps));
+ adjustIndex();
+ notifyDataSetChanged();
}
+ public void removeFromList(List<String> pkgNames) {
+ if(pkgNames == null) {
+ Log.w(TAG, "Removing null pkg list from List Adapter");
+ return;
+ }
+ int imax = mAppLocalList.size();
+ boolean found = false;
+ ApplicationInfo info;
+ int i, k;
+ String pkgName;
+ int kmax = pkgNames.size();
+ if(kmax <= 0) {
+ Log.w(TAG, "Removing empty pkg list from List Adapter");
+ return;
+ }
+ int idxArr[] = new int[kmax];
+ for (k = 0; k < kmax; k++) {
+ idxArr[k] = -1;
+ }
+ for (i = 0; i < imax; i++) {
+ info = mAppLocalList.get(i);
+ for (k = 0; k < kmax; k++) {
+ pkgName = pkgNames.get(k);
+ if (info.packageName.equalsIgnoreCase(pkgName)) {
+ idxArr[k] = i;
+ found = true;
+ break;
+ }
+ }
+ }
+ // Sort idxArr
+ Arrays.sort(idxArr);
+ // remove the packages based on decending indices
+ for (k = kmax-1; k >= 0; k--) {
+ // Check if package has been found in the list of existing apps first
+ if(idxArr[k] == -1) {
+ break;
+ }
+ info = mAppLocalList.get(idxArr[k]);
+ mAppLocalList.remove(idxArr[k]);
+ mAppPropMap.remove(info.packageName);
+ if (localLOGV) Log.i(TAG, "Removed pkg:"+info.packageName+ " list");
+ }
+ if (found) {
+ adjustIndex();
+ notifyDataSetChanged();
+ }
+ }
+
+ public void updateAppSize(String pkgName, PackageStats ps) {
+ if(pkgName == null) {
+ return;
+ }
+ AppInfo entry = mAppPropMap.get(pkgName);
+ if (entry == null) {
+ Log.w(TAG, "Entry for package:"+pkgName+"doesnt exist in map");
+ return;
+ }
+ // Copy the index into the newly updated entry
+ entry.setSize(ps);
+ notifyDataSetChanged();
+ }
+
+ public PackageStats getAppStats(String pkgName) {
+ if(pkgName == null) {
+ return null;
+ }
+ AppInfo entry = mAppPropMap.get(pkgName);
+ if (entry == null) {
+ return null;
+ }
+ return entry.appStats;
+ }
+ }
+
+ /*
+ * Utility method to clear messages to Handler
+ * We need'nt synchronize on the Handler since posting messages is guaranteed
+ * to be thread safe. Even if the other thread that retrieves package sizes
+ * posts a message, we do a cursory check of validity on mAppInfoAdapter's applist
+ */
+ private void clearMessagesInHandler() {
+ mHandler.removeMessages(COMPUTE_PKG_SIZE_START);
+ mHandler.removeMessages(COMPUTE_PKG_SIZE_DONE);
+ mHandler.removeMessages(REMOVE_PKG);
+ mHandler.removeMessages(REORDER_LIST);
+ mHandler.removeMessages(ADD_PKG_START);
+ mHandler.removeMessages(ADD_PKG_DONE);
+ }
+
+ private void sendMessageToHandler(int msgId, int arg1) {
+ Message msg = mHandler.obtainMessage(msgId);
+ msg.arg1 = arg1;
+ mHandler.sendMessage(msg);
+ }
+
+ private void sendMessageToHandler(int msgId, Bundle data) {
+ Message msg = mHandler.obtainMessage(msgId);
+ msg.setData(data);
+ mHandler.sendMessage(msg);
+ }
+
+ private void sendMessageToHandler(int msgId) {
+ mHandler.sendEmptyMessage(msgId);
+ }
+
+ /*
+ * Stats Observer class used to compute package sizes and retrieve size information
+ * PkgSizeOberver is the call back thats used when invoking getPackageSizeInfo on
+ * PackageManager. The values in call back onGetStatsCompleted are validated
+ * and the specified message is passed to mHandler. The package name
+ * and the AppInfo object corresponding to the package name are set on the message
+ */
+ class PkgSizeObserver extends IPackageStatsObserver.Stub {
+ private ApplicationInfo mAppInfo;
+ private int mMsgId;
public void onGetStatsCompleted(PackageStats pStats, boolean pSucceeded) {
- Bundle data = new Bundle();
- ps = pStats;
- succeeded = pSucceeded;
- if(mChained) {
- data.putInt(ATTR_APP_IDX, mIdx);
- if(succeeded) {
- mIdx++;
+ if(DEBUG_PKG_DELAY) {
+ try {
+ Thread.sleep(10*1000);
+ } catch (InterruptedException e) {
}
}
- data.putBoolean(ATTR_CHAINED, mChained);
- getAppDetails();
- if(localLOGV) Log.i(TAG, "onGetStatsCompleted::"+appInfo.packageName+", ("+ps.cacheSize+","+
- ps.codeSize+", "+ps.dataSize);
- sendMessageToHandler(COMPUTE_PKG_SIZE_DONE, data, 0);
+ AppInfo appInfo = null;
+ Bundle data = new Bundle();
+ data.putString(ATTR_PKG_NAME, mAppInfo.packageName);
+ if(pSucceeded && pStats != null) {
+ if (localLOGV) Log.i(TAG, "onGetStatsCompleted::"+pStats.packageName+", ("+
+ pStats.cacheSize+","+
+ pStats.codeSize+", "+pStats.dataSize);
+ data.putParcelable(ATTR_APP_PKG_STATS, pStats);
+ } else {
+ Log.w(TAG, "Invalid package stats from PackageManager");
+ }
+ //post message to Handler
+ Message msg = mHandler.obtainMessage(mMsgId, data);
+ msg.setData(data);
+ mHandler.sendMessage(msg);
}
-
- public void invokeGetSizeInfo(String packageName, boolean chained) {
- mChained = chained;
- mPm.getPackageSizeInfo(packageName, this);
+
+ public void invokeGetSizeInfo(ApplicationInfo pAppInfo, int msgId) {
+ if(pAppInfo == null || pAppInfo.packageName == null) {
+ return;
+ }
+ if(localLOGV) Log.i(TAG, "Invoking getPackageSizeInfo for package:"+
+ pAppInfo.packageName);
+ mMsgId = msgId;
+ mAppInfo = pAppInfo;
+ mPm.getPackageSizeInfo(pAppInfo.packageName, this);
}
}
@@ -360,239 +998,147 @@ public class ManageApplications extends Activity implements SimpleAdapter.ViewBi
String actionStr = intent.getAction();
Uri data = intent.getData();
String pkgName = data.getEncodedSchemeSpecificPart();
- if(localLOGV) Log.i(TAG, "action:"+actionStr+", for package:"+pkgName);
+ if (localLOGV) Log.i(TAG, "action:"+actionStr+", for package:"+pkgName);
updatePackageList(actionStr, pkgName);
}
}
private void updatePackageList(String actionStr, String pkgName) {
- //technically we dont have to invoke handler since onReceive is invoked on
- //the main thread but doing it here for better clarity
- if(Intent.ACTION_PACKAGE_ADDED.equalsIgnoreCase(actionStr)) {
+ // technically we dont have to invoke handler since onReceive is invoked on
+ // the main thread but doing it here for better clarity
+ if (Intent.ACTION_PACKAGE_ADDED.equalsIgnoreCase(actionStr)) {
Bundle data = new Bundle();
data.putString(ATTR_PKG_NAME, pkgName);
- sendMessageToHandler(ADD_PKG, data, 0);
- } else if(Intent.ACTION_PACKAGE_REMOVED.equalsIgnoreCase(actionStr)) {
+ sendMessageToHandler(ADD_PKG_START, data);
+ } else if (Intent.ACTION_PACKAGE_REMOVED.equalsIgnoreCase(actionStr)) {
Bundle data = new Bundle();
data.putString(ATTR_PKG_NAME, pkgName);
- sendMessageToHandler(REMOVE_PKG, data, 0);
- } else if(Intent.ACTION_PACKAGE_CHANGED.equalsIgnoreCase(actionStr)) {
- //force adapter to draw the list again. TODO derive from SimpleAdapter
- //to avoid this
-
- }
- }
-
- /*
- * Utility method to create an array of map objects from a map of map objects
- * for displaying list items to be used in SimpleAdapter.
- */
- private void createListFromValues() {
- findViewById(R.id.center_text).setVisibility(View.GONE);
- populateAdapterList();
- mAppAdapter.setViewBinder(this);
- ListView lv= (ListView) findViewById(android.R.id.list);
- lv.setOnItemClickListener(this);
- lv.setAdapter(mAppAdapter);
- if(mCurrentPkgIdx != -1) {
- lv.setSelection(mCurrentPkgIdx);
+ sendMessageToHandler(REMOVE_PKG, data);
}
}
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- String action = getIntent().getAction();
- if(action.equals(Intent.ACTION_MANAGE_PACKAGE_STORAGE)) {
+ Intent lIntent = getIntent();
+ String action = lIntent.getAction();
+ if (action.equals(Intent.ACTION_MANAGE_PACKAGE_STORAGE)) {
mSortOrder = SORT_ORDER_SIZE;
}
mPm = getPackageManager();
- //load strings from resources
- mBStr = getString(R.string.b_text);
- mKbStr = getString(R.string.kb_text);
- mMbStr = getString(R.string.mb_text);
+ // initialize some window features
+ requestWindowFeature(Window.FEATURE_RIGHT_ICON);
+ requestWindowFeature(Window.FEATURE_PROGRESS);
+ requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
+ // init mLoadingDlg
+ mLoadingDlg = new ProgressDialog(this);
+ mLoadingDlg.setProgressStyle(ProgressDialog.STYLE_SPINNER);
+ mLoadingDlg.setMessage(getText(R.string.loading));
+ mLoadingDlg.setIndeterminate(true);
+ mLoadingDlg.setOnCancelListener(this);
+ mDefaultAppIcon =Resources.getSystem().getDrawable(
+ com.android.internal.R.drawable.sym_def_app_icon);
+ mInvalidSizeStr = getText(R.string.invalid_size_value);
+ mComputingSizeStr = getText(R.string.computing_size);
+ // initialize the inflater
+ mInflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ }
+
+ private void showLoadingMsg() {
+ if (mLoadingDlg != null) {
+ if(localLOGV) Log.i(TAG, "Displaying Loading message");
+ mLoadingDlg.show();
+ }
+ }
+
+ private void dismissLoadingMsg() {
+ if ((mLoadingDlg != null) && (mLoadingDlg.isShowing())) {
+ if(localLOGV) Log.i(TAG, "Dismissing Loading message");
+ mLoadingDlg.dismiss();
+ }
}
@Override
public void onStart() {
super.onStart();
setContentView(R.layout.compute_sizes);
- //clear all messages related to application list
- clearMessages();
+ showLoadingMsg();
+ // Create a thread to load resources
+ mResourceThread = new ResourceLoaderThread();
sendMessageToHandler(COMPUTE_PKG_SIZE_START);
}
@Override
public void onStop() {
super.onStop();
- //register receiver here
+ // clear all messages related to application list
+ clearMessagesInHandler();
+ // register receiver here
unregisterReceiver(mReceiver);
+ mAppPropCache = mAppInfoAdapter.mAppPropMap;
}
+ /*
+ * comparator class used to sort AppInfo objects based on size
+ */
public static class AppInfoComparator implements Comparator<ApplicationInfo> {
- public AppInfoComparator(HashMap<String, PackageStats> pSizeMap) {
- mSizeMap= pSizeMap;
+ public AppInfoComparator(Map<String, AppInfo> pAppPropMap) {
+ mAppPropMap= pAppPropMap;
}
public final int compare(ApplicationInfo a, ApplicationInfo b) {
- PackageStats aps, bps;
- aps = mSizeMap.get(a.packageName);
- bps = mSizeMap.get(b.packageName);
- if (aps == null && bps == null) {
- return 0;
- } else if (aps == null) {
+ AppInfo ainfo = mAppPropMap.get(a.packageName);
+ AppInfo binfo = mAppPropMap.get(b.packageName);
+ long atotal = ainfo.getTotalSize();
+ long btotal = binfo.getTotalSize();
+ long ret = atotal - btotal;
+ // negate result to sort in descending order
+ if (ret < 0) {
return 1;
- } else if (bps == null) {
- return -1;
}
- long atotal = aps.dataSize+aps.codeSize+aps.cacheSize;
- long btotal = bps.dataSize+bps.codeSize+bps.cacheSize;
- long ret = atotal-btotal;
- //negate result to sort in descending order
- if(ret < 0) {
- return 1;
- }
- if(ret == 0) {
+ if (ret == 0) {
return 0;
}
return -1;
}
- private HashMap<String, PackageStats> mSizeMap;
+ private Map<String, AppInfo> mAppPropMap;
}
-
- /*
- * Have to extract elements form map and populate a list ot be used by
- * SimpleAdapter when displaying list elements. The sort order has to follow
- * the order of elements in mAppList.
- */
- private List<Map<String, ?>> createAdapterListFromMap() {
- //get the index from mAppInfo which gives the correct sort position
- int imax = mAppList.size();
- if(localLOGV) Log.i(TAG, "Creating new adapter list");
- List<Map<String, ?>> adapterList = new ArrayList<Map<String, ?>>();
- ApplicationInfo tmpInfo;
- for(int i = 0; i < imax; i++) {
- tmpInfo = mAppList.get(i);
- Map<String, Object>newObj = new TreeMap<String, Object>(
- mAppAdapterMap.get(tmpInfo.packageName));
- adapterList.add(newObj);
- }
- return adapterList;
- }
- private void populateAdapterList() {
- mAppAdapter = new SimpleAdapter(this, createAdapterListFromMap(),
- R.layout.manage_applications_item, sKeys, sResourceIds);
- }
-
- private String getSizeStr(PackageStats ps) {
- String retStr = "";
- //insert total size information into map to display in view
- //at this point its guaranteed that ps is not null. but checking anyway
- if(ps != null) {
- long size = ps.cacheSize+ps.codeSize+ps.dataSize;
- if(size < 1024) {
- return String.valueOf(size)+mBStr;
- }
- long kb, mb, rem;
- kb = size >> 10;
- rem = size - (kb << 10);
- if(kb < 1024) {
- if(rem > 512) {
- kb++;
- }
- retStr += String.valueOf(kb)+mKbStr;
- return retStr;
- }
- mb = kb >> 10;
- if(kb >= 512) {
- //round off
- mb++;
- }
- retStr += String.valueOf(mb)+ mMbStr;
- return retStr;
- } else {
- Log.w(TAG, "Something fishy, cannot find size info for package:"+ps.packageName);
- }
- return retStr;
- }
-
- public void sortAppList() {
- // Sort application list
- if(mSortOrder == SORT_ORDER_ALPHA) {
- Collections.sort(mAppList, new ApplicationInfo.DisplayNameComparator(mPm));
- } else if(mSortOrder == SORT_ORDER_SIZE) {
- Collections.sort(mAppList, new AppInfoComparator(mSizeMap));
- }
- }
-
- private Map<String, Object> createMapEntry(CharSequence appName,
- Drawable appIcon, CharSequence appDesc, String sizeStr) {
- Map<String, Object> map = new TreeMap<String, Object>();
- map.put(KEY_APP_NAME, appName);
- //the icon cannot be null. if the application hasnt set it, the default icon is returned.
- map.put(KEY_APP_ICON, appIcon);
- if(appDesc == null) {
- appDesc="";
- }
- map.put(KEY_APP_DESC, appDesc);
- map.put(KEY_APP_SIZE, sizeStr);
- return map;
- }
-
+ // utility method used to start sub activity
private void startApplicationDetailsActivity(ApplicationInfo info, PackageStats ps) {
- //Create intent to start new activity
+ // Create intent to start new activity
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setClass(this, InstalledAppDetails.class);
- intent.putExtra(APP_PKG_NAME, info.packageName);
- if(localLOGV) Log.i(TAG, "code="+ps.codeSize+", cache="+ps.cacheSize+", data="+ps.dataSize);
- intent.putExtra(APP_PKG_SIZE, ps);
- if(localLOGV) Log.i(TAG, "Starting sub activity to display info for app:"+info
- +" with intent:"+intent);
- //start new activity to display extended information
- if ((info.flags&ApplicationInfo.FLAG_SYSTEM) != 0) {
- }
+ mCurrentPkgName = info.packageName;
+ intent.putExtra(APP_PKG_NAME, mCurrentPkgName);
+ intent.putExtra(APP_PKG_SIZE, ps);
+ // start new activity to display extended information
startActivityForResult(intent, INSTALLED_APP_DETAILS);
}
- public boolean setViewValue(View view, Object data, String textRepresentation) {
- if(data == null) {
- return false;
- }
- int id = view.getId();
- switch(id) {
- case R.id.app_name:
- ((TextView)view).setText((String)data);
- break;
- case R.id.app_icon:
- ((ImageView)view).setImageDrawable((Drawable)data);
- break;
- case R.id.app_description:
- ((TextView)view).setText((String)data);
- break;
- case R.id.app_size:
- ((TextView)view).setText((String)data);
- break;
- default:
- break;
- }
- return true;
- }
-
@Override
public boolean onCreateOptionsMenu(Menu menu) {
- menu.add(0, SORT_ORDER_ALPHA, 0, R.string.sort_order_alpha)
+ menu.add(0, SORT_ORDER_ALPHA, 1, R.string.sort_order_alpha)
.setIcon(android.R.drawable.ic_menu_sort_alphabetically);
- menu.add(0, SORT_ORDER_SIZE, 0, R.string.sort_order_size)
- .setIcon(android.R.drawable.ic_menu_sort_by_size);
+ menu.add(0, SORT_ORDER_SIZE, 2, R.string.sort_order_size)
+ .setIcon(android.R.drawable.ic_menu_sort_by_size);
+ menu.add(0, FILTER_APPS_ALL, 3, R.string.filter_apps_all);
+ menu.add(0, FILTER_APPS_RUNNING, 4, R.string.filter_apps_running);
+ menu.add(0, FILTER_APPS_THIRD_PARTY, 5, R.string.filter_apps_third_party);
return true;
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
- if(mDoneIniting) {
+ if (mDoneIniting) {
menu.findItem(SORT_ORDER_ALPHA).setVisible(mSortOrder != SORT_ORDER_ALPHA);
- menu.findItem(SORT_ORDER_SIZE).setVisible(mSortOrder!= SORT_ORDER_SIZE);
+ menu.findItem(SORT_ORDER_SIZE).setVisible(mSortOrder != SORT_ORDER_SIZE);
+ menu.findItem(FILTER_APPS_ALL).setVisible(mFilterApps != FILTER_APPS_ALL);
+ menu.findItem(FILTER_APPS_THIRD_PARTY).setVisible(
+ mFilterApps != FILTER_APPS_THIRD_PARTY);
+ menu.findItem(FILTER_APPS_RUNNING).setVisible(
+ mFilterApps != FILTER_APPS_RUNNING);
return true;
}
return false;
@@ -607,10 +1153,13 @@ public class ManageApplications extends Activity implements SimpleAdapter.ViewBi
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
- mCurrentPkgIdx=position;
- ApplicationInfo info = mAppList.get(position);
- mCurrentPkg = info;
- PackageStats ps = mSizeMap.get(info.packageName);
- startApplicationDetailsActivity(info, ps);
+ ApplicationInfo info = (ApplicationInfo)mAppInfoAdapter.getItem(position);
+ startApplicationDetailsActivity(info, mAppInfoAdapter.getAppStats(info.packageName));
+ }
+
+ // onCancel call back for dialog thats displayed when data is being loaded
+ public void onCancel(DialogInterface dialog) {
+ mLoadingDlg = null;
+ finish();
}
}
diff --git a/src/com/android/settings/ProxySelector.java b/src/com/android/settings/ProxySelector.java
index d320e73..80fe3c9 100644
--- a/src/com/android/settings/ProxySelector.java
+++ b/src/com/android/settings/ProxySelector.java
@@ -222,7 +222,7 @@ public class ProxySelector extends Activity
if (!TextUtils.isEmpty(hostname)) {
hostname += ':' + portStr;
}
- Settings.System.putString(res, Settings.System.HTTP_PROXY, hostname);
+ Settings.Secure.putString(res, Settings.Secure.HTTP_PROXY, hostname);
sendBroadcast(new Intent(Proxy.PROXY_CHANGE_ACTION));
return true;
diff --git a/src/com/android/settings/RadioInfo.java b/src/com/android/settings/RadioInfo.java
index ad30de7..b1ad777 100644
--- a/src/com/android/settings/RadioInfo.java
+++ b/src/com/android/settings/RadioInfo.java
@@ -31,13 +31,14 @@ import android.os.Message;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.SystemProperties;
-import android.pim.DateUtils;
import android.preference.PreferenceManager;
import android.telephony.CellLocation;
import android.telephony.PhoneStateListener;
import android.telephony.ServiceState;
import android.telephony.TelephonyManager;
+import android.telephony.NeighboringCellInfo;
import android.telephony.gsm.GsmCellLocation;
+import android.text.format.DateUtils;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
@@ -66,6 +67,7 @@ import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.UnknownHostException;
+import java.util.ArrayList;
import java.util.List;
public class RadioInfo extends Activity {
@@ -210,7 +212,7 @@ public class RadioInfo extends Activity {
case EVENT_QUERY_NEIGHBORING_CIDS_DONE:
ar= (AsyncResult) msg.obj;
if (ar.exception == null) {
- updateNeighboringCids((String[])ar.result);
+ updateNeighboringCids((ArrayList<NeighboringCellInfo>)ar.result);
} else {
mNeighboringCids.setText("unknown");
}
@@ -651,23 +653,21 @@ public class RadioInfo extends Activity {
+ ((cid == -1) ? "unknown" : Integer.toHexString(cid)));
}
- private final void updateNeighboringCids(String[] cids) {
- if (cids != null && cids.length > 0 && cids[0] != null) {
- int size = Integer.parseInt(cids[0]);
- String neiborings;
- if (size > 0) {
- neiborings = "{";
- for (int i=1; i<=size; i++) {
- neiborings += cids[i] + ", ";
- }
- neiborings += "}";
+ private final void updateNeighboringCids(ArrayList<NeighboringCellInfo> cids) {
+ String neighborings = "";
+ if (cids != null) {
+ if ( cids.isEmpty() ) {
+ neighborings = "no neighboring cells";
} else {
- neiborings = "none";
+ for (NeighboringCellInfo cell : cids) {
+ neighborings += "{" + Integer.toHexString(cell.getCid())
+ + "@" + cell.getRssi() + "} ";
+ }
}
- mNeighboringCids.setText(neiborings);
} else {
- mNeighboringCids.setText("unknown");
+ neighborings = "unknown";
}
+ mNeighboringCids.setText(neighborings);
}
private final void
@@ -952,13 +952,15 @@ public class RadioInfo extends Activity {
.append("\n to ")
.append(pdp.getApn().toString())
.append("\ninterface: ")
- .append(phone.getInterfaceName(phone.getActiveApn()))
+ .append(phone.getInterfaceName(phone.getActiveApnTypes()[0]))
.append("\naddress: ")
- .append(phone.getIpAddress(phone.getActiveApn()))
+ .append(phone.getIpAddress(phone.getActiveApnTypes()[0]))
.append("\ngateway: ")
- .append(phone.getGateway(phone.getActiveApn()));
- String[] dns = phone.getDnsServers(phone.getActiveApn());
- sb.append("\ndns: ").append(dns[0]).append(", ").append(dns[1]);
+ .append(phone.getGateway(phone.getActiveApnTypes()[0]));
+ String[] dns = phone.getDnsServers(phone.getActiveApnTypes()[0]);
+ if (dns != null) {
+ sb.append("\ndns: ").append(dns[0]).append(", ").append(dns[1]);
+ }
} else if (pdp.getState().isInactive()) {
sb.append(" disconnected with last try at ")
.append(DateUtils.timeString(pdp.getLastFailTime()))
diff --git a/src/com/android/settings/RingerVolumePreference.java b/src/com/android/settings/RingerVolumePreference.java
new file mode 100644
index 0000000..2d21ec6
--- /dev/null
+++ b/src/com/android/settings/RingerVolumePreference.java
@@ -0,0 +1,129 @@
+/*
+ * 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.
+ */
+
+package com.android.settings;
+
+import android.content.Context;
+import android.media.AudioManager;
+import android.preference.VolumePreference;
+import android.preference.VolumePreference.SeekBarVolumizer;
+import android.provider.Settings;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.CheckBox;
+import android.widget.CompoundButton;
+import android.widget.SeekBar;
+import android.widget.TextView;
+
+/**
+ * Special preference type that allows configuration of both the ring volume and
+ * notification volume.
+ */
+public class RingerVolumePreference extends VolumePreference implements
+ CheckBox.OnCheckedChangeListener {
+ private static final String TAG = "RingerVolumePreference";
+
+ private CheckBox mNotificationsUseRingVolumeCheckbox;
+ private SeekBarVolumizer mNotificationSeekBarVolumizer;
+ private TextView mNotificationVolumeTitle;
+
+ public RingerVolumePreference(Context context, AttributeSet attrs) {
+ super(context, attrs);
+
+ // The always visible seekbar is for ring volume
+ setStreamType(AudioManager.STREAM_RING);
+
+ setDialogLayoutResource(R.layout.preference_dialog_ringervolume);
+ }
+
+ @Override
+ protected void onBindDialogView(View view) {
+ super.onBindDialogView(view);
+
+ mNotificationsUseRingVolumeCheckbox =
+ (CheckBox) view.findViewById(R.id.same_notification_volume);
+ mNotificationsUseRingVolumeCheckbox.setOnCheckedChangeListener(this);
+ mNotificationsUseRingVolumeCheckbox.setChecked(Settings.System.getInt(
+ getContext().getContentResolver(),
+ Settings.System.NOTIFICATIONS_USE_RING_VOLUME, 1) == 1);
+
+ final SeekBar seekBar = (SeekBar) view.findViewById(R.id.notification_volume_seekbar);
+ mNotificationSeekBarVolumizer = new SeekBarVolumizer(getContext(), seekBar,
+ AudioManager.STREAM_NOTIFICATION);
+
+ mNotificationVolumeTitle = (TextView) view.findViewById(R.id.notification_volume_title);
+
+ setNotificationVolumeVisibility(!mNotificationsUseRingVolumeCheckbox.isChecked());
+ }
+
+ @Override
+ protected void onDialogClosed(boolean positiveResult) {
+ super.onDialogClosed(positiveResult);
+
+ if (!positiveResult && mNotificationSeekBarVolumizer != null) {
+ mNotificationSeekBarVolumizer.revertVolume();
+ }
+
+ cleanup();
+ }
+
+ @Override
+ public void onActivityStop() {
+ super.onActivityStop();
+ cleanup();
+ }
+
+ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+ setNotificationVolumeVisibility(!isChecked);
+
+ Settings.System.putInt(getContext().getContentResolver(),
+ Settings.System.NOTIFICATIONS_USE_RING_VOLUME, isChecked ? 1 : 0);
+
+ if (isChecked) {
+ // The user wants the notification to be same as ring, so do a
+ // one-time sync right now
+ AudioManager audioManager = (AudioManager) getContext()
+ .getSystemService(Context.AUDIO_SERVICE);
+ audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION,
+ audioManager.getStreamVolume(AudioManager.STREAM_RING), 0);
+ }
+ }
+
+ @Override
+ protected void onSampleStarting(SeekBarVolumizer volumizer) {
+ super.onSampleStarting(volumizer);
+
+ if (mNotificationSeekBarVolumizer != null && volumizer != mNotificationSeekBarVolumizer) {
+ mNotificationSeekBarVolumizer.stopSample();
+ }
+ }
+
+ private void setNotificationVolumeVisibility(boolean visible) {
+ if (mNotificationSeekBarVolumizer != null) {
+ mNotificationSeekBarVolumizer.getSeekBar().setVisibility(
+ visible ? View.VISIBLE : View.GONE);
+ mNotificationVolumeTitle.setVisibility(visible ? View.VISIBLE : View.GONE);
+ }
+ }
+
+ private void cleanup() {
+ if (mNotificationSeekBarVolumizer != null) {
+ mNotificationSeekBarVolumizer.stop();
+ mNotificationSeekBarVolumizer = null;
+ }
+ }
+
+}
diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java
index c1a509a..a0a52a2 100644
--- a/src/com/android/settings/SecuritySettings.java
+++ b/src/com/android/settings/SecuritySettings.java
@@ -44,11 +44,13 @@ public class SecuritySettings extends PreferenceActivity
private static final String KEY_LOCK_ENABLED = "lockenabled";
private static final String KEY_VISIBLE_PATTERN = "visiblepattern";
+ private static final String KEY_TACTILE_FEEDBACK_ENABLED = "tactilefeedback";
private static final int CONFIRM_PATTERN_REQUEST_CODE = 55;
private LockPatternUtils mLockPatternUtils;
private CheckBoxPreference mLockEnabled;
private CheckBoxPreference mVisiblePattern;
+ private CheckBoxPreference mTactileFeedback;
private Preference mChoosePattern;
private CheckBoxPreference mShowPassword;
@@ -103,6 +105,12 @@ public class SecuritySettings extends PreferenceActivity
mVisiblePattern.setTitle(R.string.lockpattern_settings_enable_visible_pattern_title);
inlinePrefCat.addPreference(mVisiblePattern);
+ // tactile feedback
+ mTactileFeedback = new CheckBoxPreference(this);
+ mTactileFeedback.setKey(KEY_TACTILE_FEEDBACK_ENABLED);
+ mTactileFeedback.setTitle(R.string.lockpattern_settings_enable_tactile_feedback_title);
+ inlinePrefCat.addPreference(mTactileFeedback);
+
// change pattern lock
Intent intent = new Intent();
intent.setClassName("com.android.settings",
@@ -146,9 +154,11 @@ public class SecuritySettings extends PreferenceActivity
boolean patternExists = mLockPatternUtils.savedPatternExists();
mLockEnabled.setEnabled(patternExists);
mVisiblePattern.setEnabled(patternExists);
+ mTactileFeedback.setEnabled(patternExists);
mLockEnabled.setChecked(mLockPatternUtils.isLockPatternEnabled());
mVisiblePattern.setChecked(mLockPatternUtils.isVisiblePatternEnabled());
+ mTactileFeedback.setChecked(mLockPatternUtils.isTactileFeedbackEnabled());
int chooseStringRes = mLockPatternUtils.savedPatternExists() ?
R.string.lockpattern_settings_change_lock_pattern :
@@ -169,6 +179,8 @@ public class SecuritySettings extends PreferenceActivity
mLockPatternUtils.setLockPatternEnabled(isToggled(preference));
} else if (KEY_VISIBLE_PATTERN.equals(key)) {
mLockPatternUtils.setVisiblePatternEnabled(isToggled(preference));
+ } else if (KEY_TACTILE_FEEDBACK_ENABLED.equals(key)) {
+ mLockPatternUtils.setTactileFeedbackEnabled(isToggled(preference));
} else if (preference == mShowPassword) {
Settings.System.putInt(getContentResolver(), Settings.System.TEXT_SHOW_PASSWORD,
mShowPassword.isChecked() ? 1 : 0);
@@ -198,9 +210,9 @@ public class SecuritySettings extends PreferenceActivity
}
private void setProviders(String providers) {
- // Update the system setting LOCATION_PROVIDERS_ALLOWED
- Settings.System.putString(getContentResolver(),
- Settings.System.LOCATION_PROVIDERS_ALLOWED, providers);
+ // Update the secure setting LOCATION_PROVIDERS_ALLOWED
+ Settings.Secure.putString(getContentResolver(),
+ Settings.Secure.LOCATION_PROVIDERS_ALLOWED, providers);
if (Config.LOGV) {
Log.v("Location Accuracy", "Setting LOCATION_PROVIDERS_ALLOWED = " + providers);
}
@@ -213,8 +225,8 @@ public class SecuritySettings extends PreferenceActivity
*/
private String getAllowedProviders() {
String allowedProviders =
- Settings.System.getString(getContentResolver(),
- Settings.System.LOCATION_PROVIDERS_ALLOWED);
+ Settings.Secure.getString(getContentResolver(),
+ Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
if (allowedProviders == null) {
allowedProviders = "";
}
diff --git a/src/com/android/settings/SettingsLicenseActivity.java b/src/com/android/settings/SettingsLicenseActivity.java
index 82eadca..c40dd07 100644
--- a/src/com/android/settings/SettingsLicenseActivity.java
+++ b/src/com/android/settings/SettingsLicenseActivity.java
@@ -28,13 +28,10 @@ import android.widget.Toast;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
-import java.io.UnsupportedEncodingException;
import com.android.internal.app.AlertActivity;
import com.android.internal.app.AlertController;
-import org.apache.commons.codec.binary.Base64;
-
/**
* The "dialog" that shows from "License" in the Settings app.
*/
@@ -92,27 +89,8 @@ public class SettingsLicenseActivity extends AlertActivity {
WebView webView = new WebView(this);
- if (LOGV) Log.v(TAG, "Started encode at " + System.currentTimeMillis());
- // Need to encode to base64 for WebView to load the contents properly
- String dataStr;
- try {
- byte[] base64Bytes = Base64.encodeBase64(data.toString().getBytes("ISO8859_1"));
- dataStr = new String(base64Bytes);
- } catch (UnsupportedEncodingException e) {
- Log.e(TAG, "Could not convert to base64", e);
- showErrorAndFinish();
- return;
- }
- if (LOGV) Log.v(TAG, "Ended encode at " + System.currentTimeMillis());
- if (LOGV) {
- Log.v(TAG, "Started test decode at " + System.currentTimeMillis());
- Base64.decodeBase64(dataStr.getBytes());
- Log.v(TAG, "Ended decode at " + System.currentTimeMillis());
- }
-
-
// Begin the loading. This will be done in a separate thread in WebView.
- webView.loadData(dataStr, "text/html", "base64");
+ webView.loadDataWithBaseURL(null, data.toString(), "text/html", "utf-8", null);
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
diff --git a/src/com/android/settings/SoundAndDisplaySettings.java b/src/com/android/settings/SoundAndDisplaySettings.java
index 887fb8f..134e84f 100644
--- a/src/com/android/settings/SoundAndDisplaySettings.java
+++ b/src/com/android/settings/SoundAndDisplaySettings.java
@@ -25,6 +25,8 @@ import android.content.Intent;
import android.content.IntentFilter;
import android.media.AudioManager;
import android.os.Bundle;
+import android.os.RemoteException;
+import android.os.ServiceManager;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.PreferenceActivity;
@@ -32,6 +34,7 @@ import android.preference.PreferenceScreen;
import android.preference.CheckBoxPreference;
import android.provider.Settings;
import android.util.Log;
+import android.view.IWindowManager;
public class SoundAndDisplaySettings extends PreferenceActivity implements
Preference.OnPreferenceChangeListener {
@@ -45,14 +48,19 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
private static final String KEY_SCREEN_TIMEOUT = "screen_timeout";
private static final String KEY_DTMF_TONE = "dtmf_tone";
private static final String KEY_SOUND_EFFECTS = "sound_effects";
+ private static final String KEY_ANIMATIONS = "animations";
private CheckBoxPreference mSilent;
private CheckBoxPreference mVibrate;
private CheckBoxPreference mDtmfTone;
private CheckBoxPreference mSoundEffects;
+ private CheckBoxPreference mAnimations;
+ private float[] mAnimationScales;
private AudioManager mAudioManager;
+ private IWindowManager mWindowManager;
+
private BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
@@ -73,6 +81,7 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
ContentResolver resolver = getContentResolver();
mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
+ mWindowManager = IWindowManager.Stub.asInterface(ServiceManager.getService("window"));
addPreferencesFromResource(R.xml.sound_and_display_settings);
@@ -86,11 +95,13 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
mSoundEffects.setPersistent(false);
mSoundEffects.setChecked(Settings.System.getInt(resolver,
Settings.System.SOUND_EFFECTS_ENABLED, 0) != 0);
+ mAnimations = (CheckBoxPreference) findPreference(KEY_ANIMATIONS);
+ mAnimations.setPersistent(false);
ListPreference screenTimeoutPreference =
(ListPreference) findPreference(KEY_SCREEN_TIMEOUT);
screenTimeoutPreference.setValue(String.valueOf(Settings.System.getInt(
- getContentResolver(), SCREEN_OFF_TIMEOUT, FALLBACK_SCREEN_TIMEOUT_VALUE)));
+ resolver, SCREEN_OFF_TIMEOUT, FALLBACK_SCREEN_TIMEOUT_VALUE)));
screenTimeoutPreference.setOnPreferenceChangeListener(this);
}
@@ -124,6 +135,23 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
if (phoneVibrate != mVibrate.isChecked() || force) {
mVibrate.setChecked(phoneVibrate);
}
+
+ boolean animations = true;
+ try {
+ mAnimationScales = mWindowManager.getAnimationScales();
+ } catch (RemoteException e) {
+ }
+ if (mAnimationScales != null) {
+ for (int i=0; i<mAnimationScales.length; i++) {
+ if (mAnimationScales[i] == 0) {
+ animations = false;
+ break;
+ }
+ }
+ }
+ if (animations != mAnimations.isChecked() || force) {
+ mAnimations.setChecked(animations);
+ }
}
@Override
@@ -151,6 +179,15 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
}
Settings.System.putInt(getContentResolver(), Settings.System.SOUND_EFFECTS_ENABLED,
mSoundEffects.isChecked() ? 1 : 0);
+
+ } else if (preference == mAnimations) {
+ for (int i=0; i<mAnimationScales.length; i++) {
+ mAnimationScales[i] = mAnimations.isChecked() ? 1 : 0;
+ }
+ try {
+ mWindowManager.setAnimationScales(mAnimationScales);
+ } catch (RemoteException e) {
+ }
}
return true;
}
diff --git a/src/com/android/settings/WirelessSettings.java b/src/com/android/settings/WirelessSettings.java
index 18b30bd..d112915 100644
--- a/src/com/android/settings/WirelessSettings.java
+++ b/src/com/android/settings/WirelessSettings.java
@@ -16,25 +16,13 @@
package com.android.settings;
+import com.android.settings.bluetooth.BluetoothEnabler;
import com.android.settings.wifi.WifiEnabler;
-import android.bluetooth.BluetoothDevice;
-import android.bluetooth.BluetoothIntent;
-import android.bluetooth.IBluetoothDeviceCallback;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.IntentFilter;
import android.net.wifi.WifiManager;
import android.os.Bundle;
-import android.os.Handler;
-import android.os.Message;
-import android.preference.Preference;
import android.preference.PreferenceActivity;
-import android.preference.PreferenceScreen;
import android.preference.CheckBoxPreference;
-import android.provider.Settings;
-import android.widget.Toast;
public class WirelessSettings extends PreferenceActivity {
@@ -44,13 +32,7 @@ public class WirelessSettings extends PreferenceActivity {
private WifiEnabler mWifiEnabler;
private AirplaneModeEnabler mAirplaneModeEnabler;
-
- private CheckBoxPreference mToggleBluetooth;
-
- private IntentFilter mIntentFilter;
-
- private static final int EVENT_FAILED_BT_ENABLE = 1;
- private static final int EVENT_PASSED_BT_ENABLE = 2;
+ private BluetoothEnabler mBtEnabler;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -58,30 +40,25 @@ public class WirelessSettings extends PreferenceActivity {
addPreferencesFromResource(R.xml.wireless_settings);
- mIntentFilter = new IntentFilter();
- mIntentFilter.addAction(BluetoothIntent.ENABLED_ACTION);
- mIntentFilter.addAction(BluetoothIntent.DISABLED_ACTION);
-
initToggles();
}
@Override
protected void onResume() {
super.onResume();
- refreshToggles();
- registerReceiver(mReceiver, mIntentFilter);
mWifiEnabler.resume();
mAirplaneModeEnabler.resume();
+ mBtEnabler.resume();
}
@Override
protected void onPause() {
super.onPause();
- unregisterReceiver(mReceiver);
-
+
mWifiEnabler.pause();
mAirplaneModeEnabler.pause();
+ mBtEnabler.pause();
}
private void initToggles() {
@@ -95,116 +72,9 @@ public class WirelessSettings extends PreferenceActivity {
this,
(CheckBoxPreference) findPreference(KEY_TOGGLE_AIRPLANE));
- mToggleBluetooth = (CheckBoxPreference) findPreference(KEY_TOGGLE_BLUETOOTH);
- mToggleBluetooth.setPersistent(false);
- }
-
- private void refreshToggles() {
- mToggleBluetooth.setChecked(isBluetoothEnabled());
- mToggleBluetooth.setEnabled(true);
- }
-
- @Override
- public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
- if (preference == mToggleBluetooth) {
- setBluetoothEnabled(mToggleBluetooth.isChecked());
- return true;
- }
-
- return false;
- }
-
- private boolean isBluetoothEnabled() {
- BluetoothDevice device = (BluetoothDevice)getSystemService(BLUETOOTH_SERVICE);
- if (device != null) {
- return device.isEnabled();
- } else {
- return false;
- }
- }
-
- private void setBluetoothEnabled(boolean enabled) {
- try {
- BluetoothDevice device = (BluetoothDevice)getSystemService(BLUETOOTH_SERVICE);
- if (enabled) {
- // Turn it off until intent or callback is delivered
- mToggleBluetooth.setChecked(false);
- if (device.enable(mBtCallback)) {
- mToggleBluetooth.setSummary(R.string.bluetooth_enabling);
- mToggleBluetooth.setEnabled(false);
- }
- } else {
- if (device.disable()) {
- Settings.System.putInt(getContentResolver(),
- Settings.System.BLUETOOTH_ON, 0);
- } else {
- // Unusual situation, that you can't turn off bluetooth
- mToggleBluetooth.setChecked(true);
- }
- }
- } catch (NullPointerException e) {
- // TODO: 1071858
- mToggleBluetooth.setChecked(false);
- mToggleBluetooth.setEnabled(false);
- }
- }
-
- private IBluetoothDeviceCallback mBtCallback = new IBluetoothDeviceCallback.Stub() {
-
- public void onEnableResult(int res) {
- switch (res) {
- case BluetoothDevice.RESULT_FAILURE:
- mHandler.sendMessage(mHandler.obtainMessage(EVENT_FAILED_BT_ENABLE, 0));
- break;
- case BluetoothDevice.RESULT_SUCCESS:
- mHandler.sendMessage(mHandler.obtainMessage(EVENT_PASSED_BT_ENABLE, 0));
- break;
- }
- }
-
- public void onCreateBondingResult(String device, int res) {
- // Don't care
- }
- public void onGetRemoteServiceChannelResult(String address, int channel) { }
- };
-
- private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
- @Override
- public void onReceive(Context context, Intent intent) {
- String action = intent.getAction();
- if (action.equals(BluetoothIntent.ENABLED_ACTION)) {
- updateBtStatus(true);
- } else if (action.equals(BluetoothIntent.DISABLED_ACTION)) {
- mToggleBluetooth.setChecked(false);
- }
- }
- };
-
- private void updateBtStatus(boolean enabled) {
- mToggleBluetooth.setChecked(enabled);
- mToggleBluetooth.setEnabled(true);
- mToggleBluetooth.setSummary(R.string.bluetooth_quick_toggle_summary);
- if (enabled) {
- Settings.System.putInt(getContentResolver(),
- Settings.System.BLUETOOTH_ON, 1);
- }
+ mBtEnabler = new BluetoothEnabler(
+ this,
+ (CheckBoxPreference) findPreference(KEY_TOGGLE_BLUETOOTH));
}
- private Handler mHandler = new Handler() {
- @Override
- public void handleMessage(Message msg) {
- switch (msg.what) {
- case EVENT_PASSED_BT_ENABLE:
- updateBtStatus(true);
- break;
- case EVENT_FAILED_BT_ENABLE:
- updateBtStatus(false);
- Toast.makeText(WirelessSettings.this,
- getResources().getString(R.string.bluetooth_failed_to_enable),
- Toast.LENGTH_SHORT).show();
-
- break;
- }
- }
- };
}
diff --git a/src/com/android/settings/bluetooth/BluetoothDevicePreference.java b/src/com/android/settings/bluetooth/BluetoothDevicePreference.java
new file mode 100644
index 0000000..f0a8189
--- /dev/null
+++ b/src/com/android/settings/bluetooth/BluetoothDevicePreference.java
@@ -0,0 +1,122 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.R;
+
+import android.content.Context;
+import android.preference.Preference;
+import android.util.TypedValue;
+import android.view.View;
+import android.widget.ImageView;
+
+/**
+ * BluetoothDevicePreference is the preference type used to display each remote
+ * Bluetooth device in the Bluetooth Settings screen.
+ */
+public class BluetoothDevicePreference extends Preference implements LocalBluetoothDevice.Callback {
+ private static final String TAG = "BluetoothDevicePreference";
+
+ private static int sDimAlpha = Integer.MIN_VALUE;
+
+ private LocalBluetoothDevice mLocalDevice;
+
+ /**
+ * Cached local copy of whether the device is busy. This is only updated
+ * from {@link #onDeviceAttributesChanged(LocalBluetoothDevice)}.
+ */
+ private boolean mIsBusy;
+
+ public BluetoothDevicePreference(Context context, LocalBluetoothDevice localDevice) {
+ super(context);
+
+ if (sDimAlpha == Integer.MIN_VALUE) {
+ TypedValue outValue = new TypedValue();
+ context.getTheme().resolveAttribute(android.R.attr.disabledAlpha, outValue, true);
+ sDimAlpha = (int) (outValue.getFloat() * 255);
+ }
+
+ mLocalDevice = localDevice;
+
+ setLayoutResource(R.layout.preference_bluetooth);
+
+ localDevice.registerCallback(this);
+
+ onDeviceAttributesChanged(localDevice);
+ }
+
+ public LocalBluetoothDevice getDevice() {
+ return mLocalDevice;
+ }
+
+ @Override
+ protected void onPrepareForRemoval() {
+ super.onPrepareForRemoval();
+ mLocalDevice.unregisterCallback(this);
+ }
+
+ public void onDeviceAttributesChanged(LocalBluetoothDevice device) {
+
+ /*
+ * The preference framework takes care of making sure the value has
+ * changed before proceeding.
+ */
+
+ setTitle(mLocalDevice.getName());
+
+ /*
+ * TODO: Showed "Paired" even though it was "Connected". This may be
+ * related to BluetoothHeadset not bound to the actual
+ * BluetoothHeadsetService when we got here.
+ */
+ setSummary(mLocalDevice.getSummary());
+
+ // Used to gray out the item
+ mIsBusy = mLocalDevice.isBusy();
+
+ // Data has changed
+ notifyChanged();
+
+ // This could affect ordering, so notify that also
+ notifyHierarchyChanged();
+ }
+
+ @Override
+ public boolean isEnabled() {
+ return super.isEnabled() && !mIsBusy;
+ }
+
+ @Override
+ protected void onBindView(View view) {
+ super.onBindView(view);
+
+ ImageView btClass = (ImageView) view.findViewById(R.id.btClass);
+ btClass.setImageResource(mLocalDevice.getBtClassDrawable());
+ btClass.setAlpha(isEnabled() ? 255 : sDimAlpha);
+ }
+
+ @Override
+ public int compareTo(Preference another) {
+ if (!(another instanceof BluetoothDevicePreference)) {
+ // Put other preference types above us
+ return 1;
+ }
+
+ return mLocalDevice.compareTo(((BluetoothDevicePreference) another).mLocalDevice);
+ }
+
+}
diff --git a/src/com/android/settings/bluetooth/BluetoothDiscoverableEnabler.java b/src/com/android/settings/bluetooth/BluetoothDiscoverableEnabler.java
new file mode 100644
index 0000000..f895696
--- /dev/null
+++ b/src/com/android/settings/bluetooth/BluetoothDiscoverableEnabler.java
@@ -0,0 +1,192 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.R;
+
+import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothIntent;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.content.SharedPreferences;
+import android.os.Handler;
+import android.os.SystemProperties;
+import android.preference.Preference;
+import android.preference.CheckBoxPreference;
+import android.util.Log;
+
+/**
+ * BluetoothDiscoverableEnabler is a helper to manage the "Discoverable"
+ * checkbox. It sets/unsets discoverability and keeps track of how much time
+ * until the the discoverability is automatically turned off.
+ */
+public class BluetoothDiscoverableEnabler implements Preference.OnPreferenceChangeListener {
+ private static final String TAG = "BluetoothDiscoverableEnabler";
+ private static final boolean V = LocalBluetoothManager.V;
+
+ private static final String SYSTEM_PROPERTY_DISCOVERABLE_TIMEOUT =
+ "debug.bt.discoverable_time";
+ private static final int DISCOVERABLE_TIMEOUT = 120;
+
+ private static final String SHARED_PREFERENCES_KEY_DISCOVERABLE_END_TIMESTAMP =
+ "discoverable_end_timestamp";
+
+ private final Context mContext;
+ private final Handler mUiHandler;
+ private final CheckBoxPreference mCheckBoxPreference;
+
+ private final LocalBluetoothManager mLocalManager;
+
+ private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ handleModeChanged(intent.getIntExtra(BluetoothIntent.MODE,
+ BluetoothDevice.MODE_UNKNOWN));
+ }
+ };
+
+ private final Runnable mUpdateCountdownSummaryRunnable = new Runnable() {
+ public void run() {
+ updateCountdownSummary();
+ }
+ };
+
+ public BluetoothDiscoverableEnabler(Context context, CheckBoxPreference checkBoxPreference) {
+ mContext = context;
+ mUiHandler = new Handler();
+ mCheckBoxPreference = checkBoxPreference;
+
+ checkBoxPreference.setPersistent(false);
+
+ mLocalManager = LocalBluetoothManager.getInstance(context);
+ if (mLocalManager == null) {
+ // Bluetooth not supported
+ checkBoxPreference.setEnabled(false);
+ }
+ }
+
+ public void resume() {
+ if (mLocalManager == null) {
+ return;
+ }
+
+ mContext.registerReceiver(mReceiver,
+ new IntentFilter(BluetoothIntent.MODE_CHANGED_ACTION));
+ mCheckBoxPreference.setOnPreferenceChangeListener(this);
+
+ handleModeChanged(mLocalManager.getBluetoothManager().getMode());
+ }
+
+ public void pause() {
+ if (mLocalManager == null) {
+ return;
+ }
+
+ mUiHandler.removeCallbacks(mUpdateCountdownSummaryRunnable);
+ mCheckBoxPreference.setOnPreferenceChangeListener(null);
+ mContext.unregisterReceiver(mReceiver);
+ }
+
+ public boolean onPreferenceChange(Preference preference, Object value) {
+ if (V) {
+ Log.v(TAG, "Preference changed to " + value);
+ }
+
+ // Turn on/off BT discoverability
+ setEnabled((Boolean) value);
+
+ return true;
+ }
+
+ private void setEnabled(final boolean enable) {
+ BluetoothDevice manager = mLocalManager.getBluetoothManager();
+
+ if (enable) {
+
+ int timeout = getDiscoverableTimeout();
+ manager.setDiscoverableTimeout(timeout);
+
+ long endTimestamp = System.currentTimeMillis() + timeout * 1000;
+ persistDiscoverableEndTimestamp(endTimestamp);
+
+ manager.setMode(BluetoothDevice.MODE_DISCOVERABLE);
+ handleModeChanged(BluetoothDevice.MODE_DISCOVERABLE);
+
+ } else {
+ manager.setMode(BluetoothDevice.MODE_CONNECTABLE);
+ }
+ }
+
+ private int getDiscoverableTimeout() {
+ int timeout = SystemProperties.getInt(SYSTEM_PROPERTY_DISCOVERABLE_TIMEOUT, -1);
+ if (timeout <= 0) {
+ timeout = DISCOVERABLE_TIMEOUT;
+ }
+
+ return timeout;
+ }
+
+ private void persistDiscoverableEndTimestamp(long endTimestamp) {
+ SharedPreferences.Editor editor = mLocalManager.getSharedPreferences().edit();
+ editor.putLong(SHARED_PREFERENCES_KEY_DISCOVERABLE_END_TIMESTAMP, endTimestamp);
+ editor.commit();
+ }
+
+ private void handleModeChanged(int mode) {
+ if (V) {
+ Log.v(TAG, "Got mode changed: " + mode);
+ }
+
+ if (mode == BluetoothDevice.MODE_DISCOVERABLE) {
+ mCheckBoxPreference.setChecked(true);
+ updateCountdownSummary();
+
+ } else {
+ mCheckBoxPreference.setChecked(false);
+ }
+ }
+
+ private void updateCountdownSummary() {
+ int mode = mLocalManager.getBluetoothManager().getMode();
+ if (mode != BluetoothDevice.MODE_DISCOVERABLE) return;
+
+ long currentTimestamp = System.currentTimeMillis();
+ long endTimestamp = mLocalManager.getSharedPreferences().getLong(
+ SHARED_PREFERENCES_KEY_DISCOVERABLE_END_TIMESTAMP, 0);
+
+ if (currentTimestamp > endTimestamp) {
+ // We're still in discoverable mode, but maybe there isn't a timeout.
+ mCheckBoxPreference.setSummaryOn(null);
+ return;
+ }
+
+ String formattedTimeLeft = String.valueOf((endTimestamp - currentTimestamp) / 1000);
+
+ mCheckBoxPreference.setSummaryOn(
+ mContext.getResources().getString(R.string.bluetooth_is_discoverable,
+ formattedTimeLeft));
+
+ synchronized (this) {
+ mUiHandler.removeCallbacks(mUpdateCountdownSummaryRunnable);
+ mUiHandler.postDelayed(mUpdateCountdownSummaryRunnable, 1000);
+ }
+ }
+
+
+}
diff --git a/src/com/android/settings/bluetooth/BluetoothEnabler.java b/src/com/android/settings/bluetooth/BluetoothEnabler.java
new file mode 100644
index 0000000..661700f
--- /dev/null
+++ b/src/com/android/settings/bluetooth/BluetoothEnabler.java
@@ -0,0 +1,149 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.R;
+import com.android.settings.bluetooth.LocalBluetoothManager.ExtendedBluetoothState;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.preference.Preference;
+import android.preference.CheckBoxPreference;
+import android.text.TextUtils;
+import android.util.Config;
+
+/**
+ * BluetoothEnabler is a helper to manage the Bluetooth on/off checkbox
+ * preference. It is turns on/off Bluetooth and ensures the summary of the
+ * preference reflects the current state.
+ */
+public class BluetoothEnabler implements Preference.OnPreferenceChangeListener {
+
+ private static final boolean LOCAL_LOGD = Config.LOGD || false;
+ private static final String TAG = "BluetoothEnabler";
+
+ private final Context mContext;
+ private final CheckBoxPreference mCheckBoxPreference;
+ private final CharSequence mOriginalSummary;
+
+ private final LocalBluetoothManager mLocalManager;
+
+ private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ handleStateChanged(mLocalManager.getBluetoothState());
+ }
+ };
+
+ public BluetoothEnabler(Context context, CheckBoxPreference checkBoxPreference) {
+ mContext = context;
+ mCheckBoxPreference = checkBoxPreference;
+
+ mOriginalSummary = checkBoxPreference.getSummary();
+ checkBoxPreference.setPersistent(false);
+
+ mLocalManager = LocalBluetoothManager.getInstance(context);
+ if (mLocalManager == null) {
+ // Bluetooth not supported
+ checkBoxPreference.setEnabled(false);
+ }
+ }
+
+ public void resume() {
+ if (mLocalManager == null) {
+ return;
+ }
+
+ ExtendedBluetoothState state = mLocalManager.getBluetoothState();
+ // This is the widget enabled state, not the preference toggled state
+ mCheckBoxPreference.setEnabled(state == ExtendedBluetoothState.ENABLED ||
+ state == ExtendedBluetoothState.DISABLED);
+ // BT state is not a sticky broadcast, so set it manually
+ handleStateChanged(state);
+
+ mContext.registerReceiver(mReceiver,
+ new IntentFilter(LocalBluetoothManager.EXTENDED_BLUETOOTH_STATE_CHANGED_ACTION));
+ mCheckBoxPreference.setOnPreferenceChangeListener(this);
+ }
+
+ public void pause() {
+ if (mLocalManager == null) {
+ return;
+ }
+
+ mContext.unregisterReceiver(mReceiver);
+ mCheckBoxPreference.setOnPreferenceChangeListener(null);
+ }
+
+ public boolean onPreferenceChange(Preference preference, Object value) {
+ // Turn on/off BT
+ setEnabled((Boolean) value);
+
+ // Don't update UI to opposite state until we're sure
+ return false;
+ }
+
+ private void setEnabled(final boolean enable) {
+ // Disable preference
+ mCheckBoxPreference.setEnabled(false);
+
+ mLocalManager.setBluetoothEnabled(enable);
+ }
+
+ private void handleStateChanged(ExtendedBluetoothState state) {
+
+ if (state == ExtendedBluetoothState.DISABLED || state == ExtendedBluetoothState.ENABLED) {
+ mCheckBoxPreference.setChecked(state == ExtendedBluetoothState.ENABLED);
+ mCheckBoxPreference
+ .setSummary(state == ExtendedBluetoothState.DISABLED ? mOriginalSummary : null);
+
+ mCheckBoxPreference.setEnabled(isEnabledByDependency());
+
+ } else if (state == ExtendedBluetoothState.ENABLING ||
+ state == ExtendedBluetoothState.DISABLING) {
+ mCheckBoxPreference.setSummary(state == ExtendedBluetoothState.ENABLING
+ ? R.string.wifi_starting
+ : R.string.wifi_stopping);
+
+ } else if (state == ExtendedBluetoothState.UNKNOWN) {
+ mCheckBoxPreference.setChecked(false);
+ mCheckBoxPreference.setSummary(R.string.wifi_error);
+ mCheckBoxPreference.setEnabled(true);
+ }
+ }
+
+ private boolean isEnabledByDependency() {
+ Preference dep = getDependencyPreference();
+ if (dep == null) {
+ return true;
+ }
+
+ return !dep.shouldDisableDependents();
+ }
+
+ private Preference getDependencyPreference() {
+ String depKey = mCheckBoxPreference.getDependency();
+ if (TextUtils.isEmpty(depKey)) {
+ return null;
+ }
+
+ return mCheckBoxPreference.getPreferenceManager().findPreference(depKey);
+ }
+
+}
diff --git a/src/com/android/settings/bluetooth/BluetoothEventRedirector.java b/src/com/android/settings/bluetooth/BluetoothEventRedirector.java
new file mode 100644
index 0000000..bcad206
--- /dev/null
+++ b/src/com/android/settings/bluetooth/BluetoothEventRedirector.java
@@ -0,0 +1,159 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.bluetooth.LocalBluetoothManager.ExtendedBluetoothState;
+
+import android.bluetooth.BluetoothA2dp;
+import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothHeadset;
+import android.bluetooth.BluetoothIntent;
+import android.bluetooth.IBluetoothDeviceCallback;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.os.Handler;
+import android.util.Log;
+
+/**
+ * BluetoothEventRedirector receives broadcasts and callbacks from the Bluetooth
+ * API and dispatches the event on the UI thread to the right class in the
+ * Settings.
+ */
+public class BluetoothEventRedirector {
+ private static final String TAG = "BluetoothEventRedirector";
+ private static final boolean V = LocalBluetoothManager.V;
+
+ private LocalBluetoothManager mManager;
+ private Handler mUiHandler = new Handler();
+
+ private IBluetoothDeviceCallback mBtDevCallback = new IBluetoothDeviceCallback.Stub() {
+ public void onCreateBondingResult(final String address, final int result) {
+ if (V) {
+ Log.v(TAG, "onCreateBondingResult(" + address + ", " + result + ")");
+ }
+
+ mUiHandler.post(new Runnable() {
+ public void run() {
+ boolean wasSuccess = result == BluetoothDevice.RESULT_SUCCESS;
+ LocalBluetoothDeviceManager deviceManager = mManager.getLocalDeviceManager();
+ deviceManager.onBondingStateChanged(address, wasSuccess);
+ if (!wasSuccess) {
+ deviceManager.onBondingError(address);
+ }
+ }
+ });
+ }
+
+ public void onEnableResult(int result) { }
+ public void onGetRemoteServiceChannelResult(String address, int channel) { }
+ };
+
+ private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ if (V) {
+ Log.v(TAG, "Received " + intent.getAction());
+ }
+
+ String action = intent.getAction();
+ String address = intent.getStringExtra(BluetoothIntent.ADDRESS);
+
+ if (action.equals(BluetoothIntent.ENABLED_ACTION)) {
+ mManager.setBluetoothStateInt(ExtendedBluetoothState.ENABLED);
+ } else if (action.equals(BluetoothIntent.DISABLED_ACTION)) {
+ mManager.setBluetoothStateInt(ExtendedBluetoothState.DISABLED);
+
+ } else if (action.equals(BluetoothIntent.DISCOVERY_STARTED_ACTION)) {
+ mManager.onScanningStateChanged(true);
+ } else if (action.equals(BluetoothIntent.DISCOVERY_COMPLETED_ACTION)) {
+ mManager.onScanningStateChanged(false);
+
+ } else if (action.equals(BluetoothIntent.REMOTE_DEVICE_FOUND_ACTION)) {
+ short rssi = intent.getShortExtra(BluetoothIntent.RSSI, Short.MIN_VALUE);
+ mManager.getLocalDeviceManager().onDeviceAppeared(address, rssi);
+ } else if (action.equals(BluetoothIntent.REMOTE_DEVICE_DISAPPEARED_ACTION)) {
+ mManager.getLocalDeviceManager().onDeviceDisappeared(address);
+ } else if (action.equals(BluetoothIntent.REMOTE_NAME_UPDATED_ACTION)) {
+ mManager.getLocalDeviceManager().onDeviceNameUpdated(address);
+
+ } else if (action.equals(BluetoothIntent.BONDING_CREATED_ACTION)) {
+ mManager.getLocalDeviceManager().onBondingStateChanged(address, true);
+ } else if (action.equals(BluetoothIntent.BONDING_REMOVED_ACTION)) {
+ mManager.getLocalDeviceManager().onBondingStateChanged(address, false);
+
+ } else if (action.equals(BluetoothIntent.HEADSET_STATE_CHANGED_ACTION)) {
+ mManager.getLocalDeviceManager().onProfileStateChanged(address);
+
+ int newState = intent.getIntExtra(BluetoothIntent.HEADSET_STATE, 0);
+ int oldState = intent.getIntExtra(BluetoothIntent.HEADSET_PREVIOUS_STATE, 0);
+ if (newState == BluetoothHeadset.STATE_DISCONNECTED &&
+ oldState == BluetoothHeadset.STATE_CONNECTING) {
+ mManager.getLocalDeviceManager().onConnectingError(address);
+ }
+
+ } else if (action.equals(BluetoothA2dp.SINK_STATE_CHANGED_ACTION)) {
+ mManager.getLocalDeviceManager().onProfileStateChanged(address);
+
+ int newState = intent.getIntExtra(BluetoothA2dp.SINK_STATE, 0);
+ int oldState = intent.getIntExtra(BluetoothA2dp.SINK_PREVIOUS_STATE, 0);
+ if (newState == BluetoothA2dp.STATE_DISCONNECTED &&
+ oldState == BluetoothA2dp.STATE_CONNECTING) {
+ mManager.getLocalDeviceManager().onConnectingError(address);
+ }
+ }
+ }
+ };
+
+ public BluetoothEventRedirector(LocalBluetoothManager localBluetoothManager) {
+ mManager = localBluetoothManager;
+ }
+
+ public void start() {
+ IntentFilter filter = new IntentFilter();
+
+ // Bluetooth on/off broadcasts
+ filter.addAction(BluetoothIntent.ENABLED_ACTION);
+ filter.addAction(BluetoothIntent.DISABLED_ACTION);
+
+ // Discovery broadcasts
+ filter.addAction(BluetoothIntent.DISCOVERY_STARTED_ACTION);
+ filter.addAction(BluetoothIntent.DISCOVERY_COMPLETED_ACTION);
+ filter.addAction(BluetoothIntent.REMOTE_DEVICE_DISAPPEARED_ACTION);
+ filter.addAction(BluetoothIntent.REMOTE_DEVICE_FOUND_ACTION);
+ filter.addAction(BluetoothIntent.REMOTE_NAME_UPDATED_ACTION);
+
+ // Pairing broadcasts
+ filter.addAction(BluetoothIntent.BONDING_CREATED_ACTION);
+ filter.addAction(BluetoothIntent.BONDING_REMOVED_ACTION);
+
+ // Fine-grained state broadcasts
+ filter.addAction(BluetoothA2dp.SINK_STATE_CHANGED_ACTION);
+ filter.addAction(BluetoothIntent.HEADSET_STATE_CHANGED_ACTION);
+
+ mManager.getContext().registerReceiver(mBroadcastReceiver, filter);
+ }
+
+ public void stop() {
+ mManager.getContext().unregisterReceiver(mBroadcastReceiver);
+ }
+
+ public IBluetoothDeviceCallback getBluetoothDeviceCallback() {
+ return mBtDevCallback;
+ }
+}
diff --git a/src/com/android/settings/bluetooth/BluetoothNamePreference.java b/src/com/android/settings/bluetooth/BluetoothNamePreference.java
new file mode 100644
index 0000000..3065b26
--- /dev/null
+++ b/src/com/android/settings/bluetooth/BluetoothNamePreference.java
@@ -0,0 +1,79 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothIntent;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.preference.EditTextPreference;
+import android.preference.PreferenceManager;
+import android.util.AttributeSet;
+
+/**
+ * BluetoothNamePreference is the preference type for editing the device's
+ * Bluetooth name. It asks the user for a name, and persists it via the
+ * Bluetooth API.
+ */
+public class BluetoothNamePreference extends EditTextPreference {
+ private static final String TAG = "BluetoothNamePreference";
+
+ private LocalBluetoothManager mLocalManager;
+
+ private BroadcastReceiver mReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ setSummaryToName();
+ }
+ };
+
+ public BluetoothNamePreference(Context context, AttributeSet attrs) {
+ super(context, attrs);
+
+ mLocalManager = LocalBluetoothManager.getInstance(context);
+
+ setSummaryToName();
+ }
+
+ public void resume() {
+ IntentFilter filter = new IntentFilter();
+ filter.addAction(BluetoothIntent.ENABLED_ACTION);
+ filter.addAction(BluetoothIntent.NAME_CHANGED_ACTION);
+ getContext().registerReceiver(mReceiver, filter);
+ }
+
+ public void pause() {
+ getContext().unregisterReceiver(mReceiver);
+ }
+
+ private void setSummaryToName() {
+ BluetoothDevice manager = mLocalManager.getBluetoothManager();
+ if (manager.isEnabled()) {
+ setSummary(manager.getName());
+ }
+ }
+
+ @Override
+ protected boolean persistString(String value) {
+ BluetoothDevice manager = mLocalManager.getBluetoothManager();
+ manager.setName(value);
+ return true;
+ }
+
+}
diff --git a/src/com/android/settings/bluetooth/BluetoothPinDialog.java b/src/com/android/settings/bluetooth/BluetoothPinDialog.java
new file mode 100644
index 0000000..291d0c1
--- /dev/null
+++ b/src/com/android/settings/bluetooth/BluetoothPinDialog.java
@@ -0,0 +1,112 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothIntent;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.os.Bundle;
+import android.text.InputFilter;
+import android.text.method.DigitsKeyListener;
+import android.util.Log;
+import android.view.View;
+import android.widget.EditText;
+import android.widget.TextView;
+
+import com.android.internal.app.AlertActivity;
+import com.android.internal.app.AlertController;
+import com.android.settings.R;
+
+/**
+ * BluetoothPinDialog asks the user to enter a PIN for pairing with a remote
+ * Bluetooth device. It is an activity that appears as a dialog.
+ */
+public class BluetoothPinDialog extends AlertActivity implements DialogInterface.OnClickListener {
+ private static final String TAG = "BluetoothPinDialog";
+
+ private LocalBluetoothManager mLocalManager;
+ private String mAddress;
+ private EditText mPinView;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ Intent intent = getIntent();
+ if (!intent.getAction().equals(BluetoothIntent.PAIRING_REQUEST_ACTION))
+ {
+ Log.e(TAG,
+ "Error: this activity may be started only with intent " +
+ BluetoothIntent.PAIRING_REQUEST_ACTION);
+ finish();
+ }
+
+ mLocalManager = LocalBluetoothManager.getInstance(this);
+ mAddress = intent.getStringExtra(BluetoothIntent.ADDRESS);
+
+ // Set up the "dialog"
+ final AlertController.AlertParams p = mAlertParams;
+ p.mIconId = android.R.drawable.ic_dialog_info;
+ p.mTitle = getString(R.string.bluetooth_pin_entry);
+ p.mView = createView();
+ p.mPositiveButtonText = getString(android.R.string.ok);
+ p.mPositiveButtonListener = this;
+ p.mNegativeButtonText = getString(android.R.string.cancel);
+ p.mNegativeButtonListener = this;
+ setupAlert();
+ }
+
+ private View createView() {
+ View view = getLayoutInflater().inflate(R.layout.bluetooth_pin_entry, null);
+
+ String name = mLocalManager.getLocalDeviceManager().getName(mAddress);
+ TextView messageView = (TextView) view.findViewById(R.id.message);
+ messageView.setText(getString(R.string.bluetooth_enter_pin_msg, name));
+
+ mPinView = (EditText) view.findViewById(R.id.text);
+
+ return view;
+ }
+
+ private void onPair(String pin) {
+ byte[] pinBytes = BluetoothDevice.convertPinToBytes(pin);
+
+ if (pinBytes == null) {
+ return;
+ }
+
+ mLocalManager.getBluetoothManager().setPin(mAddress, pinBytes);
+ }
+
+ private void onCancel() {
+ mLocalManager.getBluetoothManager().cancelPin(mAddress);
+ }
+
+ public void onClick(DialogInterface dialog, int which) {
+ switch (which) {
+ case DialogInterface.BUTTON_POSITIVE:
+ onPair(mPinView.getText().toString());
+ break;
+
+ case DialogInterface.BUTTON_NEGATIVE:
+ onCancel();
+ break;
+ }
+ }
+
+}
diff --git a/src/com/android/settings/bluetooth/BluetoothPinRequest.java b/src/com/android/settings/bluetooth/BluetoothPinRequest.java
new file mode 100644
index 0000000..619052d
--- /dev/null
+++ b/src/com/android/settings/bluetooth/BluetoothPinRequest.java
@@ -0,0 +1,96 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.R;
+
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothIntent;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.res.Resources;
+import android.text.TextUtils;
+
+/**
+ * BluetoothPinRequest is a receiver for any Bluetooth pairing PIN request. It
+ * checks if the Bluetooth Settings is currently visible and brings up the PIN
+ * entry dialog. Otherwise it puts a Notification in the status bar, which can
+ * be clicked to bring up the PIN entry dialog.
+ */
+public class BluetoothPinRequest extends BroadcastReceiver {
+
+ public static final int NOTIFICATION_ID = android.R.drawable.stat_sys_data_bluetooth;
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ String action = intent.getAction();
+ if (action.equals(BluetoothIntent.PAIRING_REQUEST_ACTION)) {
+
+ LocalBluetoothManager localManager = LocalBluetoothManager.getInstance(context);
+
+ String address = intent.getStringExtra(BluetoothIntent.ADDRESS);
+ Intent pinIntent = new Intent();
+ pinIntent.setClass(context, BluetoothPinDialog.class);
+ pinIntent.putExtra(BluetoothIntent.ADDRESS, address);
+ pinIntent.setAction(BluetoothIntent.PAIRING_REQUEST_ACTION);
+ pinIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+
+ if (localManager.getForegroundActivity() != null) {
+ // Since the BT-related activity is in the foreground, just open the dialog
+ context.startActivity(pinIntent);
+
+ } else {
+
+ // Put up a notification that leads to the dialog
+ Resources res = context.getResources();
+ Notification notification = new Notification(
+ android.R.drawable.stat_sys_data_bluetooth,
+ res.getString(R.string.bluetooth_notif_ticker),
+ System.currentTimeMillis());
+
+ PendingIntent pending = PendingIntent.getActivity(context, 0,
+ pinIntent, PendingIntent.FLAG_ONE_SHOT);
+
+ String name = intent.getStringExtra(BluetoothIntent.NAME);
+ if (TextUtils.isEmpty(name)) {
+ name = localManager.getLocalDeviceManager().getName(address);
+ }
+
+ notification.setLatestEventInfo(context,
+ res.getString(R.string.bluetooth_notif_title),
+ res.getString(R.string.bluetooth_notif_message) + name,
+ pending);
+ notification.flags |= Notification.FLAG_AUTO_CANCEL;
+
+ NotificationManager manager = (NotificationManager)
+ context.getSystemService(Context.NOTIFICATION_SERVICE);
+ manager.notify(NOTIFICATION_ID, notification);
+ }
+
+ } else if (action.equals(BluetoothIntent.PAIRING_CANCEL_ACTION)) {
+
+ // Remove the notification
+ NotificationManager manager = (NotificationManager) context
+ .getSystemService(Context.NOTIFICATION_SERVICE);
+ manager.cancel(NOTIFICATION_ID);
+ }
+ }
+}
diff --git a/src/com/android/settings/bluetooth/BluetoothSettings.java b/src/com/android/settings/bluetooth/BluetoothSettings.java
new file mode 100644
index 0000000..316e831
--- /dev/null
+++ b/src/com/android/settings/bluetooth/BluetoothSettings.java
@@ -0,0 +1,258 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.ProgressCategory;
+import com.android.settings.R;
+import com.android.settings.bluetooth.LocalBluetoothManager.ExtendedBluetoothState;
+
+import java.util.List;
+import java.util.WeakHashMap;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.os.Bundle;
+import android.preference.CheckBoxPreference;
+import android.preference.Preference;
+import android.preference.PreferenceActivity;
+import android.preference.PreferenceScreen;
+import android.view.ContextMenu;
+import android.view.Menu;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ContextMenu.ContextMenuInfo;
+import android.widget.AdapterView.AdapterContextMenuInfo;
+
+/**
+ * BluetoothSettings is the Settings screen for Bluetooth configuration and
+ * connection management.
+ */
+public class BluetoothSettings extends PreferenceActivity
+ implements LocalBluetoothManager.Callback {
+
+ private static final String TAG = "BluetoothSettings";
+
+ private static final int MENU_SCAN = Menu.FIRST;
+
+ private static final String KEY_BT_CHECKBOX = "bt_checkbox";
+ private static final String KEY_BT_DISCOVERABLE = "bt_discoverable";
+ private static final String KEY_BT_DEVICE_LIST = "bt_device_list";
+ private static final String KEY_BT_NAME = "bt_name";
+ private static final String KEY_BT_SCAN = "bt_scan";
+
+ private LocalBluetoothManager mLocalManager;
+
+ private BluetoothEnabler mEnabler;
+ private BluetoothDiscoverableEnabler mDiscoverableEnabler;
+
+ private BluetoothNamePreference mNamePreference;
+
+ private ProgressCategory mDeviceList;
+
+ private WeakHashMap<LocalBluetoothDevice, BluetoothDevicePreference> mDevicePreferenceMap =
+ new WeakHashMap<LocalBluetoothDevice, BluetoothDevicePreference>();
+
+ private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ // TODO: put this in callback instead of receiving
+ onBluetoothStateChanged(mLocalManager.getBluetoothState());
+ }
+ };
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ mLocalManager = LocalBluetoothManager.getInstance(this);
+ if (mLocalManager == null) finish();
+
+ addPreferencesFromResource(R.xml.bluetooth_settings);
+
+ mEnabler = new BluetoothEnabler(
+ this,
+ (CheckBoxPreference) findPreference(KEY_BT_CHECKBOX));
+
+ mDiscoverableEnabler = new BluetoothDiscoverableEnabler(
+ this,
+ (CheckBoxPreference) findPreference(KEY_BT_DISCOVERABLE));
+
+ mNamePreference = (BluetoothNamePreference) findPreference(KEY_BT_NAME);
+
+ mDeviceList = (ProgressCategory) findPreference(KEY_BT_DEVICE_LIST);
+
+ registerForContextMenu(getListView());
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+
+ // Repopulate (which isn't too bad since it's cached in the settings
+ // bluetooth manager
+ mDevicePreferenceMap.clear();
+ mDeviceList.removeAll();
+ addDevices();
+
+ mEnabler.resume();
+ mDiscoverableEnabler.resume();
+ mNamePreference.resume();
+ mLocalManager.registerCallback(this);
+
+ mLocalManager.startScanning(false);
+
+ registerReceiver(mReceiver,
+ new IntentFilter(LocalBluetoothManager.EXTENDED_BLUETOOTH_STATE_CHANGED_ACTION));
+
+ mLocalManager.setForegroundActivity(this);
+ }
+
+ @Override
+ protected void onPause() {
+ super.onPause();
+
+ mLocalManager.setForegroundActivity(null);
+
+ unregisterReceiver(mReceiver);
+
+ mLocalManager.unregisterCallback(this);
+ mNamePreference.pause();
+ mDiscoverableEnabler.pause();
+ mEnabler.pause();
+ }
+
+ private void addDevices() {
+ List<LocalBluetoothDevice> devices = mLocalManager.getLocalDeviceManager().getDevicesCopy();
+ for (LocalBluetoothDevice device : devices) {
+ onDeviceAdded(device);
+ }
+ }
+
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ menu.add(0, MENU_SCAN, 0, R.string.bluetooth_scan_for_devices)
+ .setIcon(R.drawable.ic_menu_refresh)
+ .setAlphabeticShortcut('r');
+ return true;
+ }
+
+ @Override
+ public boolean onPrepareOptionsMenu(Menu menu) {
+ menu.findItem(MENU_SCAN).setEnabled(mLocalManager.getBluetoothManager().isEnabled());
+ return true;
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+
+ case MENU_SCAN:
+ mLocalManager.startScanning(true);
+ return true;
+
+ default:
+ return false;
+ }
+ }
+
+ @Override
+ public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen,
+ Preference preference) {
+
+ if (KEY_BT_SCAN.equals(preference.getKey())) {
+ mLocalManager.startScanning(true);
+ return true;
+ }
+
+ if (preference instanceof BluetoothDevicePreference) {
+ BluetoothDevicePreference btPreference = (BluetoothDevicePreference) preference;
+ btPreference.getDevice().onClicked();
+ return true;
+ }
+
+ return super.onPreferenceTreeClick(preferenceScreen, preference);
+ }
+
+ @Override
+ public void onCreateContextMenu(ContextMenu menu, View v,
+ ContextMenuInfo menuInfo) {
+ LocalBluetoothDevice device = getDeviceFromMenuInfo(menuInfo);
+ if (device == null) return;
+
+ device.onCreateContextMenu(menu);
+ }
+
+ @Override
+ public boolean onContextItemSelected(MenuItem item) {
+ LocalBluetoothDevice device = getDeviceFromMenuInfo(item.getMenuInfo());
+ if (device == null) return false;
+
+ device.onContextItemSelected(item);
+ return true;
+ }
+
+ private LocalBluetoothDevice getDeviceFromMenuInfo(ContextMenuInfo menuInfo) {
+ if ((menuInfo == null) || !(menuInfo instanceof AdapterContextMenuInfo)) {
+ return null;
+ }
+
+ AdapterContextMenuInfo adapterMenuInfo = (AdapterContextMenuInfo) menuInfo;
+ Preference pref = (Preference) getPreferenceScreen().getRootAdapter().getItem(
+ adapterMenuInfo.position);
+ if (pref == null || !(pref instanceof BluetoothDevicePreference)) {
+ return null;
+ }
+
+ return ((BluetoothDevicePreference) pref).getDevice();
+ }
+
+ public void onDeviceAdded(LocalBluetoothDevice device) {
+
+ if (mDevicePreferenceMap.get(device) != null) {
+ throw new IllegalStateException("Got onDeviceAdded, but device already exists");
+ }
+
+ createDevicePreference(device);
+ }
+
+ private void createDevicePreference(LocalBluetoothDevice device) {
+ BluetoothDevicePreference preference = new BluetoothDevicePreference(this, device);
+ mDeviceList.addPreference(preference);
+ mDevicePreferenceMap.put(device, preference);
+ }
+
+ public void onDeviceDeleted(LocalBluetoothDevice device) {
+ BluetoothDevicePreference preference = mDevicePreferenceMap.remove(device);
+ if (preference != null) {
+ mDeviceList.removePreference(preference);
+ }
+ }
+
+ public void onScanningStateChanged(boolean started) {
+ mDeviceList.setProgress(started);
+ }
+
+ private void onBluetoothStateChanged(ExtendedBluetoothState bluetoothState) {
+ // When bluetooth is enabled (and we are in the activity, which we are),
+ // we should start a scan
+ if (bluetoothState == ExtendedBluetoothState.ENABLED) {
+ mLocalManager.startScanning(false);
+ }
+ }
+}
diff --git a/src/com/android/settings/bluetooth/ConnectSpecificProfilesActivity.java b/src/com/android/settings/bluetooth/ConnectSpecificProfilesActivity.java
new file mode 100644
index 0000000..f29ec79
--- /dev/null
+++ b/src/com/android/settings/bluetooth/ConnectSpecificProfilesActivity.java
@@ -0,0 +1,297 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.R;
+import com.android.settings.bluetooth.LocalBluetoothProfileManager.Profile;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.preference.CheckBoxPreference;
+import android.preference.Preference;
+import android.preference.PreferenceActivity;
+import android.preference.PreferenceGroup;
+import android.preference.PreferenceScreen;
+import android.text.TextUtils;
+import android.widget.ImageView;
+import android.widget.TextView;
+import android.util.Log;
+
+/**
+ * ConnectSpecificProfilesActivity presents the user with all of the profiles
+ * for a particular device, and allows him to choose which should be connected
+ * (or disconnected).
+ */
+public class ConnectSpecificProfilesActivity extends PreferenceActivity
+ implements LocalBluetoothDevice.Callback, Preference.OnPreferenceChangeListener {
+ private static final String TAG = "ConnectSpecificProfilesActivity";
+
+ private static final String KEY_ONLINE_MODE = "online_mode";
+ private static final String KEY_TITLE = "title";
+ private static final String KEY_PROFILE_CONTAINER = "profile_container";
+
+ public static final String EXTRA_ADDRESS = "address";
+
+ private LocalBluetoothManager mManager;
+ private LocalBluetoothDevice mDevice;
+
+ private PreferenceGroup mProfileContainer;
+ private CheckBoxPreference mOnlineModePreference;
+
+ /**
+ * The current mode of this activity and its checkboxes (either online mode
+ * or offline mode). In online mode, user interactions with the profile
+ * checkboxes will also toggle the profile's connectivity. In offline mode,
+ * they will not, and only the preferred state will be saved for the
+ * profile.
+ */
+ private boolean mOnlineMode;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ String address;
+ if (savedInstanceState != null) {
+ address = savedInstanceState.getString(EXTRA_ADDRESS);
+ } else {
+ Intent intent = getIntent();
+ address = intent.getStringExtra(EXTRA_ADDRESS);
+ }
+
+ if (TextUtils.isEmpty(address)) {
+ Log.w(TAG, "Activity started without address");
+ finish();
+ }
+
+ mManager = LocalBluetoothManager.getInstance(this);
+ mDevice = mManager.getLocalDeviceManager().findDevice(address);
+ if (mDevice == null) {
+ Log.w(TAG, "Device not found, cannot connect to it");
+ finish();
+ }
+
+ addPreferencesFromResource(R.xml.bluetooth_device_advanced);
+ mProfileContainer = (PreferenceGroup) findPreference(KEY_PROFILE_CONTAINER);
+
+ // Set the title of the screen
+ findPreference(KEY_TITLE).setTitle(
+ getString(R.string.bluetooth_device_advanced_title, mDevice.getName()));
+
+ // Listen for check/uncheck of the online mode checkbox
+ mOnlineModePreference = (CheckBoxPreference) findPreference(KEY_ONLINE_MODE);
+ mOnlineModePreference.setOnPreferenceChangeListener(this);
+
+ // Add a preference for each profile
+ addPreferencesForProfiles();
+ }
+
+ @Override
+ protected void onSaveInstanceState(Bundle outState) {
+ super.onSaveInstanceState(outState);
+
+ outState.putString(EXTRA_ADDRESS, mDevice.getAddress());
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+
+ mManager.setForegroundActivity(this);
+ mDevice.registerCallback(this);
+
+ refresh(true);
+ }
+
+ @Override
+ protected void onPause() {
+ super.onPause();
+
+ mDevice.unregisterCallback(this);
+ mManager.setForegroundActivity(null);
+ }
+
+ private void addPreferencesForProfiles() {
+ for (Profile profile : mDevice.getProfiles()) {
+ Preference pref = createProfilePreference(profile);
+ mProfileContainer.addPreference(pref);
+ }
+ }
+
+ /**
+ * Creates a checkbox preference for the particular profile. The key will be
+ * the profile's name.
+ *
+ * @param profile The profile for which the preference controls.
+ * @return A preference that allows the user to choose whether this profile
+ * will be connected to.
+ */
+ private CheckBoxPreference createProfilePreference(Profile profile) {
+ CheckBoxPreference pref = new CheckBoxPreference(this);
+ pref.setKey(profile.toString());
+ pref.setTitle(profile.localizedString);
+ pref.setPersistent(false);
+ pref.setOnPreferenceChangeListener(this);
+
+ refreshProfilePreference(pref, profile);
+
+ return pref;
+ }
+
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ String key = preference.getKey();
+ if (TextUtils.isEmpty(key) || newValue == null) return true;
+
+ if (key.equals(KEY_ONLINE_MODE)) {
+ onOnlineModeCheckedStateChanged((Boolean) newValue);
+
+ } else {
+ Profile profile = getProfileOf(preference);
+ if (profile == null) return false;
+ onProfileCheckedStateChanged(profile, (Boolean) newValue);
+ }
+
+ return true;
+ }
+
+ private void onOnlineModeCheckedStateChanged(boolean checked) {
+ switchModes(checked, false);
+ }
+
+ private void onProfileCheckedStateChanged(Profile profile, boolean checked) {
+ if (mOnlineMode) {
+ if (checked) {
+ mDevice.connect(profile);
+ } else {
+ mDevice.disconnect(profile);
+ }
+ }
+
+ LocalBluetoothProfileManager.setPreferredProfile(this, mDevice.getAddress(), profile,
+ checked);
+ }
+
+ public void onDeviceAttributesChanged(LocalBluetoothDevice device) {
+ refresh(false);
+ }
+
+ private void refresh(boolean forceRefresh) {
+ // The online mode could have changed
+ updateOnlineMode(forceRefresh);
+ refreshProfiles();
+ refreshOnlineModePreference();
+ }
+
+ private void updateOnlineMode(boolean force) {
+ // Connected or Connecting (and Disconnecting, which is fine)
+ boolean onlineMode = mDevice.isConnected() || mDevice.isBusy();
+ switchModes(onlineMode, force);
+ }
+
+ /**
+ * Switches between online/offline mode.
+ *
+ * @param onlineMode Whether to be in online mode, or offline mode.
+ */
+ private void switchModes(boolean onlineMode, boolean force) {
+ if (mOnlineMode != onlineMode || force) {
+ mOnlineMode = onlineMode;
+
+ if (onlineMode) {
+ mDevice.connect();
+ } else {
+ mDevice.disconnect();
+ }
+
+ refreshOnlineModePreference();
+ }
+ }
+
+ private void refreshOnlineModePreference() {
+ mOnlineModePreference.setChecked(mOnlineMode);
+
+ /**
+ * If the device is online, show status. Otherwise, show a summary that
+ * describes what the checkbox does.
+ */
+ mOnlineModePreference.setSummary(mOnlineMode ? mDevice.getSummary()
+ : R.string.bluetooth_device_advanced_online_mode_summary);
+ }
+
+ private void refreshProfiles() {
+ for (Profile profile : mDevice.getProfiles()) {
+ CheckBoxPreference profilePref =
+ (CheckBoxPreference) findPreference(profile.toString());
+ if (profilePref == null) continue;
+
+ refreshProfilePreference(profilePref, profile);
+ }
+ }
+
+ private void refreshProfilePreference(CheckBoxPreference profilePref, Profile profile) {
+ String address = mDevice.getAddress();
+ LocalBluetoothProfileManager profileManager = LocalBluetoothProfileManager
+ .getProfileManager(mManager, profile);
+
+ int connectionStatus = profileManager.getConnectionStatus(address);
+
+ profilePref.setSummary(getProfileSummary(profileManager, profile, address,
+ connectionStatus, mOnlineMode));
+
+ profilePref.setChecked(
+ LocalBluetoothProfileManager.isPreferredProfile(this, address, profile));
+ }
+
+ private Profile getProfileOf(Preference pref) {
+ if (!(pref instanceof CheckBoxPreference)) return null;
+ String key = pref.getKey();
+ if (TextUtils.isEmpty(key)) return null;
+
+ try {
+ return Profile.valueOf(pref.getKey());
+ } catch (IllegalArgumentException e) {
+ return null;
+ }
+ }
+
+ private static int getProfileSummary(LocalBluetoothProfileManager profileManager,
+ Profile profile, String address, int connectionStatus, boolean onlineMode) {
+ if (!onlineMode || connectionStatus == SettingsBtStatus.CONNECTION_STATUS_DISCONNECTED) {
+ return getProfileSummaryForSettingPreference(profile);
+ } else {
+ return profileManager.getSummary(address);
+ }
+ }
+
+ /**
+ * Gets the summary that describes when checked, it will become a preferred profile.
+ *
+ * @param profile The profile to get the summary for.
+ * @return The summary.
+ */
+ private static final int getProfileSummaryForSettingPreference(Profile profile) {
+ switch (profile) {
+ case A2DP:
+ return R.string.bluetooth_a2dp_profile_summary_use_for;
+ case HEADSET:
+ return R.string.bluetooth_headset_profile_summary_use_for;
+ default:
+ return 0;
+ }
+ }
+
+}
diff --git a/src/com/android/settings/bluetooth/LocalBluetoothDevice.java b/src/com/android/settings/bluetooth/LocalBluetoothDevice.java
new file mode 100644
index 0000000..a8f79ff
--- /dev/null
+++ b/src/com/android/settings/bluetooth/LocalBluetoothDevice.java
@@ -0,0 +1,558 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.R;
+import com.android.settings.bluetooth.LocalBluetoothProfileManager.Profile;
+
+import android.app.AlertDialog;
+import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothClass;
+import android.bluetooth.IBluetoothDeviceCallback;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.content.res.Resources;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.text.TextUtils;
+import android.view.ContextMenu;
+import android.view.Menu;
+import android.view.MenuItem;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * LocalBluetoothDevice represents a remote Bluetooth device. It contains
+ * attributes of the device (such as the address, name, RSSI, etc.) and
+ * functionality that can be performed on the device (connect, pair, disconnect,
+ * etc.).
+ */
+public class LocalBluetoothDevice implements Comparable<LocalBluetoothDevice> {
+ private static final String TAG = "LocalBluetoothDevice";
+
+ private static final int CONTEXT_ITEM_CONNECT = Menu.FIRST + 1;
+ private static final int CONTEXT_ITEM_DISCONNECT = Menu.FIRST + 2;
+ private static final int CONTEXT_ITEM_UNPAIR = Menu.FIRST + 3;
+ private static final int CONTEXT_ITEM_CONNECT_ADVANCED = Menu.FIRST + 4;
+
+ private final String mAddress;
+ private String mName;
+ private short mRssi;
+ private int mBtClass = BluetoothClass.ERROR;
+
+ private List<Profile> mProfiles = new ArrayList<Profile>();
+
+ private boolean mVisible;
+
+ private int mPairingStatus;
+
+ private final LocalBluetoothManager mLocalManager;
+
+ private List<Callback> mCallbacks = new ArrayList<Callback>();
+
+ /**
+ * When we connect to multiple profiles, we only want to display a single
+ * error even if they all fail. This tracks that state.
+ */
+ private boolean mIsConnectingErrorPossible;
+
+ LocalBluetoothDevice(Context context, String address) {
+ mLocalManager = LocalBluetoothManager.getInstance(context);
+ if (mLocalManager == null) {
+ throw new IllegalStateException(
+ "Cannot use LocalBluetoothDevice without Bluetooth hardware");
+ }
+
+ mAddress = address;
+
+ fillData();
+ }
+
+ public void onClicked() {
+ int pairingStatus = getPairingStatus();
+
+ if (isConnected()) {
+ askDisconnect();
+ } else if (pairingStatus == SettingsBtStatus.PAIRING_STATUS_PAIRED) {
+ connect();
+ } else if (pairingStatus == SettingsBtStatus.PAIRING_STATUS_UNPAIRED) {
+ pair();
+ }
+ }
+
+ public void disconnect() {
+ for (Profile profile : mProfiles) {
+ disconnect(profile);
+ }
+ }
+
+ public void disconnect(Profile profile) {
+ LocalBluetoothProfileManager profileManager =
+ LocalBluetoothProfileManager.getProfileManager(mLocalManager, profile);
+ int status = profileManager.getConnectionStatus(mAddress);
+ if (SettingsBtStatus.isConnectionStatusConnected(status)) {
+ profileManager.disconnect(mAddress);
+ }
+ }
+
+ public void askDisconnect() {
+ Context context = mLocalManager.getForegroundActivity();
+ if (context == null) {
+ // Cannot ask, since we need an activity context
+ disconnect();
+ return;
+ }
+
+ Resources res = context.getResources();
+
+ String name = getName();
+ if (TextUtils.isEmpty(name)) {
+ name = res.getString(R.string.bluetooth_device);
+ }
+ String message = res.getString(R.string.bluetooth_disconnect_blank, name);
+
+ DialogInterface.OnClickListener disconnectListener = new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int which) {
+ disconnect();
+ }
+ };
+
+ AlertDialog ad = new AlertDialog.Builder(context)
+ .setTitle(getName())
+ .setMessage(message)
+ .setPositiveButton(android.R.string.ok, disconnectListener)
+ .setNegativeButton(android.R.string.cancel, null)
+ .show();
+ }
+
+ public void connect() {
+ if (!ensurePaired()) return;
+
+ Context context = mLocalManager.getContext();
+ boolean hasAtLeastOnePreferredProfile = false;
+ for (Profile profile : mProfiles) {
+ if (LocalBluetoothProfileManager.isPreferredProfile(context, mAddress, profile)) {
+ hasAtLeastOnePreferredProfile = true;
+ connect(profile);
+ }
+ }
+
+ if (!hasAtLeastOnePreferredProfile) {
+ connectAndPreferAllProfiles();
+ }
+ }
+
+ private void connectAndPreferAllProfiles() {
+ if (!ensurePaired()) return;
+
+ Context context = mLocalManager.getContext();
+ for (Profile profile : mProfiles) {
+ LocalBluetoothProfileManager.setPreferredProfile(context, mAddress, profile, true);
+ connect(profile);
+ }
+ }
+
+ public void connect(Profile profile) {
+ if (!ensurePaired()) return;
+
+ LocalBluetoothProfileManager profileManager =
+ LocalBluetoothProfileManager.getProfileManager(mLocalManager, profile);
+ int status = profileManager.getConnectionStatus(mAddress);
+ if (!SettingsBtStatus.isConnectionStatusConnected(status)) {
+ mIsConnectingErrorPossible = true;
+ if (profileManager.connect(mAddress) != BluetoothDevice.RESULT_SUCCESS) {
+ showConnectingError();
+ }
+ }
+ }
+
+ public void showConnectingError() {
+ if (!mIsConnectingErrorPossible) return;
+ mIsConnectingErrorPossible = false;
+
+ mLocalManager.showError(mAddress, R.string.bluetooth_error_title,
+ R.string.bluetooth_connecting_error_message);
+ }
+
+ private boolean ensurePaired() {
+ if (getPairingStatus() == SettingsBtStatus.PAIRING_STATUS_UNPAIRED) {
+ pair();
+ return false;
+ } else {
+ return true;
+ }
+ }
+
+ public void pair() {
+ BluetoothDevice manager = mLocalManager.getBluetoothManager();
+
+ // Pairing doesn't work if scanning, so cancel
+ if (manager.isDiscovering()) {
+ manager.cancelDiscovery();
+ }
+
+ if (mLocalManager.createBonding(mAddress)) {
+ setPairingStatus(SettingsBtStatus.PAIRING_STATUS_PAIRING);
+ }
+ }
+
+ public void unpair() {
+ BluetoothDevice manager = mLocalManager.getBluetoothManager();
+
+ switch (getPairingStatus()) {
+ case SettingsBtStatus.PAIRING_STATUS_PAIRED:
+ manager.removeBonding(mAddress);
+ break;
+
+ case SettingsBtStatus.PAIRING_STATUS_PAIRING:
+ manager.cancelBondingProcess(mAddress);
+ break;
+ }
+ }
+
+ private void fillData() {
+ BluetoothDevice manager = mLocalManager.getBluetoothManager();
+
+ fetchName();
+ mBtClass = manager.getRemoteClass(mAddress);
+
+ LocalBluetoothProfileManager.fill(mBtClass, mProfiles);
+
+ mPairingStatus = manager.hasBonding(mAddress)
+ ? SettingsBtStatus.PAIRING_STATUS_PAIRED
+ : SettingsBtStatus.PAIRING_STATUS_UNPAIRED;
+
+ mVisible = false;
+
+ dispatchAttributesChanged();
+ }
+
+ public String getAddress() {
+ return mAddress;
+ }
+
+ public String getName() {
+ return mName;
+ }
+
+ public void refreshName() {
+ fetchName();
+ dispatchAttributesChanged();
+ }
+
+ private void fetchName() {
+ mName = mLocalManager.getBluetoothManager().getRemoteName(mAddress);
+
+ if (TextUtils.isEmpty(mName)) {
+ mName = mAddress;
+ }
+ }
+
+ public void refresh() {
+ dispatchAttributesChanged();
+ }
+
+ public boolean isVisible() {
+ return mVisible;
+ }
+
+ void setVisible(boolean visible) {
+ if (mVisible != visible) {
+ mVisible = visible;
+ dispatchAttributesChanged();
+ }
+ }
+
+ public int getPairingStatus() {
+ return mPairingStatus;
+ }
+
+ void setPairingStatus(int pairingStatus) {
+ if (mPairingStatus != pairingStatus) {
+ mPairingStatus = pairingStatus;
+ dispatchAttributesChanged();
+ }
+ }
+
+ void setRssi(short rssi) {
+ if (mRssi != rssi) {
+ mRssi = rssi;
+ dispatchAttributesChanged();
+ }
+ }
+
+ /**
+ * Checks whether we are connected to this device (any profile counts).
+ *
+ * @return Whether it is connected.
+ */
+ public boolean isConnected() {
+ for (Profile profile : mProfiles) {
+ int status = LocalBluetoothProfileManager.getProfileManager(mLocalManager, profile)
+ .getConnectionStatus(mAddress);
+ if (SettingsBtStatus.isConnectionStatusConnected(status)) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ public boolean isBusy() {
+ for (Profile profile : mProfiles) {
+ int status = LocalBluetoothProfileManager.getProfileManager(mLocalManager, profile)
+ .getConnectionStatus(mAddress);
+ if (SettingsBtStatus.isConnectionStatusBusy(status)) {
+ return true;
+ }
+ }
+
+ if (getPairingStatus() == SettingsBtStatus.PAIRING_STATUS_PAIRING) {
+ return true;
+ }
+
+ return false;
+ }
+
+ public int getBtClassDrawable() {
+
+ // First try looking at profiles
+ if (mProfiles.contains(Profile.A2DP)) {
+ return R.drawable.ic_bt_headphones_a2dp;
+ } else if (mProfiles.contains(Profile.HEADSET)) {
+ return R.drawable.ic_bt_headset_hfp;
+ }
+
+ // Fallback on class
+ switch (BluetoothClass.Device.Major.getDeviceMajor(mBtClass)) {
+ case BluetoothClass.Device.Major.COMPUTER:
+ return R.drawable.ic_bt_laptop;
+
+ case BluetoothClass.Device.Major.PHONE:
+ return R.drawable.ic_bt_cellphone;
+
+ default:
+ return 0;
+ }
+ }
+
+ public int getSummary() {
+ // TODO: clean up
+ int oneOffSummary = getOneOffSummary();
+ if (oneOffSummary != 0) {
+ return oneOffSummary;
+ }
+
+ for (Profile profile : mProfiles) {
+ LocalBluetoothProfileManager profileManager = LocalBluetoothProfileManager
+ .getProfileManager(mLocalManager, profile);
+ int connectionStatus = profileManager.getConnectionStatus(mAddress);
+
+ if (SettingsBtStatus.isConnectionStatusConnected(connectionStatus) ||
+ connectionStatus == SettingsBtStatus.CONNECTION_STATUS_CONNECTING ||
+ connectionStatus == SettingsBtStatus.CONNECTION_STATUS_DISCONNECTING) {
+ return SettingsBtStatus.getConnectionStatusSummary(connectionStatus);
+ }
+ }
+
+ int pairingStatus = getPairingStatus();
+ return SettingsBtStatus.getPairingStatusSummary(pairingStatus);
+ }
+
+ /**
+ * We have special summaries when particular profiles are connected. This
+ * checks for those states and returns an applicable summary.
+ *
+ * @return A one-off summary that is applicable for the current state, or 0.
+ */
+ private int getOneOffSummary() {
+ boolean isA2dpConnected = false, isHeadsetConnected = false, isConnecting = false;
+
+ if (mProfiles.contains(Profile.A2DP)) {
+ LocalBluetoothProfileManager profileManager = LocalBluetoothProfileManager
+ .getProfileManager(mLocalManager, Profile.A2DP);
+ isConnecting = profileManager.getConnectionStatus(mAddress) ==
+ SettingsBtStatus.CONNECTION_STATUS_CONNECTING;
+ isA2dpConnected = profileManager.isConnected(mAddress);
+ }
+
+ if (mProfiles.contains(Profile.HEADSET)) {
+ LocalBluetoothProfileManager profileManager = LocalBluetoothProfileManager
+ .getProfileManager(mLocalManager, Profile.HEADSET);
+ isConnecting |= profileManager.getConnectionStatus(mAddress) ==
+ SettingsBtStatus.CONNECTION_STATUS_CONNECTING;
+ isHeadsetConnected = profileManager.isConnected(mAddress);
+ }
+
+ if (isConnecting) {
+ // If any of these important profiles is connecting, prefer that
+ return SettingsBtStatus.getConnectionStatusSummary(
+ SettingsBtStatus.CONNECTION_STATUS_CONNECTING);
+ } else if (isA2dpConnected && isHeadsetConnected) {
+ return R.string.bluetooth_summary_connected_to_a2dp_headset;
+ } else if (isA2dpConnected) {
+ return R.string.bluetooth_summary_connected_to_a2dp;
+ } else if (isHeadsetConnected) {
+ return R.string.bluetooth_summary_connected_to_headset;
+ } else {
+ return 0;
+ }
+ }
+
+ public List<Profile> getProfiles() {
+ return new ArrayList<Profile>(mProfiles);
+ }
+
+ public void onCreateContextMenu(ContextMenu menu) {
+ // No context menu if it is busy (none of these items are applicable if busy)
+ if (isBusy()) return;
+
+ // No context menu if there are no profiles
+ if (mProfiles.size() == 0) return;
+
+ int pairingStatus = getPairingStatus();
+ boolean isConnected = isConnected();
+
+ menu.setHeaderTitle(getName());
+
+ if (isConnected) {
+ menu.add(0, CONTEXT_ITEM_DISCONNECT, 0, R.string.bluetooth_device_context_disconnect);
+ } else {
+ // For connection action, show either "Connect" or "Pair & connect"
+ int connectString = pairingStatus == SettingsBtStatus.PAIRING_STATUS_UNPAIRED
+ ? R.string.bluetooth_device_context_pair_connect
+ : R.string.bluetooth_device_context_connect;
+ menu.add(0, CONTEXT_ITEM_CONNECT, 0, connectString);
+ }
+
+ if (pairingStatus == SettingsBtStatus.PAIRING_STATUS_PAIRED) {
+ // For unpair action, show either "Unpair" or "Disconnect & unpair"
+ int unpairString = isConnected
+ ? R.string.bluetooth_device_context_disconnect_unpair
+ : R.string.bluetooth_device_context_unpair;
+ menu.add(0, CONTEXT_ITEM_UNPAIR, 0, unpairString);
+
+ // Show the connection options item
+ menu.add(0, CONTEXT_ITEM_CONNECT_ADVANCED, 0,
+ R.string.bluetooth_device_context_connect_advanced);
+ }
+ }
+
+ /**
+ * Called when a context menu item is clicked.
+ *
+ * @param item The item that was clicked.
+ */
+ public void onContextItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+ case CONTEXT_ITEM_DISCONNECT:
+ disconnect();
+ break;
+
+ case CONTEXT_ITEM_CONNECT:
+ connect();
+ break;
+
+ case CONTEXT_ITEM_UNPAIR:
+ unpair();
+ break;
+
+ case CONTEXT_ITEM_CONNECT_ADVANCED:
+ Intent intent = new Intent();
+ // Need an activity context to open this in our task
+ Context context = mLocalManager.getForegroundActivity();
+ if (context == null) {
+ // Fallback on application context, and open in a new task
+ context = mLocalManager.getContext();
+ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ }
+ intent.setClass(context, ConnectSpecificProfilesActivity.class);
+ intent.putExtra(ConnectSpecificProfilesActivity.EXTRA_ADDRESS, mAddress);
+ context.startActivity(intent);
+ break;
+ }
+ }
+
+ public void registerCallback(Callback callback) {
+ synchronized (mCallbacks) {
+ mCallbacks.add(callback);
+ }
+ }
+
+ public void unregisterCallback(Callback callback) {
+ synchronized (mCallbacks) {
+ mCallbacks.remove(callback);
+ }
+ }
+
+ private void dispatchAttributesChanged() {
+ synchronized (mCallbacks) {
+ for (Callback callback : mCallbacks) {
+ callback.onDeviceAttributesChanged(this);
+ }
+ }
+ }
+
+ @Override
+ public String toString() {
+ return mAddress;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if ((o == null) || !(o instanceof LocalBluetoothDevice)) {
+ throw new ClassCastException();
+ }
+
+ return mAddress.equals(((LocalBluetoothDevice) o).mAddress);
+ }
+
+ @Override
+ public int hashCode() {
+ return mAddress.hashCode();
+ }
+
+ public int compareTo(LocalBluetoothDevice another) {
+ int comparison;
+
+ // Connected above not connected
+ comparison = (another.isConnected() ? 1 : 0) - (isConnected() ? 1 : 0);
+ if (comparison != 0) return comparison;
+
+ // Paired above not paired
+ comparison = (another.mPairingStatus == SettingsBtStatus.PAIRING_STATUS_PAIRED ? 1 : 0) -
+ (mPairingStatus == SettingsBtStatus.PAIRING_STATUS_PAIRED ? 1 : 0);
+ if (comparison != 0) return comparison;
+
+ // Visible above not visible
+ comparison = (another.mVisible ? 1 : 0) - (mVisible ? 1 : 0);
+ if (comparison != 0) return comparison;
+
+ // Stronger signal above weaker signal
+ comparison = another.mRssi - mRssi;
+ if (comparison != 0) return comparison;
+
+ // Fallback on name
+ return getName().compareTo(another.getName());
+ }
+
+ public interface Callback {
+ void onDeviceAttributesChanged(LocalBluetoothDevice device);
+ }
+}
diff --git a/src/com/android/settings/bluetooth/LocalBluetoothDeviceManager.java b/src/com/android/settings/bluetooth/LocalBluetoothDeviceManager.java
new file mode 100644
index 0000000..48a41f1
--- /dev/null
+++ b/src/com/android/settings/bluetooth/LocalBluetoothDeviceManager.java
@@ -0,0 +1,209 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import android.app.AlertDialog;
+import android.bluetooth.BluetoothDevice;
+import android.util.Log;
+import android.widget.Toast;
+import android.content.Context;
+
+import com.android.settings.R;
+import com.android.settings.bluetooth.LocalBluetoothManager.Callback;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * LocalBluetoothDeviceManager manages the set of remote Bluetooth devices.
+ */
+public class LocalBluetoothDeviceManager {
+ private static final String TAG = "LocalBluetoothDeviceManager";
+
+ final LocalBluetoothManager mLocalManager;
+ final List<Callback> mCallbacks;
+
+ final List<LocalBluetoothDevice> mDevices = new ArrayList<LocalBluetoothDevice>();
+
+ public LocalBluetoothDeviceManager(LocalBluetoothManager localManager) {
+ mLocalManager = localManager;
+ mCallbacks = localManager.getCallbacks();
+ readPairedDevices();
+ }
+
+ private synchronized void readPairedDevices() {
+ BluetoothDevice manager = mLocalManager.getBluetoothManager();
+ String[] bondedAddresses = manager.listBondings();
+ if (bondedAddresses == null) return;
+
+ for (String address : bondedAddresses) {
+ LocalBluetoothDevice device = findDevice(address);
+ if (device == null) {
+ device = new LocalBluetoothDevice(mLocalManager.getContext(), address);
+ mDevices.add(device);
+ dispatchDeviceAdded(device);
+ }
+ }
+ }
+
+ public synchronized List<LocalBluetoothDevice> getDevicesCopy() {
+ return new ArrayList<LocalBluetoothDevice>(mDevices);
+ }
+
+ void onBluetoothStateChanged(boolean enabled) {
+ if (enabled) {
+ readPairedDevices();
+ }
+ }
+
+ public synchronized void onDeviceAppeared(String address, short rssi) {
+ boolean deviceAdded = false;
+
+ LocalBluetoothDevice device = findDevice(address);
+ if (device == null) {
+ device = new LocalBluetoothDevice(mLocalManager.getContext(), address);
+ mDevices.add(device);
+ deviceAdded = true;
+ }
+
+ device.setRssi(rssi);
+ device.setVisible(true);
+
+ if (deviceAdded) {
+ dispatchDeviceAdded(device);
+ }
+ }
+
+ public synchronized void onDeviceDisappeared(String address) {
+ LocalBluetoothDevice device = findDevice(address);
+ if (device == null) return;
+
+ device.setVisible(false);
+ checkForDeviceRemoval(device);
+ }
+
+ private void checkForDeviceRemoval(LocalBluetoothDevice device) {
+ if (device.getPairingStatus() == SettingsBtStatus.PAIRING_STATUS_UNPAIRED &&
+ !device.isVisible()) {
+ // If device isn't paired, remove it altogether
+ mDevices.remove(device);
+ dispatchDeviceDeleted(device);
+ }
+ }
+
+ public synchronized void onDeviceNameUpdated(String address) {
+ LocalBluetoothDevice device = findDevice(address);
+ if (device != null) {
+ device.refreshName();
+ }
+ }
+
+ public synchronized LocalBluetoothDevice findDevice(String address) {
+
+ for (int i = mDevices.size() - 1; i >= 0; i--) {
+ LocalBluetoothDevice device = mDevices.get(i);
+
+ if (device.getAddress().equals(address)) {
+ return device;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * Attempts to get the name of a remote device, otherwise returns the address.
+ *
+ * @param address The address.
+ * @return The name, or if unavailable, the address.
+ */
+ public String getName(String address) {
+ LocalBluetoothDevice device = findDevice(address);
+ return device != null ? device.getName() : address;
+ }
+
+ private void dispatchDeviceAdded(LocalBluetoothDevice device) {
+ synchronized (mCallbacks) {
+ for (Callback callback : mCallbacks) {
+ callback.onDeviceAdded(device);
+ }
+ }
+
+ // TODO: divider between prev paired/connected and scanned
+ }
+
+ private void dispatchDeviceDeleted(LocalBluetoothDevice device) {
+ synchronized (mCallbacks) {
+ for (Callback callback : mCallbacks) {
+ callback.onDeviceDeleted(device);
+ }
+ }
+ }
+
+ public synchronized void onBondingStateChanged(String address, boolean created) {
+ LocalBluetoothDevice device = findDevice(address);
+ if (device == null) {
+ Log.e(TAG, "Got bonding state changed for " + address +
+ ", but we have no record of that device.");
+ return;
+ }
+
+ device.setPairingStatus(created ? SettingsBtStatus.PAIRING_STATUS_PAIRED
+ : SettingsBtStatus.PAIRING_STATUS_UNPAIRED);
+ checkForDeviceRemoval(device);
+
+ if (created) {
+ // Auto-connect after pairing
+ device.connect();
+ }
+ }
+
+ public synchronized void onBondingError(String address) {
+ mLocalManager.showError(address, R.string.bluetooth_error_title,
+ R.string.bluetooth_pairing_error_message);
+ }
+
+ public synchronized void onProfileStateChanged(String address) {
+ LocalBluetoothDevice device = findDevice(address);
+ if (device == null) return;
+
+ device.refresh();
+ }
+
+ public synchronized void onConnectingError(String address) {
+ LocalBluetoothDevice device = findDevice(address);
+ if (device == null) return;
+
+ /*
+ * Go through the device's delegate so we don't spam the user with
+ * errors connecting to different profiles, and instead make sure the
+ * user sees a single error for his single 'connect' action.
+ */
+ device.showConnectingError();
+ }
+
+ public synchronized void onScanningStateChanged(boolean started) {
+ if (!started) return;
+
+ // If starting a new scan, clear old visibility
+ for (int i = mDevices.size() - 1; i >= 0; i--) {
+ LocalBluetoothDevice device = mDevices.get(i);
+ device.setVisible(false);
+ checkForDeviceRemoval(device);
+ }
+ }
+}
diff --git a/src/com/android/settings/bluetooth/LocalBluetoothManager.java b/src/com/android/settings/bluetooth/LocalBluetoothManager.java
new file mode 100644
index 0000000..9db9e77
--- /dev/null
+++ b/src/com/android/settings/bluetooth/LocalBluetoothManager.java
@@ -0,0 +1,260 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.R;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import android.app.Activity;
+import android.app.AlertDialog;
+import android.bluetooth.BluetoothDevice;
+import android.content.Context;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.util.Log;
+import android.widget.Toast;
+
+// TODO: have some notion of shutting down. Maybe a minute after they leave BT settings?
+/**
+ * LocalBluetoothManager provides a simplified interface on top of a subset of
+ * the Bluetooth API.
+ */
+public class LocalBluetoothManager {
+ private static final String TAG = "LocalBluetoothManager";
+ static final boolean V = true;
+
+ public static final String EXTENDED_BLUETOOTH_STATE_CHANGED_ACTION =
+ "com.android.settings.bluetooth.intent.action.EXTENDED_BLUETOOTH_STATE_CHANGED";
+ private static final String SHARED_PREFERENCES_NAME = "bluetooth_settings";
+
+ private static LocalBluetoothManager INSTANCE;
+ /** Used when obtaining a reference to the singleton instance. */
+ private static Object INSTANCE_LOCK = new Object();
+ private boolean mInitialized;
+
+ private Context mContext;
+ /** If a BT-related activity is in the foreground, this will be it. */
+ private Activity mForegroundActivity;
+
+ private BluetoothDevice mManager;
+
+ private LocalBluetoothDeviceManager mLocalDeviceManager;
+ private BluetoothEventRedirector mEventRedirector;
+
+ public static enum ExtendedBluetoothState { ENABLED, ENABLING, DISABLED, DISABLING, UNKNOWN }
+ private ExtendedBluetoothState mState = ExtendedBluetoothState.UNKNOWN;
+
+ private List<Callback> mCallbacks = new ArrayList<Callback>();
+
+ private static final int SCAN_EXPIRATION_MS = 5 * 60 * 1000; // 5 mins
+ private long mLastScan;
+
+ public static LocalBluetoothManager getInstance(Context context) {
+ synchronized (INSTANCE_LOCK) {
+ if (INSTANCE == null) {
+ INSTANCE = new LocalBluetoothManager();
+ }
+
+ if (!INSTANCE.init(context)) {
+ return null;
+ }
+
+ return INSTANCE;
+ }
+ }
+
+ private boolean init(Context context) {
+ if (mInitialized) return true;
+ mInitialized = true;
+
+ // This will be around as long as this process is
+ mContext = context.getApplicationContext();
+
+ mManager = (BluetoothDevice) context.getSystemService(Context.BLUETOOTH_SERVICE);
+ if (mManager == null) {
+ return false;
+ }
+
+ mLocalDeviceManager = new LocalBluetoothDeviceManager(this);
+
+ mEventRedirector = new BluetoothEventRedirector(this);
+ mEventRedirector.start();
+
+ return true;
+ }
+
+ public BluetoothDevice getBluetoothManager() {
+ return mManager;
+ }
+
+ public Context getContext() {
+ return mContext;
+ }
+
+ public Activity getForegroundActivity() {
+ return mForegroundActivity;
+ }
+
+ public void setForegroundActivity(Activity activity) {
+ mForegroundActivity = activity;
+ }
+
+ public SharedPreferences getSharedPreferences() {
+ return mContext.getSharedPreferences(SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE);
+ }
+
+ public LocalBluetoothDeviceManager getLocalDeviceManager() {
+ return mLocalDeviceManager;
+ }
+
+ List<Callback> getCallbacks() {
+ return mCallbacks;
+ }
+
+ public void registerCallback(Callback callback) {
+ synchronized (mCallbacks) {
+ mCallbacks.add(callback);
+ }
+ }
+
+ public void unregisterCallback(Callback callback) {
+ synchronized (mCallbacks) {
+ mCallbacks.remove(callback);
+ }
+ }
+
+ public void startScanning(boolean force) {
+ if (mManager.isDiscovering()) {
+ /*
+ * Already discovering, but give the callback that information.
+ * Note: we only call the callbacks, not the same path as if the
+ * scanning state had really changed (in that case the device
+ * manager would clear its list of unpaired scanned devices).
+ */
+ dispatchScanningStateChanged(true);
+ } else {
+
+ // Don't scan more than frequently than SCAN_EXPIRATION_MS, unless forced
+ if (!force && mLastScan + SCAN_EXPIRATION_MS > System.currentTimeMillis()) return;
+
+ if (mManager.startDiscovery(true)) {
+ mLastScan = System.currentTimeMillis();
+ }
+ }
+ }
+
+ public ExtendedBluetoothState getBluetoothState() {
+
+ if (mState == ExtendedBluetoothState.UNKNOWN) {
+ syncBluetoothState();
+ }
+
+ return mState;
+ }
+
+ void setBluetoothStateInt(ExtendedBluetoothState state) {
+ mState = state;
+
+ /*
+ * TODO: change to callback method. originally it was broadcast to
+ * parallel the framework's method, but it just complicates things here.
+ */
+ // If this were a real API, I'd add as an extra
+ mContext.sendBroadcast(new Intent(EXTENDED_BLUETOOTH_STATE_CHANGED_ACTION));
+
+ if (state == ExtendedBluetoothState.ENABLED || state == ExtendedBluetoothState.DISABLED) {
+ mLocalDeviceManager.onBluetoothStateChanged(state == ExtendedBluetoothState.ENABLED);
+ }
+ }
+
+ private void syncBluetoothState() {
+ setBluetoothStateInt(mManager.isEnabled()
+ ? ExtendedBluetoothState.ENABLED
+ : ExtendedBluetoothState.DISABLED);
+ }
+
+ public void setBluetoothEnabled(boolean enabled) {
+ boolean wasSetStateSuccessful = enabled
+ ? mManager.enable()
+ : mManager.disable();
+
+ if (wasSetStateSuccessful) {
+ setBluetoothStateInt(enabled
+ ? ExtendedBluetoothState.ENABLING
+ : ExtendedBluetoothState.DISABLING);
+ } else {
+ if (V) {
+ Log.v(TAG,
+ "setBluetoothEnabled call, manager didn't return success for enabled: "
+ + enabled);
+ }
+
+ syncBluetoothState();
+ }
+ }
+
+ /**
+ * @param started True if scanning started, false if scanning finished.
+ */
+ void onScanningStateChanged(boolean started) {
+ // TODO: have it be a callback (once we switch bluetooth state changed to callback)
+ mLocalDeviceManager.onScanningStateChanged(started);
+ dispatchScanningStateChanged(started);
+ }
+
+ private void dispatchScanningStateChanged(boolean started) {
+ synchronized (mCallbacks) {
+ for (Callback callback : mCallbacks) {
+ callback.onScanningStateChanged(started);
+ }
+ }
+ }
+
+ public boolean createBonding(String address) {
+ return mManager.createBonding(address, mEventRedirector.getBluetoothDeviceCallback());
+ }
+
+ public void showError(String address, int titleResId, int messageResId) {
+ LocalBluetoothDevice device = mLocalDeviceManager.findDevice(address);
+ if (device == null) return;
+
+ String name = device.getName();
+ String message = mContext.getString(messageResId, name);
+
+ if (mForegroundActivity != null) {
+ // Need an activity context to show a dialog
+ AlertDialog ad = new AlertDialog.Builder(mForegroundActivity)
+ .setIcon(android.R.drawable.ic_dialog_alert)
+ .setTitle(titleResId)
+ .setMessage(message)
+ .setPositiveButton(android.R.string.ok, null)
+ .show();
+ } else {
+ // Fallback on a toast
+ Toast.makeText(mContext, message, Toast.LENGTH_SHORT).show();
+ }
+ }
+
+ public interface Callback {
+ void onScanningStateChanged(boolean started);
+ void onDeviceAdded(LocalBluetoothDevice device);
+ void onDeviceDeleted(LocalBluetoothDevice device);
+ }
+
+}
diff --git a/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java b/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java
new file mode 100644
index 0000000..b614712
--- /dev/null
+++ b/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java
@@ -0,0 +1,312 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.R;
+
+import android.bluetooth.BluetoothA2dp;
+import android.bluetooth.BluetoothError;
+import android.bluetooth.BluetoothHeadset;
+import android.bluetooth.BluetoothClass;
+import android.content.Context;
+import android.content.SharedPreferences;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * LocalBluetoothProfileManager is an abstract class defining the basic
+ * functionality related to a profile.
+ */
+public abstract class LocalBluetoothProfileManager {
+
+ // TODO: close profiles when we're shutting down
+ private static Map<Profile, LocalBluetoothProfileManager> sProfileMap =
+ new HashMap<Profile, LocalBluetoothProfileManager>();
+
+ protected LocalBluetoothManager mLocalManager;
+
+ public static LocalBluetoothProfileManager getProfileManager(LocalBluetoothManager localManager,
+ Profile profile) {
+
+ LocalBluetoothProfileManager profileManager;
+
+ synchronized (sProfileMap) {
+ profileManager = sProfileMap.get(profile);
+
+ if (profileManager == null) {
+ switch (profile) {
+ case A2DP:
+ profileManager = new A2dpProfileManager(localManager);
+ break;
+
+ case HEADSET:
+ profileManager = new HeadsetProfileManager(localManager);
+ break;
+ }
+
+ sProfileMap.put(profile, profileManager);
+ }
+ }
+
+ return profileManager;
+ }
+
+ // TODO: remove once the framework has this API
+ public static boolean isPreferredProfile(Context context, String address, Profile profile) {
+ return getPreferredProfileSharedPreferences(context).getBoolean(
+ getPreferredProfileKey(address, profile), true);
+ }
+
+ public static void setPreferredProfile(Context context, String address, Profile profile,
+ boolean preferred) {
+ getPreferredProfileSharedPreferences(context).edit().putBoolean(
+ getPreferredProfileKey(address, profile), preferred).commit();
+ }
+
+ private static SharedPreferences getPreferredProfileSharedPreferences(Context context) {
+ return context.getSharedPreferences("bluetooth_preferred_profiles", Context.MODE_PRIVATE);
+ }
+
+ private static String getPreferredProfileKey(String address, Profile profile) {
+ return address + "_" + profile.toString();
+ }
+
+ /**
+ * Temporary method to fill profiles based on a device's class.
+ *
+ * @param btClass The class
+ * @param profiles The list of profiles to fill
+ */
+ public static void fill(int btClass, List<Profile> profiles) {
+ profiles.clear();
+
+ if (A2dpProfileManager.doesClassMatch(btClass)) {
+ profiles.add(Profile.A2DP);
+ }
+
+ if (HeadsetProfileManager.doesClassMatch(btClass)) {
+ profiles.add(Profile.HEADSET);
+ }
+ }
+
+ protected LocalBluetoothProfileManager(LocalBluetoothManager localManager) {
+ mLocalManager = localManager;
+ }
+
+ public abstract int connect(String address);
+
+ public abstract int disconnect(String address);
+
+ public abstract int getConnectionStatus(String address);
+
+ public abstract int getSummary(String address);
+
+ public boolean isConnected(String address) {
+ return SettingsBtStatus.isConnectionStatusConnected(getConnectionStatus(address));
+ }
+
+ // TODO: int instead of enum
+ public enum Profile {
+ HEADSET(R.string.bluetooth_profile_headset),
+ A2DP(R.string.bluetooth_profile_a2dp);
+
+ public final int localizedString;
+
+ private Profile(int localizedString) {
+ this.localizedString = localizedString;
+ }
+ }
+
+ /**
+ * A2dpProfileManager is an abstraction for the {@link BluetoothA2dp} service.
+ */
+ private static class A2dpProfileManager extends LocalBluetoothProfileManager {
+ private BluetoothA2dp mService;
+
+ public A2dpProfileManager(LocalBluetoothManager localManager) {
+ super(localManager);
+
+ mService = new BluetoothA2dp(localManager.getContext());
+ // TODO: block until connection?
+ }
+
+ @Override
+ public int connect(String address) {
+ return mService.connectSink(address);
+ }
+
+ @Override
+ public int disconnect(String address) {
+ return mService.disconnectSink(address);
+ }
+
+ static boolean doesClassMatch(int btClass) {
+ if (BluetoothClass.Service.hasService(btClass, BluetoothClass.Service.RENDER)) {
+ return true;
+ }
+
+ // By the specification A2DP sinks must indicate the RENDER service
+ // class, but some do not (Chordette). So match on a few more to be
+ // safe
+ switch (BluetoothClass.Device.getDevice(btClass)) {
+ case BluetoothClass.Device.AUDIO_VIDEO_HIFI_AUDIO:
+ case BluetoothClass.Device.AUDIO_VIDEO_HEADPHONES:
+ case BluetoothClass.Device.AUDIO_VIDEO_LOUDSPEAKER:
+ case BluetoothClass.Device.AUDIO_VIDEO_CAR_AUDIO:
+ return true;
+
+ default:
+ return false;
+ }
+ }
+
+ @Override
+ public int getConnectionStatus(String address) {
+ return convertState(mService.getSinkState(address));
+ }
+
+ @Override
+ public int getSummary(String address) {
+ int connectionStatus = getConnectionStatus(address);
+
+ if (SettingsBtStatus.isConnectionStatusConnected(connectionStatus)) {
+ return R.string.bluetooth_a2dp_profile_summary_connected;
+ } else {
+ return SettingsBtStatus.getConnectionStatusSummary(connectionStatus);
+ }
+ }
+
+ private static int convertState(int a2dpState) {
+ switch (a2dpState) {
+ case BluetoothA2dp.STATE_CONNECTED:
+ return SettingsBtStatus.CONNECTION_STATUS_CONNECTED;
+ case BluetoothA2dp.STATE_CONNECTING:
+ return SettingsBtStatus.CONNECTION_STATUS_CONNECTING;
+ case BluetoothA2dp.STATE_DISCONNECTED:
+ return SettingsBtStatus.CONNECTION_STATUS_DISCONNECTED;
+ case BluetoothA2dp.STATE_DISCONNECTING:
+ return SettingsBtStatus.CONNECTION_STATUS_DISCONNECTING;
+ case BluetoothA2dp.STATE_PLAYING:
+ return SettingsBtStatus.CONNECTION_STATUS_ACTIVE;
+ default:
+ return SettingsBtStatus.CONNECTION_STATUS_UNKNOWN;
+ }
+ }
+ }
+
+ /**
+ * HeadsetProfileManager is an abstraction for the {@link BluetoothHeadset} service.
+ */
+ private static class HeadsetProfileManager extends LocalBluetoothProfileManager {
+ private BluetoothHeadset mService;
+
+ public HeadsetProfileManager(LocalBluetoothManager localManager) {
+ super(localManager);
+
+// final boolean[] isServiceConnected = new boolean[1];
+// BluetoothHeadset.ServiceListener l = new BluetoothHeadset.ServiceListener() {
+// public void onServiceConnected() {
+// synchronized (this) {
+// isServiceConnected[0] = true;
+// notifyAll();
+// }
+// }
+// public void onServiceDisconnected() {
+// mService = null;
+// }
+// };
+
+ // TODO: block, but can't on UI thread
+ mService = new BluetoothHeadset(localManager.getContext(), null);
+
+// synchronized (l) {
+// while (!isServiceConnected[0]) {
+// try {
+// l.wait(100);
+// } catch (InterruptedException e) {
+// throw new IllegalStateException(e);
+// }
+// }
+// }
+ }
+
+ @Override
+ public int connect(String address) {
+ // Since connectHeadset fails if already connected to a headset, we
+ // disconnect from any headset first
+ mService.disconnectHeadset();
+ return mService.connectHeadset(address, null)
+ ? BluetoothError.SUCCESS : BluetoothError.ERROR;
+ }
+
+ @Override
+ public int disconnect(String address) {
+ if (mService.getHeadsetAddress().equals(address)) {
+ return mService.disconnectHeadset() ? BluetoothError.SUCCESS : BluetoothError.ERROR;
+ } else {
+ return BluetoothError.SUCCESS;
+ }
+ }
+
+ static boolean doesClassMatch(int btClass) {
+ switch (BluetoothClass.Device.getDevice(btClass)) {
+ case BluetoothClass.Device.AUDIO_VIDEO_HANDSFREE:
+ case BluetoothClass.Device.AUDIO_VIDEO_WEARABLE_HEADSET:
+ case BluetoothClass.Device.AUDIO_VIDEO_CAR_AUDIO:
+ return true;
+
+ default:
+ return false;
+ }
+ }
+
+ @Override
+ public int getConnectionStatus(String address) {
+ String headsetAddress = mService.getHeadsetAddress();
+ return headsetAddress != null && headsetAddress.equals(address)
+ ? convertState(mService.getState())
+ : SettingsBtStatus.CONNECTION_STATUS_DISCONNECTED;
+ }
+
+ @Override
+ public int getSummary(String address) {
+ int connectionStatus = getConnectionStatus(address);
+
+ if (SettingsBtStatus.isConnectionStatusConnected(connectionStatus)) {
+ return R.string.bluetooth_headset_profile_summary_connected;
+ } else {
+ return SettingsBtStatus.getConnectionStatusSummary(connectionStatus);
+ }
+ }
+
+ private static int convertState(int headsetState) {
+ switch (headsetState) {
+ case BluetoothHeadset.STATE_CONNECTED:
+ return SettingsBtStatus.CONNECTION_STATUS_CONNECTED;
+ case BluetoothHeadset.STATE_CONNECTING:
+ return SettingsBtStatus.CONNECTION_STATUS_CONNECTING;
+ case BluetoothHeadset.STATE_DISCONNECTED:
+ return SettingsBtStatus.CONNECTION_STATUS_DISCONNECTED;
+ default:
+ return SettingsBtStatus.CONNECTION_STATUS_UNKNOWN;
+ }
+ }
+ }
+
+}
diff --git a/src/com/android/settings/bluetooth/SettingsBtStatus.java b/src/com/android/settings/bluetooth/SettingsBtStatus.java
new file mode 100644
index 0000000..051d666
--- /dev/null
+++ b/src/com/android/settings/bluetooth/SettingsBtStatus.java
@@ -0,0 +1,85 @@
+/*
+ * 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.
+ */
+
+package com.android.settings.bluetooth;
+
+import com.android.settings.R;
+
+/**
+ * SettingsBtStatus is a helper class that contains constants for various status
+ * codes.
+ */
+public class SettingsBtStatus {
+ private static final String TAG = "SettingsBtStatus";
+
+ // Connection status
+
+ public static final int CONNECTION_STATUS_UNKNOWN = 0;
+ public static final int CONNECTION_STATUS_ACTIVE = 1;
+ /** Use {@link #isConnected} to check for the connected state */
+ public static final int CONNECTION_STATUS_CONNECTED = 2;
+ public static final int CONNECTION_STATUS_CONNECTING = 3;
+ public static final int CONNECTION_STATUS_DISCONNECTED = 4;
+ public static final int CONNECTION_STATUS_DISCONNECTING = 5;
+
+ public static final int getConnectionStatusSummary(int connectionStatus) {
+ switch (connectionStatus) {
+ case CONNECTION_STATUS_ACTIVE:
+ return R.string.bluetooth_connected;
+ case CONNECTION_STATUS_CONNECTED:
+ return R.string.bluetooth_connected;
+ case CONNECTION_STATUS_CONNECTING:
+ return R.string.bluetooth_connecting;
+ case CONNECTION_STATUS_DISCONNECTED:
+ return R.string.bluetooth_disconnected;
+ case CONNECTION_STATUS_DISCONNECTING:
+ return R.string.bluetooth_disconnecting;
+ case CONNECTION_STATUS_UNKNOWN:
+ return R.string.bluetooth_unknown;
+ default:
+ return 0;
+ }
+ }
+
+ public static final boolean isConnectionStatusConnected(int connectionStatus) {
+ return connectionStatus == CONNECTION_STATUS_ACTIVE
+ || connectionStatus == CONNECTION_STATUS_CONNECTED;
+ }
+
+ public static final boolean isConnectionStatusBusy(int connectionStatus) {
+ return connectionStatus == CONNECTION_STATUS_CONNECTING
+ || connectionStatus == CONNECTION_STATUS_DISCONNECTING;
+ }
+
+ // Pairing status
+
+ public static final int PAIRING_STATUS_UNPAIRED = 0;
+ public static final int PAIRING_STATUS_PAIRED = 1;
+ public static final int PAIRING_STATUS_PAIRING = 2;
+
+ public static final int getPairingStatusSummary(int pairingStatus) {
+ switch (pairingStatus) {
+ case PAIRING_STATUS_PAIRED:
+ return R.string.bluetooth_paired;
+ case PAIRING_STATUS_PAIRING:
+ return R.string.bluetooth_pairing;
+ case PAIRING_STATUS_UNPAIRED:
+ return R.string.bluetooth_not_connected;
+ default:
+ return 0;
+ }
+ }
+}
diff --git a/src/com/android/settings/deviceinfo/Memory.java b/src/com/android/settings/deviceinfo/Memory.java
index 8a3cb8b..86e6423 100644
--- a/src/com/android/settings/deviceinfo/Memory.java
+++ b/src/com/android/settings/deviceinfo/Memory.java
@@ -22,6 +22,7 @@ import android.content.Intent;
import android.content.IntentFilter;
import android.content.res.Resources;
import android.os.Bundle;
+import android.os.IBinder;
import android.os.RemoteException;
import android.os.Environment;
import android.os.IMountService;
@@ -30,6 +31,7 @@ import android.os.StatFs;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.PreferenceScreen;
+import android.util.Log;
import com.android.settings.R;
@@ -37,6 +39,8 @@ import java.io.File;
import java.text.DecimalFormat;
public class Memory extends PreferenceActivity {
+
+ private static final String TAG = "Memory";
private static final String MEMORY_SD_SIZE = "memory_sd_size";
@@ -50,15 +54,14 @@ public class Memory extends PreferenceActivity {
private Preference mSdAvail;
private Preference mSdUnmount;
- private IMountService mMountService;
+ // Access using getMountService()
+ private IMountService mMountService = null;
@Override
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
addPreferencesFromResource(R.xml.device_info_memory);
-
- mMountService = IMountService.Stub.asInterface(ServiceManager.getService("mount"));
mRes = getResources();
mSdSize = findPreference(MEMORY_SD_SIZE);
@@ -89,6 +92,18 @@ public class Memory extends PreferenceActivity {
unregisterReceiver(mReceiver);
}
+ private synchronized IMountService getMountService() {
+ if (mMountService == null) {
+ IBinder service = ServiceManager.getService("mount");
+ if (service != null) {
+ mMountService = IMountService.Stub.asInterface(service);
+ } else {
+ Log.e(TAG, "Can't get mount service");
+ }
+ }
+ return mMountService;
+ }
+
@Override
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
if (preference == mSdUnmount) {
@@ -107,8 +122,13 @@ public class Memory extends PreferenceActivity {
};
private void unmount() {
+ IMountService mountService = getMountService();
try {
- mMountService.unmountMedia(Environment.getExternalStorageDirectory().toString());
+ if (mountService != null) {
+ mountService.unmountMedia(Environment.getExternalStorageDirectory().toString());
+ } else {
+ Log.e(TAG, "Mount service is null, can't unmount");
+ }
} catch (RemoteException ex) {
// Failed for some reason, try to update UI to actual state
updateMemoryStatus();
diff --git a/src/com/android/settings/deviceinfo/Status.java b/src/com/android/settings/deviceinfo/Status.java
index a56e607..b7aceb1 100644
--- a/src/com/android/settings/deviceinfo/Status.java
+++ b/src/com/android/settings/deviceinfo/Status.java
@@ -240,9 +240,11 @@ public class Status extends PreferenceActivity {
}
private void setSummaryText(String preference, String text) {
- if (text != null) {
- findPreference(preference).setSummary(text);
+ if (TextUtils.isEmpty(text)) {
+ text = sUnknown;
}
+
+ findPreference(preference).setSummary(text);
}
private void updateNetworkType() {
diff --git a/src/com/android/settings/quicklaunch/QuickLaunchSettings.java b/src/com/android/settings/quicklaunch/QuickLaunchSettings.java
index 1b9dff4..df15c0b 100644
--- a/src/com/android/settings/quicklaunch/QuickLaunchSettings.java
+++ b/src/com/android/settings/quicklaunch/QuickLaunchSettings.java
@@ -263,7 +263,7 @@ public class QuickLaunchSettings extends PreferenceActivity implements
KeyCharacterMap keyMap = KeyCharacterMap.load(KeyCharacterMap.BUILT_IN_KEYBOARD);
// Go through all the key codes and create a preference for the appropriate keys
- for (int keyCode = KeyEvent.MAX_KEYCODE - 1; keyCode >= 0; keyCode--) {
+ for (int keyCode = KeyEvent.getMaxKeyCode() - 1; keyCode >= 0; keyCode--) {
// Get the label for the primary char on the key that produces this key code
char shortcut = (char) Character.toLowerCase(keyMap.getDisplayLabel(keyCode));
if (shortcut == 0 || shortcutSeen.get(shortcut, false)) continue;
diff --git a/src/com/android/settings/wifi/AccessPointDialog.java b/src/com/android/settings/wifi/AccessPointDialog.java
index 95e469f..917ed96 100644
--- a/src/com/android/settings/wifi/AccessPointDialog.java
+++ b/src/com/android/settings/wifi/AccessPointDialog.java
@@ -25,6 +25,7 @@ import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.text.TextUtils;
+import android.text.format.Formatter;
import android.text.method.PasswordTransformationMethod;
import android.text.method.TransformationMethod;
import android.util.Log;
@@ -303,7 +304,7 @@ public class AccessPointDialog extends AlertDialog implements DialogInterface.On
}
if (mState.primary && mState.ipAddress != 0) {
- addInfoRow(R.string.ip_address, ipAddressToString(mState.ipAddress));
+ addInfoRow(R.string.ip_address, Formatter.formatIpAddress(mState.ipAddress));
}
} else if (mMode == MODE_CONFIGURE) {
@@ -579,14 +580,6 @@ public class AccessPointDialog extends AlertDialog implements DialogInterface.On
return 0;
}
- private static String ipAddressToString(int addr) {
- StringBuffer buf = new StringBuffer();
- buf.append(addr & 0xff).append('.').
- append((addr >>>= 8) & 0xff).append('.').
- append((addr >>>= 8) & 0xff).append('.').
- append((addr >>>= 8) & 0xff);
- return buf.toString();
- }
public void onClick(View v) {
if (v == mShowPasswordCheckBox) {
diff --git a/src/com/android/settings/wifi/AccessPointState.java b/src/com/android/settings/wifi/AccessPointState.java
index 8dabbd1..c224954 100644
--- a/src/com/android/settings/wifi/AccessPointState.java
+++ b/src/com/android/settings/wifi/AccessPointState.java
@@ -538,7 +538,13 @@ public final class AccessPointState implements Comparable<AccessPointState>, Par
// If password is empty, it should be left untouched
if (!TextUtils.isEmpty(mPassword)) {
- config.preSharedKey = convertToQuotedString(mPassword);
+ if (mPassword.length() == 64 && isHex(mPassword)) {
+ // Goes unquoted as hex
+ config.preSharedKey = mPassword;
+ } else {
+ // Goes quoted as ASCII
+ config.preSharedKey = convertToQuotedString(mPassword);
+ }
}
} else if (security.equals(OPEN)) {
@@ -554,8 +560,12 @@ public final class AccessPointState implements Comparable<AccessPointState>, Par
return false;
}
- for (int i = len - 1; i >= 0; i--) {
- final char c = wepKey.charAt(i);
+ return isHex(wepKey);
+ }
+
+ private static boolean isHex(String key) {
+ for (int i = key.length() - 1; i >= 0; i--) {
+ final char c = key.charAt(i);
if (!(c >= '0' && c <= '9' || c >= 'A' && c <= 'F' || c >= 'a' && c <= 'f')) {
return false;
}
diff --git a/src/com/android/settings/wifi/IpSettings.java b/src/com/android/settings/wifi/IpSettings.java
index 592e8da..5a494fa 100644
--- a/src/com/android/settings/wifi/IpSettings.java
+++ b/src/com/android/settings/wifi/IpSettings.java
@@ -19,12 +19,16 @@ package com.android.settings.wifi;
import com.android.settings.R;
import android.content.ContentResolver;
+import android.net.wifi.WifiInfo;
+import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.preference.EditTextPreference;
+import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.provider.Settings.System;
+import android.text.TextUtils;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
@@ -32,8 +36,10 @@ import android.widget.Toast;
public class IpSettings extends PreferenceActivity implements Preference.OnPreferenceChangeListener {
+ private static final String KEY_MAC_ADDRESS = "mac_address";
private static final String KEY_USE_STATIC_IP = "use_static_ip";
-
+ private static final String KEY_NUM_CHANNELS = "num_channels";
+
private String[] mSettingNames = {
System.WIFI_STATIC_IP, System.WIFI_STATIC_GATEWAY, System.WIFI_STATIC_NETMASK,
System.WIFI_STATIC_DNS1, System.WIFI_STATIC_DNS2
@@ -61,12 +67,46 @@ public class IpSettings extends PreferenceActivity implements Preference.OnPrefe
preference.setOnPreferenceChangeListener(this);
}
}
-
+
@Override
protected void onResume() {
super.onResume();
updateUi();
+ initNumChannelsPreference();
+ refreshMacAddress();
+ }
+
+ private void initNumChannelsPreference() {
+ ListPreference pref = (ListPreference) findPreference(KEY_NUM_CHANNELS);
+ pref.setOnPreferenceChangeListener(this);
+
+ WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
+ /*
+ * Generate the list of valid channel counts to show in the ListPreference.
+ * The values are numerical, so the only text to be localized is the
+ * "channel_word" resource.
+ */
+ int[] validChannelCounts = wifiManager.getValidChannelCounts();
+ if (validChannelCounts == null) {
+ Toast.makeText(this, R.string.wifi_setting_num_channels_error,
+ Toast.LENGTH_SHORT).show();
+ return;
+ }
+ String[] entries = new String[validChannelCounts.length];
+ String[] entryValues = new String[validChannelCounts.length];
+
+ for (int i = 0; i < validChannelCounts.length; i++) {
+ entryValues[i] = String.valueOf(validChannelCounts[i]);
+ entries[i] = getString(R.string.wifi_setting_num_channels_channel_phrase,
+ validChannelCounts[i]);
+ }
+ pref.setEntries(entries);
+ pref.setEntryValues(entryValues);
+ int numChannels = wifiManager.getNumAllowedChannels();
+ if (numChannels >= 0) {
+ pref.setValue(String.valueOf(numChannels));
+ }
}
@Override
@@ -80,14 +120,34 @@ public class IpSettings extends PreferenceActivity implements Preference.OnPrefe
}
public boolean onPreferenceChange(Preference preference, Object newValue) {
- String value = (String) newValue;
-
- if (!isIpAddress(value)) {
- Toast.makeText(this, R.string.wifi_ip_settings_invalid_ip, Toast.LENGTH_LONG).show();
- return false;
+ String key = preference.getKey();
+ if (key == null) return true;
+
+ if (key.equals(KEY_NUM_CHANNELS)) {
+ try {
+ int numChannels = Integer.parseInt((String) newValue);
+ WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
+ if (!wifiManager.setNumAllowedChannels(numChannels)) {
+ Toast.makeText(this, R.string.wifi_setting_num_channels_error,
+ Toast.LENGTH_SHORT).show();
+ }
+ } catch (NumberFormatException e) {
+ Toast.makeText(this, R.string.wifi_setting_num_channels_error,
+ Toast.LENGTH_SHORT).show();
+ return false;
+ }
+
+ } else {
+ String value = (String) newValue;
+
+ if (!isIpAddress(value)) {
+ Toast.makeText(this, R.string.wifi_ip_settings_invalid_ip, Toast.LENGTH_LONG).show();
+ return false;
+ }
+
+ preference.setSummary(value);
}
- preference.setSummary(value);
return true;
}
@@ -177,4 +237,14 @@ public class IpSettings extends PreferenceActivity implements Preference.OnPrefe
}
}
+ private void refreshMacAddress() {
+ WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
+ WifiInfo wifiInfo = wifiManager.getConnectionInfo();
+
+ Preference wifiMacAddressPref = findPreference(KEY_MAC_ADDRESS);
+ String macAddress = wifiInfo == null ? null : wifiInfo.getMacAddress();
+ wifiMacAddressPref.setSummary(!TextUtils.isEmpty(macAddress) ? macAddress
+ : getString(R.string.status_unavailable));
+ }
+
}
diff --git a/src/com/android/settings/wifi/WifiLayer.java b/src/com/android/settings/wifi/WifiLayer.java
index b29fd92..b0857d2 100644
--- a/src/com/android/settings/wifi/WifiLayer.java
+++ b/src/com/android/settings/wifi/WifiLayer.java
@@ -94,7 +94,7 @@ public class WifiLayer {
private boolean mIsObtainingAddress;
/**
- * See {@link Settings.System#WIFI_NUM_OPEN_NETWORKS_KEPT}.
+ * See {@link android.provider.Settings.Secure#WIFI_NUM_OPEN_NETWORKS_KEPT}.
*/
private int WIFI_NUM_OPEN_NETWORKS_KEPT;
/**
@@ -229,8 +229,8 @@ public class WifiLayer {
mIntentFilter.addAction(WifiManager.RSSI_CHANGED_ACTION);
mIntentFilter.addAction(WifiManager.NETWORK_IDS_CHANGED_ACTION);
- WIFI_NUM_OPEN_NETWORKS_KEPT = Settings.System.getInt(mContext.getContentResolver(),
- Settings.System.WIFI_NUM_OPEN_NETWORKS_KEPT, 10);
+ WIFI_NUM_OPEN_NETWORKS_KEPT = Settings.Secure.getInt(mContext.getContentResolver(),
+ Settings.Secure.WIFI_NUM_OPEN_NETWORKS_KEPT, 10);
}
/**
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index ceb995b..c92ed7c 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -134,8 +134,8 @@ public class WifiSettings extends PreferenceActivity implements WifiLayer.Callba
mOpenNetworkNotificationsEnabled = (CheckBoxPreference) preferenceScreen
.findPreference(KEY_OPEN_NETWORK_NOTIFICATIONS_ENABLED);
- mOpenNetworkNotificationsEnabled.setChecked(Settings.System.getInt(getContentResolver(),
- Settings.System.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON, 0) == 1);
+ mOpenNetworkNotificationsEnabled.setChecked(Settings.Secure.getInt(getContentResolver(),
+ Settings.Secure.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON, 0) == 1);
mAddOtherNetwork = preferenceScreen.findPreference(KEY_ADD_OTHER_NETWORK);
@@ -323,9 +323,9 @@ public class WifiSettings extends PreferenceActivity implements WifiLayer.Callba
if (preference == mAddOtherNetwork) {
showAddOtherNetworkDialog();
} else if (preference == mOpenNetworkNotificationsEnabled) {
- Settings.System.putInt(getContentResolver(),
- Settings.System.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON,
- mOpenNetworkNotificationsEnabled.isChecked() ? 1 : 0);
+ Settings.Secure.putInt(getContentResolver(),
+ Settings.Secure.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON,
+ mOpenNetworkNotificationsEnabled.isChecked() ? 1 : 0);
} else if (preference instanceof AccessPointPreference) {
AccessPointState state = ((AccessPointPreference) preference).getAccessPointState();
showAccessPointDialog(state, AccessPointDialog.MODE_INFO);