summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xAndroidManifest.xml1
-rw-r--r--jni/com_android_bluetooth_btservice_AdapterService.cpp66
-rw-r--r--jni/com_android_bluetooth_gatt.cpp8
-rw-r--r--res/values-af/cm_strings.xml3
-rw-r--r--res/values-ar/cm_strings.xml3
-rw-r--r--res/values-as-rIN/cm_strings.xml2
-rw-r--r--res/values-ast-rES/cm_strings.xml3
-rw-r--r--res/values-ast-rES/strings.xml310
-rw-r--r--res/values-ast-rES/strings_pbap.xml24
-rw-r--r--res/values-ast-rES/strings_sap.xml12
-rw-r--r--res/values-az-rAZ/cm_strings.xml3
-rw-r--r--res/values-b+sr+Latn/strings.xml4
-rw-r--r--res/values-be-rBY/cm_strings.xml4
-rw-r--r--res/values-be-rBY/test_strings.xml1
-rw-r--r--res/values-bg/cm_strings.xml4
-rw-r--r--res/values-bn-rBD/cm_strings.xml2
-rw-r--r--res/values-bn-rBD/strings_sap.xml4
-rw-r--r--res/values-br-rFR/strings.xml8
-rw-r--r--res/values-bs-rBA/cm_strings.xml4
-rw-r--r--res/values-bs-rBA/strings.xml2
-rw-r--r--res/values-ca/cm_strings.xml4
-rw-r--r--res/values-cs/cm_strings.xml4
-rw-r--r--res/values-csb-rPL/strings.xml8
-rw-r--r--res/values-cy/cm_strings.xml5
-rw-r--r--res/values-cy/strings.xml210
-rw-r--r--res/values-cy/strings_pbap.xml13
-rw-r--r--res/values-cy/strings_sap.xml9
-rw-r--r--res/values-da/cm_strings.xml4
-rw-r--r--res/values-de/cm_strings.xml4
-rw-r--r--res/values-el/cm_strings.xml3
-rw-r--r--res/values-el/strings.xml12
-rw-r--r--res/values-en-rAU/cm_strings.xml3
-rw-r--r--res/values-en-rCA/cm_strings.xml (renamed from res/values-am/cm_strings.xml)0
-rw-r--r--res/values-en-rGB/cm_strings.xml5
-rw-r--r--res/values-en-rIN/cm_strings.xml3
-rw-r--r--res/values-eo/strings.xml115
-rw-r--r--res/values-es-rCO/strings.xml8
-rw-r--r--res/values-es-rUS/cm_strings.xml3
-rw-r--r--res/values-es/cm_strings.xml3
-rw-r--r--res/values-et-rEE/cm_strings.xml2
-rw-r--r--res/values-eu-rES/cm_strings.xml4
-rw-r--r--res/values-fa/cm_strings.xml2
-rw-r--r--res/values-fi/cm_strings.xml4
-rw-r--r--res/values-fil-rPH/strings.xml (renamed from res/values-en-rPT/strings.xml)8
-rw-r--r--res/values-fil-rPH/strings_pbap.xml (renamed from res/values-as-rIN/strings_pbap.xml)0
-rw-r--r--res/values-fil-rPH/strings_sap.xml (renamed from res/values-as-rIN/strings_sap.xml)0
-rw-r--r--res/values-fr-rCA/cm_strings.xml18
-rw-r--r--res/values-fr/cm_strings.xml4
-rw-r--r--res/values-frp-rIT/strings.xml8
-rw-r--r--res/values-fy-rNL/cm_strings.xml5
-rw-r--r--res/values-fy-rNL/strings_pbap.xml6
-rw-r--r--res/values-fy-rNL/strings_sap.xml3
-rw-r--r--res/values-ga-rIE/strings.xml8
-rw-r--r--res/values-gd-rGB/cm_strings.xml4
-rw-r--r--res/values-gd-rGB/strings.xml8
-rw-r--r--res/values-gl-rES/cm_strings.xml4
-rw-r--r--res/values-gu-rIN/cm_strings.xml2
-rw-r--r--res/values-hi/cm_strings.xml2
-rw-r--r--res/values-hi/strings.xml2
-rw-r--r--res/values-hi/strings_sap.xml8
-rw-r--r--res/values-hr/cm_strings.xml4
-rw-r--r--res/values-hu/cm_strings.xml4
-rw-r--r--res/values-hy-rAM/cm_strings.xml18
-rw-r--r--res/values-hy-rAM/strings.xml6
-rw-r--r--res/values-in/cm_strings.xml4
-rw-r--r--res/values-in/strings.xml2
-rw-r--r--res/values-is-rIS/cm_strings.xml18
-rw-r--r--res/values-it/cm_strings.xml4
-rw-r--r--res/values-iw/cm_strings.xml3
-rw-r--r--res/values-ja/cm_strings.xml4
-rw-r--r--res/values-ka-rGE/cm_strings.xml18
-rw-r--r--res/values-kk-rKZ/cm_strings.xml18
-rw-r--r--res/values-km-rKH/cm_strings.xml18
-rw-r--r--res/values-kn-rIN/cm_strings.xml2
-rw-r--r--res/values-kn-rIN/strings.xml10
-rw-r--r--res/values-kn-rIN/strings_pbap_client.xml2
-rw-r--r--res/values-ko/cm_strings.xml3
-rw-r--r--res/values-ku/cm_strings.xml2
-rw-r--r--res/values-ku/strings.xml269
-rw-r--r--res/values-ku/strings_pbap.xml24
-rw-r--r--res/values-ku/strings_sap.xml3
-rw-r--r--res/values-ky-rKG/cm_strings.xml18
-rw-r--r--res/values-lb/cm_strings.xml2
-rw-r--r--res/values-lb/strings.xml298
-rw-r--r--res/values-lb/strings_pbap.xml24
-rw-r--r--res/values-lb/strings_sap.xml3
-rw-r--r--res/values-lo-rLA/cm_strings.xml18
-rw-r--r--res/values-lt/cm_strings.xml2
-rw-r--r--res/values-lv/cm_strings.xml2
-rw-r--r--res/values-mk-rMK/cm_strings.xml4
-rw-r--r--res/values-ml-rIN/cm_strings.xml2
-rw-r--r--res/values-mn-rMN/cm_strings.xml18
-rw-r--r--res/values-mr-rIN/cm_strings.xml2
-rw-r--r--res/values-ms-rMY/cm_strings.xml18
-rw-r--r--res/values-my-rMM/cm_strings.xml18
-rw-r--r--res/values-nb/cm_strings.xml4
-rw-r--r--res/values-ne-rNP/cm_strings.xml18
-rw-r--r--res/values-nl/cm_strings.xml4
-rw-r--r--res/values-nl/strings.xml2
-rw-r--r--res/values-oc-rFR/strings.xml8
-rw-r--r--res/values-or-rIN/cm_strings.xml2
-rw-r--r--res/values-or-rIN/strings.xml107
-rw-r--r--res/values-or-rIN/strings_pbap.xml6
-rw-r--r--res/values-or-rIN/strings_sap.xml3
-rw-r--r--res/values-pa-rIN/cm_strings.xml18
-rw-r--r--res/values-pl/cm_strings.xml4
-rw-r--r--res/values-pt-rBR/cm_strings.xml4
-rw-r--r--res/values-pt-rPT/cm_strings.xml4
-rw-r--r--res/values-rm-rCH/strings.xml (renamed from res/values-as-rIN/strings.xml)8
-rw-r--r--res/values-rm-rCH/strings_pbap.xml (renamed from res/values-en-rPT/strings_pbap.xml)0
-rw-r--r--res/values-rm-rCH/strings_sap.xml (renamed from res/values-en-rPT/strings_sap.xml)0
-rw-r--r--res/values-rm/cm_strings.xml18
-rw-r--r--res/values-ro/cm_strings.xml3
-rw-r--r--res/values-ru/cm_strings.xml4
-rw-r--r--res/values-sc-rIT/cm_strings.xml (renamed from res/values-es-rMX/cm_strings.xml)5
-rw-r--r--res/values-si-rLK/cm_strings.xml18
-rw-r--r--res/values-sk/cm_strings.xml4
-rw-r--r--res/values-sl/cm_strings.xml4
-rw-r--r--res/values-sq-rAL/cm_strings.xml5
-rw-r--r--res/values-sr-rCS/cm_strings.xml (renamed from res/values-en-rPT/cm_strings.xml)0
-rw-r--r--res/values-sr-rCS/strings.xml (renamed from res/values-es-rMX/strings.xml)8
-rw-r--r--res/values-sr-rCS/strings_pbap.xml (renamed from res/values-eo/strings_pbap.xml)0
-rw-r--r--res/values-sr-rCS/strings_sap.xml (renamed from res/values-eo/strings_sap.xml)0
-rw-r--r--res/values-sr/cm_strings.xml3
-rw-r--r--res/values-sr/strings.xml4
-rw-r--r--res/values-sv/cm_strings.xml2
-rw-r--r--res/values-sw/cm_strings.xml18
-rw-r--r--res/values-ta-rIN/cm_strings.xml2
-rw-r--r--res/values-te-rIN/cm_strings.xml2
-rw-r--r--res/values-th/cm_strings.xml3
-rw-r--r--res/values-tr/cm_strings.xml3
-rw-r--r--res/values-ug/cm_strings.xml2
-rw-r--r--res/values-ug/strings.xml269
-rw-r--r--res/values-ug/strings_pbap.xml24
-rw-r--r--res/values-ug/strings_sap.xml3
-rw-r--r--res/values-uk/cm_strings.xml3
-rw-r--r--res/values-ur-rPK/cm_strings.xml18
-rw-r--r--res/values-uz-rUZ/cm_strings.xml18
-rw-r--r--res/values-vec-rIT/cm_strings.xml (renamed from res/values-eo/cm_strings.xml)0
-rw-r--r--res/values-vec-rIT/strings.xml (renamed from res/values-fy-rNL/strings.xml)8
-rw-r--r--res/values-vec-rIT/strings_pbap.xml (renamed from res/values-es-rMX/strings_pbap.xml)0
-rw-r--r--res/values-vec-rIT/strings_sap.xml (renamed from res/values-es-rMX/strings_sap.xml)0
-rw-r--r--res/values-vi/cm_strings.xml3
-rw-r--r--res/values-zh-rCN/cm_strings.xml4
-rw-r--r--res/values-zh-rHK/cm_strings.xml18
-rw-r--r--res/values-zh-rTW/cm_strings.xml4
-rw-r--r--res/values-zu/cm_strings.xml18
-rw-r--r--src/com/android/bluetooth/avrcp/Avrcp.java270
-rw-r--r--src/com/android/bluetooth/btservice/AdapterService.java58
-rw-r--r--src/com/android/bluetooth/btservice/Config.java45
-rw-r--r--src/com/android/bluetooth/btservice/RemoteDevices.java5
-rw-r--r--src/com/android/bluetooth/btservice/bluetooth.proto19
-rw-r--r--src/com/android/bluetooth/gatt/AdvertiseManager.java5
-rw-r--r--src/com/android/bluetooth/gatt/AppScanStats.java11
-rw-r--r--src/com/android/bluetooth/gatt/GattService.java6
-rw-r--r--src/com/android/bluetooth/gatt/ScanManager.java22
-rw-r--r--src/com/android/bluetooth/hfpclient/HeadsetClientService.java8
-rwxr-xr-xsrc/com/android/bluetooth/hfpclient/HeadsetClientStateMachine.java13
-rwxr-xr-xsrc/com/android/bluetooth/map/BluetoothMapContent.java7
-rw-r--r--src/com/android/bluetooth/opp/BluetoothOppHandoverReceiver.java2
-rw-r--r--src/com/android/bluetooth/opp/BluetoothOppLauncherActivity.java13
-rw-r--r--src/com/android/bluetooth/opp/BluetoothOppManager.java10
-rw-r--r--src/com/android/bluetooth/opp/BluetoothOppSendFileInfo.java15
-rw-r--r--src/com/android/bluetooth/opp/BluetoothOppTransferActivity.java2
-rw-r--r--src/com/android/bluetooth/opp/BluetoothOppUtility.java67
165 files changed, 1152 insertions, 1967 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 6d6adacf2..adcff85d3 100755
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -59,7 +59,6 @@
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.WRITE_SMS" />
<uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
- <uses-permission android:name="android.permission.MANAGE_DOCUMENTS" />
<uses-permission android:name="android.permission.UPDATE_APP_OPS_STATS" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.DEVICE_POWER" />
diff --git a/jni/com_android_bluetooth_btservice_AdapterService.cpp b/jni/com_android_bluetooth_btservice_AdapterService.cpp
index 28a0e558c..95cc6644d 100644
--- a/jni/com_android_bluetooth_btservice_AdapterService.cpp
+++ b/jni/com_android_bluetooth_btservice_AdapterService.cpp
@@ -32,8 +32,11 @@
#include <fcntl.h>
namespace android {
-
+// OOB_LE_BD_ADDR_SIZE is 6 bytes addres + 1 byte address type
+#define OOB_LE_BD_ADDR_SIZE 7
#define OOB_TK_SIZE 16
+#define OOB_LE_SC_C_SIZE 16
+#define OOB_LE_SC_R_SIZE 16
#define ADDITIONAL_NREFS 50
static jmethodID method_stateChangeCallback;
@@ -892,19 +895,67 @@ static jboolean createBondOutOfBandNative(JNIEnv* env, jobject obj, jbyteArray a
return result;
}
+ jbyte* leBtDeviceAddressBytes = NULL;
jbyte* smTKBytes = NULL;
- jbyteArray smTK = callByteArrayGetter(env, oobData, "android/bluetooth/OobData", "getSecurityManagerTk");
+ jbyte* leScCBytes = NULL;
+ jbyte* leScRBytes = NULL;
+ jbyteArray leBtDeviceAddress = NULL;
+ jbyteArray smTK = NULL;
+ jbyteArray leScC = NULL;
+ jbyteArray leScR = NULL;
+
+ leBtDeviceAddress = callByteArrayGetter(env, oobData, "android/bluetooth/OobData", "getLeBluetoothDeviceAddress");
+ if (leBtDeviceAddress != NULL) {
+ leBtDeviceAddressBytes = env->GetByteArrayElements(leBtDeviceAddress, NULL);
+ int len = env->GetArrayLength(leBtDeviceAddress);
+ if (len != OOB_LE_BD_ADDR_SIZE) {
+ ALOGI("%s: wrong length of leBtDeviceAddress, should be empty or %d bytes.", __func__, OOB_LE_BD_ADDR_SIZE);
+ jniThrowIOException(env, EINVAL);
+ goto done;
+ }
+ memcpy(oob_data.le_bt_dev_addr, leBtDeviceAddressBytes, len);
+ }
+
+ smTK = callByteArrayGetter(env, oobData, "android/bluetooth/OobData", "getSecurityManagerTk");
if (smTK != NULL) {
smTKBytes = env->GetByteArrayElements(smTK, NULL);
int len = env->GetArrayLength(smTK);
if (len != OOB_TK_SIZE) {
- ALOGI("%s: wrong length of smTK, should be empty or %d bytes.", __FUNCTION__, OOB_TK_SIZE);
+ ALOGI("%s: wrong length of smTK, should be empty or %d bytes.", __func__, OOB_TK_SIZE);
jniThrowIOException(env, EINVAL);
goto done;
}
memcpy(oob_data.sm_tk, smTKBytes, len);
}
+ leScC = callByteArrayGetter(env, oobData, "android/bluetooth/OobData",
+ "getLeSecureConnectionsConfirmation");
+ if (leScC != NULL) {
+ leScCBytes = env->GetByteArrayElements(leScC, NULL);
+ int len = env->GetArrayLength(leScC);
+ if (len != OOB_LE_SC_C_SIZE) {
+ ALOGI("%s: wrong length of LE SC Confirmation, should be empty or %d bytes.",
+ __func__, OOB_LE_SC_C_SIZE);
+ jniThrowIOException(env, EINVAL);
+ goto done;
+ }
+ memcpy(oob_data.le_sc_c, leScCBytes, len);
+ }
+
+ leScR = callByteArrayGetter(env, oobData, "android/bluetooth/OobData",
+ "getLeSecureConnectionsRandom");
+ if (leScR != NULL) {
+ leScRBytes = env->GetByteArrayElements(leScR, NULL);
+ int len = env->GetArrayLength(leScR);
+ if (len != OOB_LE_SC_R_SIZE) {
+ ALOGI("%s: wrong length of LE SC Random, should be empty or %d bytes.",
+ __func__, OOB_LE_SC_R_SIZE);
+ jniThrowIOException(env, EINVAL);
+ goto done;
+ }
+ memcpy(oob_data.le_sc_r, leScRBytes, len);
+ }
+
if (sBluetoothInterface->create_bond_out_of_band((bt_bdaddr_t *)addr, transport, &oob_data)
== BT_STATUS_SUCCESS)
result = JNI_TRUE;
@@ -912,9 +963,18 @@ static jboolean createBondOutOfBandNative(JNIEnv* env, jobject obj, jbyteArray a
done:
env->ReleaseByteArrayElements(address, addr, 0);
+ if (leBtDeviceAddress != NULL)
+ env->ReleaseByteArrayElements(leBtDeviceAddress, leBtDeviceAddressBytes, 0);
+
if (smTK != NULL)
env->ReleaseByteArrayElements(smTK, smTKBytes, 0);
+ if (leScC != NULL)
+ env->ReleaseByteArrayElements(leScC, leScCBytes, 0);
+
+ if (leScR != NULL)
+ env->ReleaseByteArrayElements(leScR, leScRBytes, 0);
+
return result;
}
diff --git a/jni/com_android_bluetooth_gatt.cpp b/jni/com_android_bluetooth_gatt.cpp
index c9f28a750..73ee02c78 100644
--- a/jni/com_android_bluetooth_gatt.cpp
+++ b/jni/com_android_bluetooth_gatt.cpp
@@ -1622,7 +1622,13 @@ static void gattServerSendResponseNative (JNIEnv *env, jobject object,
if (val != NULL)
{
- response.attr_value.len = (uint16_t) env->GetArrayLength(val);
+ if (env->GetArrayLength(val) < BTGATT_MAX_ATTR_LEN) {
+ response.attr_value.len = (uint16_t)env->GetArrayLength(val);
+ } else {
+ android_errorWriteLog(0x534e4554, "78787521");
+ response.attr_value.len = BTGATT_MAX_ATTR_LEN;
+ }
+
jbyte* array = env->GetByteArrayElements(val, 0);
for (int i = 0; i != response.attr_value.len; ++i)
diff --git a/res/values-af/cm_strings.xml b/res/values-af/cm_strings.xml
index 180874eb9..ae3dc85ee 100644
--- a/res/values-af/cm_strings.xml
+++ b/res/values-af/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Kan nie lêer stuur nie, probeer weer\u2026</string>
+ <string name="incoming_file_toast_msg">Inkomende lêer vanaf \'n ander toestel. Bevestig dat jy hierdie lêer wil ontvang.</string>
+ <string name="upload_fail_waiting">Kan nie lêer stuur nie, probeer weer\u2026</string>
</resources>
diff --git a/res/values-ar/cm_strings.xml b/res/values-ar/cm_strings.xml
index 6eb66fa9b..58f56ae35 100644
--- a/res/values-ar/cm_strings.xml
+++ b/res/values-ar/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">تعذر إرسال الملف، جاري إعادة المحاولة\u2026</string>
+ <string name="incoming_file_toast_msg">هناك ملف وارد من جهاز آخر. قم بتأكيد أنك تريد استلام هذا الملف.</string>
+ <string name="upload_fail_waiting">تعذر إرسال الملف، جاري إعادة المحاولة\u2026</string>
</resources>
diff --git a/res/values-as-rIN/cm_strings.xml b/res/values-as-rIN/cm_strings.xml
index 5c1ad61a6..4a5e00cb9 100644
--- a/res/values-as-rIN/cm_strings.xml
+++ b/res/values-as-rIN/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ফাইল প্ৰেৰণ কৰিবলৈ অক্ষম, পুনঃচেষ্টা কৰি আছে\u2026</string>
+ <string name="upload_fail_waiting">ফাইল প্ৰেৰণ কৰিবলৈ অক্ষম, পুনঃচেষ্টা কৰি আছে\u2026</string>
</resources>
diff --git a/res/values-ast-rES/cm_strings.xml b/res/values-ast-rES/cm_strings.xml
index b0f740241..326a0d5a1 100644
--- a/res/values-ast-rES/cm_strings.xml
+++ b/res/values-ast-rES/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Imposible unviar el ficheru, reintentando\u2026</string>
+ <string name="incoming_file_toast_msg">Ficheru entrante d\'otru preséu. Confirma que quies recibilu.</string>
+ <string name="upload_fail_waiting">Nun pue unviase\'l ficheru, retentando\u2026</string>
</resources>
diff --git a/res/values-ast-rES/strings.xml b/res/values-ast-rES/strings.xml
index 4e5b5887a..4dac2113a 100644
--- a/res/values-ast-rES/strings.xml
+++ b/res/values-ast-rES/strings.xml
@@ -15,200 +15,118 @@
limitations under the License.
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!--
- This is the short description of a permission associated with the
- Bluetooth Share Manager. It is displayed as part of the description of
- any application that was granted that permission. This specific
- permission controls access to the Bluetooth Share Manager by
- applications that initiate Bluetooth share.
- -->
- <string name="permlab_bluetoothShareManager">Accesu al alministrador de descargues</string>
- <!--
- This is the long description of a permission associated with the
- Android Download Manager. It is displayed as part of the description
- of any application that was granted that permission. This specific
- permission controls access to the Download Manager by applications
- that initiate downloads.
- -->
- <string name="permdesc_bluetoothShareManager">Permite que l\'aplicación acceda al alministrador BluetoothShare y lu use pa tresferir ficheros.</string>
- <string name="permlab_bluetoothWhitelist">Accesu de preseos Bluetooth autorizaos</string>
- <string name="permdesc_bluetoothWhitelist">Permíte-y a l’aplicación autorizar temporalmente un preséu Bluetooth pa poder unviar ficheros a esti preséu ensin la confirmación del usuariu.</string>
- <!-- string showed on "Share picutre via" dialog -->
- <string name="bt_share_picker_label">Bluetooth</string>
- <!-- string for "unknown device" -->
- <string name="unknown_device">Preséu desconocíu</string>
- <!-- string for "unknown" phone number" -->
- <string name="unknownNumber">Desconocíu</string>
- <!-- string for "the title of airplane mode error" -->
- <string name="airplane_error_title">Mou avión</string>
- <!-- string for "error message in airplane mode" -->
- <string name="airplane_error_msg">Nun pues usar el Bluetooth nel mou avión.</string>
- <!-- Activate Bluetooth Confirmation Dialog -->
- <!--Title -->
- <string name="bt_enable_title"></string>
- <!--Line 1 -->
- <string name="bt_enable_line1">Pa utilizar los servicios de Bluetooth, primero tienes d\'activar la función Bluetooth.</string>
- <!--Line 2 -->
- <string name="bt_enable_line2">¿Quies activar la función Bluetooth agora?</string>
- <!-- Label for a cancel button. -->
- <string name="bt_enable_cancel">Encaboxar</string>
- <!-- Label for a confirm button.-->
- <string name="bt_enable_ok">Activar</string>
- <!-- Bluetooth File Transfer Acceptance Dialog -->
- <!--Title -->
- <string name="incoming_file_confirm_title">Tresferencia de ficheros</string>
- <!--content -->
- <string name="incoming_file_confirm_content">Aceutar ficheru entrante? </string>
- <!-- Label for a cancel button. -->
- <string name="incoming_file_confirm_cancel">Refugar</string>
- <!-- Label for a confirm button.-->
- <string name="incoming_file_confirm_ok">Aceutar</string>
- <!-- Label for timeout OK button.-->
- <string name="incoming_file_confirm_timeout_ok">Aceutar</string>
- <!-- content for timeout-->
- <string name="incoming_file_confirm_timeout_content">Escosó\'l tiempu p\'aceutar el ficheru entrante de \"<xliff:g id="SENDER">%1$s</xliff:g>\".</string>
- <!-- Bluetooth File Transfer Acceptance Notification item -->
- <!-- Inbound File Transfer Progress Notification item -->
- <!-- label for the notification item of receiving file -->
- <string name="notification_receiving">Bluetooth: recibiendo <xliff:g id="FILE">%1$s</xliff:g></string>
- <!-- label for the notification item of received file -->
- <string name="notification_received">Compartir con Bluetooth: <xliff:g id="FILE">%1$s</xliff:g> recibíu</string>
- <!-- label for the notification item of failed receiving file -->
- <string name="notification_received_fail">Bluetooth: <xliff:g id="FILE">%1$s</xliff:g> non recibíu</string>
- <!-- Outbound File Transfer Progress Notification item -->
- <!-- label for the notification item of sending file -->
- <string name="notification_sending">Bluetooth: unviando <xliff:g id="FILE">%1$s</xliff:g></string>
- <!-- label for the notification item of sent file -->
- <string name="notification_sent">Bluetooth: <xliff:g id="FILE">%1$s</xliff:g> unviáu</string>
- <!-- label for the notification item of sent file -status -->
- <string name="notification_sent_complete">100% completáu</string>
- <!-- label for the notification item of failed sending file -->
- <string name="notification_sent_fail">Bluetooth: ficheru <xliff:g id="FILE">%1$s</xliff:g> non unviáu</string>
- <!-- Bluetooth Download Progress Dialog -->
- <!--Title -->
- <string name="download_title">Tresferencia de ficheros</string>
- <!--Line 1 -->
- <string name="download_line1">De: \"<xliff:g id="SENDER">%1$s</xliff:g>\"</string>
- <!--Line 2 -->
- <string name="download_line2">Ficheru: <xliff:g id="FILE">%1$s</xliff:g></string>
- <!--Line 3 -->
- <string name="download_line3">Tamañu de ficheru: <xliff:g id="SIZE">%1$s</xliff:g></string>
- <!--Line 4 -->
- <string name="download_line4"></string>
- <string name="download_line5">Recibiendo ficheru…</string>
- <!-- Label for a cancel button. -->
- <string name="download_cancel">Detener</string>
- <!-- Label for a hide button.-->
- <string name="download_ok">Anubrir</string>
- <!--Line 1 -->
- <string name="incoming_line1">De</string>
- <!--Line 2 -->
- <string name="incoming_line2">Nome de ficheru</string>
- <!--Line 3 -->
- <string name="incoming_line3">Tamañu</string>
- <!-- Bluetooth failed Download Dialog -->
- <!--Line 1 -->
- <string name="download_fail_line1">Ficheru non recibíu</string>
- <!--Line 2 -->
- <string name="download_fail_line2">Ficheru: <xliff:g id="FILE">%1$s</xliff:g></string>
- <!--Line 3 -->
- <string name="download_fail_line3">Motivu: <xliff:g id="REASON">%1$s</xliff:g></string>
- <!-- Label for ok button.-->
- <string name="download_fail_ok">Aceutar</string>
- <!-- Bluetooth Successful Download Dialog -->
- <!--Line 4 in "Bluetooth Download Progress Dialog" -->
- <string name="download_succ_line5">Ficheru recibíu</string>
- <!-- Label for a OK button.-->
- <string name="download_succ_ok">Abrir</string>
- <!-- Bluetooth Upload Progress Dialog -->
- <string name="upload_line1">Pa: \"<xliff:g id="RECIPIENT">%1$s</xliff:g>\"</string>
- <string name="upload_line3">Triba de ficheru: <xliff:g id="TYPE">%1$s</xliff:g> (<xliff:g id="SIZE">%2$s</xliff:g>)</string>
- <string name="upload_line5">Unviando ficheru…</string>
- <!-- Bluetooth Successful Upload Progress Dialog -->
- <!--Line 4 -->
- <string name="upload_succ_line5">Ficheru unviáu</string>
- <!-- Label for a confirm button.-->
- <string name="upload_succ_ok">Aceutar</string>
- <!-- Bluetooth Failed Upload File Transfer Dialog -->
- <string name="upload_fail_line1">Nun s\'unvió\'l ficheru a \"<xliff:g id="RECIPIENT">%1$s</xliff:g>\".</string>
- <string name="upload_fail_line1_2">Ficheru: <xliff:g id="FILE">%1$s</xliff:g></string>
- <!-- Label for a try again button.-->
- <string name="upload_fail_ok">Volver a intentalo</string>
- <!-- Label for a cancel button.-->
- <string name="upload_fail_cancel">Zarrar</string>
- <!-- Bluetooth error dialog -->
- <string name="bt_error_btn_ok">Aceutar</string>
- <string name="unknown_file">Ficheru desconocíu</string>
- <string name="unknown_file_desc">Nun hai nenguna aplicación que pueda procesar esta triba de ficheru. \n</string>
- <string name="not_exist_file">Nun hai ficheros.</string>
- <string name="not_exist_file_desc">El ficheru nun esiste. \n</string>
- <!-- Bluetooth Enabling progress dialog -->
- <string name="enabling_progress_title">Por favor, espera...</string>
- <string name="enabling_progress_content">Activando Bluetooth...</string>
- <!-- Bluetooth Toast Message -->
- <string name="bt_toast_1">Va recibise\'l ficheru. Comprueba\'l progresu na barra de notificaciones.</string>
- <string name="bt_toast_2">Nun pue recibise\'l ficheru.</string>
- <string name="bt_toast_3">Detúvose la receición del ficheru de \"<xliff:g id="SENDER">%1$s</xliff:g>\"</string>
- <string name="bt_toast_4">Unviando ficheru a \"<xliff:g id="RECIPIENT">%1$s</xliff:g>\"</string>
- <string name="bt_toast_5">Unviando <xliff:g id="NUMBER">%1$s</xliff:g> ficheros a "<xliff:g id="RECIPIENT">%2$s</xliff:g>\"</string>
- <string name="bt_toast_6">Detúvose l\'unviu del ficheru a \"<xliff:g id="RECIPIENT">%1$s</xliff:g>\"</string>
- <!-- Bluetooth System Messages [CHAR LIMIT=NONE] -->
- <string name="bt_sm_2_1" product="nosdcard">Nun hai espaciu abondu nel almacenamientu USB pa guardar el ficheru de \"<xliff:g id="SENDER">%1$s</xliff:g>\".</string>
- <!-- Bluetooth System Messages -->
- <string name="bt_sm_2_1" product="default">Nun hai espaciu abondu na tarxeta SD pa guardar el ficheru de \"<xliff:g id="SENDER">%1$s</xliff:g>\".</string>
- <string name="bt_sm_2_2">Espaciu necesariu: <xliff:g id="SIZE">%1$s</xliff:g></string>
- <string name="ErrorTooManyRequests">Tán procesándose munches solicitúes. Vuelvi a intentalo dempués.</string>
- <!-- Bluetooth Transfer Failure Reason -->
- <string name="status_pending">Entá nun s\'anició la tresferencia de ficheros.</string>
- <string name="status_running">Tresferencia de ficheros en cursu</string>
- <string name="status_success">La tresferencia de ficheros completóse correcho.</string>
- <string name="status_not_accept">Conteníu non almitíu</string>
- <string name="status_forbidden">El preséu de destín nun permite la tresferencia.</string>
- <string name="status_canceled">Tresferencia encaboxada pol usuariu</string>
- <string name="status_file_error">Fallu rellacionáu col almacenamientu</string>
- <!-- Shown when USB storage cannot be found. [CHAR LIMIT=NONE] -->
- <string name="status_no_sd_card" product="nosdcard">Ensin almacenamientu USB</string>
- <string name="status_no_sd_card" product="default">Nun se deteuta nenguna tarxeta SD. Inxerta una tarxeta SD y guarda los ficheros tresferíos.</string>
- <string name="status_connection_error">Conexón incorreuta</string>
- <string name="status_protocol_error">Nun pue procesase la solicitú correchamente.</string>
- <string name="status_unknown_error">Fallu desconocíu</string>
- <!-- Bluetooth OPP Live Folder -->
- <string name="btopp_live_folder">Recibío per Bluetooth</string>
- <!-- Bluetooth OPP Transfer History -->
- <string name="download_success">Receición de <xliff:g id="FILE_SIZE">%1$s</xliff:g> completada</string>
- <string name="upload_success">Unviu de <xliff:g id="FILE_SIZE">%1$s</xliff:g> completáu</string>
- <string name="inbound_history_title">Tresferencies entrantes</string>
- <string name="outbound_history_title">Tresferencies salientes</string>
- <string name="no_transfers">L\'historial de tresferencies ta baleru.</string>
- <string name="transfer_clear_dlg_msg">Van desaniciase tolos elementos de la llista.</string>
- <string name="outbound_noti_title">Bluetooth: ficheros unviaos</string>
- <string name="inbound_noti_title">Bluetooth: ficheros recibíos</string>
- <plurals name="noti_caption_unsuccessful">
- <item quantity="one"><xliff:g id="unsuccessful_number">%1$d</xliff:g> con fallu</item>
- <item quantity="other"><xliff:g id="unsuccessful_number">%1$d</xliff:g> con fallu</item>
- </plurals>
- <plurals name="noti_caption_success">
- <item quantity="one"><xliff:g id="successful_number">%1$d</xliff:g> correutu, %2$s</item>
- <item quantity="other"><xliff:g id="successful_number">%1$d</xliff:g> correutos, %2$s</item>
- </plurals>
- <string name="transfer_menu_clear_all">Desaniciar llista</string>
- <string name="transfer_menu_open">Abrir</string>
- <string name="transfer_menu_clear">Desaniciar de la llista</string>
- <string name="transfer_clear_dlg_title">Desaniciar</string>
- <!-- Do not translate. file name used for sharing. -->
- <!-- Used to run Bluetooth.apk in another process if needed -->
- <!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <string name="bluetooth_map_settings_save">Guardar</string>
- <string name="bluetooth_map_settings_cancel">Encaboxar</string>
- <string name="bluetooth_map_settings_count">Slots restantes:</string>
- <string name="bluetooth_map_settings_app_icon">Iconu d\'aplicación</string>
- <string name="bluetooth_map_settings_title">Axustes de mensaxes compartíos per Bluetooth</string>
- <string name="bluetooth_map_settings_no_account_slots_left">Nun pues esbillar la cuenta. Nun queden slots.</string>
+ <string name="permlab_bluetoothShareManager">Accesu al xestor de descargues.</string>
+ <string name="permdesc_bluetoothShareManager">Permite que l\'aplicación acceda
+ al xestor BluetoothShare y usalu pa tresferir ficheros. </string>
+ <string name="permlab_bluetoothWhitelist">Accesu de preseos Bluetooth autorizaos</string>
+ <string name="permdesc_bluetoothWhitelist">Permíte-y a l’aplicación autorizar temporalmente un preséu Bluetooth pa poder unviar ficheros a esti preséu ensin la confirmación del usuariu.</string>
+ <string name="bt_share_picker_label">Bluetooth</string>
+ <string name="unknown_device">Preséu desconocíu</string>
+ <string name="unknownNumber">Desconozse</string>
+ <string name="airplane_error_title">Mou avión</string>
+ <string name="airplane_error_msg">Nun pues usar el Bluetooth nel mou avión.</string>
+ <string name="bt_enable_line1">Pa usar los servicios Bluetooth, primero has prender el Bluetooth.</string>
+ <string name="bt_enable_line2">¿Prender Bluetooth agora?</string>
+ <string name="bt_enable_cancel">Encaboxar</string>
+ <string name="bt_enable_ok">Prender</string>
+ <string name="incoming_file_confirm_title">Tresferencia de ficheros</string>
+ <string name="incoming_file_confirm_content">¿Aceutar ficheru entrante? </string>
+ <string name="incoming_file_confirm_cancel">Refugar</string>
+ <string name="incoming_file_confirm_ok">Aceutar</string>
+ <string name="incoming_file_confirm_timeout_ok">Aceutar</string>
+ <string name="incoming_file_confirm_timeout_content">Escosó\'l tiempu d\'espera mentanto s\'aceutaba un ficheru entrante de «<xliff:g id="sender">%1$s</xliff:g>»</string>
+ <string name="incoming_file_confirm_Notification_title">Ficheru entrante</string>
+ <string name="incoming_file_confirm_Notification_content"><xliff:g id="sender">%1$s</xliff:g> ta tresnáu pa unviar <xliff:g id="file">%2$s</xliff:g></string>
+ <string name="notification_receiving">Compartición Bluetooth: Recibiendo <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_received">Compatición Bluetooth: Recibióse <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_received_fail">Compartición Bluetooth: Nun se recibió <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_sending">Compartición Bluetooth: Unviando <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_sent">Compartición Bluetooth: Unvióse <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_sent_complete">100% completáu</string>
+ <string name="notification_sent_fail">Compartición Bluetooth: Nun s\'unvió\'l ficheru <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_title">Tresferencia de ficheros</string>
+ <string name="download_line1">De: \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="download_line2">Ficheru: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_line3">Tamañu del ficheru: <xliff:g id="size">%1$s</xliff:g></string>
+ <string name="download_line5">Recibiendo ficheru\u2026</string>
+ <string name="download_cancel">Parar</string>
+ <string name="download_ok">Anubrir</string>
+ <string name="incoming_line1">De</string>
+ <string name="incoming_line2">Nome del ficheru</string>
+ <string name="incoming_line3">Tamañu</string>
+ <string name="download_fail_line1">Nun se recibió\'l ficheru</string>
+ <string name="download_fail_line2">Ficheru: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_fail_line3">Razón: <xliff:g id="reason">%1$s</xliff:g></string>
+ <string name="download_fail_ok">Aceutar</string>
+ <string name="download_succ_line5">Recibióse\'l ficheru</string>
+ <string name="download_succ_ok">Abrir</string>
+ <string name="upload_line1">Pa: «<xliff:g id="recipient">%1$s</xliff:g>»</string>
+ <string name="upload_line3">Triba del ficheru: <xliff:g id="type">%1$s</xliff:g> (<xliff:g id="size">%2$s</xliff:g>)</string>
+ <string name="upload_line5">Unviando ficheru\u2026</string>
+ <string name="upload_succ_line5">Unvióse\'l ficheru</string>
+ <string name="upload_succ_ok">Aceutar</string>
+ <string name="upload_fail_line1">Nun s\'unvió\'l ficheru a «<xliff:g id="recipient">%1$s</xliff:g>».</string>
+ <string name="upload_fail_line1_2">Ficheru: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="upload_fail_ok">Retentar</string>
+ <string name="upload_fail_cancel">Zarrar</string>
+ <string name="bt_error_btn_ok">Aceutar</string>
+ <string name="unknown_file">Ficheru desconocíu</string>
+ <string name="unknown_file_desc">Nun hai aplicaciones que remanen esta triba de ficheru. \n</string>
+ <string name="not_exist_file">Nun hai ficheros.</string>
+ <string name="not_exist_file_desc">Nun esiste\'l ficheru. \n</string>
+ <string name="enabling_progress_title">Espera, por favor\u2026</string>
+ <string name="enabling_progress_content">Prendiendo Bluetooth\u2026</string>
+ <string name="bt_toast_1">Va recibise\'l ficheru. Comprueba\'l progresu nel panel d\'avisos.</string>
+ <string name="bt_toast_2">Nun pue recibise\'l ficheru.</string>
+ <string name="bt_toast_3">Paróse la receición del ficheru de «<xliff:g id="sender">%1$s</xliff:g>»</string>
+ <string name="bt_toast_4">Unviando\'l ficheru a «<xliff:g id="recipient">%1$s</xliff:g>»</string>
+ <string name="bt_toast_5">Unviando <xliff:g id="number">%1$s</xliff:g> ficheros a «<xliff:g id="recipient">%2$s</xliff:g>»</string>
+ <string name="bt_toast_6">Paróse l\'unviu del ficheru a «<xliff:g id="RECIPIENT">%1$s</xliff:g>»</string>
+ <string name="bt_sm_2_1" product="nosdcard">Nun hai espaciu abondu nel almacenamientu USB pa guardar el ficheru de «<xliff:g id="SENDER">%1$s</xliff:g>»</string>
+ <string name="bt_sm_2_1" product="default">Nun hai espaciu abondu na tarxeta SD pa guardar el ficheru de «<xliff:g id="SENDER">%1$s</xliff:g>»</string>
+ <string name="bt_sm_2_2">Espaciu precisu: <xliff:g id="size">%1$s</xliff:g></string>
+ <string name="ErrorTooManyRequests">Tán procesándose milenta solicitúes. Volvi a tentalo más sero.</string>
+ <string name="status_pending">Entá nun s\'anició la tresferencia de ficheros.</string>
+ <string name="status_running">Tresferencia de ficheros en cursu</string>
+ <string name="status_success">La tresferencia de ficheros completóse con ésitu.</string>
+ <string name="status_not_accept">Nun se sofita\'l conteníu.</string>
+ <string name="status_forbidden">El preséu de destín prohibió la tresferencia.</string>
+ <string name="status_canceled">L\'usuariu encaboxó la tresferencia.</string>
+ <string name="status_file_error">Problemes col almacenamientu.</string>
+ <string name="status_no_sd_card" product="nosdcard">Ensin almacenamientu USB.</string>
+ <string name="status_no_sd_card" product="default">Ensin tarxeta SD. Inxerta una pa guardar los ficheros tresferíos.</string>
+ <string name="status_connection_error">Conexón incorreuta</string>
+ <string name="status_protocol_error">La solicitú nun pudo remanase correutamente.</string>
+ <string name="status_unknown_error">Fallu desconocíu.</string>
+ <string name="btopp_live_folder">Recibío per Bluetooth</string>
+ <string name="download_success">Receición de <xliff:g id="FILE_SIZE">%1$s</xliff:g> completada</string>
+ <string name="upload_success">Unviu de <xliff:g id="FILE_SIZE">%1$s</xliff:g> completáu</string>
+ <string name="inbound_history_title">Tresferencies entrantes</string>
+ <string name="outbound_history_title">Tresferencies salientes</string>
+ <string name="no_transfers">L\'historial de tresferencies ta baleru.</string>
+ <string name="transfer_clear_dlg_msg">Van desaniciase tolos elementos del llistáu.</string>
+ <string name="outbound_noti_title">Compartición Bluetooth: Ficheros unviaos</string>
+ <string name="inbound_noti_title">Compartición Bluetooth: Ficheros recibíos</string>
+ <plurals name="noti_caption_unsuccessful">
+ <item quantity="one"><xliff:g id="unsuccessful_number">%1$d</xliff:g> falló.</item>
+ <item quantity="other"><xliff:g id="unsuccessful_number">%1$d</xliff:g> fallaron.</item>
+ </plurals>
+ <plurals name="noti_caption_success">
+ <item quantity="one"><xliff:g id="successful_number">%1$d</xliff:g> correutu, %2$s</item>
+ <item quantity="other"><xliff:g id="successful_number">%1$d</xliff:g> correutos, %2$s</item>
+ </plurals>
+ <string name="transfer_menu_clear_all">Llimpiar llistáu</string>
+ <string name="transfer_menu_open">Abrir</string>
+ <string name="transfer_menu_clear">Desaniciar del llistáu</string>
+ <string name="transfer_clear_dlg_title">Desaniciu</string>
+ <string name="bluetooth_share_file_name" translate="false">bluetooth_content_share</string>
+ <string name="bluetooth_map_settings_save">Guardar</string>
+ <string name="bluetooth_map_settings_cancel">Encaboxar</string>
+ <string name="bluetooth_map_settings_intro">Esbilla les cuentes que quies compartir pente Bluetooth. Entá tendrás d\'aceutar cualesquier accesu a elles al coneutate.</string>
+ <string name="bluetooth_map_settings_count">Ralures que queden:</string>
+ <string name="bluetooth_map_settings_app_icon">Iconu d\'aplicación</string>
+ <string name="bluetooth_map_settings_title">Axustes de compartición de mensaxes per Bluetooth</string>
+ <string name="bluetooth_map_settings_no_account_slots_left">Nun pues esbillar la cuenta. Nun queden ralures</string>
+ <string name="bluetooth_connected">Coneutóse l\'audiu Bluetooth</string>
+ <string name="bluetooth_disconnected">Desconeutóse l\'audiu Bluetooth</string>
</resources>
diff --git a/res/values-ast-rES/strings_pbap.xml b/res/values-ast-rES/strings_pbap.xml
index bc1a98e38..9a5b4bcef 100644
--- a/res/values-ast-rES/strings_pbap.xml
+++ b/res/values-ast-rES/strings_pbap.xml
@@ -1,17 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="pbap_session_key_dialog_title">Escribi clave de sesión pa %1$s</string>
- <string name="pbap_session_key_dialog_header">Necesítase la clave de sesión de Bluetooth.</string>
- <string name="pbap_acceptance_timeout_message">Escosó\'l tiempu p\'aceutar la conexón con %1$s.</string>
- <string name="pbap_authentication_timeout_message">Escosó\'l tiempu pa inxertar la clave de sesión con %1$s.</string>
- <string name="auth_notif_ticker">Solicitú d\'autenticación de Obex</string>
- <!-- Notification title when a Bluetooth device wants to pair with us -->
- <string name="auth_notif_title">Clave de sesión</string>
- <!-- Notification message when a Bluetooth device wants to pair with us -->
- <string name="auth_notif_message">Escribi clave de sesión pa %1$s</string>
- <string name="defaultname">Kit d\'automóvil</string>
- <string name="unknownName">Nome desconocíu</string>
- <string name="localPhoneName">El mio nome</string>
- <string name="defaultnumber">000000</string>
+ <string name="pbap_session_key_dialog_title">Teclexa la clave de sesión pa %1$s</string>
+ <string name="pbap_session_key_dialog_header">Ríquese la clave de sesión Bluetooth</string>
+ <string name="pbap_acceptance_timeout_message">Escosó\'l tiempu d\'espera p\'aceutar la conexón con %1$s</string>
+ <string name="pbap_authentication_timeout_message">Escosó\'l tiempu d\'espera pa introducir la clave de sesión con %1$s</string>
+ <string name="auth_notif_ticker">Solicitú d\'autenticación OBEX</string>
+ <string name="auth_notif_title">Clave de sesión</string>
+ <string name="auth_notif_message">Teclexa la clave de sesión pa %1$s</string>
+ <string name="defaultname">Kit d\'automóvil</string>
+ <string name="unknownName">Nome desconocíu</string>
+ <string name="localPhoneName">El mio nome</string>
+ <string name="defaultnumber">000000</string>
</resources>
diff --git a/res/values-ast-rES/strings_sap.xml b/res/values-ast-rES/strings_sap.xml
index 915e96ec8..3315d9a19 100644
--- a/res/values-ast-rES/strings_sap.xml
+++ b/res/values-ast-rES/strings_sap.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="bluetooth_sap_notif_title">Accesu SIM de Bluetooth</string>
- <string name="bluetooth_sap_notif_ticker">Accesu SIM de Bluetooth</string>
- <string name="bluetooth_sap_notif_message">¿Solicitar desconexón de veceru?</string>
- <string name="bluetooth_sap_notif_disconnecting">Esperando pola desconexón del veceru</string>
- <string name="bluetooth_sap_notif_disconnect_button">Desconeutar</string>
- <string name="bluetooth_sap_notif_force_disconnect_button">Forciar desconexón</string>
+ <string name="bluetooth_sap_notif_title">Accesu SIM de Bluetooth</string>
+ <string name="bluetooth_sap_notif_ticker">Accesu SIM de Bluetooth</string>
+ <string name="bluetooth_sap_notif_message">¿Solicitar desconexón del veceru?</string>
+ <string name="bluetooth_sap_notif_disconnecting">Esperando pola desconexón del veceru</string>
+ <string name="bluetooth_sap_notif_disconnect_button">Desconeutar</string>
+ <string name="bluetooth_sap_notif_force_disconnect_button">Forciar desconexón</string>
</resources>
diff --git a/res/values-az-rAZ/cm_strings.xml b/res/values-az-rAZ/cm_strings.xml
index 5f008cd3c..44f3775df 100644
--- a/res/values-az-rAZ/cm_strings.xml
+++ b/res/values-az-rAZ/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Fayl göndərilmədi, yenidən yoxlanır\u2026</string>
+ <string name="incoming_file_toast_msg">Başqa cihazdan fayl gəlir. Qəbul etmə istəyinizi təsdiq edin.</string>
+ <string name="upload_fail_waiting">Fayl göndərilə bilmədi, yenidən sınanır\u2026</string>
</resources>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index c3b1d1a02..360e03b35 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -69,7 +69,7 @@
<string name="upload_succ_ok" msgid="7705428476405478828">"Potvrdi"</string>
<string name="upload_fail_line1" msgid="7899394672421491701">"Datoteka nije poslata na <xliff:g id="RECIPIENT">%1$s</xliff:g>."</string>
<string name="upload_fail_line1_2" msgid="2108129204050841798">"Datoteka: <xliff:g id="FILE">%1$s</xliff:g>"</string>
- <string name="upload_fail_ok" msgid="5807702461606714296">"Pokušaj ponovo"</string>
+ <string name="upload_fail_ok" msgid="5807702461606714296">"Probaj ponovo"</string>
<string name="upload_fail_cancel" msgid="9118496285835687125">"Zatvori"</string>
<string name="bt_error_btn_ok" msgid="5965151173011534240">"Potvrdi"</string>
<string name="unknown_file" msgid="6092727753965095366">"Nepoznata datoteka"</string>
@@ -87,7 +87,7 @@
<string name="bt_sm_2_1" product="nosdcard" msgid="352165168004521000">"Nema dovoljno prostora u USB memoriji da bi se sačuvala datoteka pošiljaoca „<xliff:g id="SENDER">%1$s</xliff:g>“"</string>
<string name="bt_sm_2_1" product="default" msgid="1989018443456803630">"Nema dovoljno prostora na SD kartici da bi se sačuvala datoteka pošiljaoca „<xliff:g id="SENDER">%1$s</xliff:g>“"</string>
<string name="bt_sm_2_2" msgid="2965243265852680543">"Potreban prostor: <xliff:g id="SIZE">%1$s</xliff:g>"</string>
- <string name="ErrorTooManyRequests" msgid="8578277541472944529">"Previše zahteva se obrađuje. Pokušajte ponovo kasnije."</string>
+ <string name="ErrorTooManyRequests" msgid="8578277541472944529">"Previše zahteva se obrađuje. Probajte ponovo kasnije."</string>
<string name="status_pending" msgid="2503691772030877944">"Prenos datoteke još nije počeo."</string>
<string name="status_running" msgid="6562808920311008696">"Prenos datoteke je u toku."</string>
<string name="status_success" msgid="239573225847565868">"Prenos datoteke je dovršen."</string>
diff --git a/res/values-be-rBY/cm_strings.xml b/res/values-be-rBY/cm_strings.xml
index 83e033835..64fc2f164 100644
--- a/res/values-be-rBY/cm_strings.xml
+++ b/res/values-be-rBY/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Уваходны файл з іншае прылады. Пацьвердзі, хочаш атрымаць гэты файл.</string>
- <string name="upload_fail_waiting">Не атрымалася адправіць файл. Паўторная спроба\u2026</string>
+ <string name="incoming_file_toast_msg">Уваходны файл з іншае прылады. Пацьвердзі, хочаш атрымаць гэты файл.</string>
+ <string name="upload_fail_waiting">Не атрымалася адправіць файл. Паўторная спроба\u2026</string>
</resources>
diff --git a/res/values-be-rBY/test_strings.xml b/res/values-be-rBY/test_strings.xml
index 2307f8e40..de8a6f750 100644
--- a/res/values-be-rBY/test_strings.xml
+++ b/res/values-be-rBY/test_strings.xml
@@ -1,7 +1,6 @@
<?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="hello" msgid="1740533743008967039">"Hello World, TestActivity"</string>
<string name="app_name" msgid="1203877025577761792">"Перадача праз Bluetooth"</string>
<string name="insert_record" msgid="1450997173838378132">"Уставіць запіс"</string>
<string name="update_record" msgid="2480425402384910635">"Пацвердзіць запіс"</string>
diff --git a/res/values-bg/cm_strings.xml b/res/values-bg/cm_strings.xml
index 6cd02fd9c..b8b913a85 100644
--- a/res/values-bg/cm_strings.xml
+++ b/res/values-bg/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Входящ файл от друго устройство. Потвърдете искате ли да получуте този файл.</string>
- <string name="upload_fail_waiting">Файлът не може да бъде изпратен, опитайте пак\u2026</string>
+ <string name="incoming_file_toast_msg">Входящ файл от друго устройство. Потвърдете искате ли да получуте този файл.</string>
+ <string name="upload_fail_waiting">Файлът не може да бъде изпратен, опитайте пак\u2026</string>
</resources>
diff --git a/res/values-bn-rBD/cm_strings.xml b/res/values-bn-rBD/cm_strings.xml
index f6d358e49..04be15097 100644
--- a/res/values-bn-rBD/cm_strings.xml
+++ b/res/values-bn-rBD/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ফাইল পাঠাতে অক্ষম, পুনরায় চেষ্টা করা হচ্ছে\u2026</string>
+ <string name="upload_fail_waiting">ফাইল পাঠাতে অক্ষম, পুনরায় চেষ্টা করা হচ্ছে\u2026</string>
</resources>
diff --git a/res/values-bn-rBD/strings_sap.xml b/res/values-bn-rBD/strings_sap.xml
index 23def2a6e..35329d8fd 100644
--- a/res/values-bn-rBD/strings_sap.xml
+++ b/res/values-bn-rBD/strings_sap.xml
@@ -1,8 +1,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="bluetooth_sap_notif_title" msgid="6877860822993195074">"ব্লুটুথ SIM -এ অ্যাক্সেস করুন"</string>
- <string name="bluetooth_sap_notif_ticker" msgid="6807778527893726699">"ব্লুটুথ SIM -এ অ্যাক্সেস করুন"</string>
+ <string name="bluetooth_sap_notif_title" msgid="6877860822993195074">"ব্লুটুথ সিম -এ অ্যাক্সেস করুন"</string>
+ <string name="bluetooth_sap_notif_ticker" msgid="6807778527893726699">"ব্লুটুথ সিম -এ অ্যাক্সেস করুন"</string>
<string name="bluetooth_sap_notif_message" msgid="7138657801087500690">"ক্লায়েন্ট সংযোগ বিচ্ছিন্ন করার অনুরোধ জানাবেন?"</string>
<string name="bluetooth_sap_notif_disconnecting" msgid="819150843490233288">"সংযোগ বিচ্ছিন্ন করতে ক্লায়েন্টের জন্য অপেক্ষা করা"</string>
<string name="bluetooth_sap_notif_disconnect_button" msgid="3678476872583356919">"সংযোগ বিচ্ছিন্ন করুন"</string>
diff --git a/res/values-br-rFR/strings.xml b/res/values-br-rFR/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-br-rFR/strings.xml
+++ b/res/values-br-rFR/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-bs-rBA/cm_strings.xml b/res/values-bs-rBA/cm_strings.xml
index 29c1061f9..2e6834cac 100644
--- a/res/values-bs-rBA/cm_strings.xml
+++ b/res/values-bs-rBA/cm_strings.xml
@@ -15,4 +15,6 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<resources></resources>
+<resources>
+ <string name="upload_fail_waiting">Slanje datoteke nije uspjelo, pokušavam ponovo\u2026</string>
+</resources>
diff --git a/res/values-bs-rBA/strings.xml b/res/values-bs-rBA/strings.xml
index aca69f4b2..d426d6c8c 100644
--- a/res/values-bs-rBA/strings.xml
+++ b/res/values-bs-rBA/strings.xml
@@ -41,7 +41,7 @@
<string name="notification_receiving" msgid="4674648179652543984">"Bluetooth dijeljenje: Prima se fajl <xliff:g id="FILE">%1$s</xliff:g>"</string>
<string name="notification_received" msgid="3324588019186687985">"Bluetooth dijeljenje: Primljen fajl <xliff:g id="FILE">%1$s</xliff:g>"</string>
<string name="notification_received_fail" msgid="3619350997285714746">"Bluetooth dijeljenje: Fajl <xliff:g id="FILE">%1$s</xliff:g> nije primljen"</string>
- <string name="notification_sending" msgid="3035748958534983833">"Bluetooth dijeljenje: Šalje se fajl <xliff:g id="FILE">%1$s</xliff:g>"</string>
+ <string name="notification_sending" msgid="3035748958534983833">"Bluetooth dijeljenje: Slanje fajla <xliff:g id="FILE">%1$s</xliff:g>"</string>
<string name="notification_sent" msgid="9218710861333027778">"Bluetooth dijeljenje: Poslan fajl <xliff:g id="FILE">%1$s</xliff:g>"</string>
<string name="notification_sent_complete" msgid="302943281067557969">"Dovršeno 100%"</string>
<string name="notification_sent_fail" msgid="6696082233774569445">"Bluetooth dijeljenje: Fajl <xliff:g id="FILE">%1$s</xliff:g> nije poslan"</string>
diff --git a/res/values-ca/cm_strings.xml b/res/values-ca/cm_strings.xml
index 3169eb562..03980b225 100644
--- a/res/values-ca/cm_strings.xml
+++ b/res/values-ca/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Fitxer entrant des d\'un altre dispositiu. Confirma que vols rebre aquest fitxer.</string>
- <string name="upload_fail_waiting">No es pot enviar el fitxer, s\'està reintentant\u2026</string>
+ <string name="incoming_file_toast_msg">Fitxer entrant des d\'un altre dispositiu. Confirma que vols rebre aquest fitxer.</string>
+ <string name="upload_fail_waiting">No es pot enviar el fitxer, s\'està reintentant\u2026</string>
</resources>
diff --git a/res/values-cs/cm_strings.xml b/res/values-cs/cm_strings.xml
index 06482df05..51701825f 100644
--- a/res/values-cs/cm_strings.xml
+++ b/res/values-cs/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Příchozí soubor z jiného zařízení. Potvrďte, že chcete přijmout tento soubor.</string>
- <string name="upload_fail_waiting">Nepodařilo se odeslat soubor, opakování akce\u2026</string>
+ <string name="incoming_file_toast_msg">Příchozí soubor z jiného zařízení. Potvrďte, že chcete přijmout tento soubor.</string>
+ <string name="upload_fail_waiting">Nepodařilo se odeslat soubor, opakování akce\u2026</string>
</resources>
diff --git a/res/values-csb-rPL/strings.xml b/res/values-csb-rPL/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-csb-rPL/strings.xml
+++ b/res/values-csb-rPL/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-cy/cm_strings.xml b/res/values-cy/cm_strings.xml
index 29c1061f9..df838eb42 100644
--- a/res/values-cy/cm_strings.xml
+++ b/res/values-cy/cm_strings.xml
@@ -15,4 +15,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<resources></resources>
+<resources>
+ <string name="incoming_file_toast_msg">Mae ffeil yn dod mewn o ddyfais arall. Cadarnha dy fod am dderbyn y ffeil hon.</string>
+ <string name="upload_fail_waiting">Methu ag anfon y ffeil. Yn rhoi cynnig arall arni\u2026</string>
+</resources>
diff --git a/res/values-cy/strings.xml b/res/values-cy/strings.xml
index 1b6ab882a..63be5ba25 100644
--- a/res/values-cy/strings.xml
+++ b/res/values-cy/strings.xml
@@ -15,93 +15,125 @@
limitations under the License.
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!--
- This is the short description of a permission associated with the
- Bluetooth Share Manager. It is displayed as part of the description of
- any application that was granted that permission. This specific
- permission controls access to the Bluetooth Share Manager by
- applications that initiate Bluetooth share.
- -->
- <!--
- This is the long description of a permission associated with the
- Android Download Manager. It is displayed as part of the description
- of any application that was granted that permission. This specific
- permission controls access to the Download Manager by applications
- that initiate downloads.
- -->
- <!-- string showed on "Share picutre via" dialog -->
- <!-- string for "unknown device" -->
- <!-- string for "unknown" phone number" -->
- <!-- string for "the title of airplane mode error" -->
- <!-- string for "error message in airplane mode" -->
- <!-- Activate Bluetooth Confirmation Dialog -->
- <!--Title -->
- <string name="bt_enable_title"></string>
- <!--Line 1 -->
- <!--Line 2 -->
- <!-- Label for a cancel button. -->
- <!-- Label for a confirm button.-->
- <!-- Bluetooth File Transfer Acceptance Dialog -->
- <!--Title -->
- <!--content -->
- <!-- Label for a cancel button. -->
- <!-- Label for a confirm button.-->
- <!-- Label for timeout OK button.-->
- <!-- content for timeout-->
- <!-- Bluetooth File Transfer Acceptance Notification item -->
- <!-- Inbound File Transfer Progress Notification item -->
- <!-- label for the notification item of receiving file -->
- <!-- label for the notification item of received file -->
- <!-- label for the notification item of failed receiving file -->
- <!-- Outbound File Transfer Progress Notification item -->
- <!-- label for the notification item of sending file -->
- <!-- label for the notification item of sent file -->
- <!-- label for the notification item of sent file -status -->
- <!-- label for the notification item of failed sending file -->
- <!-- Bluetooth Download Progress Dialog -->
- <!--Title -->
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!--Line 4 -->
- <string name="download_line4"></string>
- <!-- Label for a cancel button. -->
- <!-- Label for a hide button.-->
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!-- Bluetooth failed Download Dialog -->
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!-- Label for ok button.-->
- <!-- Bluetooth Successful Download Dialog -->
- <!--Line 4 in "Bluetooth Download Progress Dialog" -->
- <!-- Label for a OK button.-->
- <!-- Bluetooth Upload Progress Dialog -->
- <!-- Bluetooth Successful Upload Progress Dialog -->
- <!--Line 4 -->
- <!-- Label for a confirm button.-->
- <!-- Bluetooth Failed Upload File Transfer Dialog -->
- <!-- Label for a try again button.-->
- <!-- Label for a cancel button.-->
- <!-- Bluetooth error dialog -->
- <!-- Bluetooth Enabling progress dialog -->
- <!-- Bluetooth Toast Message -->
- <!-- Bluetooth System Messages [CHAR LIMIT=NONE] -->
- <!-- Bluetooth System Messages -->
- <!-- Bluetooth Transfer Failure Reason -->
- <!-- Shown when USB storage cannot be found. [CHAR LIMIT=NONE] -->
- <!-- Bluetooth OPP Live Folder -->
- <!-- Bluetooth OPP Transfer History -->
- <!-- Do not translate. file name used for sharing. -->
- <!-- Used to run Bluetooth.apk in another process if needed -->
- <!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
+ <string name="permlab_bluetoothShareManager">Mynediad at y rheolwr lawrlwytho</string>
+ <string name="permdesc_bluetoothShareManager">Mae\'n caniatáu i\'r ap gael mynediad at reolwr BluetoothShare a\'i defnyddio i drosglwyddo ffeiliau.</string>
+ <string name="permlab_bluetoothWhitelist">Caniatáu mynediad dyfais Bluetooth.</string>
+ <string name="permdesc_bluetoothWhitelist">Mae\'n caniatáu i\'r ap ychwanegu dyfais Bluetooth i restr wen dros dro er mwyn anfon ffeiliau i\'r ddyfais hon heb gadarnhad defnyddiwr.</string>
+ <string name="bt_share_picker_label">Bluetooth</string>
+ <string name="unknown_device">Dyfais anhysbys</string>
+ <string name="unknownNumber">Anhysybys</string>
+ <string name="airplane_error_title">Modd awyren</string>
+ <string name="airplane_error_msg">Nid yw\'n bosib defnyddio Bluetooth tra ym modd awyren.</string>
+ <string name="bt_enable_line1">I ddefnyddio gwasanaethau Bluetooth, rhaid yn gyntaf troi Bluetooth ymlaen.</string>
+ <string name="bt_enable_line2">Rhoi Bluetooth ar waith nawr?</string>
+ <string name="bt_enable_cancel">Diddymu</string>
+ <string name="bt_enable_ok">Troi ymlaen</string>
+ <string name="incoming_file_confirm_title">Trosglwyddo ffeil</string>
+ <string name="incoming_file_confirm_content">Derbyn ffeil i mewn? </string>
+ <string name="incoming_file_confirm_cancel">Gwrthod</string>
+ <string name="incoming_file_confirm_ok">Derbyn</string>
+ <string name="incoming_file_confirm_timeout_ok">Iawn</string>
+ <string name="incoming_file_confirm_timeout_content">Daeth yr amser i ben wrth dderbyn ffeil i mewn oddi wrth \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="incoming_file_confirm_Notification_title">Ffeil yn dod mewn</string>
+ <string name="incoming_file_confirm_Notification_content">Mae <xliff:g id="sender">%1$s</xliff:g> yn barod i anfon <xliff:g id="file">%2$s</xliff:g></string>
+ <string name="notification_receiving">Rhannu Bluetooth: Yn derbyn <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_received">Rhannu Bluetooth: Wedi derbyn <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_received_fail">Rhannu Bluetooth: Ffeil <xliff:g id="file">%1$s</xliff:g> heb ei derbyn</string>
+ <string name="notification_sending">Rhannu Bluetooth: Yn anfon <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_sent">Rhannu Bluetooth: Wedi anfon <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_sent_complete">100% yn gyflawn</string>
+ <string name="notification_sent_fail">Rhannu Bluetooth: Ffeil <xliff:g id="file">%1$s</xliff:g> heb ei anfon</string>
+ <string name="download_title">Trosglwyddo ffeil</string>
+ <string name="download_line1">Oddi wrth: \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="download_line2">Ffeil: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_line3">Maint y ffeil: <xliff:g id="size">%1$s</xliff:g></string>
+ <string name="download_line5">Yn derbyn ffeil\u2026</string>
+ <string name="download_cancel">Stopio</string>
+ <string name="download_ok">Cuddio</string>
+ <string name="incoming_line1">Oddi wrth</string>
+ <string name="incoming_line2">Enw\'r ffeil</string>
+ <string name="incoming_line3">Maint</string>
+ <string name="download_fail_line1">Ni dderbyniwyd y ffeil</string>
+ <string name="download_fail_line2">Ffeil: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_fail_line3">Rheswm: <xliff:g id="reason">%1$s</xliff:g></string>
+ <string name="download_fail_ok">Iawn</string>
+ <string name="download_succ_line5">Derbyniwyd y ffeil</string>
+ <string name="download_succ_ok">Agor</string>
+ <string name="upload_line1">At: \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
+ <string name="upload_line3">Math ffeil: <xliff:g id="type">%1$s</xliff:g> (<xliff:g id="size">%2$s</xliff:g>)</string>
+ <string name="upload_line5">Yn anfon ffeil\u2026</string>
+ <string name="upload_succ_line5">Anfonwyd y ffeil</string>
+ <string name="upload_succ_ok">Iawn</string>
+ <string name="upload_fail_line1">Ni chafodd y ffeil ei anfon at \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022.</string>
+ <string name="upload_fail_line1_2">Ffeil: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="upload_fail_ok">Ceisio eto</string>
+ <string name="upload_fail_cancel">Cau</string>
+ <string name="bt_error_btn_ok">Iawn</string>
+ <string name="unknown_file">Ffeil anhysbys</string>
+ <string name="unknown_file_desc">Nid oes ap gyda\'r gallu i drin y math hwn o ffeil. \n</string>
+ <string name="not_exist_file">Dim ffeil</string>
+ <string name="not_exist_file_desc">Dyw\'r ffeil ddim yn bodoli. \n</string>
+ <string name="enabling_progress_title">Arhosa\u2026</string>
+ <string name="enabling_progress_content">Yn troi Bluetooth ymlaen\u2026</string>
+ <string name="bt_toast_1">Caiff y ffeil ei derbyn. Gwiria\'r cynnydd yn y panel Hysbysiadau.</string>
+ <string name="bt_toast_2">Ni ellir derbyn y ffeil.</string>
+ <string name="bt_toast_3">Stopiwyd derbyn y ffeil oddi wrth \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="bt_toast_4">Yn anfon ffeil at \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
+ <string name="bt_toast_5">Yn anfon <xliff:g id="number">%1$s</xliff:g> ffeil at \u0022<xliff:g id="recipient">%2$s</xliff:g>\u0022</string>
+ <string name="bt_toast_6">Wedi stopio anfon ffeil at \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
+ <string name="bt_sm_2_1" product="nosdcard">Does dim digon o le yn y storfa USB i gadw\'r ffeil oddi wrth \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="bt_sm_2_1" product="default">Does dim digon o le ar y cerdyn SD i gadw\'r ffeil oddi wrth \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="bt_sm_2_2">Lle sydd ei angen: <xliff:g id="size">%1$s</xliff:g></string>
+ <string name="ErrorTooManyRequests">Mae gormod o geisiadau yn cael eu prosesu. Ceisia eto\'n hwyrach.</string>
+ <string name="status_pending">Heb ddechrau\'r trosglwyddo ffeil(iau) eto.</string>
+ <string name="status_running">Mae trosglwyddiad ffeil(iau) ar y gweill.</string>
+ <string name="status_success">Cwblhawyd y trosglwyddiad ffeil yn llwyddiannus.</string>
+ <string name="status_not_accept">Ni chefnogir y cynnwys.</string>
+ <string name="status_forbidden">Dyw\'r ddyfais targed ddim yn caniatáu\'r trosglwyddo.</string>
+ <string name="status_canceled">Diddymwyd y trosglwyddo gan ddefnyddiwr.</string>
+ <string name="status_file_error">Problem storfa.</string>
+ <string name="status_no_sd_card" product="nosdcard">Dim storfa USB.</string>
+ <string name="status_no_sd_card" product="default">Dim cerdyn SD. Gosoda gerdyn SD i gadw\'r ffeiliau a throsglwyddwyd.</string>
+ <string name="status_connection_error">Cysylltiad aflwyddiannus.</string>
+ <string name="status_protocol_error">Methwyd ag ymdrin â\'r cais yn gywir.</string>
+ <string name="status_unknown_error">Gwall anhysbys.</string>
+ <string name="btopp_live_folder">Bluetooth wedi\'i derbyn</string>
+ <string name="download_success"> <xliff:g id="file_size">%1$s</xliff:g> wedi\'i dderbyn yn gyflawn.</string>
+ <string name="upload_success"> <xliff:g id="file_size">%1$s</xliff:g> wedi\'i anfon yn gyflawn.</string>
+ <string name="inbound_history_title">Trosglwyddiadau mewn</string>
+ <string name="outbound_history_title">Trosglwyddiadau allan</string>
+ <string name="no_transfers">Does dim hanes trosglwyddo.</string>
+ <string name="transfer_clear_dlg_msg">Caiff pob eitem ei dileu o\'r rhestr.</string>
+ <string name="outbound_noti_title">Rhannu Bluetooth: Ffeiliau a anfonwyd</string>
+ <string name="inbound_noti_title">Rhannu Bluetooth: Ffeiliau wedi\'u derbyn</string>
+ <plurals name="noti_caption_unsuccessful">
+ <item quantity="zero"><xliff:g id="unsuccessful_number">%1$d</xliff:g> yn aflwyddiannus.</item>
+ <item quantity="one"><xliff:g id="unsuccessful_number">%1$d</xliff:g> yn aflwyddiannus.</item>
+ <item quantity="two"><xliff:g id="unsuccessful_number">%1$d</xliff:g> yn aflwyddiannus.</item>
+ <item quantity="few"><xliff:g id="unsuccessful_number">%1$d</xliff:g> yn aflwyddiannus.</item>
+ <item quantity="many"><xliff:g id="unsuccessful_number">%1$d</xliff:g> yn aflwyddiannus.</item>
+ <item quantity="other"><xliff:g id="unsuccessful_number">%1$d</xliff:g> yn aflwyddiannus.</item>
+ </plurals>
+ <plurals name="noti_caption_success">
+ <item quantity="zero"><xliff:g id="successful_number">%1$d</xliff:g> yn llwyddiannus, %2$s</item>
+ <item quantity="one"><xliff:g id="successful_number">%1$d</xliff:g> yn llwyddiannus, %2$s</item>
+ <item quantity="two"><xliff:g id="successful_number">%1$d</xliff:g> yn llwyddiannus, %2$s</item>
+ <item quantity="few"><xliff:g id="successful_number">%1$d</xliff:g> yn llwyddiannus, %2$s</item>
+ <item quantity="many"><xliff:g id="successful_number">%1$d</xliff:g> yn llwyddiannus, %2$s</item>
+ <item quantity="other"><xliff:g id="successful_number">%1$d</xliff:g> yn llwyddiannus, %2$s</item>
+ </plurals>
+ <string name="transfer_menu_clear_all">Clirio\'r rhestr</string>
+ <string name="transfer_menu_open">Agor</string>
+ <string name="transfer_menu_clear">Clirio o\'r rhestr</string>
+ <string name="transfer_clear_dlg_title">Clirio</string>
+ <string name="bluetooth_share_file_name" translate="false">bluetooth_content_share</string>
+ <string name="bluetooth_map_settings_save">Cadw</string>
+ <string name="bluetooth_map_settings_cancel">Diddymu</string>
+ <string name="bluetooth_map_settings_intro">Dewisa\'r cyfrifon wyt am eu rhannu trwy Bluetooth. Mi fydd dal yn rhaid caniatáu unrhyw fynediad i\'r cyfrifon wrth gysylltu.</string>
+ <string name="bluetooth_map_settings_count">Slotiau yn weddill:</string>
+ <string name="bluetooth_map_settings_app_icon">Eicon yr ap</string>
+ <string name="bluetooth_map_settings_title">Gosodiadau Rhannu Negeseuon Bluetooth</string>
+ <string name="bluetooth_map_settings_no_account_slots_left">Methu dewis cyfrif. 0 slotiau yn weddill.</string>
+ <string name="bluetooth_connected">Sain Bluetooth wedi\'i chysylltu</string>
+ <string name="bluetooth_disconnected">Sain Bluetooth wedi\'i datgysylltu</string>
</resources>
diff --git a/res/values-cy/strings_pbap.xml b/res/values-cy/strings_pbap.xml
index 55f5b837a..46df5d35b 100644
--- a/res/values-cy/strings_pbap.xml
+++ b/res/values-cy/strings_pbap.xml
@@ -1,6 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!-- Notification title when a Bluetooth device wants to pair with us -->
- <!-- Notification message when a Bluetooth device wants to pair with us -->
+ <string name="pbap_session_key_dialog_title">Rho\'r allwedd sesiwn ar gyfer %1$s.</string>
+ <string name="pbap_session_key_dialog_header">Mae angen allwedd sesiwn Bluetooth.</string>
+ <string name="pbap_acceptance_timeout_message">Daeth yr amser i ben wrth dderbyn cysylltiad â %1$s.</string>
+ <string name="pbap_authentication_timeout_message">Daeth yr amser i ben wrth roi\'r allwedd sesiwn i %1$s.</string>
+ <string name="auth_notif_ticker">Cais dilysiad Obex</string>
+ <string name="auth_notif_title">Allwedd Sesiwn</string>
+ <string name="auth_notif_message">Rho\'r allwedd sesiwn ar gyfer %1$s.</string>
+ <string name="defaultname">Cit car</string>
+ <string name="unknownName">Enw anhysbys</string>
+ <string name="localPhoneName">Fy enw i</string>
+ <string name="defaultnumber">000000</string>
</resources>
diff --git a/res/values-cy/strings_sap.xml b/res/values-cy/strings_sap.xml
index d242b5671..d1ffab3e4 100644
--- a/res/values-cy/strings_sap.xml
+++ b/res/values-cy/strings_sap.xml
@@ -1,3 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"></resources>
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="bluetooth_sap_notif_title">Mynediad Bluetooth at SIM</string>
+ <string name="bluetooth_sap_notif_ticker">Mynediad Bluetooth at SIM</string>
+ <string name="bluetooth_sap_notif_message">Gofyn i\'r cleient ddatgysylltu?</string>
+ <string name="bluetooth_sap_notif_disconnecting">Yn aros i\'r cleient ddatgysylltu</string>
+ <string name="bluetooth_sap_notif_disconnect_button">Datgysylltu</string>
+ <string name="bluetooth_sap_notif_force_disconnect_button">Gorfodi datgysylltu</string>
+</resources>
diff --git a/res/values-da/cm_strings.xml b/res/values-da/cm_strings.xml
index a0a44b876..a590771c9 100644
--- a/res/values-da/cm_strings.xml
+++ b/res/values-da/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Indgående fil fra en anden enhed. Bekræft, at du vil modtage denne fil.</string>
- <string name="upload_fail_waiting">Kunne ikke sende filen, prøver igen\u2026</string>
+ <string name="incoming_file_toast_msg">Indgående fil fra en anden enhed. Bekræft, at du ønsker, at modtage denne fil.</string>
+ <string name="upload_fail_waiting">Ude af stand til at sende fil, omgør\u2026</string>
</resources>
diff --git a/res/values-de/cm_strings.xml b/res/values-de/cm_strings.xml
index 0f70267fa..bd2a26fa3 100644
--- a/res/values-de/cm_strings.xml
+++ b/res/values-de/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Eingehende Datei von einem anderen Gerät. Bestätigen, wenn Sie diese Datei empfangen möchten.</string>
- <string name="upload_fail_waiting">Datei kann nicht versendet werden. Erneuter Versuch\u2026</string>
+ <string name="incoming_file_toast_msg">Eingehende Datei von einem anderen Gerät. Bestätigen, wenn Sie diese Datei empfangen möchten.</string>
+ <string name="upload_fail_waiting">Datei kann nicht versendet werden. Erneuter Versuch\u2026</string>
</resources>
diff --git a/res/values-el/cm_strings.xml b/res/values-el/cm_strings.xml
index 8869c7889..471b387e3 100644
--- a/res/values-el/cm_strings.xml
+++ b/res/values-el/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Το αρχείο δεν στάλθηκε, προσπάθεια ξανά\u2026</string>
+ <string name="incoming_file_toast_msg">Εισερχόμενο αρχείο από άλλη συσκευή. Επιβεβαιώστε ότι θέλετε να λάβετε αυτό το αρχείο.</string>
+ <string name="upload_fail_waiting">Το αρχείο δεν στάλθηκε, προσπάθεια ξανά\u2026</string>
</resources>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 7c90422cb..193a34f58 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -38,13 +38,13 @@
<string name="incoming_file_confirm_timeout_content" msgid="172779756093975981">"Σημειώθηκε διακοπή κατά την αποδοχή ενός εισερχόμενου αρχείου από τον αποστολέα \"<xliff:g id="SENDER">%1$s</xliff:g>\""</string>
<string name="incoming_file_confirm_Notification_title" msgid="5573329005298936903">"Εισερχόμενο αρχείο"</string>
<string name="incoming_file_confirm_Notification_content" msgid="3359694069319644738">"Ο χρήστης <xliff:g id="SENDER">%1$s</xliff:g> πρόκειται να στείλει το αρχείο <xliff:g id="FILE">%2$s</xliff:g>"</string>
- <string name="notification_receiving" msgid="4674648179652543984">"Κοινή χρήση μέσω Bluetooth: Λήψη του <xliff:g id="FILE">%1$s</xliff:g>"</string>
- <string name="notification_received" msgid="3324588019186687985">"Κοινή χρήση μέσω Bluetooth: Ελήφθη το <xliff:g id="FILE">%1$s</xliff:g>"</string>
- <string name="notification_received_fail" msgid="3619350997285714746">"Κοινή χρήση μέσω Bluetooth: Το αρχείο <xliff:g id="FILE">%1$s</xliff:g> δεν ελήφθη"</string>
- <string name="notification_sending" msgid="3035748958534983833">"Κοινή χρήση μέσω Bluetooth: Αποστολή του <xliff:g id="FILE">%1$s</xliff:g>"</string>
- <string name="notification_sent" msgid="9218710861333027778">"Κοινή χρήση μέσω Bluetooth: Εστάλη το <xliff:g id="FILE">%1$s</xliff:g>"</string>
+ <string name="notification_receiving" msgid="4674648179652543984">"Μοιραστείτε μέσω Bluetooth: Λήψη του <xliff:g id="FILE">%1$s</xliff:g>"</string>
+ <string name="notification_received" msgid="3324588019186687985">"Μοιραστείτε μέσω Bluetooth: Ελήφθη το <xliff:g id="FILE">%1$s</xliff:g>"</string>
+ <string name="notification_received_fail" msgid="3619350997285714746">"Μοιραστείτε μέσω Bluetooth: Το αρχείο <xliff:g id="FILE">%1$s</xliff:g> δεν ελήφθη"</string>
+ <string name="notification_sending" msgid="3035748958534983833">"Μοιραστείτε μέσω Bluetooth: Αποστολή του <xliff:g id="FILE">%1$s</xliff:g>"</string>
+ <string name="notification_sent" msgid="9218710861333027778">"Μοιραστείτε μέσω Bluetooth: Εστάλη το <xliff:g id="FILE">%1$s</xliff:g>"</string>
<string name="notification_sent_complete" msgid="302943281067557969">"Ολοκληρώθηκε το 100%"</string>
- <string name="notification_sent_fail" msgid="6696082233774569445">"Κοινή χρήση μέσω Bluetooth: Το αρχείο <xliff:g id="FILE">%1$s</xliff:g> δεν εστάλη"</string>
+ <string name="notification_sent_fail" msgid="6696082233774569445">"Μοιραστείτε μέσω Bluetooth: Το αρχείο <xliff:g id="FILE">%1$s</xliff:g> δεν εστάλη"</string>
<string name="download_title" msgid="3353228219772092586">"Μεταφορά αρχείου"</string>
<string name="download_line1" msgid="4926604799202134144">"Από: \"<xliff:g id="SENDER">%1$s</xliff:g>\""</string>
<string name="download_line2" msgid="5876973543019417712">"Αρχείο: <xliff:g id="FILE">%1$s</xliff:g>"</string>
diff --git a/res/values-en-rAU/cm_strings.xml b/res/values-en-rAU/cm_strings.xml
index e41bf932b..f2953742b 100644
--- a/res/values-en-rAU/cm_strings.xml
+++ b/res/values-en-rAU/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Unable to send file, retrying\u2026</string>
+ <string name="incoming_file_toast_msg">Incoming file from another device. Confirm you want to receive this file.</string>
+ <string name="upload_fail_waiting">Unable to send file, retrying\u2026</string>
</resources>
diff --git a/res/values-am/cm_strings.xml b/res/values-en-rCA/cm_strings.xml
index 29c1061f9..29c1061f9 100644
--- a/res/values-am/cm_strings.xml
+++ b/res/values-en-rCA/cm_strings.xml
diff --git a/res/values-en-rGB/cm_strings.xml b/res/values-en-rGB/cm_strings.xml
index 29c1061f9..f2953742b 100644
--- a/res/values-en-rGB/cm_strings.xml
+++ b/res/values-en-rGB/cm_strings.xml
@@ -15,4 +15,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<resources></resources>
+<resources>
+ <string name="incoming_file_toast_msg">Incoming file from another device. Confirm you want to receive this file.</string>
+ <string name="upload_fail_waiting">Unable to send file, retrying\u2026</string>
+</resources>
diff --git a/res/values-en-rIN/cm_strings.xml b/res/values-en-rIN/cm_strings.xml
index e41bf932b..f2953742b 100644
--- a/res/values-en-rIN/cm_strings.xml
+++ b/res/values-en-rIN/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Unable to send file, retrying\u2026</string>
+ <string name="incoming_file_toast_msg">Incoming file from another device. Confirm you want to receive this file.</string>
+ <string name="upload_fail_waiting">Unable to send file, retrying\u2026</string>
</resources>
diff --git a/res/values-eo/strings.xml b/res/values-eo/strings.xml
index 2c56234fe..9104a0368 100644
--- a/res/values-eo/strings.xml
+++ b/res/values-eo/strings.xml
@@ -15,105 +15,18 @@
limitations under the License.
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!--
- This is the short description of a permission associated with the
- Bluetooth Share Manager. It is displayed as part of the description of
- any application that was granted that permission. This specific
- permission controls access to the Bluetooth Share Manager by
- applications that initiate Bluetooth share.
- -->
- <!--
- This is the long description of a permission associated with the
- Android Download Manager. It is displayed as part of the description
- of any application that was granted that permission. This specific
- permission controls access to the Download Manager by applications
- that initiate downloads.
- -->
- <!-- string showed on "Share picutre via" dialog -->
- <!-- string for "unknown device" -->
- <string name="unknown_device">Nekonata aparato</string>
- <!-- string for "unknown" phone number" -->
- <string name="unknownNumber">Nekonata</string>
- <!-- string for "the title of airplane mode error" -->
- <string name="airplane_error_title">Aviadila reĝimo</string>
- <!-- string for "error message in airplane mode" -->
- <!-- Activate Bluetooth Confirmation Dialog -->
- <!--Title -->
- <string name="bt_enable_title"></string>
- <!--Line 1 -->
- <!--Line 2 -->
- <!-- Label for a cancel button. -->
- <string name="bt_enable_cancel">Nuligi</string>
- <!-- Label for a confirm button.-->
- <!-- Bluetooth File Transfer Acceptance Dialog -->
- <!--Title -->
- <!--content -->
- <!-- Label for a cancel button. -->
- <!-- Label for a confirm button.-->
- <!-- Label for timeout OK button.-->
- <!-- content for timeout-->
- <!-- Bluetooth File Transfer Acceptance Notification item -->
- <!-- Inbound File Transfer Progress Notification item -->
- <!-- label for the notification item of receiving file -->
- <!-- label for the notification item of received file -->
- <!-- label for the notification item of failed receiving file -->
- <!-- Outbound File Transfer Progress Notification item -->
- <!-- label for the notification item of sending file -->
- <!-- label for the notification item of sent file -->
- <!-- label for the notification item of sent file -status -->
- <!-- label for the notification item of failed sending file -->
- <!-- Bluetooth Download Progress Dialog -->
- <!--Title -->
- <!--Line 1 -->
- <!--Line 2 -->
- <string name="download_line2">Dosiero: <xliff:g id="file">%1$s</xliff:g></string>
- <!--Line 3 -->
- <!--Line 4 -->
- <string name="download_line4"></string>
- <!-- Label for a cancel button. -->
- <!-- Label for a hide button.-->
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!-- Bluetooth failed Download Dialog -->
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!-- Label for ok button.-->
- <!-- Bluetooth Successful Download Dialog -->
- <!--Line 4 in "Bluetooth Download Progress Dialog" -->
- <!-- Label for a OK button.-->
- <string name="download_succ_ok">Malfermi</string>
- <!-- Bluetooth Upload Progress Dialog -->
- <!-- Bluetooth Successful Upload Progress Dialog -->
- <!--Line 4 -->
- <!-- Label for a confirm button.-->
- <!-- Bluetooth Failed Upload File Transfer Dialog -->
- <string name="upload_fail_line1_2">Dosiero: <xliff:g id="file">%1$s</xliff:g></string>
- <!-- Label for a try again button.-->
- <string name="upload_fail_ok">Reprovi</string>
- <!-- Label for a cancel button.-->
- <string name="upload_fail_cancel">Fermi</string>
- <!-- Bluetooth error dialog -->
- <!-- Bluetooth Enabling progress dialog -->
- <!-- Bluetooth Toast Message -->
- <!-- Bluetooth System Messages [CHAR LIMIT=NONE] -->
- <!-- Bluetooth System Messages -->
- <!-- Bluetooth Transfer Failure Reason -->
- <!-- Shown when USB storage cannot be found. [CHAR LIMIT=NONE] -->
- <string name="status_unknown_error">Nekonata eraro.</string>
- <!-- Bluetooth OPP Live Folder -->
- <!-- Bluetooth OPP Transfer History -->
- <string name="transfer_menu_open">Malfermi</string>
- <!-- Do not translate. file name used for sharing. -->
- <!-- Used to run Bluetooth.apk in another process if needed -->
- <!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <string name="bluetooth_map_settings_cancel">Nuligi</string>
+ <string name="unknown_device">Nekonata aparato</string>
+ <string name="unknownNumber">Nekonata</string>
+ <string name="airplane_error_title">Aviadila reĝimo</string>
+ <string name="bt_enable_cancel">Nuligi</string>
+ <string name="download_line2">Dosiero: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_succ_ok">Malfermi</string>
+ <string name="upload_fail_line1_2">Dosiero: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="upload_fail_ok">Reprovi</string>
+ <string name="upload_fail_cancel">Fermi</string>
+ <string name="status_unknown_error">Nekonata eraro.</string>
+ <string name="transfer_menu_open">Malfermi</string>
+ <string name="bluetooth_share_file_name" translate="false">bluetooth_content_share</string>
+ <string name="bluetooth_map_settings_save">Save</string>
+ <string name="bluetooth_map_settings_cancel">Nuligi</string>
</resources>
diff --git a/res/values-es-rCO/strings.xml b/res/values-es-rCO/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-es-rCO/strings.xml
+++ b/res/values-es-rCO/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-es-rUS/cm_strings.xml b/res/values-es-rUS/cm_strings.xml
index a9d0fbc70..9e8d3c2a3 100644
--- a/res/values-es-rUS/cm_strings.xml
+++ b/res/values-es-rUS/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">No se pudo enviar el archivo, reintentando\u2026</string>
+ <string name="incoming_file_toast_msg">Archivo entrante de otro dispositivo. Confirma que quieres recibir este archivo.</string>
+ <string name="upload_fail_waiting">No se pudo enviar el archivo, reintentando\u2026</string>
</resources>
diff --git a/res/values-es/cm_strings.xml b/res/values-es/cm_strings.xml
index 3e8d83fc7..7d99d363a 100644
--- a/res/values-es/cm_strings.xml
+++ b/res/values-es/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">No se puede enviar el archivo, reintentando\u2026</string>
+ <string name="incoming_file_toast_msg">Archivo entrante desde otro dispositivo. Confirme que desea recibir este archivo.</string>
+ <string name="upload_fail_waiting">No se puede enviar el archivo, reintentando\u2026</string>
</resources>
diff --git a/res/values-et-rEE/cm_strings.xml b/res/values-et-rEE/cm_strings.xml
index 7ba257875..c49bfd0b6 100644
--- a/res/values-et-rEE/cm_strings.xml
+++ b/res/values-et-rEE/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Ei saanud saata faili, proovin uuesti\u2026</string>
+ <string name="upload_fail_waiting">Ei saanud saata faili, proovin uuesti\u2026</string>
</resources>
diff --git a/res/values-eu-rES/cm_strings.xml b/res/values-eu-rES/cm_strings.xml
index d745f7bf1..ceaa7328e 100644
--- a/res/values-eu-rES/cm_strings.xml
+++ b/res/values-eu-rES/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Fitxategi bat dator beste gailu batetik. Berretsi fitxategi hau jasu nahi duzula.</string>
- <string name="upload_fail_waiting">Ezin izan da fitxategia bidali, berriro saiatzen\u2026</string>
+ <string name="incoming_file_toast_msg">Fitxategi bat dator beste gailu batetik. Berretsi fitxategi hau jasu nahi duzula.</string>
+ <string name="upload_fail_waiting">Ezin izan da fitxategia bidali, berriro saiatzen\u2026</string>
</resources>
diff --git a/res/values-fa/cm_strings.xml b/res/values-fa/cm_strings.xml
index b6ff0d547..8dbd5e601 100644
--- a/res/values-fa/cm_strings.xml
+++ b/res/values-fa/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">فایل فرستاده نشد، تلاش مجدد\u2026</string>
+ <string name="upload_fail_waiting">فایل فرستاده نشد، تلاش مجدد\u2026</string>
</resources>
diff --git a/res/values-fi/cm_strings.xml b/res/values-fi/cm_strings.xml
index bb216876f..e8e2d395b 100644
--- a/res/values-fi/cm_strings.xml
+++ b/res/values-fi/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Toisesta laitteesta saapuva tiedosto. Vahvista tiedoston vastaanotto.</string>
- <string name="upload_fail_waiting">Tiedoston lähetys epäonnistui, yritetään uudelleen\u2026</string>
+ <string name="incoming_file_toast_msg">Toisesta laitteesta saapuva tiedosto. Vahvista tiedoston vastaanotto.</string>
+ <string name="upload_fail_waiting">Tiedoston lähetys epäonnistui, yritetään uudelleen\u2026</string>
</resources>
diff --git a/res/values-en-rPT/strings.xml b/res/values-fil-rPH/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-en-rPT/strings.xml
+++ b/res/values-fil-rPH/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-as-rIN/strings_pbap.xml b/res/values-fil-rPH/strings_pbap.xml
index 55f5b837a..55f5b837a 100644
--- a/res/values-as-rIN/strings_pbap.xml
+++ b/res/values-fil-rPH/strings_pbap.xml
diff --git a/res/values-as-rIN/strings_sap.xml b/res/values-fil-rPH/strings_sap.xml
index d242b5671..d242b5671 100644
--- a/res/values-as-rIN/strings_sap.xml
+++ b/res/values-fil-rPH/strings_sap.xml
diff --git a/res/values-fr-rCA/cm_strings.xml b/res/values-fr-rCA/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-fr-rCA/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-fr/cm_strings.xml b/res/values-fr/cm_strings.xml
index 557352678..365c820f5 100644
--- a/res/values-fr/cm_strings.xml
+++ b/res/values-fr/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Fichier en provenance d\'un autre appareil. Confirmez que vous voulez recevoir ce fichier.</string>
- <string name="upload_fail_waiting">Impossible d\'envoyer le fichier, nouvelle tentative\u2026</string>
+ <string name="incoming_file_toast_msg">Fichier en provenance d\'un autre appareil. Confirmez que vous voulez recevoir ce fichier.</string>
+ <string name="upload_fail_waiting">Impossible d\'envoyer le fichier, nouvelle tentative\u2026</string>
</resources>
diff --git a/res/values-frp-rIT/strings.xml b/res/values-frp-rIT/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-frp-rIT/strings.xml
+++ b/res/values-frp-rIT/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-fy-rNL/cm_strings.xml b/res/values-fy-rNL/cm_strings.xml
index 29c1061f9..76ad47532 100644
--- a/res/values-fy-rNL/cm_strings.xml
+++ b/res/values-fy-rNL/cm_strings.xml
@@ -15,4 +15,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<resources></resources>
+<resources>
+ <string name="incoming_file_toast_msg">Ynkommend bestân fan in oar apparaat ôf. Befêstigje dat jo dit bestân ûntfange wolle.</string>
+ <string name="upload_fail_waiting">Kin bestân net ferstjoere, opnij probearje\u2026</string>
+</resources>
diff --git a/res/values-fy-rNL/strings_pbap.xml b/res/values-fy-rNL/strings_pbap.xml
deleted file mode 100644
index 55f5b837a..000000000
--- a/res/values-fy-rNL/strings_pbap.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!-- Notification title when a Bluetooth device wants to pair with us -->
- <!-- Notification message when a Bluetooth device wants to pair with us -->
-</resources>
diff --git a/res/values-fy-rNL/strings_sap.xml b/res/values-fy-rNL/strings_sap.xml
deleted file mode 100644
index d242b5671..000000000
--- a/res/values-fy-rNL/strings_sap.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"></resources>
diff --git a/res/values-ga-rIE/strings.xml b/res/values-ga-rIE/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-ga-rIE/strings.xml
+++ b/res/values-ga-rIE/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-gd-rGB/cm_strings.xml b/res/values-gd-rGB/cm_strings.xml
index 29c1061f9..38a19e37c 100644
--- a/res/values-gd-rGB/cm_strings.xml
+++ b/res/values-gd-rGB/cm_strings.xml
@@ -15,4 +15,6 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<resources></resources>
+<resources>
+ <string name="upload_fail_waiting">Cha ghabh am faidhle a chur, a’ feuchainn ris a-rithist...</string>
+</resources>
diff --git a/res/values-gd-rGB/strings.xml b/res/values-gd-rGB/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-gd-rGB/strings.xml
+++ b/res/values-gd-rGB/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-gl-rES/cm_strings.xml b/res/values-gl-rES/cm_strings.xml
index 005f57b3e..7aeba0d83 100644
--- a/res/values-gl-rES/cm_strings.xml
+++ b/res/values-gl-rES/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Recibindo arquivo doutro dispositivo. Confirme se vostede desexa recibir este arquivo.</string>
- <string name="upload_fail_waiting">Non se puido enviar o ficheiro, vólvese tentar\u2026</string>
+ <string name="incoming_file_toast_msg">Recibindo arquivo doutro dispositivo. Confirme se vostede desexa recibir este arquivo.</string>
+ <string name="upload_fail_waiting">Non se puido enviar o ficheiro, reintentando\u2026</string>
</resources>
diff --git a/res/values-gu-rIN/cm_strings.xml b/res/values-gu-rIN/cm_strings.xml
index e24cf744d..7218685c7 100644
--- a/res/values-gu-rIN/cm_strings.xml
+++ b/res/values-gu-rIN/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ફાઇલ મોકલવામાં ‌અક્ષમ, પુનઃપ્રયાસ થાય છે\u2026</string>
+ <string name="upload_fail_waiting">ફાઇલ મોકલવામાં ‌અક્ષમ, પુનઃપ્રયાસ થાય છે\u2026</string>
</resources>
diff --git a/res/values-hi/cm_strings.xml b/res/values-hi/cm_strings.xml
index f1fea5ee6..c74876641 100644
--- a/res/values-hi/cm_strings.xml
+++ b/res/values-hi/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">फ़ाइल नहीं भेज सके, फिर से कोशिश कर रहे हैं\u2026</string>
+ <string name="upload_fail_waiting">फ़ाइल नहीं भेज सके, फिर से कोशिश कर रहे हैं\u2026</string>
</resources>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index ac0397a5a..d151385da 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -129,5 +129,5 @@
<string name="bluetooth_map_settings_title" msgid="7420332483392851321">"ब्लूटूथ संदेश साझाकरण सेटिंग"</string>
<string name="bluetooth_map_settings_no_account_slots_left" msgid="1796029082612965251">"खाता नहीं चुना जा सकता. 0 स्लॉट शेष"</string>
<string name="bluetooth_connected" msgid="6718623220072656906">"ब्लूटूथ ऑडियो कनेक्ट किया गया"</string>
- <string name="bluetooth_disconnected" msgid="3318303728981478873">"ब्लूटूथ ऑडियो डिस्कनेक्ट किया गया"</string>
+ <string name="bluetooth_disconnected" msgid="3318303728981478873">"ब्लूटूथ ऑडियो डिसकनेक्ट किया गया"</string>
</resources>
diff --git a/res/values-hi/strings_sap.xml b/res/values-hi/strings_sap.xml
index 0cb376c8c..9e9d76e55 100644
--- a/res/values-hi/strings_sap.xml
+++ b/res/values-hi/strings_sap.xml
@@ -3,8 +3,8 @@
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="bluetooth_sap_notif_title" msgid="6877860822993195074">"ब्लूटूथ सिम ऐक्सेस"</string>
<string name="bluetooth_sap_notif_ticker" msgid="6807778527893726699">"ब्लूटूथ सिम ऐक्सेस"</string>
- <string name="bluetooth_sap_notif_message" msgid="7138657801087500690">"डिस्कनेक्ट करने के लिए क्लाइंट से अनुरोध करें?"</string>
- <string name="bluetooth_sap_notif_disconnecting" msgid="819150843490233288">"डिस्कनेक्ट करने के लिए क्लाइंट की प्रतीक्षा की जा रही है"</string>
- <string name="bluetooth_sap_notif_disconnect_button" msgid="3678476872583356919">"डिस्कनेक्ट करें"</string>
- <string name="bluetooth_sap_notif_force_disconnect_button" msgid="8144086340185532030">"बलपूर्वक डिस्कनेक्ट करें"</string>
+ <string name="bluetooth_sap_notif_message" msgid="7138657801087500690">"डिसकनेक्ट करने के लिए क्लाइंट से अनुरोध करें?"</string>
+ <string name="bluetooth_sap_notif_disconnecting" msgid="819150843490233288">"डिसकनेक्ट करने के लिए क्लाइंट की प्रतीक्षा की जा रही है"</string>
+ <string name="bluetooth_sap_notif_disconnect_button" msgid="3678476872583356919">"डिसकनेक्ट करें"</string>
+ <string name="bluetooth_sap_notif_force_disconnect_button" msgid="8144086340185532030">"बलपूर्वक डिसकनेक्ट करें"</string>
</resources>
diff --git a/res/values-hr/cm_strings.xml b/res/values-hr/cm_strings.xml
index f9fcdf5ae..a46d34714 100644
--- a/res/values-hr/cm_strings.xml
+++ b/res/values-hr/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Dolazna datoteka s drugog uređaja. Potvrdite ako želite primiti ovu datoteku.</string>
- <string name="upload_fail_waiting">Nije moguće poslati datoteku, ponovno pokušavanje\u2026</string>
+ <string name="incoming_file_toast_msg">Dolazna datoteka s drugog uređaja. Potvrdite ako želite primiti ovu datoteku.</string>
+ <string name="upload_fail_waiting">Nije moguće poslati datoteku, ponovno pokušavanje\u2026</string>
</resources>
diff --git a/res/values-hu/cm_strings.xml b/res/values-hu/cm_strings.xml
index 03ba2edc8..8ba927f19 100644
--- a/res/values-hu/cm_strings.xml
+++ b/res/values-hu/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Bejövő fájl egy másik készülékről. Erősítse meg, hogy szeretné-e fogadni.</string>
- <string name="upload_fail_waiting">Fájl küldése sikertelen, újraküldés\u2026</string>
+ <string name="incoming_file_toast_msg">Bejövő fájl egy másik készülékről. Erősítse meg, hogy szeretné-e fogadni.</string>
+ <string name="upload_fail_waiting">Fájl küldése sikertelen, újraküldés\u2026</string>
</resources>
diff --git a/res/values-hy-rAM/cm_strings.xml b/res/values-hy-rAM/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-hy-rAM/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-hy-rAM/strings.xml b/res/values-hy-rAM/strings.xml
index efef63b5c..a7f644a5a 100644
--- a/res/values-hy-rAM/strings.xml
+++ b/res/values-hy-rAM/strings.xml
@@ -19,7 +19,7 @@
<string name="permlab_bluetoothShareManager" msgid="311492132450338925">"Օգտվել ներբեռնման կառավարչից:"</string>
<string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"Թույլ է տալիս, որ ծրագիրը մատչի BluetoothShare կառավարչին և այն օգտագործի ֆայլեր փոխանցելու համար:"</string>
<string name="permlab_bluetoothWhitelist" msgid="7091552898592306386">"Մուտք bluetooth սարքի ցուցակին:"</string>
- <string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"Թույլ է տալիս, որ ծրագիրը ժամանակավորապես մաքրի Bluetooth սարքի ցուցակը, ինչը թույլ է տալիս, որ այդ սարքը կարողանա ֆայլեր ուղարկել տվյալ սարքին առանց օգտվողի հաստատման:"</string>
+ <string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"Թույլ է տալիս, որ ծրագիրը ժամանակավորապես մաքրի Bluetooth սարքի ցուցակը, ինչը թույլ է տալիս, որ այդ սարքը կարողանա ֆայլեր ուղարկել տվյալ սարքին առանց օգտատիրոջ հաստատման:"</string>
<string name="bt_share_picker_label" msgid="6268100924487046932">"Bluetooth"</string>
<string name="unknown_device" msgid="9221903979877041009">"Անհայտ սարք"</string>
<string name="unknownNumber" msgid="4994750948072751566">"Անհայտ"</string>
@@ -50,7 +50,7 @@
<string name="download_line2" msgid="5876973543019417712">"Ֆայլ՝ <xliff:g id="FILE">%1$s</xliff:g>"</string>
<string name="download_line3" msgid="4384821622908676061">"Ֆայլի չափը՝ <xliff:g id="SIZE">%1$s</xliff:g>"</string>
<string name="download_line4" msgid="8535996869722666525"></string>
- <string name="download_line5" msgid="3069560415845295386">"Ֆայլը ստացվում է..."</string>
+ <string name="download_line5" msgid="3069560415845295386">"Ֆայլի ստացում..."</string>
<string name="download_cancel" msgid="9177305996747500768">"Դադարեցնել"</string>
<string name="download_ok" msgid="5000360731674466039">"Թաքցնել"</string>
<string name="incoming_line1" msgid="2127419875681087545">"Ումից"</string>
@@ -93,7 +93,7 @@
<string name="status_success" msgid="239573225847565868">"Ֆայլերի փոխանցումը հաջողությամբ ավարտվել է:"</string>
<string name="status_not_accept" msgid="1695082417193780738">"Բովանդակությունը չի աջակցվում:"</string>
<string name="status_forbidden" msgid="613956401054050725">"Փոխանցումն արգելված է նպատակային սարքի կողմից:"</string>
- <string name="status_canceled" msgid="6664490318773098285">"Փոխանցումը չեղարկվել է օգտվողի կողմից:"</string>
+ <string name="status_canceled" msgid="6664490318773098285">"Փոխանցումը չեղարկվել է օգտատիրոջ կողմից:"</string>
<string name="status_file_error" msgid="3671917770630165299">"Կրիչի խնդիր:"</string>
<string name="status_no_sd_card" product="nosdcard" msgid="1112125377088421469">"USB կրիչ չկա:"</string>
<string name="status_no_sd_card" product="default" msgid="5760944071743325592">"SD քարտ չկա: Տեղադրեք SD քարտ` փոխանցված ֆայլերը պահպանելու համար:"</string>
diff --git a/res/values-in/cm_strings.xml b/res/values-in/cm_strings.xml
index 1e3de9ded..bfa86487b 100644
--- a/res/values-in/cm_strings.xml
+++ b/res/values-in/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Berkas masuk dari perangkat lain. Konfirmasi anda ingin menerima berkas ini.</string>
- <string name="upload_fail_waiting">Tidak dapat mengirim berkas, mencoba kembali\u2026</string>
+ <string name="incoming_file_toast_msg">Berkas masuk dari perangkat lain. Konfirmasi anda ingin menerima berkas ini.</string>
+ <string name="upload_fail_waiting">Tidak dapat mengirim berkas, mencoba kembali\u2026</string>
</resources>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index fd810468e..6bd88d219 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -16,7 +16,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="permlab_bluetoothShareManager" msgid="311492132450338925">"Akses pengelola unduhan."</string>
+ <string name="permlab_bluetoothShareManager" msgid="311492132450338925">"Akses pengelola download."</string>
<string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"Izinkan apl mengakses pengelola BluetoothShare dan menggunakannya untuk mentransfer file."</string>
<string name="permlab_bluetoothWhitelist" msgid="7091552898592306386">"Memasukkan akses perangkat bluetooth ke dalam daftar putih."</string>
<string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"Mengizinkan aplikasi memasukkan perangkat Bluetooth ke dalam daftar putih untuk sementara, yang memungkinkan perangkat tersebut mengirimkan file ke perangkat ini tanpa konfirmasi pengguna."</string>
diff --git a/res/values-is-rIS/cm_strings.xml b/res/values-is-rIS/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-is-rIS/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-it/cm_strings.xml b/res/values-it/cm_strings.xml
index 1294353f5..afa2cb26f 100644
--- a/res/values-it/cm_strings.xml
+++ b/res/values-it/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">File in arrivo da un altro dispositivo. Conferma che vuoi ricevere questo file.</string>
- <string name="upload_fail_waiting">Impossibile inviare file, riprovo\u2026</string>
+ <string name="incoming_file_toast_msg">File in arrivo da un altro dispositivo. Conferma che vuoi ricevere questo file.</string>
+ <string name="upload_fail_waiting">Impossibile inviare file, riprovo\u2026</string>
</resources>
diff --git a/res/values-iw/cm_strings.xml b/res/values-iw/cm_strings.xml
index 30e8de452..b357baa3a 100644
--- a/res/values-iw/cm_strings.xml
+++ b/res/values-iw/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">שליחת הקובץ נכשלה, מנסה שנית\u2026</string>
+ <string name="incoming_file_toast_msg">מכשיר אחר שולח אליך קובץ. נא אשר את קבלת הקובץ.</string>
+ <string name="upload_fail_waiting">שליחת הקובץ נכשלה, מנסה שנית\u2026</string>
</resources>
diff --git a/res/values-ja/cm_strings.xml b/res/values-ja/cm_strings.xml
index d6556293c..2dc4e9b61 100644
--- a/res/values-ja/cm_strings.xml
+++ b/res/values-ja/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">他の端末からファイルが送信されています。このファイルを受け取るかどうか確認してください。</string>
- <string name="upload_fail_waiting">ファイルを送信できませんでした、再試行しています\u2026</string>
+ <string name="incoming_file_toast_msg">他の端末からファイルが送信されています。このファイルを受け取るかどうか確認してください。</string>
+ <string name="upload_fail_waiting">ファイルを送信できませんでした、再試行しています...</string>
</resources>
diff --git a/res/values-ka-rGE/cm_strings.xml b/res/values-ka-rGE/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-ka-rGE/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-kk-rKZ/cm_strings.xml b/res/values-kk-rKZ/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-kk-rKZ/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-km-rKH/cm_strings.xml b/res/values-km-rKH/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-km-rKH/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-kn-rIN/cm_strings.xml b/res/values-kn-rIN/cm_strings.xml
index 754e4ce41..1437144e5 100644
--- a/res/values-kn-rIN/cm_strings.xml
+++ b/res/values-kn-rIN/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ಕಡತ ಕಳುಹಿಸಲು ಸಾಧವಾಗುತ್ತಿಲ್ಲ, ಮರುಪ್ರಯತ್ನಿಸುತ್ತಿದೆ\u2026</string>
+ <string name="upload_fail_waiting">ಕಡತ ಕಳುಹಿಸಲು ಸಾಧವಾಗುತ್ತಿಲ್ಲ, ಮರುಪ್ರಯತ್ನಿಸುತ್ತಿದೆ\u2026</string>
</resources>
diff --git a/res/values-kn-rIN/strings.xml b/res/values-kn-rIN/strings.xml
index 3ad57a976..50e53de59 100644
--- a/res/values-kn-rIN/strings.xml
+++ b/res/values-kn-rIN/strings.xml
@@ -21,14 +21,14 @@
<string name="permlab_bluetoothWhitelist" msgid="7091552898592306386">"ಶ್ವೇತಪಟ್ಟಿ ಬ್ಲೂಟೂತ್‌ ಸಾಧನವನ್ನು ಪ್ರವೇಶಿಸಿ."</string>
<string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"ಬಳಕೆದಾರರ ದೃಢೀಕರಣ ಇಲ್ಲದೆ ಈ ಸಾಧನಕ್ಕೆ ಫೈಲ್‌ಗಳನ್ನು ಕಳುಹಿಸಲು ಬ್ಲೂಟೂತ್‌ ಸಾಧನವನ್ನು ತಾತ್ಕಾಲಿಕವಾಗಿ ಶ್ವೇತಪಟ್ಟಿ ಮಾಡಲು ಅಪ್ಲಿಕೇಶನ್‌‌ಗೆ ಅನುಮತಿಸುತ್ತದೆ."</string>
<string name="bt_share_picker_label" msgid="6268100924487046932">"ಬ್ಲೂಟೂತ್‌"</string>
- <string name="unknown_device" msgid="9221903979877041009">"ಅಜ್ಞಾತ ಸಾಧನ"</string>
- <string name="unknownNumber" msgid="4994750948072751566">"ಅಜ್ಞಾತ"</string>
+ <string name="unknown_device" msgid="9221903979877041009">"ಅಪರಿಚಿತ ಸಾಧನ"</string>
+ <string name="unknownNumber" msgid="4994750948072751566">"ಅಪರಿಚಿತ"</string>
<string name="airplane_error_title" msgid="2683839635115739939">"ಏರ್‌ಪ್ಲೇನ್ ಮೋಡ್"</string>
<string name="airplane_error_msg" msgid="8698965595254137230">"ಏರ್‌ಪ್ಲೇನ್‌ ಮೋಡ್‌ನಲ್ಲಿ ನೀವು ಬ್ಲೂಟೂತ್‌‌ ಬಳಸಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
<string name="bt_enable_title" msgid="8657832550503456572"></string>
<string name="bt_enable_line1" msgid="7203551583048149">"ಬ್ಲೂಟೂತ್‌ ಸೇವೆಗಳನ್ನು ಬಳಸಲು, ಮೊದಲು ನೀವದನ್ನು ಆನ್‌ ಮಾಡಬೇಕು."</string>
<string name="bt_enable_line2" msgid="4341936569415937994">"ಇದೀಗ ಬ್ಲೂಟೂತ್‌ ಆನ್‌ ಮಾಡುವುದೇ?"</string>
- <string name="bt_enable_cancel" msgid="1988832367505151727">"ರದ್ದುಮಾಡು"</string>
+ <string name="bt_enable_cancel" msgid="1988832367505151727">"ರದ್ದುಮಾಡಿ"</string>
<string name="bt_enable_ok" msgid="3432462749994538265">"ಆನ್ ಮಾಡು"</string>
<string name="incoming_file_confirm_title" msgid="8139874248612182627">"ಫೈಲ್ ವರ್ಗಾವಣೆ"</string>
<string name="incoming_file_confirm_content" msgid="2752605552743148036">"ಒಳಬರುವ ಫೈಲ್‌ಗಳನ್ನು ಸ್ವೀಕರಿಸುವುದೇ?"</string>
@@ -99,7 +99,7 @@
<string name="status_no_sd_card" product="default" msgid="5760944071743325592">"ಯಾವುದೇ SD ಕಾರ್ಡ್‌ಗಳಿಲ್ಲ. ವರ್ಗಾವಣೆ ಮಾಡಲಾದ ಫೈಲ್‌ಗಳನ್ನು ಉಳಿಸಲು SD ಕಾರ್ಡ್‌ವೊಂದನ್ನು ಸೇರಿಸಿ."</string>
<string name="status_connection_error" msgid="947681831523219891">"ಸಂಪರ್ಕವು ವಿಫಲವಾಗಿದೆ."</string>
<string name="status_protocol_error" msgid="3245444473429269539">"ವಿನಂತಿಯನ್ನು ಸರಿಯಾಗಿ ನಿರ್ವಹಿಸಲಾಗುವುದಿಲ್ಲ."</string>
- <string name="status_unknown_error" msgid="8156660554237824912">"ಅಜ್ಞಾತ ದೋಷ."</string>
+ <string name="status_unknown_error" msgid="8156660554237824912">"ಅಪರಿಚಿತ ದೋಷ."</string>
<string name="btopp_live_folder" msgid="7967791481444474554">"ಬ್ಲೂಟೂತ್‌ ಸ್ವೀಕರಿಸಲಾಗಿದೆ"</string>
<string name="download_success" msgid="7036160438766730871">"<xliff:g id="FILE_SIZE">%1$s</xliff:g> ಸ್ವೀಕರಿಸುವುದು ಪೂರ್ಣಗೊಂಡಿದೆ."</string>
<string name="upload_success" msgid="4014469387779648949">"<xliff:g id="FILE_SIZE">%1$s</xliff:g> ಕಳುಹಿಸುವುದು ಪೂರ್ಣಗೊಂಡಿದೆ."</string>
@@ -122,7 +122,7 @@
<string name="transfer_menu_clear" msgid="5854038118831427492">"ಪಟ್ಟಿಯಿಂದ ತೆರವುಗೊಳಿಸಿ"</string>
<string name="transfer_clear_dlg_title" msgid="2953444575556460386">"ತೆರವುಗೊಳಿಸು"</string>
<string name="bluetooth_map_settings_save" msgid="7635491847388074606">"ಉಳಿಸು"</string>
- <string name="bluetooth_map_settings_cancel" msgid="9205350798049865699">"ರದ್ದುಮಾಡು"</string>
+ <string name="bluetooth_map_settings_cancel" msgid="9205350798049865699">"ರದ್ದುಮಾಡಿ"</string>
<string name="bluetooth_map_settings_intro" msgid="6482369468223987562">"ಬ್ಲೂಟೂತ್‌ ಮೂಲಕ ಹಂಚಿಕೊಳ್ಳಲು ಬಯಸುವ ಖಾತೆಗಳನ್ನು ಆಯ್ಕೆಮಾಡಿ. ಸಂಪರ್ಕಪಡಿಸುವಾಗ ಖಾತೆಗಳಿಗೆ ಯಾವುದೇ ಪ್ರವೇಶವನ್ನು ನೀವು ಈಗಲೂ ಸಮ್ಮತಿಸಬೇಕಾಗುತ್ತದೆ."</string>
<string name="bluetooth_map_settings_count" msgid="4557473074937024833">"ಉಳಿದಿರುವ ಸ್ಲಾಟ್‌ಗಳು:"</string>
<string name="bluetooth_map_settings_app_icon" msgid="7105805610929114707">"ಅಪ್ಲಿಕೇಶನ್‌ ಐಕಾನ್‌"</string>
diff --git a/res/values-kn-rIN/strings_pbap_client.xml b/res/values-kn-rIN/strings_pbap_client.xml
index 186b23ae3..ced3f079e 100644
--- a/res/values-kn-rIN/strings_pbap_client.xml
+++ b/res/values-kn-rIN/strings_pbap_client.xml
@@ -1,5 +1,5 @@
<?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="pbap_account_type" msgid="6257077123906049322">"com.android.bluetooth.pbapsink"</string>
+ <string name="pbap_account_type" msgid="6257077123906049322">"com.android.ಬ್ಲೂಟೂತ್.pbapsink"</string>
</resources>
diff --git a/res/values-ko/cm_strings.xml b/res/values-ko/cm_strings.xml
index 6f704e2ec..9ec8bef2a 100644
--- a/res/values-ko/cm_strings.xml
+++ b/res/values-ko/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">파일 전송 실패, 재시도 중\u2026</string>
+ <string name="incoming_file_toast_msg">다른 기기에서 파일을 전송 중입니다. 이 파일을 수신할 것인지 확인하세요.</string>
+ <string name="upload_fail_waiting">파일 전송 실패, 다시 시도하는 중\u2026</string>
</resources>
diff --git a/res/values-ku/cm_strings.xml b/res/values-ku/cm_strings.xml
index 2852fe0ef..ace94750a 100644
--- a/res/values-ku/cm_strings.xml
+++ b/res/values-ku/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ناتوانرێت فایل بنێردرێت، دوبارەهەوڵبەرەوە\u2026</string>
+ <string name="upload_fail_waiting">ناتوانرێت فایل بنێردرێت، دوبارەهەوڵبەرەوە\u2026</string>
</resources>
diff --git a/res/values-ku/strings.xml b/res/values-ku/strings.xml
index 4b7692679..d4da2a750 100644
--- a/res/values-ku/strings.xml
+++ b/res/values-ku/strings.xml
@@ -15,188 +15,99 @@
limitations under the License.
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!--
- This is the short description of a permission associated with the
- Bluetooth Share Manager. It is displayed as part of the description of
- any application that was granted that permission. This specific
- permission controls access to the Bluetooth Share Manager by
- applications that initiate Bluetooth share.
- -->
- <string name="permlab_bluetoothShareManager">ڕێگەدانی بەڕێوەبەرایەتی دابەزین.</string>
- <!--
- This is the long description of a permission associated with the
- Android Download Manager. It is displayed as part of the description
- of any application that was granted that permission. This specific
- permission controls access to the Download Manager by applications
- that initiate downloads.
- -->
- <string name="permdesc_bluetoothShareManager">ڕێگەدان بە بەرنامەکە بۆ ڕێگە بەشداری
+ <string name="permlab_bluetoothShareManager">ڕێگەدانی بەڕێوەبەرایەتی دابەزین.</string>
+ <string name="permdesc_bluetoothShareManager">ڕێگەدان بە بەرنامەکە بۆ ڕێگە بەشداری
بەڕێوەبەری بلوتوس و بەکارهێنانی ناردنی پەڕگە.</string>
- <string name="permlab_bluetoothWhitelist">ڕێگەکانی ئامێری بلوتوس.</string>
- <string name="permdesc_bluetoothWhitelist">بۆ بەرنامە بە شێوەيەكى كاتى ڕێ دەدات بە وهيتێليست
+ <string name="permlab_bluetoothWhitelist">ڕێگەکانی ئامێری بلوتوس.</string>
+ <string name="permdesc_bluetoothWhitelist">بۆ بەرنامە بە شێوەيەكى كاتى ڕێ دەدات بە وهيتێليست
ئامرازێكى بلوێتوث، ڕێدان بەى ئەوە ئامراز تا بۆ ئەمە ئامرازى فايل بەبێ بەكاربەر بنێرێت
دووپات كردن.</string>
- <!-- string showed on "Share picutre via" dialog -->
- <string name="bt_share_picker_label">بلوتوس</string>
- <!-- string for "unknown device" -->
- <string name="unknown_device">ئامێری نەناسراو</string>
- <!-- string for "unknown" phone number" -->
- <string name="unknownNumber">نەناسراو</string>
- <!-- string for "the title of airplane mode error" -->
- <string name="airplane_error_title">شێوازی فڕۆکە</string>
- <!-- string for "error message in airplane mode" -->
- <string name="airplane_error_msg">ناتوانی بلوتوس بەکاربهێنی لە باری فڕۆکە.</string>
- <!-- Activate Bluetooth Confirmation Dialog -->
- <!--Title -->
- <string name="bt_enable_title"></string>
- <!--Line 1 -->
- <string name="bt_enable_line1">بۆ بەکارهێنانی خزمەتگوزاری بلوتوس ئەبێت بلوتوسەکە بکەیتەوە.</string>
- <!--Line 2 -->
- <string name="bt_enable_line2">ئێستا چالاککردنی بلوتوس?</string>
- <!-- Label for a cancel button. -->
- <string name="bt_enable_cancel">هەڵوەشاندنەوە</string>
- <!-- Label for a confirm button.-->
- <string name="bt_enable_ok">کردنە کار</string>
- <!-- Bluetooth File Transfer Acceptance Dialog -->
- <!--Title -->
- <string name="incoming_file_confirm_title">گواستنه‌وه‌ی په‌ڕگه‌</string>
- <!--content -->
- <!-- Label for a cancel button. -->
- <string name="incoming_file_confirm_cancel">ڕەتکردنەوە</string>
- <!-- Label for a confirm button.-->
- <string name="incoming_file_confirm_ok">ڕازیبوون</string>
- <!-- Label for timeout OK button.-->
- <string name="incoming_file_confirm_timeout_ok">باشه‌</string>
- <!-- content for timeout-->
- <string name="incoming_file_confirm_timeout_content">کاتەکە بەسەر چووکاتێک پەڕگەکەت قبولکردن هات \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
- <!-- Bluetooth File Transfer Acceptance Notification item -->
- <!-- Inbound File Transfer Progress Notification item -->
- <!-- label for the notification item of receiving file -->
- <string name="notification_receiving">بەشداریکردنی بلوتوس: وەرگرتن<xliff:g id="file">%1$s</xliff:g></string>
- <!-- label for the notification item of received file -->
- <string name="notification_received">بەشداریکردنی بلوتوس: وەرگرتن<xliff:g id="file">%1$s</xliff:g></string>
- <!-- label for the notification item of failed receiving file -->
- <string name="notification_received_fail">بەشداریکردنی بلوتوس: File <xliff:g id="file">%1$s</xliff:g> نەگەیشت</string>
- <!-- Outbound File Transfer Progress Notification item -->
- <!-- label for the notification item of sending file -->
- <string name="notification_sending">بەشداریکردنی بلوتوس: وەرگرتن<xliff:g id="file">%1$s</xliff:g></string>
- <!-- label for the notification item of sent file -->
- <string name="notification_sent">بەشداریکردنی بلوتوس: گەیشت<xliff:g id="file">%1$s</xliff:g></string>
- <!-- label for the notification item of sent file -status -->
- <string name="notification_sent_complete">100% تەواوبوو</string>
- <!-- label for the notification item of failed sending file -->
- <string name="notification_sent_fail">بەشداری بلوتوس: پەڕگە<xliff:g id="file">%1$s</xliff:g> نەگەیشت</string>
- <!-- Bluetooth Download Progress Dialog -->
- <!--Title -->
- <string name="download_title">گواستنه‌وه‌ی پەڕگە</string>
- <!--Line 1 -->
- <string name="download_line1">لە: \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
- <!--Line 2 -->
- <string name="download_line2">پەڕگە: <xliff:g id="file">%1$s</xliff:g></string>
- <!--Line 3 -->
- <string name="download_line3">قەبارەی فایلەکە: <xliff:g id="size">%1$s</xliff:g></string>
- <!--Line 4 -->
- <string name="download_line4"></string>
- <string name="download_line5">وەرگرتنی پەڕگە\u2026</string>
- <!-- Label for a cancel button. -->
- <string name="download_cancel">وه‌ستاندن</string>
- <!-- Label for a hide button.-->
- <string name="download_ok">شاردنەوە</string>
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!-- Bluetooth failed Download Dialog -->
- <!--Line 1 -->
- <string name="download_fail_line1">فایلەکە نەگەیشت</string>
- <!--Line 2 -->
- <string name="download_fail_line2">پەڕگە: <xliff:g id="file">%1$s</xliff:g></string>
- <!--Line 3 -->
- <string name="download_fail_line3">هۆکار: <xliff:g id="reason">%1$s</xliff:g></string>
- <!-- Label for ok button.-->
- <string name="download_fail_ok">باشه‌</string>
- <!-- Bluetooth Successful Download Dialog -->
- <!--Line 4 in "Bluetooth Download Progress Dialog" -->
- <string name="download_succ_line5">فایلەکە گەیشت</string>
- <!-- Label for a OK button.-->
- <string name="download_succ_ok">کردنه‌وه‌</string>
- <!-- Bluetooth Upload Progress Dialog -->
- <string name="upload_line1">بۆ: \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
- <string name="upload_line3">جۆری پەڕگە: <xliff:g id="type">%1$s</xliff:g> (<xliff:g id="size">%2$s</xliff:g>)</string>
- <string name="upload_line5">ناردنی پەڕگە\u2026</string>
- <!-- Bluetooth Successful Upload Progress Dialog -->
- <!--Line 4 -->
- <string name="upload_succ_line5">فایلەکە نێردرا</string>
- <!-- Label for a confirm button.-->
- <string name="upload_succ_ok">باشه‌</string>
- <!-- Bluetooth Failed Upload File Transfer Dialog -->
- <string name="upload_fail_line1">فایلەکە نەنێردرا بۆ \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022.</string>
- <string name="upload_fail_line1_2">پەڕگە: <xliff:g id="file">%1$s</xliff:g></string>
- <!-- Label for a try again button.-->
- <string name="upload_fail_ok">دوبارە هەوڵبدەرەوە</string>
- <!-- Label for a cancel button.-->
- <string name="upload_fail_cancel">داخستن</string>
- <!-- Bluetooth error dialog -->
- <string name="bt_error_btn_ok">باشه‌</string>
- <string name="unknown_file">فایلی نەناسراو</string>
- <string name="unknown_file_desc">بەرنامەیەک نیە بۆ هەڵگرتنی ئەم جۆرە فایلە. \n</string>
- <string name="not_exist_file">پەڕگە نیە</string>
- <string name="not_exist_file_desc">فایلەکە بونی نیە. \n</string>
- <!-- Bluetooth Enabling progress dialog -->
- <string name="enabling_progress_title">تکایە چاوەڕێبکە\u2026</string>
- <string name="enabling_progress_content">چالاککردنی بلوتوس\u2026</string>
- <!-- Bluetooth Toast Message -->
- <string name="bt_toast_1">فەیلەکە ئەگەیەت. پشکنینی تێبینی.</string>
- <string name="bt_toast_2">فایلەکە ناتوانرێت بنێردرێت.</string>
- <string name="bt_toast_3">گەیشتنی فایلەکە وەستا لە \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
- <string name="bt_toast_4">ناردنی بەرنامەکە بۆ \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
- <string name="bt_toast_5">ناردن <xliff:g id="number">%1$s</xliff:g> فایل بۆ \u0022<xliff:g id="recipient">%2$s</xliff:g>\u0022</string>
- <string name="bt_toast_6">وەستاندنی فایل ناردن بۆ \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
- <!-- Bluetooth System Messages [CHAR LIMIT=NONE] -->
- <string name="bt_sm_2_1" product="nosdcard">بیرگەی تەواو لەبەردەست نیە بۆ پاشەکەوتکردنی فایلەکە لە \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
- <!-- Bluetooth System Messages -->
- <string name="bt_sm_2_1" product="default">بیرگەی تەواو لەبەردەست نیە بۆ پاشەکەوتکردنی فایلەکە لە \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
- <string name="bt_sm_2_2">بۆشایی پێوستە: <xliff:g id="size">%1$s</xliff:g></string>
- <string name="ErrorTooManyRequests">زۆر داواکاری لە ڕێکخەریدان. دواتر هەوڵبدەوە.</string>
- <!-- Bluetooth Transfer Failure Reason -->
- <string name="status_pending">گواستنەوەی فایلەکە دەستی پێ نەکردوە هێشتا.</string>
- <string name="status_running">ڕۆیشتنی پەڕگە ناردنەکە.</string>
- <string name="status_success">گواستنەوەی فایلەکە بەسەرکەوتوی تەواوبوو.</string>
- <string name="status_not_accept">ناوەڕۆک پاڵپشتی ناکات.</string>
- <string name="status_forbidden">گواستنەوەکە قەدەغەکراوە لەلایەن ئامێری نیشانەوە.</string>
- <string name="status_canceled">گواستنەوەکە پوچەڵکرایەوە لەلایەن بەکارهێنەرەوە.</string>
- <string name="status_file_error">کێشەی بیرگە.</string>
- <!-- Shown when USB storage cannot be found. [CHAR LIMIT=NONE] -->
- <string name="status_no_sd_card" product="nosdcard">بیرگەی ناوەکی نیە.</string>
- <string name="status_no_sd_card" product="default">بیرگەی دەرەکی نیە. بیرگەیەکی تێبکە بۆ گواستنەوەی فایلەکان.</string>
- <string name="status_connection_error">بەستنەوەکە سەرکەوتونەبو.</string>
- <string name="status_protocol_error">داواکردنەکە ناتوانرێت بەتەواوی بکرێت.</string>
- <string name="status_unknown_error">هه‌ڵه‌ی نه‌زانراو.</string>
- <!-- Bluetooth OPP Live Folder -->
- <string name="btopp_live_folder">وه‌رگیراوه‌کان</string>
- <!-- Bluetooth OPP Transfer History -->
- <string name="download_success"> <xliff:g id="file_size">%1$s</xliff:g> گەیشتنەکە تەواوبو.</string>
- <string name="upload_success"> <xliff:g id="file_size">%1$s</xliff:g> گەیشتنەکە تەواوبو.</string>
- <string name="inbound_history_title">نەبەستنەوەی گواستنەوە</string>
- <string name="outbound_history_title">گواستنەوەی بەرەودەرەوە</string>
- <string name="no_transfers">تۆماری وه‌رگیراوه‌کان به‌تاڵه‌.</string>
- <string name="transfer_clear_dlg_msg">هەموو ئامرازەکان پاک ئەکرێنەوە لە خشتەکە.</string>
- <string name="outbound_noti_title">بەشداری بلوتوس: فایلەکە نێردرا</string>
- <string name="inbound_noti_title">بەشداری بلوتوس: فایلەکە گەیشت</string>
- <string name="transfer_menu_clear_all">پاکردنەوەی خشتەکە</string>
- <string name="transfer_menu_open">کردنه‌وه‌</string>
- <string name="transfer_menu_clear">پاکردنەوە لە خشتەکە</string>
- <string name="transfer_clear_dlg_title">پاککردنه‌وه‌</string>
- <!-- Do not translate. file name used for sharing. -->
- <!-- Used to run Bluetooth.apk in another process if needed -->
- <!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <string name="bluetooth_map_settings_cancel">هەڵوەشاندنەوە</string>
+ <string name="bt_share_picker_label">بلوتوس</string>
+ <string name="unknown_device">ئامێری نەناسراو</string>
+ <string name="unknownNumber">نەناسراو</string>
+ <string name="airplane_error_title">شێوازی فڕۆکە</string>
+ <string name="airplane_error_msg">ناتوانی بلوتوس بەکاربهێنی لە باری فڕۆکە.</string>
+ <string name="bt_enable_line1">بۆ بەکارهێنانی خزمەتگوزاری بلوتوس ئەبێت بلوتوسەکە بکەیتەوە.</string>
+ <string name="bt_enable_line2">ئێستا چالاککردنی بلوتوس?</string>
+ <string name="bt_enable_cancel">هەڵوەشاندنەوە</string>
+ <string name="bt_enable_ok">کردنە کار</string>
+ <string name="incoming_file_confirm_title">گواستنه‌وه‌ی په‌ڕگه‌</string>
+ <string name="incoming_file_confirm_cancel">ڕەتکردنەوە</string>
+ <string name="incoming_file_confirm_ok">ڕازیبوون</string>
+ <string name="incoming_file_confirm_timeout_ok">باشه‌</string>
+ <string name="incoming_file_confirm_timeout_content">کاتەکە بەسەر چووکاتێک پەڕگەکەت قبولکردن هات \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="notification_receiving">بەشداریکردنی بلوتوس: وەرگرتن<xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_received">بەشداریکردنی بلوتوس: وەرگرتن<xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_received_fail">بەشداریکردنی بلوتوس: File <xliff:g id="file">%1$s</xliff:g> نەگەیشت</string>
+ <string name="notification_sending">بەشداریکردنی بلوتوس: وەرگرتن<xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_sent">بەشداریکردنی بلوتوس: گەیشت<xliff:g id="file">%1$s</xliff:g></string>
+ <string name="notification_sent_complete">100% تەواوبوو</string>
+ <string name="notification_sent_fail">بەشداری بلوتوس: پەڕگە<xliff:g id="file">%1$s</xliff:g> نەگەیشت</string>
+ <string name="download_title">گواستنه‌وه‌ی پەڕگە</string>
+ <string name="download_line1">لە: \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="download_line2">پەڕگە: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_line3">قەبارەی فایلەکە: <xliff:g id="size">%1$s</xliff:g></string>
+ <string name="download_line5">وەرگرتنی پەڕگە\u2026</string>
+ <string name="download_cancel">وه‌ستاندن</string>
+ <string name="download_ok">شاردنەوە</string>
+ <string name="download_fail_line1">فایلەکە نەگەیشت</string>
+ <string name="download_fail_line2">پەڕگە: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_fail_line3">هۆکار: <xliff:g id="reason">%1$s</xliff:g></string>
+ <string name="download_fail_ok">باشه‌</string>
+ <string name="download_succ_line5">فایلەکە گەیشت</string>
+ <string name="download_succ_ok">کردنه‌وه‌</string>
+ <string name="upload_line1">بۆ: \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
+ <string name="upload_line3">جۆری پەڕگە: <xliff:g id="type">%1$s</xliff:g> (<xliff:g id="size">%2$s</xliff:g>)</string>
+ <string name="upload_line5">ناردنی پەڕگە\u2026</string>
+ <string name="upload_succ_line5">فایلەکە نێردرا</string>
+ <string name="upload_succ_ok">باشه‌</string>
+ <string name="upload_fail_line1">فایلەکە نەنێردرا بۆ \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022.</string>
+ <string name="upload_fail_line1_2">پەڕگە: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="upload_fail_ok">دوبارە هەوڵبدەرەوە</string>
+ <string name="upload_fail_cancel">داخستن</string>
+ <string name="bt_error_btn_ok">باشه‌</string>
+ <string name="unknown_file">فایلی نەناسراو</string>
+ <string name="unknown_file_desc">بەرنامەیەک نیە بۆ هەڵگرتنی ئەم جۆرە فایلە. \n</string>
+ <string name="not_exist_file">پەڕگە نیە</string>
+ <string name="not_exist_file_desc">فایلەکە بونی نیە. \n</string>
+ <string name="enabling_progress_title">تکایە چاوەڕێبکە\u2026</string>
+ <string name="enabling_progress_content">چالاککردنی بلوتوس\u2026</string>
+ <string name="bt_toast_1">فەیلەکە ئەگەیەت. پشکنینی تێبینی.</string>
+ <string name="bt_toast_2">فایلەکە ناتوانرێت بنێردرێت.</string>
+ <string name="bt_toast_3">گەیشتنی فایلەکە وەستا لە \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="bt_toast_4">ناردنی بەرنامەکە بۆ \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
+ <string name="bt_toast_5">ناردن <xliff:g id="number">%1$s</xliff:g> فایل بۆ \u0022<xliff:g id="recipient">%2$s</xliff:g>\u0022</string>
+ <string name="bt_toast_6">وەستاندنی فایل ناردن بۆ \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
+ <string name="bt_sm_2_1" product="nosdcard">بیرگەی تەواو لەبەردەست نیە بۆ پاشەکەوتکردنی فایلەکە لە \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="bt_sm_2_1" product="default">بیرگەی تەواو لەبەردەست نیە بۆ پاشەکەوتکردنی فایلەکە لە \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="bt_sm_2_2">بۆشایی پێوستە: <xliff:g id="size">%1$s</xliff:g></string>
+ <string name="ErrorTooManyRequests">زۆر داواکاری لە ڕێکخەریدان. دواتر هەوڵبدەوە.</string>
+ <string name="status_pending">گواستنەوەی فایلەکە دەستی پێ نەکردوە هێشتا.</string>
+ <string name="status_running">ڕۆیشتنی پەڕگە ناردنەکە.</string>
+ <string name="status_success">گواستنەوەی فایلەکە بەسەرکەوتوی تەواوبوو.</string>
+ <string name="status_not_accept">ناوەڕۆک پاڵپشتی ناکات.</string>
+ <string name="status_forbidden">گواستنەوەکە قەدەغەکراوە لەلایەن ئامێری نیشانەوە.</string>
+ <string name="status_canceled">گواستنەوەکە پوچەڵکرایەوە لەلایەن بەکارهێنەرەوە.</string>
+ <string name="status_file_error">کێشەی بیرگە.</string>
+ <string name="status_no_sd_card" product="nosdcard">بیرگەی ناوەکی نیە.</string>
+ <string name="status_no_sd_card" product="default">بیرگەی دەرەکی نیە. بیرگەیەکی تێبکە بۆ گواستنەوەی فایلەکان.</string>
+ <string name="status_connection_error">بەستنەوەکە سەرکەوتونەبو.</string>
+ <string name="status_protocol_error">داواکردنەکە ناتوانرێت بەتەواوی بکرێت.</string>
+ <string name="status_unknown_error">هه‌ڵه‌ی نه‌زانراو.</string>
+ <string name="btopp_live_folder">وه‌رگیراوه‌کان</string>
+ <string name="download_success"> <xliff:g id="file_size">%1$s</xliff:g> گەیشتنەکە تەواوبو.</string>
+ <string name="upload_success"> <xliff:g id="file_size">%1$s</xliff:g> گەیشتنەکە تەواوبو.</string>
+ <string name="inbound_history_title">نەبەستنەوەی گواستنەوە</string>
+ <string name="outbound_history_title">گواستنەوەی بەرەودەرەوە</string>
+ <string name="no_transfers">تۆماری وه‌رگیراوه‌کان به‌تاڵه‌.</string>
+ <string name="transfer_clear_dlg_msg">هەموو ئامرازەکان پاک ئەکرێنەوە لە خشتەکە.</string>
+ <string name="outbound_noti_title">بەشداری بلوتوس: فایلەکە نێردرا</string>
+ <string name="inbound_noti_title">بەشداری بلوتوس: فایلەکە گەیشت</string>
+ <string name="transfer_menu_clear_all">پاکردنەوەی خشتەکە</string>
+ <string name="transfer_menu_open">کردنه‌وه‌</string>
+ <string name="transfer_menu_clear">پاکردنەوە لە خشتەکە</string>
+ <string name="transfer_clear_dlg_title">پاککردنه‌وه‌</string>
+ <string name="bluetooth_map_settings_cancel">هەڵوەشاندنەوە</string>
</resources>
diff --git a/res/values-ku/strings_pbap.xml b/res/values-ku/strings_pbap.xml
index a0f50fdfd..7c06a5640 100644
--- a/res/values-ku/strings_pbap.xml
+++ b/res/values-ku/strings_pbap.xml
@@ -1,17 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="pbap_session_key_dialog_title">کلیلی تر بنوسە بۆ %1$s</string>
- <string name="pbap_session_key_dialog_header">کلیلێکی تر پێویستە بۆ بلوتوس</string>
- <string name="pbap_acceptance_timeout_message">کات ته‌واو بوو بۆ په‌یوه‌ندی کردن له‌گه‌ڵ %1$s</string>
- <string name="pbap_authentication_timeout_message">کات ته‌واو بوو بۆ په‌یوه‌ندی کردن له‌گه‌ڵ %1$s</string>
- <string name="auth_notif_ticker">داواکاری ناساندنی ئۆبیکس</string>
- <!-- Notification title when a Bluetooth device wants to pair with us -->
- <string name="auth_notif_title">کلیلی تر</string>
- <!-- Notification message when a Bluetooth device wants to pair with us -->
- <string name="auth_notif_message">کلیلی تر بنووسه‌ بۆ %1$s</string>
- <string name="defaultname">کارکیت</string>
- <string name="unknownName">ناوی نه‌زانراو</string>
- <string name="localPhoneName">ناوی من</string>
- <string name="defaultnumber">000000</string>
+ <string name="pbap_session_key_dialog_title">کلیلی تر بنوسە بۆ %1$s</string>
+ <string name="pbap_session_key_dialog_header">کلیلێکی تر پێویستە بۆ بلوتوس</string>
+ <string name="pbap_acceptance_timeout_message">کات ته‌واو بوو بۆ په‌یوه‌ندی کردن له‌گه‌ڵ %1$s</string>
+ <string name="pbap_authentication_timeout_message">کات ته‌واو بوو بۆ په‌یوه‌ندی کردن له‌گه‌ڵ %1$s</string>
+ <string name="auth_notif_ticker">داواکاری ناساندنی ئۆبیکس</string>
+ <string name="auth_notif_title">کلیلی تر</string>
+ <string name="auth_notif_message">کلیلی تر بنووسه‌ بۆ %1$s</string>
+ <string name="defaultname">کارکیت</string>
+ <string name="unknownName">ناوی نه‌زانراو</string>
+ <string name="localPhoneName">ناوی من</string>
+ <string name="defaultnumber">000000</string>
</resources>
diff --git a/res/values-ku/strings_sap.xml b/res/values-ku/strings_sap.xml
deleted file mode 100644
index d242b5671..000000000
--- a/res/values-ku/strings_sap.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"></resources>
diff --git a/res/values-ky-rKG/cm_strings.xml b/res/values-ky-rKG/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-ky-rKG/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-lb/cm_strings.xml b/res/values-lb/cm_strings.xml
index b8fcc81e8..49ec7ded6 100644
--- a/res/values-lb/cm_strings.xml
+++ b/res/values-lb/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Konnt de Fichier net schécken, gëtt nees probéiert\u2026</string>
+ <string name="upload_fail_waiting">Konnt de Fichier net schécken, gëtt nees probéiert\u2026</string>
</resources>
diff --git a/res/values-lb/strings.xml b/res/values-lb/strings.xml
index 0ca8c49fa..0ed60ccc9 100644
--- a/res/values-lb/strings.xml
+++ b/res/values-lb/strings.xml
@@ -15,197 +15,109 @@
limitations under the License.
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!--
- This is the short description of a permission associated with the
- Bluetooth Share Manager. It is displayed as part of the description of
- any application that was granted that permission. This specific
- permission controls access to the Bluetooth Share Manager by
- applications that initiate Bluetooth share.
- -->
- <string name="permlab_bluetoothShareManager">Zougrëff op den Download-Manager</string>
- <!--
- This is the long description of a permission associated with the
- Android Download Manager. It is displayed as part of the description
- of any application that was granted that permission. This specific
- permission controls access to the Download Manager by applications
- that initiate downloads.
- -->
- <string name="permdesc_bluetoothShareManager">Erlaabt der App, op de BluetoothShare-Manager zouzegräifen an e fir Fichiersiwwerdroungen ze benotzen.</string>
- <string name="permlab_bluetoothWhitelist">Bluetooth-Apparat op d\'Zougrëffslëscht setzen</string>
- <string name="permdesc_bluetoothWhitelist">Erlaabt der App, temporär e Bluetooth-Apparat op d\'wäiss Lëscht ze setzen, sou datt vun deem Apparat e Fichier kann empfaange ginn ouni datt de Benotzer d\'Iwwerdroung bestätege muss.</string>
- <!-- string showed on "Share picutre via" dialog -->
- <string name="bt_share_picker_label">Bluetooth</string>
- <!-- string for "unknown device" -->
- <string name="unknown_device">Onbekannten Apparat</string>
- <!-- string for "unknown" phone number" -->
- <string name="unknownNumber">Onbekannt</string>
- <!-- string for "the title of airplane mode error" -->
- <string name="airplane_error_title">Fligermodus</string>
- <!-- string for "error message in airplane mode" -->
- <string name="airplane_error_msg">Du kanns Bluetooth net am Fligermodus benotzen.</string>
- <!-- Activate Bluetooth Confirmation Dialog -->
- <!--Title -->
- <string name="bt_enable_title"></string>
- <!--Line 1 -->
- <string name="bt_enable_line1">Fir Bluetooth-Servicer ze benotze muss du fir d\'éischt Bluetooth uschalten.</string>
- <!--Line 2 -->
- <string name="bt_enable_line2">Bluetooth elo uschalten?</string>
- <!-- Label for a cancel button. -->
- <string name="bt_enable_cancel">Ofbriechen</string>
- <!-- Label for a confirm button.-->
- <string name="bt_enable_ok">Uschalten</string>
- <!-- Bluetooth File Transfer Acceptance Dialog -->
- <!--Title -->
- <string name="incoming_file_confirm_title">Fichiersiwwerdroung</string>
- <!--content -->
- <string name="incoming_file_confirm_content">Erakommende Fichier acceptéieren?</string>
- <!-- Label for a cancel button. -->
- <string name="incoming_file_confirm_cancel">Refuséieren</string>
- <!-- Label for a confirm button.-->
- <string name="incoming_file_confirm_ok">Acceptéieren</string>
- <!-- Label for timeout OK button.-->
- <string name="incoming_file_confirm_timeout_ok">OK</string>
- <!-- content for timeout-->
- <string name="incoming_file_confirm_timeout_content">D\'Zäit ass beim Empfänke vun engem Fichier vum \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 ofgelaf</string>
- <!-- Bluetooth File Transfer Acceptance Notification item -->
- <!-- Inbound File Transfer Progress Notification item -->
- <!-- label for the notification item of receiving file -->
- <string name="notification_receiving">Bluetooth-Fräigab: <xliff:g id="file">%1$s</xliff:g> gëtt empfaangen</string>
- <!-- label for the notification item of received file -->
- <string name="notification_received">Bluetooth-Fräigab: <xliff:g id="file">%1$s</xliff:g> empfaangen</string>
- <!-- label for the notification item of failed receiving file -->
- <string name="notification_received_fail">Bluetooth-Fräigab: Fichier <xliff:g id="file">%1$s</xliff:g> net empfaangen</string>
- <!-- Outbound File Transfer Progress Notification item -->
- <!-- label for the notification item of sending file -->
- <string name="notification_sending">Bluetooth-Fräigab: <xliff:g id="file">%1$s</xliff:g> gëtt geschéckt</string>
- <!-- label for the notification item of sent file -->
- <string name="notification_sent">Bluetooth-Fräigab: <xliff:g id="file">%1$s</xliff:g> geschéckt</string>
- <!-- label for the notification item of sent file -status -->
- <string name="notification_sent_complete">100 % ofgeschloss</string>
- <!-- label for the notification item of failed sending file -->
- <string name="notification_sent_fail">Bluetooth-Fräigab: Fichier <xliff:g id="file">%1$s</xliff:g> net geschéckt</string>
- <!-- Bluetooth Download Progress Dialog -->
- <!--Title -->
- <string name="download_title">Fichiersiwwerdroung</string>
- <!--Line 1 -->
- <string name="download_line1">Vum: \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
- <!--Line 2 -->
- <string name="download_line2">Fichier: <xliff:g id="file">%1$s</xliff:g></string>
- <!--Line 3 -->
- <string name="download_line3">Fichiersgréisst: <xliff:g id="size">%1$s</xliff:g></string>
- <!--Line 4 -->
- <string name="download_line4"></string>
- <string name="download_line5">Fichier gëtt empfaangen\u2026</string>
- <!-- Label for a cancel button. -->
- <string name="download_cancel">Stoppen</string>
- <!-- Label for a hide button.-->
- <string name="download_ok">Verstoppen</string>
- <!--Line 1 -->
- <string name="incoming_line1">Vum</string>
- <!--Line 2 -->
- <string name="incoming_line2">Fichiersnumm</string>
- <!--Line 3 -->
- <string name="incoming_line3">Gréisst</string>
- <!-- Bluetooth failed Download Dialog -->
- <!--Line 1 -->
- <string name="download_fail_line1">Fichier net empfaangen</string>
- <!--Line 2 -->
- <string name="download_fail_line2">Fichier: <xliff:g id="file">%1$s</xliff:g></string>
- <!--Line 3 -->
- <string name="download_fail_line3">Grond: <xliff:g id="reason">%1$s</xliff:g></string>
- <!-- Label for ok button.-->
- <string name="download_fail_ok">OK</string>
- <!-- Bluetooth Successful Download Dialog -->
- <!--Line 4 in "Bluetooth Download Progress Dialog" -->
- <string name="download_succ_line5">Fichier empfaangen</string>
- <!-- Label for a OK button.-->
- <string name="download_succ_ok">Opmaachen</string>
- <!-- Bluetooth Upload Progress Dialog -->
- <string name="upload_line1">Un: \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
- <string name="upload_line3">Fichierstyp: <xliff:g id="type">%1$s</xliff:g> (<xliff:g id="size">%2$s</xliff:g>)</string>
- <string name="upload_line5">Fichier gëtt geschéckt\u2026</string>
- <!-- Bluetooth Successful Upload Progress Dialog -->
- <!--Line 4 -->
- <string name="upload_succ_line5">Fichier geschéckt</string>
- <!-- Label for a confirm button.-->
- <string name="upload_succ_ok">OK</string>
- <!-- Bluetooth Failed Upload File Transfer Dialog -->
- <string name="upload_fail_line1">De Fichier gouf net un den/d\' \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022 geschéckt.</string>
- <string name="upload_fail_line1_2">Fichier: <xliff:g id="file">%1$s</xliff:g></string>
- <!-- Label for a try again button.-->
- <string name="upload_fail_ok">Probéier nees</string>
- <!-- Label for a cancel button.-->
- <string name="upload_fail_cancel">Zoumaachen</string>
- <!-- Bluetooth error dialog -->
- <string name="bt_error_btn_ok">OK</string>
- <string name="unknown_file">Onbekannte Fichier</string>
- <string name="unknown_file_desc">Et gëtt keng App déi mat dësem Typ vu Fichier kann ëmgoen.\n</string>
- <string name="not_exist_file">Kee Fichier</string>
- <string name="not_exist_file_desc">De Fichier existéiert net. \n</string>
- <!-- Bluetooth Enabling progress dialog -->
- <string name="enabling_progress_title">Waart w.e.g.\u2026</string>
- <string name="enabling_progress_content">Bluetooth gëtt ugemaach\u2026</string>
- <!-- Bluetooth Toast Message -->
- <string name="bt_toast_1">De Fichier gëtt empfaangen. De Fortschrëtt gëtt am Notifikatiouns-Panneau ugewisen.</string>
- <string name="bt_toast_2">De Fichier kann net empfaange ginn.</string>
- <string name="bt_toast_3">D\'Empfänke vum Fichier vum \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 gouf gestoppt</string>
- <string name="bt_toast_4">Fichier gëtt un den Apparat \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022 geschéckt</string>
- <string name="bt_toast_5"><xliff:g id="number">%1$s</xliff:g> Fichiere ginn un den Apparat \u0022<xliff:g id="recipient">%2$s</xliff:g>\u0022 geschéckt</string>
- <string name="bt_toast_6">D\'Schécke vum Fichier un den Apparat \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 gouf gestoppt</string>
- <!-- Bluetooth System Messages [CHAR LIMIT=NONE] -->
- <string name="bt_sm_2_1" product="nosdcard">Et ass net genuch Plaz um USB-Späicher fir de Fichier vum \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 ze späicheren</string>
- <!-- Bluetooth System Messages -->
- <string name="bt_sm_2_1" product="default">Et ass net genuch Späicherplaz op der SD-Kaart fir de Fichier vum \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 ze späicheren</string>
- <string name="bt_sm_2_2">Néideg Plaz: <xliff:g id="size">%1$s</xliff:g></string>
- <string name="ErrorTooManyRequests">Et ginn ze vill Ufroe beaarbecht. Probéier méi spéit nees.</string>
- <!-- Bluetooth Transfer Failure Reason -->
- <string name="status_pending">Iwwerdroung vu Fichieren nach net gestart.</string>
- <string name="status_running">Iwwerdroung vu Fichiere leeft.</string>
- <string name="status_success">Iwwerdroung vu Fichieren erfollegräich ofgeschloss.</string>
- <string name="status_not_accept">Inhalt net ënnerstëtzt.</string>
- <string name="status_forbidden">Iwwerdroung duerch den Zilapparat verbueden.</string>
- <string name="status_canceled">Iwwerdroung duerch de Benotzer ofgebrach.</string>
- <string name="status_file_error">Späicherproblem.</string>
- <!-- Shown when USB storage cannot be found. [CHAR LIMIT=NONE] -->
- <string name="status_no_sd_card" product="nosdcard">Keen USB-Späicher.</string>
- <string name="status_no_sd_card" product="default">Keng SD-Kaart. Schléiss eng SD-Kaart un, fir déi transferéiert Fichieren ze späicheren.</string>
- <string name="status_connection_error">Connectioun feelgeschloen.</string>
- <string name="status_protocol_error">D\'Ufro kann net korrekt behandelt ginn.</string>
- <string name="status_unknown_error">Onbekannte Feeler.</string>
- <!-- Bluetooth OPP Live Folder -->
- <string name="btopp_live_folder">Bluetooth empfaangen</string>
- <!-- Bluetooth OPP Transfer History -->
- <string name="download_success"> <xliff:g id="file_size">%1$s</xliff:g> vollstänneg empfaangen.</string>
- <string name="upload_success"> <xliff:g id="file_size">%1$s</xliff:g> vollstänneg geschéckt.</string>
- <string name="inbound_history_title">Erakommend Iwwerdroungen</string>
- <string name="outbound_history_title">Erausgoend Iwwerdroungen</string>
- <string name="no_transfers">Den Iwwerdroungshistorique ass eidel.</string>
- <string name="transfer_clear_dlg_msg">All d\'Elementer ginn aus der Lëscht erausgeholl.</string>
- <string name="outbound_noti_title">Bluetooth-Fräigab: Geschéckt Fichieren</string>
- <string name="inbound_noti_title">Bluetooth-Fräigab: Emfaange Fichieren</string>
- <plurals name="noti_caption_unsuccessful">
- <item quantity="one"><xliff:g id="unsuccessful_number">%1$d</xliff:g> net erfollegräich.</item>
- <item quantity="other"><xliff:g id="unsuccessful_number">%1$d</xliff:g> net erfollegräich.</item>
- </plurals>
- <plurals name="noti_caption_success">
- <item quantity="one"><xliff:g id="successful_number">%1$d</xliff:g> erfollegräich, %2$s</item>
- <item quantity="other"><xliff:g id="successful_number">%1$d</xliff:g> erfollegräich, %2$s</item>
- </plurals>
- <string name="transfer_menu_clear_all">Lëscht eidel maachen</string>
- <string name="transfer_menu_open">Opmaachen</string>
- <string name="transfer_menu_clear">Aus der Lëscht ewechhuelen</string>
- <string name="transfer_clear_dlg_title">Eidel maachen</string>
- <!-- Do not translate. file name used for sharing. -->
- <!-- Used to run Bluetooth.apk in another process if needed -->
- <!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <string name="bluetooth_map_settings_save">Späicheren</string>
- <string name="bluetooth_map_settings_cancel">Ofbriechen</string>
- <string name="bluetooth_map_settings_app_icon">App-Symbol</string>
+ <string name="permlab_bluetoothShareManager">Zougrëff op den Download-Manager</string>
+ <string name="permdesc_bluetoothShareManager">Erlaabt der App, op de BluetoothShare-Manager zouzegräifen an e fir Fichiersiwwerdroungen ze benotzen.</string>
+ <string name="permlab_bluetoothWhitelist">Bluetooth-Apparat op d\'Zougrëffslëscht setzen</string>
+ <string name="permdesc_bluetoothWhitelist">Erlaabt der App, temporär e Bluetooth-Apparat op d\'wäiss Lëscht ze setzen, sou datt vun deem Apparat e Fichier kann empfaange ginn ouni datt de Benotzer d\'Iwwerdroung bestätege muss.</string>
+ <string name="bt_share_picker_label">Bluetooth</string>
+ <string name="unknown_device">Onbekannten Apparat</string>
+ <string name="unknownNumber">Onbekannt</string>
+ <string name="airplane_error_title">Fligermodus</string>
+ <string name="airplane_error_msg">Du kanns Bluetooth net am Fligermodus benotzen.</string>
+ <string name="bt_enable_line1">Fir Bluetooth-Servicer ze benotze muss du fir d\'éischt Bluetooth uschalten.</string>
+ <string name="bt_enable_line2">Bluetooth elo uschalten?</string>
+ <string name="bt_enable_cancel">Ofbriechen</string>
+ <string name="bt_enable_ok">Uschalten</string>
+ <string name="incoming_file_confirm_title">Fichiersiwwerdroung</string>
+ <string name="incoming_file_confirm_content">Erakommende Fichier acceptéieren?</string>
+ <string name="incoming_file_confirm_cancel">Refuséieren</string>
+ <string name="incoming_file_confirm_ok">Acceptéieren</string>
+ <string name="incoming_file_confirm_timeout_ok">OK</string>
+ <string name="incoming_file_confirm_timeout_content">D\'Zäit ass beim Empfänke vun engem Fichier vum \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 ofgelaf</string>
+ <string name="incoming_file_confirm_Notification_title">Erakommende Fichier</string>
+ <string name="notification_receiving">Bluetooth-Fräigab: <xliff:g id="file">%1$s</xliff:g> gëtt empfaangen</string>
+ <string name="notification_received">Bluetooth-Fräigab: <xliff:g id="file">%1$s</xliff:g> empfaangen</string>
+ <string name="notification_received_fail">Bluetooth-Fräigab: Fichier <xliff:g id="file">%1$s</xliff:g> net empfaangen</string>
+ <string name="notification_sending">Bluetooth-Fräigab: <xliff:g id="file">%1$s</xliff:g> gëtt geschéckt</string>
+ <string name="notification_sent">Bluetooth-Fräigab: <xliff:g id="file">%1$s</xliff:g> geschéckt</string>
+ <string name="notification_sent_complete">100 % ofgeschloss</string>
+ <string name="notification_sent_fail">Bluetooth-Fräigab: Fichier <xliff:g id="file">%1$s</xliff:g> net geschéckt</string>
+ <string name="download_title">Fichiersiwwerdroung</string>
+ <string name="download_line1">Vum: \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022</string>
+ <string name="download_line2">Fichier: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_line3">Fichiersgréisst: <xliff:g id="size">%1$s</xliff:g></string>
+ <string name="download_line5">Fichier gëtt empfaangen\u2026</string>
+ <string name="download_cancel">Stoppen</string>
+ <string name="download_ok">Verstoppen</string>
+ <string name="incoming_line1">Vum</string>
+ <string name="incoming_line2">Fichiersnumm</string>
+ <string name="incoming_line3">Gréisst</string>
+ <string name="download_fail_line1">Fichier net empfaangen</string>
+ <string name="download_fail_line2">Fichier: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="download_fail_line3">Grond: <xliff:g id="reason">%1$s</xliff:g></string>
+ <string name="download_fail_ok">OK</string>
+ <string name="download_succ_line5">Fichier empfaangen</string>
+ <string name="download_succ_ok">Opmaachen</string>
+ <string name="upload_line1">Un: \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022</string>
+ <string name="upload_line3">Fichierstyp: <xliff:g id="type">%1$s</xliff:g> (<xliff:g id="size">%2$s</xliff:g>)</string>
+ <string name="upload_line5">Fichier gëtt geschéckt\u2026</string>
+ <string name="upload_succ_line5">Fichier geschéckt</string>
+ <string name="upload_succ_ok">OK</string>
+ <string name="upload_fail_line1">De Fichier gouf net un den/d\' \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022 geschéckt.</string>
+ <string name="upload_fail_line1_2">Fichier: <xliff:g id="file">%1$s</xliff:g></string>
+ <string name="upload_fail_ok">Probéier nees</string>
+ <string name="upload_fail_cancel">Zoumaachen</string>
+ <string name="bt_error_btn_ok">OK</string>
+ <string name="unknown_file">Onbekannte Fichier</string>
+ <string name="unknown_file_desc">Et gëtt keng App déi mat dësem Typ vu Fichier kann ëmgoen.\n</string>
+ <string name="not_exist_file">Kee Fichier</string>
+ <string name="not_exist_file_desc">De Fichier existéiert net. \n</string>
+ <string name="enabling_progress_title">Waart w.e.g.\u2026</string>
+ <string name="enabling_progress_content">Bluetooth gëtt ugemaach\u2026</string>
+ <string name="bt_toast_1">De Fichier gëtt empfaangen. De Fortschrëtt gëtt am Notifikatiouns-Panneau ugewisen.</string>
+ <string name="bt_toast_2">De Fichier kann net empfaange ginn.</string>
+ <string name="bt_toast_3">D\'Empfänke vum Fichier vum \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 gouf gestoppt</string>
+ <string name="bt_toast_4">Fichier gëtt un den Apparat \u0022<xliff:g id="recipient">%1$s</xliff:g>\u0022 geschéckt</string>
+ <string name="bt_toast_5"><xliff:g id="number">%1$s</xliff:g> Fichiere ginn un den Apparat \u0022<xliff:g id="recipient">%2$s</xliff:g>\u0022 geschéckt</string>
+ <string name="bt_toast_6">D\'Schécke vum Fichier un den Apparat \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 gouf gestoppt</string>
+ <string name="bt_sm_2_1" product="nosdcard">Et ass net genuch Plaz um USB-Späicher fir de Fichier vum \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 ze späicheren</string>
+ <string name="bt_sm_2_1" product="default">Et ass net genuch Späicherplaz op der SD-Kaart fir de Fichier vum \u0022<xliff:g id="sender">%1$s</xliff:g>\u0022 ze späicheren</string>
+ <string name="bt_sm_2_2">Néideg Plaz: <xliff:g id="size">%1$s</xliff:g></string>
+ <string name="ErrorTooManyRequests">Et ginn ze vill Ufroe beaarbecht. Probéier méi spéit nees.</string>
+ <string name="status_pending">Iwwerdroung vu Fichieren nach net gestart.</string>
+ <string name="status_running">Iwwerdroung vu Fichiere leeft.</string>
+ <string name="status_success">Iwwerdroung vu Fichieren erfollegräich ofgeschloss.</string>
+ <string name="status_not_accept">Inhalt net ënnerstëtzt.</string>
+ <string name="status_forbidden">Iwwerdroung duerch den Zilapparat verbueden.</string>
+ <string name="status_canceled">Iwwerdroung duerch de Benotzer ofgebrach.</string>
+ <string name="status_file_error">Späicherproblem.</string>
+ <string name="status_no_sd_card" product="nosdcard">Keen USB-Späicher.</string>
+ <string name="status_no_sd_card" product="default">Keng SD-Kaart. Schléiss eng SD-Kaart un, fir déi transferéiert Fichieren ze späicheren.</string>
+ <string name="status_connection_error">Connectioun feelgeschloen.</string>
+ <string name="status_protocol_error">D\'Ufro kann net korrekt behandelt ginn.</string>
+ <string name="status_unknown_error">Onbekannte Feeler.</string>
+ <string name="btopp_live_folder">Bluetooth empfaangen</string>
+ <string name="download_success"> <xliff:g id="file_size">%1$s</xliff:g> vollstänneg empfaangen.</string>
+ <string name="upload_success"> <xliff:g id="file_size">%1$s</xliff:g> vollstänneg geschéckt.</string>
+ <string name="inbound_history_title">Erakommend Iwwerdroungen</string>
+ <string name="outbound_history_title">Erausgoend Iwwerdroungen</string>
+ <string name="no_transfers">Den Iwwerdroungshistorique ass eidel.</string>
+ <string name="transfer_clear_dlg_msg">All d\'Elementer ginn aus der Lëscht erausgeholl.</string>
+ <string name="outbound_noti_title">Bluetooth-Fräigab: Geschéckt Fichieren</string>
+ <string name="inbound_noti_title">Bluetooth-Fräigab: Emfaange Fichieren</string>
+ <plurals name="noti_caption_unsuccessful">
+ <item quantity="one"><xliff:g id="unsuccessful_number">%1$d</xliff:g> net erfollegräich.</item>
+ <item quantity="other"><xliff:g id="unsuccessful_number">%1$d</xliff:g> net erfollegräich.</item>
+ </plurals>
+ <plurals name="noti_caption_success">
+ <item quantity="one"><xliff:g id="successful_number">%1$d</xliff:g> erfollegräich, %2$s</item>
+ <item quantity="other"><xliff:g id="successful_number">%1$d</xliff:g> erfollegräich, %2$s</item>
+ </plurals>
+ <string name="transfer_menu_clear_all">Lëscht eidel maachen</string>
+ <string name="transfer_menu_open">Opmaachen</string>
+ <string name="transfer_menu_clear">Aus der Lëscht ewechhuelen</string>
+ <string name="transfer_clear_dlg_title">Eidel maachen</string>
+ <string name="bluetooth_map_settings_save">Späicheren</string>
+ <string name="bluetooth_map_settings_cancel">Ofbriechen</string>
+ <string name="bluetooth_map_settings_app_icon">App-Symbol</string>
</resources>
diff --git a/res/values-lb/strings_pbap.xml b/res/values-lb/strings_pbap.xml
index 46ecc28cd..ee3b27c16 100644
--- a/res/values-lb/strings_pbap.xml
+++ b/res/values-lb/strings_pbap.xml
@@ -1,17 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="pbap_session_key_dialog_title">Sëtzungsschlëssel fir %1$s aginn</string>
- <string name="pbap_session_key_dialog_header">Bluetooth-Sëtzungsschlëssel néideg</string>
- <string name="pbap_acceptance_timeout_message">Beim Acceptéiere vun der Connectioun mat %1$s ass d\'Zäit ofgelaf</string>
- <string name="pbap_authentication_timeout_message">Beim Agi vum Sëtzungsschlëssel mat %1$s ass d\'Zäit ofgelaf</string>
- <string name="auth_notif_ticker">Obex-Authentifizéierungs-Ufro</string>
- <!-- Notification title when a Bluetooth device wants to pair with us -->
- <string name="auth_notif_title">Sëtzungsschlëssel</string>
- <!-- Notification message when a Bluetooth device wants to pair with us -->
- <string name="auth_notif_message">Sëtzungsschlëssel fir %1$s aginn</string>
- <string name="defaultname">Fräispriechanlag</string>
- <string name="unknownName">Onbekannten Numm</string>
- <string name="localPhoneName">Mäin Numm</string>
- <string name="defaultnumber">000000</string>
+ <string name="pbap_session_key_dialog_title">Sëtzungsschlëssel fir %1$s aginn</string>
+ <string name="pbap_session_key_dialog_header">Bluetooth-Sëtzungsschlëssel néideg</string>
+ <string name="pbap_acceptance_timeout_message">Beim Acceptéiere vun der Connectioun mat %1$s ass d\'Zäit ofgelaf</string>
+ <string name="pbap_authentication_timeout_message">Beim Agi vum Sëtzungsschlëssel mat %1$s ass d\'Zäit ofgelaf</string>
+ <string name="auth_notif_ticker">Obex-Authentifizéierungs-Ufro</string>
+ <string name="auth_notif_title">Sëtzungsschlëssel</string>
+ <string name="auth_notif_message">Sëtzungsschlëssel fir %1$s aginn</string>
+ <string name="defaultname">Fräispriechanlag</string>
+ <string name="unknownName">Onbekannten Numm</string>
+ <string name="localPhoneName">Mäin Numm</string>
+ <string name="defaultnumber">000000</string>
</resources>
diff --git a/res/values-lb/strings_sap.xml b/res/values-lb/strings_sap.xml
deleted file mode 100644
index d242b5671..000000000
--- a/res/values-lb/strings_sap.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"></resources>
diff --git a/res/values-lo-rLA/cm_strings.xml b/res/values-lo-rLA/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-lo-rLA/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-lt/cm_strings.xml b/res/values-lt/cm_strings.xml
index 6881aa5a8..80caaa9df 100644
--- a/res/values-lt/cm_strings.xml
+++ b/res/values-lt/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Nepavyko išsiųsti failo, bandoma dar kartą\u2026</string>
+ <string name="upload_fail_waiting">Nepavyko išsiųsti failo, bandoma dar kartą\u2026</string>
</resources>
diff --git a/res/values-lv/cm_strings.xml b/res/values-lv/cm_strings.xml
index ee7147bf9..a0320082d 100644
--- a/res/values-lv/cm_strings.xml
+++ b/res/values-lv/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Neizdevās nosūtīt failu, atkārtoju\u2026</string>
+ <string name="upload_fail_waiting">Neizdevās nosūtīt failu, atkārtoju\u2026</string>
</resources>
diff --git a/res/values-mk-rMK/cm_strings.xml b/res/values-mk-rMK/cm_strings.xml
index 29c1061f9..253a35f6b 100644
--- a/res/values-mk-rMK/cm_strings.xml
+++ b/res/values-mk-rMK/cm_strings.xml
@@ -15,4 +15,6 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<resources></resources>
+<resources>
+ <string name="incoming_file_toast_msg">Дојдовен фајл од друг уред. Потврдете ако сакате да ја примите оваа датотека.</string>
+</resources>
diff --git a/res/values-ml-rIN/cm_strings.xml b/res/values-ml-rIN/cm_strings.xml
index a34e1d793..da555112e 100644
--- a/res/values-ml-rIN/cm_strings.xml
+++ b/res/values-ml-rIN/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ഫയൽ അയക്കാൻ കഴിയുന്നില്ല, വീണ്ടും ശ്രമിക്കുന്നു\u2026</string>
+ <string name="upload_fail_waiting">ഫയൽ അയക്കാൻ കഴിയുന്നില്ല, വീണ്ടും ശ്രമിക്കുന്നു\u2026</string>
</resources>
diff --git a/res/values-mn-rMN/cm_strings.xml b/res/values-mn-rMN/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-mn-rMN/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-mr-rIN/cm_strings.xml b/res/values-mr-rIN/cm_strings.xml
index 2dfdd293c..91b6b28e3 100644
--- a/res/values-mr-rIN/cm_strings.xml
+++ b/res/values-mr-rIN/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">फाइल पाठवण्यात अक्षम, पुन्हा प्रयत्न करत आहे\u2026</string>
+ <string name="upload_fail_waiting">फाइल पाठवण्यात अक्षम, पुन्हा प्रयत्न करत आहे\u2026</string>
</resources>
diff --git a/res/values-ms-rMY/cm_strings.xml b/res/values-ms-rMY/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-ms-rMY/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-my-rMM/cm_strings.xml b/res/values-my-rMM/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-my-rMM/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-nb/cm_strings.xml b/res/values-nb/cm_strings.xml
index db24eaa2c..5c6950cce 100644
--- a/res/values-nb/cm_strings.xml
+++ b/res/values-nb/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Innkommende fil fra en annen enhet. Bekreft at du vil motta denne filen.</string>
- <string name="upload_fail_waiting">Kan ikke sende filen, prøver på nytt\u2026</string>
+ <string name="incoming_file_toast_msg">Innkommende fil fra en annen enhet. Bekreft at du vil motta denne filen.</string>
+ <string name="upload_fail_waiting">Kan ikke sende filen, prøver på nytt\u2026</string>
</resources>
diff --git a/res/values-ne-rNP/cm_strings.xml b/res/values-ne-rNP/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-ne-rNP/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-nl/cm_strings.xml b/res/values-nl/cm_strings.xml
index 321a74163..5cb2a6607 100644
--- a/res/values-nl/cm_strings.xml
+++ b/res/values-nl/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Inkomend bestand vanaf een ander apparaat. Bevestig dat u dit bestand wilt ontvangen.</string>
- <string name="upload_fail_waiting">Kan bestand niet verzenden, opnieuw proberen\u2026</string>
+ <string name="incoming_file_toast_msg">Inkomend bestand vanaf een ander apparaat. Bevestig dat u dit bestand wilt ontvangen.</string>
+ <string name="upload_fail_waiting">Kan bestand niet verzenden, opnieuw proberen\u2026</string>
</resources>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 21fff3363..95e58fad3 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -91,7 +91,7 @@
<string name="status_pending" msgid="2503691772030877944">"Bestandsoverdracht nog niet gestart."</string>
<string name="status_running" msgid="6562808920311008696">"Bestandsoverdracht wordt uitgevoerd."</string>
<string name="status_success" msgid="239573225847565868">"Bestandsoverdracht is voltooid."</string>
- <string name="status_not_accept" msgid="1695082417193780738">"Inhoud wordt niet ondersteund."</string>
+ <string name="status_not_accept" msgid="1695082417193780738">"Content wordt niet ondersteund."</string>
<string name="status_forbidden" msgid="613956401054050725">"Overdracht wordt niet toegestaan door het doelapparaat."</string>
<string name="status_canceled" msgid="6664490318773098285">"Overdracht geannuleerd door gebruiker."</string>
<string name="status_file_error" msgid="3671917770630165299">"Probleem met opslagruimte."</string>
diff --git a/res/values-oc-rFR/strings.xml b/res/values-oc-rFR/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-oc-rFR/strings.xml
+++ b/res/values-oc-rFR/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-or-rIN/cm_strings.xml b/res/values-or-rIN/cm_strings.xml
index d093caade..83f01505b 100644
--- a/res/values-or-rIN/cm_strings.xml
+++ b/res/values-or-rIN/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ଫାଇଲ୍‍ ପଠାଇବା ପାଇଁ ଅଷମ ହେଉଛୁ, ପୁନର୍ବାର ଚେଷ୍ଟା କରୁଛି\u2026</string>
+ <string name="upload_fail_waiting">ଫାଇଲ୍‍ ପଠାଇବା ପାଇଁ ଅଷମ ହେଉଛୁ, ପୁନର୍ବାର ଚେଷ୍ଟା କରୁଛି\u2026</string>
</resources>
diff --git a/res/values-or-rIN/strings.xml b/res/values-or-rIN/strings.xml
deleted file mode 100644
index 1b6ab882a..000000000
--- a/res/values-or-rIN/strings.xml
+++ /dev/null
@@ -1,107 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!-- 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.
--->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!--
- This is the short description of a permission associated with the
- Bluetooth Share Manager. It is displayed as part of the description of
- any application that was granted that permission. This specific
- permission controls access to the Bluetooth Share Manager by
- applications that initiate Bluetooth share.
- -->
- <!--
- This is the long description of a permission associated with the
- Android Download Manager. It is displayed as part of the description
- of any application that was granted that permission. This specific
- permission controls access to the Download Manager by applications
- that initiate downloads.
- -->
- <!-- string showed on "Share picutre via" dialog -->
- <!-- string for "unknown device" -->
- <!-- string for "unknown" phone number" -->
- <!-- string for "the title of airplane mode error" -->
- <!-- string for "error message in airplane mode" -->
- <!-- Activate Bluetooth Confirmation Dialog -->
- <!--Title -->
- <string name="bt_enable_title"></string>
- <!--Line 1 -->
- <!--Line 2 -->
- <!-- Label for a cancel button. -->
- <!-- Label for a confirm button.-->
- <!-- Bluetooth File Transfer Acceptance Dialog -->
- <!--Title -->
- <!--content -->
- <!-- Label for a cancel button. -->
- <!-- Label for a confirm button.-->
- <!-- Label for timeout OK button.-->
- <!-- content for timeout-->
- <!-- Bluetooth File Transfer Acceptance Notification item -->
- <!-- Inbound File Transfer Progress Notification item -->
- <!-- label for the notification item of receiving file -->
- <!-- label for the notification item of received file -->
- <!-- label for the notification item of failed receiving file -->
- <!-- Outbound File Transfer Progress Notification item -->
- <!-- label for the notification item of sending file -->
- <!-- label for the notification item of sent file -->
- <!-- label for the notification item of sent file -status -->
- <!-- label for the notification item of failed sending file -->
- <!-- Bluetooth Download Progress Dialog -->
- <!--Title -->
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!--Line 4 -->
- <string name="download_line4"></string>
- <!-- Label for a cancel button. -->
- <!-- Label for a hide button.-->
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!-- Bluetooth failed Download Dialog -->
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!-- Label for ok button.-->
- <!-- Bluetooth Successful Download Dialog -->
- <!--Line 4 in "Bluetooth Download Progress Dialog" -->
- <!-- Label for a OK button.-->
- <!-- Bluetooth Upload Progress Dialog -->
- <!-- Bluetooth Successful Upload Progress Dialog -->
- <!--Line 4 -->
- <!-- Label for a confirm button.-->
- <!-- Bluetooth Failed Upload File Transfer Dialog -->
- <!-- Label for a try again button.-->
- <!-- Label for a cancel button.-->
- <!-- Bluetooth error dialog -->
- <!-- Bluetooth Enabling progress dialog -->
- <!-- Bluetooth Toast Message -->
- <!-- Bluetooth System Messages [CHAR LIMIT=NONE] -->
- <!-- Bluetooth System Messages -->
- <!-- Bluetooth Transfer Failure Reason -->
- <!-- Shown when USB storage cannot be found. [CHAR LIMIT=NONE] -->
- <!-- Bluetooth OPP Live Folder -->
- <!-- Bluetooth OPP Transfer History -->
- <!-- Do not translate. file name used for sharing. -->
- <!-- Used to run Bluetooth.apk in another process if needed -->
- <!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
-</resources>
diff --git a/res/values-or-rIN/strings_pbap.xml b/res/values-or-rIN/strings_pbap.xml
deleted file mode 100644
index 55f5b837a..000000000
--- a/res/values-or-rIN/strings_pbap.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!-- Notification title when a Bluetooth device wants to pair with us -->
- <!-- Notification message when a Bluetooth device wants to pair with us -->
-</resources>
diff --git a/res/values-or-rIN/strings_sap.xml b/res/values-or-rIN/strings_sap.xml
deleted file mode 100644
index d242b5671..000000000
--- a/res/values-or-rIN/strings_sap.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"></resources>
diff --git a/res/values-pa-rIN/cm_strings.xml b/res/values-pa-rIN/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-pa-rIN/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-pl/cm_strings.xml b/res/values-pl/cm_strings.xml
index 15276e71a..d021650c1 100644
--- a/res/values-pl/cm_strings.xml
+++ b/res/values-pl/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Przychodzący plik z innego urządzenia. Potwierdź, że chcesz otrzymać ten plik.</string>
- <string name="upload_fail_waiting">Nie można wysłać pliku, ponawianie\u2026</string>
+ <string name="incoming_file_toast_msg">Przychodzący plik z innego urządzenia. Potwierdź, że chcesz otrzymać ten plik.</string>
+ <string name="upload_fail_waiting">Nie można wysłać pliku, ponawianie\u2026</string>
</resources>
diff --git a/res/values-pt-rBR/cm_strings.xml b/res/values-pt-rBR/cm_strings.xml
index d67b8b941..4556c0501 100644
--- a/res/values-pt-rBR/cm_strings.xml
+++ b/res/values-pt-rBR/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Recebendo arquivo de outro dispositivo. Confirme que você deseja receber este arquivo.</string>
- <string name="upload_fail_waiting">Impossível enviar arquivo, tentando novamente\u2026</string>
+ <string name="incoming_file_toast_msg">Recebendo arquivo de outro dispositivo. Confirme que você deseja receber este arquivo.</string>
+ <string name="upload_fail_waiting">Impossível enviar arquivo, tentando novamente\u2026</string>
</resources>
diff --git a/res/values-pt-rPT/cm_strings.xml b/res/values-pt-rPT/cm_strings.xml
index f32162308..4700a5be2 100644
--- a/res/values-pt-rPT/cm_strings.xml
+++ b/res/values-pt-rPT/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">A receber ficheiro de outro dispositivo. Confirme que quer receber este ficheiro.</string>
- <string name="upload_fail_waiting">Não foi possível enviar o ficheiro. A tentar novamente\u2026</string>
+ <string name="incoming_file_toast_msg">A receber ficheiro de outro dispositivo. Confirme que quer receber este ficheiro.</string>
+ <string name="upload_fail_waiting">Não foi possível enviar o ficheiro. A tentar novamente\u2026</string>
</resources>
diff --git a/res/values-as-rIN/strings.xml b/res/values-rm-rCH/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-as-rIN/strings.xml
+++ b/res/values-rm-rCH/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-en-rPT/strings_pbap.xml b/res/values-rm-rCH/strings_pbap.xml
index 55f5b837a..55f5b837a 100644
--- a/res/values-en-rPT/strings_pbap.xml
+++ b/res/values-rm-rCH/strings_pbap.xml
diff --git a/res/values-en-rPT/strings_sap.xml b/res/values-rm-rCH/strings_sap.xml
index d242b5671..d242b5671 100644
--- a/res/values-en-rPT/strings_sap.xml
+++ b/res/values-rm-rCH/strings_sap.xml
diff --git a/res/values-rm/cm_strings.xml b/res/values-rm/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-rm/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-ro/cm_strings.xml b/res/values-ro/cm_strings.xml
index b30416bde..f172f5c35 100644
--- a/res/values-ro/cm_strings.xml
+++ b/res/values-ro/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Imposibil de transmis fișierul, se reîncearcă\u2026</string>
+ <string name="incoming_file_toast_msg">Un fişier de la alt dispozitiv se află în curs de primire. Confirmaţi dacă doriţi primirea acestuia.</string>
+ <string name="upload_fail_waiting">Imposibil de transmis fișierul, se reîncearcă\u2026</string>
</resources>
diff --git a/res/values-ru/cm_strings.xml b/res/values-ru/cm_strings.xml
index 4948da05b..651d8ff0b 100644
--- a/res/values-ru/cm_strings.xml
+++ b/res/values-ru/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Входящий файл с другого устройства. Подтвердите, что вы хотите получить этот файл.</string>
- <string name="upload_fail_waiting">Не удалось отправить файл. Повторная попытка\u2026</string>
+ <string name="incoming_file_toast_msg">Входящий файл с другого устройства. Подтвердите, что вы хотите получить этот файл.</string>
+ <string name="upload_fail_waiting">Не удалось отправить файл. Повторная попытка\u2026</string>
</resources>
diff --git a/res/values-es-rMX/cm_strings.xml b/res/values-sc-rIT/cm_strings.xml
index 29c1061f9..5dd2bc886 100644
--- a/res/values-es-rMX/cm_strings.xml
+++ b/res/values-sc-rIT/cm_strings.xml
@@ -15,4 +15,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<resources></resources>
+<resources>
+ <string name="incoming_file_toast_msg">B\'est unu documentu in arrivu dae un\'àteru dispositivu. Cunfirma chi lu cheres retzire.</string>
+ <string name="upload_fail_waiting">Impossìbile imbiare su documentu, torrende a proare\u2026</string>
+</resources>
diff --git a/res/values-si-rLK/cm_strings.xml b/res/values-si-rLK/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-si-rLK/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-sk/cm_strings.xml b/res/values-sk/cm_strings.xml
index cdf71ed08..31b29f46b 100644
--- a/res/values-sk/cm_strings.xml
+++ b/res/values-sk/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Prichádzajúci súbor z iného zariadenia. Potvrďte, či chcete prijať tento súbor.</string>
- <string name="upload_fail_waiting">Nepodarilo sa poslať súbor, opakovanie\u2026</string>
+ <string name="incoming_file_toast_msg">Prichádzajúci súbor z iného zariadenia. Potvrďte, či chcete prijať tento súbor.</string>
+ <string name="upload_fail_waiting">Nepodarilo sa poslať súbor, opakovanie\u2026</string>
</resources>
diff --git a/res/values-sl/cm_strings.xml b/res/values-sl/cm_strings.xml
index ba5cb7b85..f1f43502f 100644
--- a/res/values-sl/cm_strings.xml
+++ b/res/values-sl/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">Prihaja datoteka iz druge naprave. Potrdite, če jo želite prejeti.</string>
- <string name="upload_fail_waiting">Datoteke ni mogoče poslati, ponovno poskušanje \u2026</string>
+ <string name="incoming_file_toast_msg">Prihaja datoteka iz druge naprave. Potrdite, če jo želite prejeti.</string>
+ <string name="upload_fail_waiting">Datoteke ni mogoče poslati, ponovno poskušanje \u2026</string>
</resources>
diff --git a/res/values-sq-rAL/cm_strings.xml b/res/values-sq-rAL/cm_strings.xml
index 29c1061f9..289cd7660 100644
--- a/res/values-sq-rAL/cm_strings.xml
+++ b/res/values-sq-rAL/cm_strings.xml
@@ -15,4 +15,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<resources></resources>
+<resources>
+ <string name="incoming_file_toast_msg">Është duke ju ardhur një skedar nga një pajisje tjetër. Jep konfirmim që dëshiron ta marrësh këtë skedar.</string>
+ <string name="upload_fail_waiting">Dërgimi i dokumentit nuk është i mundur! Duke provuar përsëri\u2026</string>
+</resources>
diff --git a/res/values-en-rPT/cm_strings.xml b/res/values-sr-rCS/cm_strings.xml
index 29c1061f9..29c1061f9 100644
--- a/res/values-en-rPT/cm_strings.xml
+++ b/res/values-sr-rCS/cm_strings.xml
diff --git a/res/values-es-rMX/strings.xml b/res/values-sr-rCS/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-es-rMX/strings.xml
+++ b/res/values-sr-rCS/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-eo/strings_pbap.xml b/res/values-sr-rCS/strings_pbap.xml
index 55f5b837a..55f5b837a 100644
--- a/res/values-eo/strings_pbap.xml
+++ b/res/values-sr-rCS/strings_pbap.xml
diff --git a/res/values-eo/strings_sap.xml b/res/values-sr-rCS/strings_sap.xml
index d242b5671..d242b5671 100644
--- a/res/values-eo/strings_sap.xml
+++ b/res/values-sr-rCS/strings_sap.xml
diff --git a/res/values-sr/cm_strings.xml b/res/values-sr/cm_strings.xml
index 0ae5bba74..8c2f5fbe9 100644
--- a/res/values-sr/cm_strings.xml
+++ b/res/values-sr/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Није могуће послати датотеку, понављам\u2026</string>
+ <string name="incoming_file_toast_msg">Датотека се шаље са другог уређаја. Потврдите ако желите да је примите.</string>
+ <string name="upload_fail_waiting">Не могу да пошаљем датотеку. Покушавам поново\u2026</string>
</resources>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 03fed95d3..7228cfe2c 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -69,7 +69,7 @@
<string name="upload_succ_ok" msgid="7705428476405478828">"Потврди"</string>
<string name="upload_fail_line1" msgid="7899394672421491701">"Датотека није послата на <xliff:g id="RECIPIENT">%1$s</xliff:g>."</string>
<string name="upload_fail_line1_2" msgid="2108129204050841798">"Датотека: <xliff:g id="FILE">%1$s</xliff:g>"</string>
- <string name="upload_fail_ok" msgid="5807702461606714296">"Покушај поново"</string>
+ <string name="upload_fail_ok" msgid="5807702461606714296">"Пробај поново"</string>
<string name="upload_fail_cancel" msgid="9118496285835687125">"Затвори"</string>
<string name="bt_error_btn_ok" msgid="5965151173011534240">"Потврди"</string>
<string name="unknown_file" msgid="6092727753965095366">"Непозната датотека"</string>
@@ -87,7 +87,7 @@
<string name="bt_sm_2_1" product="nosdcard" msgid="352165168004521000">"Нема довољно простора у USB меморији да би се сачувала датотека пошиљаоца „<xliff:g id="SENDER">%1$s</xliff:g>“"</string>
<string name="bt_sm_2_1" product="default" msgid="1989018443456803630">"Нема довољно простора на SD картици да би се сачувала датотека пошиљаоца „<xliff:g id="SENDER">%1$s</xliff:g>“"</string>
<string name="bt_sm_2_2" msgid="2965243265852680543">"Потребан простор: <xliff:g id="SIZE">%1$s</xliff:g>"</string>
- <string name="ErrorTooManyRequests" msgid="8578277541472944529">"Превише захтева се обрађује. Покушајте поново касније."</string>
+ <string name="ErrorTooManyRequests" msgid="8578277541472944529">"Превише захтева се обрађује. Пробајте поново касније."</string>
<string name="status_pending" msgid="2503691772030877944">"Пренос датотеке још није почео."</string>
<string name="status_running" msgid="6562808920311008696">"Пренос датотеке је у току."</string>
<string name="status_success" msgid="239573225847565868">"Пренос датотеке је довршен."</string>
diff --git a/res/values-sv/cm_strings.xml b/res/values-sv/cm_strings.xml
index 016430116..c5af0f375 100644
--- a/res/values-sv/cm_strings.xml
+++ b/res/values-sv/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Kunde inte skicka filen, försöker igen\u2026</string>
+ <string name="upload_fail_waiting">Kunde inte skicka filen, försöker igen\u2026</string>
</resources>
diff --git a/res/values-sw/cm_strings.xml b/res/values-sw/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-sw/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-ta-rIN/cm_strings.xml b/res/values-ta-rIN/cm_strings.xml
index 65bc2ef0f..b7c055b64 100644
--- a/res/values-ta-rIN/cm_strings.xml
+++ b/res/values-ta-rIN/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">கோப்பை அனுப்ப முடியவில்லை, மறுமுயற்சிசெய்கிறது\u2026</string>
+ <string name="upload_fail_waiting">கோப்பை அனுப்ப முடியவில்லை, மறுமுயற்சிசெய்கிறது\u2026</string>
</resources>
diff --git a/res/values-te-rIN/cm_strings.xml b/res/values-te-rIN/cm_strings.xml
index 0f2045231..20028f868 100644
--- a/res/values-te-rIN/cm_strings.xml
+++ b/res/values-te-rIN/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ఫైలును పంపడం కుదరలేదు, తిరిగి ప్రయత్నించబడుతోంది\u2026</string>
+ <string name="upload_fail_waiting">ఫైలును పంపడం కుదరలేదు, తిరిగి ప్రయత్నించబడుతోంది\u2026</string>
</resources>
diff --git a/res/values-th/cm_strings.xml b/res/values-th/cm_strings.xml
index 02cb44a81..7bbac5974 100644
--- a/res/values-th/cm_strings.xml
+++ b/res/values-th/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ไม่สามารถส่งไฟล์ได้ กำลังลองอีกครั้ง\u2026</string>
+ <string name="incoming_file_toast_msg">มีไฟล์ส่งมาจากอุปกรณ์อื่น ยืนยันต้องการรับไฟล์นี้</string>
+ <string name="upload_fail_waiting">ไม่สามารถส่งไฟล์ได้ กำลังลองอีกครั้ง\u2026</string>
</resources>
diff --git a/res/values-tr/cm_strings.xml b/res/values-tr/cm_strings.xml
index e6f18af5f..2765cb754 100644
--- a/res/values-tr/cm_strings.xml
+++ b/res/values-tr/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Dosya gönderilemedi, yeniden deneniyor\u2026</string>
+ <string name="incoming_file_toast_msg">Başka bir cihazdan gelen dosya. Bu dosyayı almak istediğinizi onaylayın.</string>
+ <string name="upload_fail_waiting">Dosya gönderilemedi, yeniden deneniyor\u2026</string>
</resources>
diff --git a/res/values-ug/cm_strings.xml b/res/values-ug/cm_strings.xml
index 9d1b2ce1b..2c623b685 100644
--- a/res/values-ug/cm_strings.xml
+++ b/res/values-ug/cm_strings.xml
@@ -16,5 +16,5 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">ھۆججەتنى يوللىيالمىدى، قايتا سىناۋاتىدۇ\u2026</string>
+ <string name="upload_fail_waiting">ھۆججەتنى يوللىيالمىدى، قايتا سىناۋاتىدۇ\u2026</string>
</resources>
diff --git a/res/values-ug/strings.xml b/res/values-ug/strings.xml
index 455b59792..cdeb8a843 100644
--- a/res/values-ug/strings.xml
+++ b/res/values-ug/strings.xml
@@ -15,183 +15,94 @@
limitations under the License.
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!--
- This is the short description of a permission associated with the
- Bluetooth Share Manager. It is displayed as part of the description of
- any application that was granted that permission. This specific
- permission controls access to the Bluetooth Share Manager by
- applications that initiate Bluetooth share.
- -->
- <string name="permlab_bluetoothShareManager">چۈشۈرۈش باشقۇرغۇچنى زىيارەت.</string>
- <!--
- This is the long description of a permission associated with the
- Android Download Manager. It is displayed as part of the description
- of any application that was granted that permission. This specific
- permission controls access to the Download Manager by applications
- that initiate downloads.
- -->
- <string name="permdesc_bluetoothShareManager">ئەپنىڭ كۆكچىش ھەمبەھىر باشقۇرغۇچنى زىيارەت قىلىشقا يول قويىدۇ ھەمدە شۇ باشقۇرغۇچنى ئىشلىتىپ ھۆججەت يوللايدۇ.</string>
- <string name="permlab_bluetoothWhitelist">ئاق تىزىمدىكى كۆكچىش ئۈسكۈنە زىيارىتى.</string>
- <string name="permdesc_bluetoothWhitelist">كۆكچىش ئۈسكۈنىسىنى زىيارەت ھوقۇقى ئاق تىزىملىكىگە كىرگۈزۈشكە يول قويىدۇ، شۇ ئارقىلىق ئىشلەتكۈچىنىڭ جەزملىشى بولمىغان ئەھۋالدا ھۆججەتنى بۇ ئۈسكۈنىگە يوللايدۇ.</string>
- <!-- string showed on "Share picutre via" dialog -->
- <string name="bt_share_picker_label">كۆكچىش</string>
- <!-- string for "unknown device" -->
- <string name="unknown_device">يوچۇن ئۈسكۈنە</string>
- <!-- string for "unknown" phone number" -->
- <string name="unknownNumber">يوچۇن</string>
- <!-- string for "the title of airplane mode error" -->
- <string name="airplane_error_title">ئايروپىلان ھالىتى</string>
- <!-- string for "error message in airplane mode" -->
- <string name="airplane_error_msg">ئايروپىلان ھالىتىدە كۆكچىش ئىشلىتەلمەيسىز.</string>
- <!-- Activate Bluetooth Confirmation Dialog -->
- <!--Title -->
- <string name="bt_enable_title"></string>
- <!--Line 1 -->
- <string name="bt_enable_line1">كۆكچىش مۇلازىمىتى ئىشلىتىشتە ئالدى بىلەن كۆكچىشنى ئېچىشىڭىز لازىم.</string>
- <!--Line 2 -->
- <string name="bt_enable_line2">ھازىر كۆكچىشنى ئاچامدۇ؟</string>
- <!-- Label for a cancel button. -->
- <string name="bt_enable_cancel">ۋاز كەچ</string>
- <!-- Label for a confirm button.-->
- <string name="bt_enable_ok">ئاچ</string>
- <!-- Bluetooth File Transfer Acceptance Dialog -->
- <!--Title -->
- <string name="incoming_file_confirm_title">ھۆججەت يوللاش</string>
- <!--content -->
- <!-- Label for a cancel button. -->
- <string name="incoming_file_confirm_cancel">قوشۇلما</string>
- <!-- Label for a confirm button.-->
- <string name="incoming_file_confirm_ok">قوشۇل</string>
- <!-- Label for timeout OK button.-->
- <string name="incoming_file_confirm_timeout_ok">جەزملە</string>
- <!-- content for timeout-->
- <string name="incoming_file_confirm_timeout_content">\"<xliff:g id="SENDER">%1$s</xliff:g>\" دىن كەلگەن ھۆججەتنى قوبۇل قىلىۋاتقاندا ۋاقىت ھالقىدى</string>
- <!-- Bluetooth File Transfer Acceptance Notification item -->
- <!-- Inbound File Transfer Progress Notification item -->
- <!-- label for the notification item of receiving file -->
- <string name="notification_receiving">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> قوبۇللاۋاتىدۇ</string>
- <!-- label for the notification item of received file -->
- <string name="notification_received">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> قوبۇللىدى</string>
- <!-- label for the notification item of failed receiving file -->
- <string name="notification_received_fail">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> ھۆججەتنى قوبۇللىمىدى</string>
- <!-- Outbound File Transfer Progress Notification item -->
- <!-- label for the notification item of sending file -->
- <string name="notification_sending">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> يوللاۋاتىدۇ</string>
- <!-- label for the notification item of sent file -->
- <string name="notification_sent">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> يوللاندى</string>
- <!-- label for the notification item of sent file -status -->
- <string name="notification_sent_complete">100% تامام</string>
- <!-- label for the notification item of failed sending file -->
- <string name="notification_sent_fail">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> ھۆججەت يوللانمىدى</string>
- <!-- Bluetooth Download Progress Dialog -->
- <!--Title -->
- <string name="download_title">ھۆججەت يوللاش</string>
- <!--Line 1 -->
- <string name="download_line1">ئورنى: \"<xliff:g id="SENDER">%1$s</xliff:g></string>
- <!--Line 2 -->
- <string name="download_line2">ھۆججەت: <xliff:g id="FILE">%1$s</xliff:g></string>
- <!--Line 3 -->
- <string name="download_line3">ھۆججەت چوڭلۇقى: <xliff:g id="SIZE">%1$s</xliff:g></string>
- <!--Line 4 -->
- <string name="download_line4"></string>
- <string name="download_line5">ھۆججەت قوبۇللاۋاتىدۇ…</string>
- <!-- Label for a cancel button. -->
- <string name="download_cancel">توختا</string>
- <!-- Label for a hide button.-->
- <string name="download_ok">يوشۇر</string>
- <!--Line 1 -->
- <!--Line 2 -->
- <!--Line 3 -->
- <!-- Bluetooth failed Download Dialog -->
- <!--Line 1 -->
- <string name="download_fail_line1">ھۆججەت قوبۇللانمىدى</string>
- <!--Line 2 -->
- <string name="download_fail_line2">ھۆججەت: <xliff:g id="FILE">%1$s</xliff:g></string>
- <!--Line 3 -->
- <string name="download_fail_line3">سەۋەب: <xliff:g id="REASON">%1$s</xliff:g></string>
- <!-- Label for ok button.-->
- <string name="download_fail_ok">جەزملە</string>
- <!-- Bluetooth Successful Download Dialog -->
- <!--Line 4 in "Bluetooth Download Progress Dialog" -->
- <string name="download_succ_line5">ھۆججەت قوبۇللاندى</string>
- <!-- Label for a OK button.-->
- <string name="download_succ_ok">ئاچ</string>
- <!-- Bluetooth Upload Progress Dialog -->
- <string name="upload_line1">ئورنى: \"<xliff:g id="RECIPIENT">%1$s</xliff:g>\"</string>
- <string name="upload_line3">ھۆججەت تىپى: <xliff:g id="TYPE">%1$s</xliff:g> (<xliff:g id="SIZE">%2$s</xliff:g>)</string>
- <string name="upload_line5">ھۆججەت يوللاۋاتىدۇ…</string>
- <!-- Bluetooth Successful Upload Progress Dialog -->
- <!--Line 4 -->
- <string name="upload_succ_line5">ھۆججەت يوللاندى</string>
- <!-- Label for a confirm button.-->
- <string name="upload_succ_ok">جەزملە</string>
- <!-- Bluetooth Failed Upload File Transfer Dialog -->
- <string name="upload_fail_line1">بۇ ھۆججەتنى \"<xliff:g id="RECIPIENT">%1$s</xliff:g>\" غا يوللىيالمىدى.</string>
- <string name="upload_fail_line1_2">ھۆججەت: <xliff:g id="FILE">%1$s</xliff:g></string>
- <!-- Label for a try again button.-->
- <string name="upload_fail_ok">قايتا سىنا</string>
- <!-- Label for a cancel button.-->
- <string name="upload_fail_cancel">ياپ</string>
- <!-- Bluetooth error dialog -->
- <string name="bt_error_btn_ok">جەزملە</string>
- <string name="unknown_file">يوچۇن ھۆججەت</string>
- <string name="unknown_file_desc">بۇ تىپتىكى ھۆججەتنى بىر تەرەپ قىلىدىغان ئەپ تېپىلمىدى. \n</string>
- <string name="not_exist_file"> ھۆججەت يوق</string>
- <string name="not_exist_file_desc">ھۆججەت مەۋجۇت ئەمەس. \n</string>
- <!-- Bluetooth Enabling progress dialog -->
- <string name="enabling_progress_title">سەل كۈتۈڭ…</string>
- <string name="enabling_progress_content">كۆكچىشنى ئېچىۋاتىدۇ…</string>
- <!-- Bluetooth Toast Message -->
- <string name="bt_toast_1">ھۆججەت قوبۇل قىلماقچى. ئۇقتۇرۇش تاختىسىدىن جەريانىنى تەكشۈرۈڭ.</string>
- <string name="bt_toast_2">بۇ ھۆججەتنى قوبۇل قىلالمايدۇ.</string>
- <string name="bt_toast_3">\"<xliff:g id="SENDER">%1$s</xliff:g>\" دىن ھۆججەت قوبۇللاشنى توختاتتى</string>
- <string name="bt_toast_4">\"<xliff:g id="RECIPIENT">%1$s</xliff:g>\" غا ھۆججەت يوللاۋاتىدۇ</string>
- <string name="bt_toast_5"><xliff:g id="NUMBER">%1$s</xliff:g> ھۆججەتنى "<xliff:g id="RECIPIENT">%2$s</xliff:g>\" غا يوللاۋاتىدۇ</string>
- <string name="bt_toast_6">\"<xliff:g id="RECIPIENT">%1$s</xliff:g>\" غا ھۆججەت يوللاش توختىدى</string>
- <!-- Bluetooth System Messages [CHAR LIMIT=NONE] -->
- <string name="bt_sm_2_1" product="nosdcard">بۇ USB ساقلىغۇچتا \"<xliff:g id="SENDER">%1$s</xliff:g>\" دىن كەلگەن ھۆججەتنى ساقلاشقا يېتەرلىك بوشلۇق يوق</string>
- <!-- Bluetooth System Messages -->
- <string name="bt_sm_2_1" product="default">SD كارتادا \"<xliff:g id="SENDER">%1$s</xliff:g>\" دىن كەلگەن ھۆججەتنى ساقلاشقا يېتەرلىك بوشلۇق يوق</string>
- <string name="bt_sm_2_2">كېتەرلىك بوشلۇق: <xliff:g id="SIZE">%1$s</xliff:g></string>
- <string name="ErrorTooManyRequests">بىر تەرەپ قىلىۋاتقان ئىلتىماس بەك كۆپ. سەل تۇرۇپ قايتا سىناڭ.</string>
- <!-- Bluetooth Transfer Failure Reason -->
- <string name="status_pending">ھۆججەت يوللاش باشلانمىدى</string>
- <string name="status_running">ھۆججەت يوللىنىۋاتىدۇ.</string>
- <string name="status_success">ھۆججەت يوللاش مۇۋەپپەقىيەتلىك تاماملاندى.</string>
- <string name="status_not_accept">مەزمۇننى قوللىمايدۇ.</string>
- <string name="status_forbidden">نىشان ئۈسكۈنە يوللاشنى چەكلەيدۇ.</string>
- <string name="status_canceled">ئىشلەتكۈچى يوللاشتىن ۋاز كەچتى.</string>
- <string name="status_file_error">ساقلاش مەسىلىسى</string>
- <!-- Shown when USB storage cannot be found. [CHAR LIMIT=NONE] -->
- <string name="status_no_sd_card" product="nosdcard">USB ساقلىغۇچ يوق.</string>
- <string name="status_no_sd_card" product="default">SD كارتا يوق. يوللىغان ھۆججەتنى ساقلايدىغان SD كارتىنى قىستۇرۇڭ.</string>
- <string name="status_connection_error">مۇۋەپپەقىيەتلىك باغلىنالمىدى.</string>
- <string name="status_protocol_error">ئىلتىماسنى توغرا بىر تەرەپ قىلالمايدۇ.</string>
- <string name="status_unknown_error">يوچۇن خاتالىق.</string>
- <!-- Bluetooth OPP Live Folder -->
- <string name="btopp_live_folder">كۆكچىش قوبۇللىدى</string>
- <!-- Bluetooth OPP Transfer History -->
- <string name="download_success"><xliff:g id="FILE_SIZE">%1$s</xliff:g> قوبۇللاش تاماملاندى.</string>
- <string name="upload_success"><xliff:g id="FILE_SIZE">%1$s</xliff:g> يوللاش تاماملاندى.</string>
- <string name="inbound_history_title">يوللاشنىڭ كىرگەن ئىزلىرى</string>
- <string name="outbound_history_title">يوللاشنىڭ چىققان ئىزلىرى</string>
- <string name="no_transfers">توركۆرگۈ تارىخ خاتىرىسى بوش.</string>
- <string name="transfer_clear_dlg_msg">ھەممە تۈرلەر تىزىملىكتىن ئۆچۈرۈلىدۇ.</string>
- <string name="outbound_noti_title">كۆكچىش ھەمبەھىر: يوللانغان ھۆججەتلەر</string>
- <string name="inbound_noti_title">كۆكچىش ھەمبەھىر: قوبۇللىغان ھۆججەتلەر</string>
- <string name="transfer_menu_clear_all">تىزىملىكنى تازىلا</string>
- <string name="transfer_menu_open">ئاچ</string>
- <string name="transfer_menu_clear">تىزىملىكتىن تازىلا</string>
- <string name="transfer_clear_dlg_title">تازىلا</string>
- <!-- Do not translate. file name used for sharing. -->
- <!-- Used to run Bluetooth.apk in another process if needed -->
- <!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
- <string name="bluetooth_map_settings_cancel">ۋاز كەچ</string>
+ <string name="permlab_bluetoothShareManager">چۈشۈرۈش باشقۇرغۇچنى زىيارەت.</string>
+ <string name="permdesc_bluetoothShareManager">ئەپنىڭ كۆكچىش ھەمبەھىر باشقۇرغۇچنى زىيارەت قىلىشقا يول قويىدۇ ھەمدە شۇ باشقۇرغۇچنى ئىشلىتىپ ھۆججەت يوللايدۇ.</string>
+ <string name="permlab_bluetoothWhitelist">ئاق تىزىمدىكى كۆكچىش ئۈسكۈنە زىيارىتى.</string>
+ <string name="permdesc_bluetoothWhitelist">كۆكچىش ئۈسكۈنىسىنى زىيارەت ھوقۇقى ئاق تىزىملىكىگە كىرگۈزۈشكە يول قويىدۇ، شۇ ئارقىلىق ئىشلەتكۈچىنىڭ جەزملىشى بولمىغان ئەھۋالدا ھۆججەتنى بۇ ئۈسكۈنىگە يوللايدۇ.</string>
+ <string name="bt_share_picker_label">كۆكچىش</string>
+ <string name="unknown_device">يوچۇن ئۈسكۈنە</string>
+ <string name="unknownNumber">يوچۇن</string>
+ <string name="airplane_error_title">ئايروپىلان ھالىتى</string>
+ <string name="airplane_error_msg">ئايروپىلان ھالىتىدە كۆكچىش ئىشلىتەلمەيسىز.</string>
+ <string name="bt_enable_line1">كۆكچىش مۇلازىمىتى ئىشلىتىشتە ئالدى بىلەن كۆكچىشنى ئېچىشىڭىز لازىم.</string>
+ <string name="bt_enable_line2">ھازىر كۆكچىشنى ئاچامدۇ؟</string>
+ <string name="bt_enable_cancel">ۋاز كەچ</string>
+ <string name="bt_enable_ok">ئاچ</string>
+ <string name="incoming_file_confirm_title">ھۆججەت يوللاش</string>
+ <string name="incoming_file_confirm_cancel">قوشۇلما</string>
+ <string name="incoming_file_confirm_ok">قوشۇل</string>
+ <string name="incoming_file_confirm_timeout_ok">جەزملە</string>
+ <string name="incoming_file_confirm_timeout_content">\"<xliff:g id="SENDER">%1$s</xliff:g>\" دىن كەلگەن ھۆججەتنى قوبۇل قىلىۋاتقاندا ۋاقىت ھالقىدى</string>
+ <string name="notification_receiving">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> قوبۇللاۋاتىدۇ</string>
+ <string name="notification_received">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> قوبۇللىدى</string>
+ <string name="notification_received_fail">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> ھۆججەتنى قوبۇللىمىدى</string>
+ <string name="notification_sending">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> يوللاۋاتىدۇ</string>
+ <string name="notification_sent">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> يوللاندى</string>
+ <string name="notification_sent_complete">100% تامام</string>
+ <string name="notification_sent_fail">كۆكچىش ھەمبەھىر: <xliff:g id="FILE">%1$s</xliff:g> ھۆججەت يوللانمىدى</string>
+ <string name="download_title">ھۆججەت يوللاش</string>
+ <string name="download_line1">ئورنى: \"<xliff:g id="SENDER">%1$s</xliff:g></string>
+ <string name="download_line2">ھۆججەت: <xliff:g id="FILE">%1$s</xliff:g></string>
+ <string name="download_line3">ھۆججەت چوڭلۇقى: <xliff:g id="SIZE">%1$s</xliff:g></string>
+ <string name="download_line5">ھۆججەت قوبۇللاۋاتىدۇ…</string>
+ <string name="download_cancel">توختا</string>
+ <string name="download_ok">يوشۇر</string>
+ <string name="download_fail_line1">ھۆججەت قوبۇللانمىدى</string>
+ <string name="download_fail_line2">ھۆججەت: <xliff:g id="FILE">%1$s</xliff:g></string>
+ <string name="download_fail_line3">سەۋەب: <xliff:g id="REASON">%1$s</xliff:g></string>
+ <string name="download_fail_ok">جەزملە</string>
+ <string name="download_succ_line5">ھۆججەت قوبۇللاندى</string>
+ <string name="download_succ_ok">ئاچ</string>
+ <string name="upload_line1">ئورنى: \"<xliff:g id="RECIPIENT">%1$s</xliff:g>\"</string>
+ <string name="upload_line3">ھۆججەت تىپى: <xliff:g id="TYPE">%1$s</xliff:g> (<xliff:g id="SIZE">%2$s</xliff:g>)</string>
+ <string name="upload_line5">ھۆججەت يوللاۋاتىدۇ…</string>
+ <string name="upload_succ_line5">ھۆججەت يوللاندى</string>
+ <string name="upload_succ_ok">جەزملە</string>
+ <string name="upload_fail_line1">بۇ ھۆججەتنى \"<xliff:g id="RECIPIENT">%1$s</xliff:g>\" غا يوللىيالمىدى.</string>
+ <string name="upload_fail_line1_2">ھۆججەت: <xliff:g id="FILE">%1$s</xliff:g></string>
+ <string name="upload_fail_ok">قايتا سىنا</string>
+ <string name="upload_fail_cancel">ياپ</string>
+ <string name="bt_error_btn_ok">جەزملە</string>
+ <string name="unknown_file">يوچۇن ھۆججەت</string>
+ <string name="unknown_file_desc">بۇ تىپتىكى ھۆججەتنى بىر تەرەپ قىلىدىغان ئەپ تېپىلمىدى. \n</string>
+ <string name="not_exist_file"> ھۆججەت يوق</string>
+ <string name="not_exist_file_desc">ھۆججەت مەۋجۇت ئەمەس. \n</string>
+ <string name="enabling_progress_title">سەل كۈتۈڭ…</string>
+ <string name="enabling_progress_content">كۆكچىشنى ئېچىۋاتىدۇ…</string>
+ <string name="bt_toast_1">ھۆججەت قوبۇل قىلماقچى. ئۇقتۇرۇش تاختىسىدىن جەريانىنى تەكشۈرۈڭ.</string>
+ <string name="bt_toast_2">بۇ ھۆججەتنى قوبۇل قىلالمايدۇ.</string>
+ <string name="bt_toast_3">\"<xliff:g id="SENDER">%1$s</xliff:g>\" دىن ھۆججەت قوبۇللاشنى توختاتتى</string>
+ <string name="bt_toast_4">\"<xliff:g id="RECIPIENT">%1$s</xliff:g>\" غا ھۆججەت يوللاۋاتىدۇ</string>
+ <string name="bt_toast_5"><xliff:g id="NUMBER">%1$s</xliff:g> ھۆججەتنى "<xliff:g id="RECIPIENT">%2$s</xliff:g>\" غا يوللاۋاتىدۇ</string>
+ <string name="bt_toast_6">\"<xliff:g id="RECIPIENT">%1$s</xliff:g>\" غا ھۆججەت يوللاش توختىدى</string>
+ <string name="bt_sm_2_1" product="nosdcard">بۇ USB ساقلىغۇچتا \"<xliff:g id="SENDER">%1$s</xliff:g>\" دىن كەلگەن ھۆججەتنى ساقلاشقا يېتەرلىك بوشلۇق يوق</string>
+ <string name="bt_sm_2_1" product="default">SD كارتادا \"<xliff:g id="SENDER">%1$s</xliff:g>\" دىن كەلگەن ھۆججەتنى ساقلاشقا يېتەرلىك بوشلۇق يوق</string>
+ <string name="bt_sm_2_2">كېتەرلىك بوشلۇق: <xliff:g id="SIZE">%1$s</xliff:g></string>
+ <string name="ErrorTooManyRequests">بىر تەرەپ قىلىۋاتقان ئىلتىماس بەك كۆپ. سەل تۇرۇپ قايتا سىناڭ.</string>
+ <string name="status_pending">ھۆججەت يوللاش باشلانمىدى</string>
+ <string name="status_running">ھۆججەت يوللىنىۋاتىدۇ.</string>
+ <string name="status_success">ھۆججەت يوللاش مۇۋەپپەقىيەتلىك تاماملاندى.</string>
+ <string name="status_not_accept">مەزمۇننى قوللىمايدۇ.</string>
+ <string name="status_forbidden">نىشان ئۈسكۈنە يوللاشنى چەكلەيدۇ.</string>
+ <string name="status_canceled">ئىشلەتكۈچى يوللاشتىن ۋاز كەچتى.</string>
+ <string name="status_file_error">ساقلاش مەسىلىسى</string>
+ <string name="status_no_sd_card" product="nosdcard">USB ساقلىغۇچ يوق.</string>
+ <string name="status_no_sd_card" product="default">SD كارتا يوق. يوللىغان ھۆججەتنى ساقلايدىغان SD كارتىنى قىستۇرۇڭ.</string>
+ <string name="status_connection_error">مۇۋەپپەقىيەتلىك باغلىنالمىدى.</string>
+ <string name="status_protocol_error">ئىلتىماسنى توغرا بىر تەرەپ قىلالمايدۇ.</string>
+ <string name="status_unknown_error">يوچۇن خاتالىق.</string>
+ <string name="btopp_live_folder">كۆكچىش قوبۇللىدى</string>
+ <string name="download_success"><xliff:g id="FILE_SIZE">%1$s</xliff:g> قوبۇللاش تاماملاندى.</string>
+ <string name="upload_success"><xliff:g id="FILE_SIZE">%1$s</xliff:g> يوللاش تاماملاندى.</string>
+ <string name="inbound_history_title">يوللاشنىڭ كىرگەن ئىزلىرى</string>
+ <string name="outbound_history_title">يوللاشنىڭ چىققان ئىزلىرى</string>
+ <string name="no_transfers">توركۆرگۈ تارىخ خاتىرىسى بوش.</string>
+ <string name="transfer_clear_dlg_msg">ھەممە تۈرلەر تىزىملىكتىن ئۆچۈرۈلىدۇ.</string>
+ <string name="outbound_noti_title">كۆكچىش ھەمبەھىر: يوللانغان ھۆججەتلەر</string>
+ <string name="inbound_noti_title">كۆكچىش ھەمبەھىر: قوبۇللىغان ھۆججەتلەر</string>
+ <string name="transfer_menu_clear_all">تىزىملىكنى تازىلا</string>
+ <string name="transfer_menu_open">ئاچ</string>
+ <string name="transfer_menu_clear">تىزىملىكتىن تازىلا</string>
+ <string name="transfer_clear_dlg_title">تازىلا</string>
+ <string name="bluetooth_map_settings_cancel">ۋاز كەچ</string>
</resources>
diff --git a/res/values-ug/strings_pbap.xml b/res/values-ug/strings_pbap.xml
index f211002c6..c157037ff 100644
--- a/res/values-ug/strings_pbap.xml
+++ b/res/values-ug/strings_pbap.xml
@@ -1,17 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="pbap_session_key_dialog_title">%1$s سۆزلىشىش ئاچقۇچىنى كىرگۈزۈڭ</string>
- <string name="pbap_session_key_dialog_header">كۆكچىش سۆزلىشىش ئاچقۇچى زۆرۈر</string>
- <string name="pbap_acceptance_timeout_message">%1$s نىڭ بىلەن بولغان باغلىنىشقا قوشۇلۇش ۋاقىت ھالقىدى</string>
- <string name="pbap_authentication_timeout_message">%1$s سۆزلىشىش ئاچقۇچىنى كىرگۈزۈشتە ۋاقىت ھالقىدى</string>
- <string name="auth_notif_ticker">Obex سالاھىيەت دەلىللەش ئىلتىماسى</string>
- <!-- Notification title when a Bluetooth device wants to pair with us -->
- <string name="auth_notif_title">سۆزلىشىش ئاچقۇچى</string>
- <!-- Notification message when a Bluetooth device wants to pair with us -->
- <string name="auth_notif_message">%1$s سۆزلىشىش ئاچقۇچىنى كىرگۈزۈڭ</string>
- <string name="defaultname">ماشىنا يۈرۈشلۈكى</string>
- <string name="unknownName">يوچۇن ئات</string>
- <string name="localPhoneName">ئاتىم</string>
- <string name="defaultnumber">000000</string>
+ <string name="pbap_session_key_dialog_title">%1$s سۆزلىشىش ئاچقۇچىنى كىرگۈزۈڭ</string>
+ <string name="pbap_session_key_dialog_header">كۆكچىش سۆزلىشىش ئاچقۇچى زۆرۈر</string>
+ <string name="pbap_acceptance_timeout_message">%1$s نىڭ بىلەن بولغان باغلىنىشقا قوشۇلۇش ۋاقىت ھالقىدى</string>
+ <string name="pbap_authentication_timeout_message">%1$s سۆزلىشىش ئاچقۇچىنى كىرگۈزۈشتە ۋاقىت ھالقىدى</string>
+ <string name="auth_notif_ticker">Obex سالاھىيەت دەلىللەش ئىلتىماسى</string>
+ <string name="auth_notif_title">سۆزلىشىش ئاچقۇچى</string>
+ <string name="auth_notif_message">%1$s سۆزلىشىش ئاچقۇچىنى كىرگۈزۈڭ</string>
+ <string name="defaultname">ماشىنا يۈرۈشلۈكى</string>
+ <string name="unknownName">يوچۇن ئات</string>
+ <string name="localPhoneName">ئاتىم</string>
+ <string name="defaultnumber">000000</string>
</resources>
diff --git a/res/values-ug/strings_sap.xml b/res/values-ug/strings_sap.xml
deleted file mode 100644
index d242b5671..000000000
--- a/res/values-ug/strings_sap.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"></resources>
diff --git a/res/values-uk/cm_strings.xml b/res/values-uk/cm_strings.xml
index 9c4f5d661..b70d53191 100644
--- a/res/values-uk/cm_strings.xml
+++ b/res/values-uk/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Не вдається надіслати файл, повторна спроба\u2026</string>
+ <string name="incoming_file_toast_msg">Вхідний файл з іншого пристрою. Підтвердіть, що хочете отримати цей файл.</string>
+ <string name="upload_fail_waiting">Не вдається надіслати файл, повторна спроба\u2026</string>
</resources>
diff --git a/res/values-ur-rPK/cm_strings.xml b/res/values-ur-rPK/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-ur-rPK/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-uz-rUZ/cm_strings.xml b/res/values-uz-rUZ/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-uz-rUZ/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-eo/cm_strings.xml b/res/values-vec-rIT/cm_strings.xml
index 29c1061f9..29c1061f9 100644
--- a/res/values-eo/cm_strings.xml
+++ b/res/values-vec-rIT/cm_strings.xml
diff --git a/res/values-fy-rNL/strings.xml b/res/values-vec-rIT/strings.xml
index 1b6ab882a..906d6536d 100644
--- a/res/values-fy-rNL/strings.xml
+++ b/res/values-vec-rIT/strings.xml
@@ -36,7 +36,6 @@
<!-- string for "error message in airplane mode" -->
<!-- Activate Bluetooth Confirmation Dialog -->
<!--Title -->
- <string name="bt_enable_title"></string>
<!--Line 1 -->
<!--Line 2 -->
<!-- Label for a cancel button. -->
@@ -64,7 +63,6 @@
<!--Line 2 -->
<!--Line 3 -->
<!--Line 4 -->
- <string name="download_line4"></string>
<!-- Label for a cancel button. -->
<!-- Label for a hide button.-->
<!--Line 1 -->
@@ -97,11 +95,5 @@
<!-- Do not translate. file name used for sharing. -->
<!-- Used to run Bluetooth.apk in another process if needed -->
<!-- Do not translate. android:sharedUserId string of this application. -->
- <string name="sharedUserId" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
<!-- Do not translate. android:process of this application. -->
- <string name="process" translate="false">
- <xliff:g id="x"></xliff:g>
- </string>
</resources>
diff --git a/res/values-es-rMX/strings_pbap.xml b/res/values-vec-rIT/strings_pbap.xml
index 55f5b837a..55f5b837a 100644
--- a/res/values-es-rMX/strings_pbap.xml
+++ b/res/values-vec-rIT/strings_pbap.xml
diff --git a/res/values-es-rMX/strings_sap.xml b/res/values-vec-rIT/strings_sap.xml
index d242b5671..d242b5671 100644
--- a/res/values-es-rMX/strings_sap.xml
+++ b/res/values-vec-rIT/strings_sap.xml
diff --git a/res/values-vi/cm_strings.xml b/res/values-vi/cm_strings.xml
index 08ac44798..b080d4f25 100644
--- a/res/values-vi/cm_strings.xml
+++ b/res/values-vi/cm_strings.xml
@@ -16,5 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="upload_fail_waiting">Không thể gửi tập tin, đang thử lại\u2026</string>
+ <string name="incoming_file_toast_msg">Tập tin từ một thiết bị khác. Xác nhận bạn muốn nhận tập tin này.</string>
+ <string name="upload_fail_waiting">Không thể gửi tập tin, đang thử lại\u2026</string>
</resources>
diff --git a/res/values-zh-rCN/cm_strings.xml b/res/values-zh-rCN/cm_strings.xml
index e0aa7122d..9683effdd 100644
--- a/res/values-zh-rCN/cm_strings.xml
+++ b/res/values-zh-rCN/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">另一台设备尝试传入文件。请确认您是否要接受此文件。</string>
- <string name="upload_fail_waiting">无法发送文件,正在重试\u2026</string>
+ <string name="incoming_file_toast_msg">另一台设备尝试传入文件。请您确认是否接收此文件。</string>
+ <string name="upload_fail_waiting">无法发送文件,正在重试\u2026</string>
</resources>
diff --git a/res/values-zh-rHK/cm_strings.xml b/res/values-zh-rHK/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-zh-rHK/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/res/values-zh-rTW/cm_strings.xml b/res/values-zh-rTW/cm_strings.xml
index 3184150c2..26433f14f 100644
--- a/res/values-zh-rTW/cm_strings.xml
+++ b/res/values-zh-rTW/cm_strings.xml
@@ -16,6 +16,6 @@
limitations under the License.
-->
<resources>
- <string name="incoming_file_toast_msg">有另一台裝置嘗試傳送檔案,請確認是否要接受此檔案。</string>
- <string name="upload_fail_waiting">無法傳送檔案,正在重試\u2026</string>
+ <string name="incoming_file_toast_msg">有另一台裝置嘗試傳送檔案,請確認是否要接受此檔案。</string>
+ <string name="upload_fail_waiting">無法傳送檔案,正在重試\u2026</string>
</resources>
diff --git a/res/values-zu/cm_strings.xml b/res/values-zu/cm_strings.xml
deleted file mode 100644
index 29c1061f9..000000000
--- a/res/values-zu/cm_strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--Generated by crowdin.com-->
-<!--
- Copyright (C) 2015-2016 The CyanogenMod 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.
--->
-<resources></resources>
diff --git a/src/com/android/bluetooth/avrcp/Avrcp.java b/src/com/android/bluetooth/avrcp/Avrcp.java
index 82dfacec2..48982bc60 100644
--- a/src/com/android/bluetooth/avrcp/Avrcp.java
+++ b/src/com/android/bluetooth/avrcp/Avrcp.java
@@ -300,7 +300,6 @@ public final class Avrcp {
private boolean isMusicAppResponsePending;
private boolean isBrowsingSupported;
private boolean isAbsoluteVolumeSupportingDevice;
- private boolean isActiveDevice;
private int mRemoteVolume;
private int mLastRemoteVolume;
@@ -341,7 +340,6 @@ public final class Avrcp {
isMusicAppResponsePending = false;
isBrowsingSupported = false;
isAbsoluteVolumeSupportingDevice = false;
- isActiveDevice = false;
mRemoteVolume = -1;
mInitialRemoteVolume = -1;
mLastRemoteVolume = -1;
@@ -1206,12 +1204,6 @@ public final class Avrcp {
msg.arg2 == AVRC_RSP_CHANGED ||
msg.arg2 == AVRC_RSP_INTERIM)) {
/* If the volume has successfully changed */
- if (!deviceFeatures[deviceIndex].isActiveDevice &&
- (msg.arg2 == AVRC_RSP_CHANGED || msg.arg2 == AVRC_RSP_INTERIM)) {
- Log.d(TAG, "Do not change volume from an inactive device");
- break;
- }
-
deviceFeatures[deviceIndex].mLocalVolume = volIndex;
if (deviceFeatures[deviceIndex].mLastLocalVolume != -1
&& msg.arg2 == AVRC_RSP_ACCEPT) {
@@ -1268,83 +1260,85 @@ public final class Avrcp {
if (DEBUG) Log.v(TAG, "ignore MESSAGE_ADJUST_VOLUME");
break;
}
-
- if (mA2dpService.isMulticastFeatureEnabled() &&
- areMultipleDevicesConnected()) {
- if (DEBUG) Log.v(TAG, "Volume change not entertained as multicast is enabled & multiple devices are connected");
- break;
- }
+ List<BluetoothDevice> playingDevice = mA2dpService.getA2dpPlayingDevice();
if (DEBUG)
Log.d(TAG, "MESSAGE_ADJUST_VOLUME: direction=" + msg.arg1);
- for (int i = 0; i < maxAvrcpConnections; i++) {
- if (deviceFeatures[i].mCurrentDevice != null &&
- deviceFeatures[i].isActiveDevice) {
- deviceIndex = i;
- if ((deviceFeatures[deviceIndex].mVolCmdAdjustInProgress) ||
- (deviceFeatures[deviceIndex].mVolCmdSetInProgress)){
- if (DEBUG)
- Log.w(TAG, "already a volume command in progress" +
- "for this device.");
- continue;
- }
- if (deviceFeatures[deviceIndex].mInitialRemoteVolume == -1) {
- if (DEBUG) Log.d(TAG, "remote never tell us initial volume, black list it.");
- blackListCurrentDevice(deviceIndex);
- break;
- }
- // Wait on verification on volume from device, before changing the volume.
- if (deviceFeatures[deviceIndex].mRemoteVolume != -1 &&
- (msg.arg1 == -1 || msg.arg1 == 1)) {
- int setVol = -1;
- int targetVolIndex = -1;
- if (deviceFeatures[deviceIndex].mLocalVolume == 0 && msg.arg1 == -1) {
- if (DEBUG) Log.w(TAG, "No need to Vol down from 0.");
- break;
- }
- if (deviceFeatures[deviceIndex].mLocalVolume ==
- mAudioStreamMax && msg.arg1 == 1) {
- if (DEBUG) Log.w(TAG, "No need to Vol up from max.");
- break;
- }
-
- targetVolIndex = deviceFeatures[deviceIndex].mLocalVolume + msg.arg1;
- if (DEBUG) Log.d(TAG, "Adjusting volume to " + targetVolIndex);
-
- Integer j;
- synchronized (deviceFeatures[deviceIndex].mVolumeMapping) {
- j = deviceFeatures[deviceIndex].mVolumeMapping.get(targetVolIndex);
- }
- if (j != null) {
- /* if we already know this volume mapping, use it */
- setVol = j.byteValue();
- if (setVol == deviceFeatures[deviceIndex].mRemoteVolume) {
- if (DEBUG) Log.d(TAG, "got same volume from mapping for " +
- targetVolIndex + ", ignore.");
- setVol = -1;
- }
- if (DEBUG) Log.d(TAG, "set volume from mapping " + targetVolIndex + "-" + setVol);
- }
- if (setVol == -1) {
- /* otherwise use phone steps */
- setVol = Math.min(AVRCP_MAX_VOL,
- convertToAvrcpVolume(Math.max(0, targetVolIndex)));
- if (DEBUG) Log.d(TAG, "set volume from local volume "+ targetVolIndex+"-"+ setVol);
- }
- boolean isSetVol = setVolumeNative(setVol ,
- getByteAddress(deviceFeatures[deviceIndex].mCurrentDevice));
- if (isSetVol) {
- sendMessageDelayed(obtainMessage(MESSAGE_ABS_VOL_TIMEOUT,
- 0, 0, deviceFeatures[deviceIndex].mCurrentDevice), CMD_TIMEOUT_DELAY);
- deviceFeatures[deviceIndex].mVolCmdAdjustInProgress = true;
- deviceFeatures[deviceIndex].mLastDirection = msg.arg1;
- deviceFeatures[deviceIndex].mLastRemoteVolume = setVol;
- deviceFeatures[deviceIndex].mLastLocalVolume = targetVolIndex;
- } else {
- if (DEBUG) Log.d(TAG, "adjustVolumeNative failed");
- }
+ for (int i = 0; i < playingDevice.size(); i++) {
+ Log.v(TAG, "event for device address " +
+ playingDevice.get(i).getAddress());
+ deviceIndex = getIndexForDevice(playingDevice.get(i));
+ if (deviceIndex == INVALID_DEVICE_INDEX) {
+ Log.e(TAG,"Unkown playing device");
+ sendAdjustVolume(msg.arg1);
+ continue;
+ }
+ if ((deviceFeatures[deviceIndex].mVolCmdAdjustInProgress) ||
+ (deviceFeatures[deviceIndex].mVolCmdSetInProgress)){
+ if (DEBUG)
+ Log.w(TAG, "already a volume command in progress" +
+ "for this device.");
+ continue;
+ }
+ if (deviceFeatures[deviceIndex].mInitialRemoteVolume == -1) {
+ if (DEBUG) Log.d(TAG, "remote never tell us initial volume, black list it.");
+ blackListCurrentDevice(deviceIndex);
+ break;
+ }
+ // Wait on verification on volume from device, before changing the volume.
+ if (deviceFeatures[deviceIndex].mRemoteVolume != -1 &&
+ (msg.arg1 == -1 || msg.arg1 == 1)) {
+ int setVol = -1;
+ int targetVolIndex = -1;
+ if (deviceFeatures[deviceIndex].mLocalVolume == 0 && msg.arg1 == -1) {
+ if (DEBUG) Log.w(TAG, "No need to Vol down from 0.");
+ break;
+ }
+ if (deviceFeatures[deviceIndex].mLocalVolume ==
+ mAudioStreamMax && msg.arg1 == 1) {
+ if (DEBUG) Log.w(TAG, "No need to Vol up from max.");
+ break;
+ }
+
+ targetVolIndex = deviceFeatures[deviceIndex].mLocalVolume + msg.arg1;
+ if (DEBUG) Log.d(TAG, "Adjusting volume to " + targetVolIndex);
+
+ Integer j;
+ synchronized (deviceFeatures[deviceIndex].mVolumeMapping) {
+ j = deviceFeatures[deviceIndex].mVolumeMapping.get(targetVolIndex);
+ }
+
+ if (j != null) {
+ /* if we already know this volume mapping, use it */
+ setVol = j.byteValue();
+ if (setVol == deviceFeatures[deviceIndex].mRemoteVolume) {
+ if (DEBUG) Log.d(TAG, "got same volume from mapping for " +
+ targetVolIndex + ", ignore.");
+ setVol = -1;
+ }
+ if (DEBUG) Log.d(TAG, "set volume from mapping " + targetVolIndex + "-" + setVol);
+ }
+
+ if (setVol == -1) {
+ /* otherwise use phone steps */
+ setVol = Math.min(AVRCP_MAX_VOL,
+ convertToAvrcpVolume(Math.max(0, targetVolIndex)));
+ if (DEBUG) Log.d(TAG, "set volume from local volume "+ targetVolIndex+"-"+ setVol);
+ }
+
+ boolean isSetVol = setVolumeNative(setVol ,
+ getByteAddress(deviceFeatures[deviceIndex].mCurrentDevice));
+ if (isSetVol) {
+ sendMessageDelayed(obtainMessage(MESSAGE_ABS_VOL_TIMEOUT,
+ 0, 0, deviceFeatures[deviceIndex].mCurrentDevice), CMD_TIMEOUT_DELAY);
+ deviceFeatures[deviceIndex].mVolCmdAdjustInProgress = true;
+ deviceFeatures[deviceIndex].mLastDirection = msg.arg1;
+ deviceFeatures[deviceIndex].mLastRemoteVolume = setVol;
+ deviceFeatures[deviceIndex].mLastLocalVolume = targetVolIndex;
} else {
- Log.e(TAG, "Unknown direction in MESSAGE_ADJUST_VOLUME");
+ if (DEBUG) Log.d(TAG, "adjustVolumeNative failed");
}
+ } else {
+ Log.e(TAG, "Unknown direction in MESSAGE_ADJUST_VOLUME");
}
}
break;
@@ -1355,46 +1349,46 @@ public final class Avrcp {
if (DEBUG) Log.v(TAG, "ignore MESSAGE_SET_ABSOLUTE_VOLUME");
break;
}
- if (mA2dpService.isMulticastFeatureEnabled() &&
- areMultipleDevicesConnected()) {
- if (DEBUG) Log.v(TAG, "Volume change not entertained as multicast is enabled & multiple devices are connected");
- break;
- }
if (DEBUG)
Log.v(TAG, "MESSAGE_SET_ABSOLUTE_VOLUME");
-
+ List<BluetoothDevice> playingDevice = mA2dpService.getA2dpPlayingDevice();
+ if (playingDevice.size() == 0) {
+ Log.e(TAG,"Volume cmd without a2dp playing");
+ }
int avrcpVolume = convertToAvrcpVolume(msg.arg1);
avrcpVolume = Math.min(AVRCP_MAX_VOL, Math.max(0, avrcpVolume));
- for (int i = 0; i < maxAvrcpConnections; i++) {
- if (deviceFeatures[i].mCurrentDevice != null &&
- deviceFeatures[i].isActiveDevice) {
-
- deviceIndex = i;
-
- if ((deviceFeatures[deviceIndex].mVolCmdSetInProgress) ||
- (deviceFeatures[deviceIndex].mVolCmdAdjustInProgress)){
- if (DEBUG)
- Log.w(TAG, "There is already a volume command in progress.");
- continue;
- }
- if (deviceFeatures[deviceIndex].mInitialRemoteVolume == -1) {
- if (DEBUG) Log.d(TAG, "remote never tell us initial volume, black list it.");
- blackListCurrentDevice(deviceIndex);
- break;
- }
- Log.v(TAG, "event for device address " + (String)msg.obj);
- boolean isSetVol = setVolumeNative(avrcpVolume ,
- getByteAddress(deviceFeatures[deviceIndex].mCurrentDevice));
- if (isSetVol) {
- sendMessageDelayed(obtainMessage(MESSAGE_ABS_VOL_TIMEOUT,
- 0, 0, deviceFeatures[deviceIndex].mCurrentDevice),
- CMD_TIMEOUT_DELAY);
- deviceFeatures[deviceIndex].mVolCmdSetInProgress = true;
- deviceFeatures[deviceIndex].mLastRemoteVolume = avrcpVolume;
- deviceFeatures[deviceIndex].mLastLocalVolume = msg.arg1;
- } else {
- if (DEBUG) Log.d(TAG, "setVolumeNative failed");
- }
+ for (int i = 0; i < playingDevice.size(); i++) {
+ deviceIndex = getIndexForDevice(playingDevice.get(i));
+ if (deviceIndex == INVALID_DEVICE_INDEX) {
+ Log.e(TAG,"Unkown playing device for SetAbsVol");
+ sendSetAbsoluteVolume(msg.arg1);
+ continue;
+ }
+ Log.v(TAG, "event for device address " +
+ playingDevice.get(i).getAddress());
+ if ((deviceFeatures[deviceIndex].mVolCmdSetInProgress) ||
+ (deviceFeatures[deviceIndex].mVolCmdAdjustInProgress)){
+ if (DEBUG)
+ Log.w(TAG, "There is already a volume command in progress.");
+ continue;
+ }
+ if (deviceFeatures[deviceIndex].mInitialRemoteVolume == -1) {
+ if (DEBUG) Log.d(TAG, "remote never tell us initial volume, black list it.");
+ blackListCurrentDevice(deviceIndex);
+ break;
+ }
+ Log.v(TAG, "event for device address " + (String)msg.obj);
+ boolean isSetVol = setVolumeNative(avrcpVolume ,
+ getByteAddress(deviceFeatures[deviceIndex].mCurrentDevice));
+ if (isSetVol) {
+ sendMessageDelayed(obtainMessage(MESSAGE_ABS_VOL_TIMEOUT,
+ 0, 0, deviceFeatures[deviceIndex].mCurrentDevice),
+ CMD_TIMEOUT_DELAY);
+ deviceFeatures[deviceIndex].mVolCmdSetInProgress = true;
+ deviceFeatures[deviceIndex].mLastRemoteVolume = avrcpVolume;
+ deviceFeatures[deviceIndex].mLastLocalVolume = msg.arg1;
+ } else {
+ if (DEBUG) Log.d(TAG, "setVolumeNative failed");
}
}
break;
@@ -1641,6 +1635,7 @@ public final class Avrcp {
private void updateA2dpAudioState(int state, BluetoothDevice device) {
boolean isPlaying = (state == BluetoothA2dp.STATE_PLAYING);
+
Log.v(TAG,"updateA2dpAudioState");
if ((isPlaying) && !mAudioManager.isMusicActive()) {
/* Play state to be updated only for music streaming, not touchtone */
@@ -1652,21 +1647,14 @@ public final class Avrcp {
(device.equals(deviceFeatures[i].mCurrentDevice))) {
PlaybackState.Builder builder = new PlaybackState.Builder();
if (isPlaying) {
- deviceFeatures[i].isActiveDevice = true;
builder.setState(PlaybackState.STATE_PLAYING,
PlaybackState.PLAYBACK_POSITION_UNKNOWN, 1.0f);
- Log.v(TAG,"updateA2dpAudioState: Active device is set true at index = " + i);
} else {
builder.setState(PlaybackState.STATE_PAUSED,
PlaybackState.PLAYBACK_POSITION_UNKNOWN, 0.0f);
}
updatePlaybackState(builder.build(), device);
- }
-
- if (!device.equals(deviceFeatures[i].mCurrentDevice) &&
- deviceFeatures[i].isActiveDevice && isPlaying) {
- deviceFeatures[i].isActiveDevice = false;
- Log.v(TAG,"updateA2dpAudioState: Active device is set false at index = " + i);
+ break;
}
}
}
@@ -3575,7 +3563,7 @@ public final class Avrcp {
attrs[i] == MEDIA_ATTR_NUM_TRACKS)
cachereq = true;
}
- if (scope == SCOPE_NOW_PLAYING && cachereq) {
+ if (mMediaController != null && scope == SCOPE_NOW_PLAYING && cachereq) {
Log.v(TAG,"scope now playing, caching req");
mMediaController.getTransportControls().getRemoteControlClientNowPlayingEntries();
mCachedRequest = new CachedRequest((long)0, (long)0, numAttr, attrs, size, false,
@@ -5146,13 +5134,8 @@ public final class Avrcp {
* returns true only when both playing devices support absolute volume
*/
public boolean isAbsoluteVolumeSupported() {
- if (mA2dpService.isMulticastFeatureEnabled() &&
- areMultipleDevicesConnected()) {
- if (DEBUG) Log.v(TAG, "isAbsoluteVolumeSupported : Absolute volume false multicast is enabled & multiple devices are connected");
- return false;
- }
List<Byte> absVolumeSupported = new ArrayList<Byte>();
- for (int i = 0; i < maxAvrcpConnections; i++) {
+ for (int i = 0; i < maxAvrcpConnections; i++ ) {
if (deviceFeatures[i].mCurrentDevice != null) {
// add 1 in byte list if absolute volume is supported
// add 0 in byte list if absolute volume not supported
@@ -5554,7 +5537,6 @@ public final class Avrcp {
for (int i = 0; i < maxAvrcpConnections; i++ ) {
if (deviceFeatures[i].mCurrentDevice == null) {
deviceFeatures[i].mCurrentDevice = device;
- deviceFeatures[i].isActiveDevice = true;
/*Playstate is explicitly updated here to take care of cases
where play state update is missed because of that happening
even before Avrcp connects*/
@@ -5577,19 +5559,9 @@ public final class Avrcp {
Log.i(TAG,"play status updated on Avrcp connection as: " +
deviceFeatures[i].mCurrentPlayState);
Log.i(TAG,"device added at " + i);
- Log.i(TAG,"Active device set to true at index = " + i);
break;
}
}
-
- for (int i = 0; i < maxAvrcpConnections; i++ ) {
- if (deviceFeatures[i].mCurrentDevice != null &&
- !(deviceFeatures[i].mCurrentDevice.equals(device)) &&
- deviceFeatures[i].isActiveDevice) {
- deviceFeatures[i].isActiveDevice = false;
- Log.i(TAG,"Active device set to false at index = " + i);
- }
- }
}
public boolean isAvrcpConnected() {
@@ -5642,7 +5614,6 @@ public final class Avrcp {
deviceFeatures[index].mMediaUri = Uri.EMPTY;
deviceFeatures[index].isMusicAppResponsePending = false;
deviceFeatures[index].isBrowsingSupported = false;
- deviceFeatures[index].isActiveDevice = false;
deviceFeatures[index].isAbsoluteVolumeSupportingDevice = false;
}
/**
@@ -5665,16 +5636,7 @@ public final class Avrcp {
Log.i(TAG,"clearing mBrowserDevice on disconnect");
mBrowserDevice = null;
}
- }
- /* Multicast scenario both abs vol supported
- Active device got disconnected so make other
- device which is left supporting absolute
- volume as active device
- */
- if (deviceFeatures[i].mCurrentDevice != null &&
- !(deviceFeatures[i].mCurrentDevice.equals(device))) {
- deviceFeatures[i].isActiveDevice = true;
- Log.i(TAG,"setAvrcpDisconnectedDevice : Active device changed to index = " + i);
+ break;
}
}
mAudioManager.avrcpSupportsAbsoluteVolume(device.getAddress(),
diff --git a/src/com/android/bluetooth/btservice/AdapterService.java b/src/com/android/bluetooth/btservice/AdapterService.java
index f4d029796..4104d4220 100644
--- a/src/com/android/bluetooth/btservice/AdapterService.java
+++ b/src/com/android/bluetooth/btservice/AdapterService.java
@@ -1188,6 +1188,12 @@ public class AdapterService extends Service {
return service.getBondState(device);
}
+ public long getSupportedProfiles() {
+ AdapterService service = getService();
+ if (service == null) return 0;
+ return service.getSupportedProfiles();
+ }
+
public int getConnectionState(BluetoothDevice device) {
AdapterService service = getService();
if (service == null) return 0;
@@ -2189,6 +2195,10 @@ public class AdapterService extends Service {
return deviceProp.getBondState();
}
+ long getSupportedProfiles() {
+ return Config.getSupportedProfilesBitMask();
+ }
+
int getConnectionState(BluetoothDevice device) {
enforceCallingOrSelfPermission(BLUETOOTH_PERM, "Need BLUETOOTH permission");
byte[] addr = Utils.getBytesFromAddress(device.getAddress());
@@ -2258,6 +2268,12 @@ public class AdapterService extends Service {
return false;
}
+ if (pinCode.length != len) {
+ android.util.EventLog.writeEvent(0x534e4554, "139287605", -1,
+ "PIN code length mismatch");
+ return false;
+ }
+
byte[] addr = Utils.getBytesFromAddress(device.getAddress());
return pinReplyNative(addr, accept, len, pinCode);
}
@@ -2269,6 +2285,12 @@ public class AdapterService extends Service {
return false;
}
+ if (passkey.length != len) {
+ android.util.EventLog.writeEvent(0x534e4554, "139287605", -1,
+ "Passkey length mismatch");
+ return false;
+ }
+
byte[] addr = Utils.getBytesFromAddress(device.getAddress());
return sspReplyNative(addr, AbstractionLayer.BT_SSP_VARIANT_PASSKEY_ENTRY, accept,
Utils.byteArrayToInt(passkey));
@@ -2704,28 +2726,6 @@ public class AdapterService extends Service {
return getResources().getInteger(R.integer.config_bluetooth_operating_voltage_mv) / 1000.0;
}
- private String getStateString() {
- int state = getState();
- switch (state) {
- case BluetoothAdapter.STATE_OFF:
- return "STATE_OFF";
- case BluetoothAdapter.STATE_TURNING_ON:
- return "STATE_TURNING_ON";
- case BluetoothAdapter.STATE_ON:
- return "STATE_ON";
- case BluetoothAdapter.STATE_TURNING_OFF:
- return "STATE_TURNING_OFF";
- case BluetoothAdapter.STATE_BLE_TURNING_ON:
- return "STATE_BLE_TURNING_ON";
- case BluetoothAdapter.STATE_BLE_ON:
- return "STATE_BLE_ON";
- case BluetoothAdapter.STATE_BLE_TURNING_OFF:
- return "STATE_BLE_TURNING_OFF";
- default:
- return "UNKNOWN STATE: " + state;
- }
- }
-
@Override
protected void dump(FileDescriptor fd, PrintWriter writer, String[] args) {
enforceCallingOrSelfPermission(android.Manifest.permission.DUMP, TAG);
@@ -2743,20 +2743,6 @@ public class AdapterService extends Service {
}
}
- long onDuration = System.currentTimeMillis() - mBluetoothStartTime;
- String onDurationString = String.format("%02d:%02d:%02d.%03d",
- (int)(onDuration / (1000 * 60 * 60)),
- (int)((onDuration / (1000 * 60)) % 60),
- (int)((onDuration / 1000) % 60),
- (int)(onDuration % 1000));
-
- writer.println("Bluetooth Status");
- writer.println(" enabled: " + isEnabled());
- writer.println(" state: " + getStateString());
- writer.println(" address: " + getAddress());
- writer.println(" name: " + getName());
- writer.println(" time since enabled: " + onDurationString + "\n");
-
writer.println("Bonded devices:");
for (BluetoothDevice device : getBondedDevices()) {
writer.println(" " + device.getAddress() +
diff --git a/src/com/android/bluetooth/btservice/Config.java b/src/com/android/bluetooth/btservice/Config.java
index 3254feb01..723a494f6 100644
--- a/src/com/android/bluetooth/btservice/Config.java
+++ b/src/com/android/bluetooth/btservice/Config.java
@@ -104,9 +104,7 @@ public class Config {
profiles.add(PROFILE_SERVICES[i]);
}
}
- int totalProfiles = profiles.size();
- SUPPORTED_PROFILES = new Class[totalProfiles];
- profiles.toArray(SUPPORTED_PROFILES);
+ SUPPORTED_PROFILES = profiles.toArray(new Class[profiles.size()]);
}
@SuppressWarnings("rawtypes")
@@ -135,7 +133,36 @@ public class Config {
return SUPPORTED_PROFILES;
}
+ static long getSupportedProfilesBitMask() {
+ long mask = 0;
+ for (final Class profileClass : getSupportedProfiles()) {
+ final int profileIndex = getProfileIndex(profileClass);
+
+ if (profileIndex != -1) {
+ mask |= 1 << getProfileIndex(profileClass);
+ }
+ }
+
+ return mask;
+ }
+
private static boolean isProfileDisabled(Context context, Class profile) {
+ final int profileIndex = getProfileIndex(profile);
+
+ if (profileIndex == -1) {
+ Log.w(TAG, "Could not find profile bit mask");
+ return false;
+ }
+
+ final ContentResolver resolver = context.getContentResolver();
+ final long disabledProfilesBitMask = Settings.Global.getLong(resolver,
+ Settings.Global.BLUETOOTH_DISABLED_PROFILES, 0);
+ final long profileBit = 1 << profileIndex;
+
+ return (disabledProfilesBitMask & profileBit) != 0;
+ }
+
+ private static int getProfileIndex(Class profile) {
int profileIndex = -1;
if (profile == HeadsetService.class) {
@@ -164,16 +191,6 @@ public class Config {
profileIndex = BluetoothProfile.PBAP_CLIENT;
}
- if (profileIndex == -1) {
- Log.d(TAG, "Could not find profile bit mask");
- return false;
- }
-
- final ContentResolver resolver = context.getContentResolver();
- final long disabledProfilesBitMask = Settings.Global.getLong(resolver,
- Settings.Global.BLUETOOTH_DISABLED_PROFILES, 0);
- long profileBit = 1 << profileIndex;
-
- return (disabledProfilesBitMask & profileBit) != 0;
+ return profileIndex;
}
}
diff --git a/src/com/android/bluetooth/btservice/RemoteDevices.java b/src/com/android/bluetooth/btservice/RemoteDevices.java
index 94c469d8f..08f694324 100644
--- a/src/com/android/bluetooth/btservice/RemoteDevices.java
+++ b/src/com/android/bluetooth/btservice/RemoteDevices.java
@@ -245,8 +245,9 @@ final class RemoteDevices {
DeviceProperties prop = getDeviceProperties(device);
Intent intent = new Intent(BluetoothDevice.ACTION_UUID);
intent.putExtra(BluetoothDevice.EXTRA_DEVICE, device);
- intent.putExtra(BluetoothDevice.EXTRA_UUID, prop == null? null: prop.mUuids);
- mAdapterService.initProfilePriorities(device, prop == null? null: prop.mUuids);
+ intent.putExtra(BluetoothDevice.EXTRA_UUID, prop == null ? null : prop.mUuids);
+ mAdapterService.initProfilePriorities(device, prop == null ? null : prop.mUuids);
+
mAdapterService.sendBroadcast(intent, AdapterService.BLUETOOTH_ADMIN_PERM);
//Remove the outstanding UUID request
diff --git a/src/com/android/bluetooth/btservice/bluetooth.proto b/src/com/android/bluetooth/btservice/bluetooth.proto
index 77ded7807..c616c10a2 100644
--- a/src/com/android/bluetooth/btservice/bluetooth.proto
+++ b/src/com/android/bluetooth/btservice/bluetooth.proto
@@ -28,6 +28,18 @@ message BluetoothLog {
// Number of bonded devices.
optional int32 num_bonded_devices = 5;
+
+ // Number of BluetoothSession including discarded ones beyond capacity
+ optional int64 num_bluetooth_session = 6;
+
+ // Number of PairEvent including discarded ones beyond capacity
+ optional int64 num_pair_event = 7;
+
+ // Number of WakeEvent including discarded ones beyond capacity
+ optional int64 num_wake_event = 8;
+
+ // Number of ScanEvent including discarded ones beyond capacity
+ optional int64 num_scan_event = 9;
}
// The information about the device.
@@ -82,7 +94,7 @@ message BluetoothSession {
// The information about the RFComm session.
optional RFCommSession rfcomm_session = 6;
- // The information about the A2DP session.
+ // The information about the A2DP audio session.
optional A2DPSession a2dp_session = 7;
}
@@ -95,7 +107,7 @@ message RFCommSession {
optional int32 tx_bytes = 2;
}
-// Session information that gets logged for every A2DP session.
+// Session information that gets logged for A2DP session.
message A2DPSession {
// Media timer in milliseconds.
@@ -118,6 +130,9 @@ message A2DPSession {
// Buffer underruns count.
optional int32 buffer_underruns_count = 7;
+
+ // Total audio time in this A2DP session
+ optional int64 audio_duration_millis = 8;
}
message PairEvent {
diff --git a/src/com/android/bluetooth/gatt/AdvertiseManager.java b/src/com/android/bluetooth/gatt/AdvertiseManager.java
index 3fb4aa945..4e6055fc8 100644
--- a/src/com/android/bluetooth/gatt/AdvertiseManager.java
+++ b/src/com/android/bluetooth/gatt/AdvertiseManager.java
@@ -157,7 +157,7 @@ class AdvertiseManager {
}
}
- private AdvertiseClient getAdvertiseClient(int clientIf) {
+ public AdvertiseClient getAdvertiseClient(int clientIf) {
for (AdvertiseClient client : mAdvertiseClients) {
if (client.clientIf == clientIf) {
return client;
@@ -316,6 +316,9 @@ class AdvertiseManager {
return false;
}
setAdvertisingData(client, client.advertiseData, false);
+ if (client.scanResponse != null) {
+ setAdvertisingData(client, client.scanResponse, true);
+ }
return true;
}
diff --git a/src/com/android/bluetooth/gatt/AppScanStats.java b/src/com/android/bluetooth/gatt/AppScanStats.java
index e73f41512..7eed888b5 100644
--- a/src/com/android/bluetooth/gatt/AppScanStats.java
+++ b/src/com/android/bluetooth/gatt/AppScanStats.java
@@ -64,6 +64,9 @@ import com.android.bluetooth.btservice.BluetoothProto;
// earliest recorded scan exits this window.
static final long EXCESSIVE_SCANNING_PERIOD_MS = 30 * 1000;
+ // Maximum msec before scan gets downgraded to opportunistic
+ static final int SCAN_TIMEOUT_MS = 30 * 60 * 1000;
+
String appName;
int scansStarted = 0;
int scansStopped = 0;
@@ -160,6 +163,14 @@ import com.android.bluetooth.btservice.BluetoothProto;
EXCESSIVE_SCANNING_PERIOD_MS;
}
+ synchronized boolean isScanningTooLong() {
+ if (lastScans.isEmpty() || !isScanning) {
+ return false;
+ }
+
+ return (System.currentTimeMillis() - startTime) > SCAN_TIMEOUT_MS;
+ }
+
// This function truncates the app name for privacy reasons. Apps with
// four part package names or more get truncated to three parts, and apps
// with three part package names names get truncated to two. Apps with two
diff --git a/src/com/android/bluetooth/gatt/GattService.java b/src/com/android/bluetooth/gatt/GattService.java
index f8bef759d..3f004b417 100644
--- a/src/com/android/bluetooth/gatt/GattService.java
+++ b/src/com/android/bluetooth/gatt/GattService.java
@@ -1435,6 +1435,12 @@ public class GattService extends ProfileService {
if (DBG) Log.d(TAG, "unregisterClient() - clientIf=" + clientIf);
mClientMap.remove(clientIf);
+
+ AdvertiseClient client = mAdvertiseManager.getAdvertiseClient(clientIf);
+ if (client != null && !client.appDied) {
+ stopMultiAdvertising(client);
+ }
+
gattClientUnregisterAppNative(clientIf);
}
diff --git a/src/com/android/bluetooth/gatt/ScanManager.java b/src/com/android/bluetooth/gatt/ScanManager.java
index 9ed405901..4e69c08cf 100644
--- a/src/com/android/bluetooth/gatt/ScanManager.java
+++ b/src/com/android/bluetooth/gatt/ScanManager.java
@@ -70,9 +70,6 @@ public class ScanManager {
private static final int MSG_FLUSH_BATCH_RESULTS = 2;
private static final int MSG_SCAN_TIMEOUT = 3;
- // Maximum msec before scan gets downgraded to opportunistic
- private static final int SCAN_TIMEOUT_MS = 30 * 60 * 1000;
-
private static final String ACTION_REFRESH_BATCHED_SCAN =
"com.android.bluetooth.gatt.REFRESH_BATCHED_SCAN";
@@ -209,7 +206,7 @@ public class ScanManager {
handleFlushBatchResults(client);
break;
case MSG_SCAN_TIMEOUT:
- mScanNative.regularScanTimeout();
+ mScanNative.regularScanTimeout(client);
break;
default:
// Shouldn't happen.
@@ -244,8 +241,7 @@ public class ScanManager {
Message msg = mHandler.obtainMessage(MSG_SCAN_TIMEOUT);
msg.obj = client;
// Only one timeout message should exist at any time
- mHandler.removeMessages(MSG_SCAN_TIMEOUT);
- mHandler.sendMessageDelayed(msg, SCAN_TIMEOUT_MS);
+ mHandler.sendMessageDelayed(msg, AppScanStats.SCAN_TIMEOUT_MS);
}
}
@@ -689,14 +685,12 @@ public class ScanManager {
removeScanFilters(client.clientIf);
}
- void regularScanTimeout() {
- for (ScanClient client : mRegularScanClients) {
- if (!isExemptFromScanDowngrade(client)) {
- Log.w(TAG, "Moving scan client to opportunistic (clientIf "
- + client.clientIf + ")");
- setOpportunisticScanClient(client);
- client.stats.setScanTimeout();
- }
+ void regularScanTimeout(ScanClient client) {
+ if (!isExemptFromScanDowngrade(client) && client.stats.isScanningTooLong()) {
+ Log.w(TAG,
+ "Moving scan client to opportunistic (clientIf " + client.clientIf + ")");
+ setOpportunisticScanClient(client);
+ client.stats.setScanTimeout();
}
// The scan should continue for background scans
diff --git a/src/com/android/bluetooth/hfpclient/HeadsetClientService.java b/src/com/android/bluetooth/hfpclient/HeadsetClientService.java
index 31125c0fa..da41175c9 100644
--- a/src/com/android/bluetooth/hfpclient/HeadsetClientService.java
+++ b/src/com/android/bluetooth/hfpclient/HeadsetClientService.java
@@ -93,7 +93,9 @@ public class HeadsetClientService extends ProfileService {
} catch (Exception e) {
Log.w(TAG, "Unable to unregister broadcast receiver", e);
}
- mStateMachine.doQuit();
+ if (mStateMachine != null) {
+ mStateMachine.doQuit();
+ }
// Stop the HfpClientConnectionService.
Intent stopIntent = new Intent(this, HfpClientConnectionService.class);
@@ -168,6 +170,8 @@ public class HeadsetClientService extends ProfileService {
if (mService != null && mService.isAvailable()) {
return mService;
}
+
+ Log.e(TAG, "HeadsetClientService is not available.");
return null;
}
@@ -489,6 +493,7 @@ public class HeadsetClientService extends ProfileService {
"Need BLUETOOTH ADMIN permission");
if (getPriority(device) == BluetoothProfile.PRIORITY_OFF) {
+ Log.w(TAG, "Connection not allowed: <" + device.getAddress() + "> is PRIORITY_OFF");
return false;
}
@@ -503,6 +508,7 @@ public class HeadsetClientService extends ProfileService {
int connectionState = mStateMachine.getConnectionState(device);
if (connectionState == BluetoothProfile.STATE_CONNECTED ||
connectionState == BluetoothProfile.STATE_CONNECTING) {
+ Log.w(TAG, "Unable to connect: state is CONNECTING or CONNECTED.");
return false;
}
diff --git a/src/com/android/bluetooth/hfpclient/HeadsetClientStateMachine.java b/src/com/android/bluetooth/hfpclient/HeadsetClientStateMachine.java
index 76ef46301..66e25c811 100755
--- a/src/com/android/bluetooth/hfpclient/HeadsetClientStateMachine.java
+++ b/src/com/android/bluetooth/hfpclient/HeadsetClientStateMachine.java
@@ -1036,6 +1036,14 @@ final class HeadsetClientStateMachine extends StateMachine {
return;
}
+ if (flag == BluetoothHeadsetClient.CALL_ACCEPT_HOLD) {
+ // HFP is disabled when a call is put on hold to ensure correct audio routing for
+ // cellular calls accepted while an HFP call is in progress. Reenable HFP when the HFP
+ // call is put off hold.
+ Log.d(TAG,"hfp_enable=true");
+ mAudioManager.setParameters("hfp_enable=true");
+ }
+
if (handleCallActionNative(action, 0)) {
addQueuedAction(ACCEPT_CALL, action);
} else {
@@ -1103,6 +1111,11 @@ final class HeadsetClientStateMachine extends StateMachine {
action = HeadsetClientHalConstants.CALL_ACTION_CHLD_2;
}
+ // Set HFP enable to false in case the call is being held to accept a cellular call. This
+ // allows the cellular call's audio to be correctly routed.
+ Log.d(TAG,"hfp_enable=false");
+ mAudioManager.setParameters("hfp_enable=false");
+
if (handleCallActionNative(action, 0)) {
addQueuedAction(HOLD_CALL, action);
} else {
diff --git a/src/com/android/bluetooth/map/BluetoothMapContent.java b/src/com/android/bluetooth/map/BluetoothMapContent.java
index 4f42bfb58..0bff19bd6 100755
--- a/src/com/android/bluetooth/map/BluetoothMapContent.java
+++ b/src/com/android/bluetooth/map/BluetoothMapContent.java
@@ -1658,10 +1658,8 @@ public class BluetoothMapContent {
private String setWhereFilterFolderType(BluetoothMapFolderElement folderElement,
FilterInfo fi) {
- String where = "";
- if(folderElement.shouldIgnore()) {
- where = "1=1";
- } else {
+ String where = "1=1";
+ if (!folderElement.shouldIgnore()) {
if (fi.mMsgType == FilterInfo.TYPE_SMS) {
where = setWhereFilterFolderTypeSms(folderElement.getName());
} else if (fi.mMsgType == FilterInfo.TYPE_MMS) {
@@ -1672,6 +1670,7 @@ public class BluetoothMapContent {
where = setWhereFilterFolderTypeIm(folderElement.getFolderId());
}
}
+
return where;
}
diff --git a/src/com/android/bluetooth/opp/BluetoothOppHandoverReceiver.java b/src/com/android/bluetooth/opp/BluetoothOppHandoverReceiver.java
index 38873da12..bcf4f8d37 100644
--- a/src/com/android/bluetooth/opp/BluetoothOppHandoverReceiver.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppHandoverReceiver.java
@@ -58,7 +58,7 @@ public class BluetoothOppHandoverReceiver extends BroadcastReceiver {
Thread t = new Thread(new Runnable() {
public void run() {
BluetoothOppManager.getInstance(context).saveSendingFileInfo(finalType,
- finalUris, true);
+ finalUris, true /* isHandover */, true /* fromExternal */);
BluetoothOppManager.getInstance(context).startTransfer(device);
}
});
diff --git a/src/com/android/bluetooth/opp/BluetoothOppLauncherActivity.java b/src/com/android/bluetooth/opp/BluetoothOppLauncherActivity.java
index 4bbda4eb8..93b408b4d 100644
--- a/src/com/android/bluetooth/opp/BluetoothOppLauncherActivity.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppLauncherActivity.java
@@ -117,7 +117,8 @@ public class BluetoothOppLauncherActivity extends Activity {
Thread t = new Thread(new Runnable() {
public void run() {
BluetoothOppManager.getInstance(BluetoothOppLauncherActivity.this)
- .saveSendingFileInfo(type,stream.toString(), false);
+ .saveSendingFileInfo(type,stream.toString(),
+ false /* isHandover */, true /* fromExternal */);
//Done getting file info..Launch device picker and finish this activity
launchDevicePicker();
finish();
@@ -133,7 +134,8 @@ public class BluetoothOppLauncherActivity extends Activity {
Thread t = new Thread(new Runnable() {
public void run() {
BluetoothOppManager.getInstance(BluetoothOppLauncherActivity.this)
- .saveSendingFileInfo(type,fileUri.toString(), false);
+ .saveSendingFileInfo(type,fileUri.toString(),
+ false /* isHandover */, false /* fromExternal */);
//Done getting file info..Launch device picker
//and finish this activity
launchDevicePicker();
@@ -161,7 +163,8 @@ public class BluetoothOppLauncherActivity extends Activity {
Thread t = new Thread(new Runnable() {
public void run() {
BluetoothOppManager.getInstance(BluetoothOppLauncherActivity.this)
- .saveSendingFileInfo(mimeType,uris, false);
+ .saveSendingFileInfo(mimeType,uris,
+ false /* isHandover */, true /* fromExternal */);
//Done getting file info..Launch device picker
//and finish this activity
launchDevicePicker();
@@ -225,14 +228,14 @@ public class BluetoothOppLauncherActivity extends Activity {
final ContentResolver resolver = this.getContentResolver();
// Check if airplane mode is on
- final boolean isAirplaneModeOn = Settings.System.getInt(resolver,
+ final boolean isAirplaneModeOn = Settings.Global.getInt(resolver,
Settings.Global.AIRPLANE_MODE_ON, 0) == 1;
if (!isAirplaneModeOn) {
return true;
}
// Check if airplane mode matters
- final String airplaneModeRadios = Settings.System.getString(resolver,
+ final String airplaneModeRadios = Settings.Global.getString(resolver,
Settings.Global.AIRPLANE_MODE_RADIOS);
final boolean isAirplaneSensitive = airplaneModeRadios == null ? true :
airplaneModeRadios.contains(Settings.Global.RADIO_BLUETOOTH);
diff --git a/src/com/android/bluetooth/opp/BluetoothOppManager.java b/src/com/android/bluetooth/opp/BluetoothOppManager.java
index 82c6e16cf..ab3aa985a 100644
--- a/src/com/android/bluetooth/opp/BluetoothOppManager.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppManager.java
@@ -248,14 +248,15 @@ public class BluetoothOppManager {
if (V) Log.v(TAG, "Application data stored to SharedPreference! ");
}
- public void saveSendingFileInfo(String mimeType, String uriString, boolean isHandover) {
+ public void saveSendingFileInfo(String mimeType, String uriString, boolean isHandover,
+ boolean fromExternal) {
synchronized (BluetoothOppManager.this) {
mMultipleFlag = false;
mMimeTypeOfSendingFile = mimeType;
mIsHandoverInitiated = isHandover;
Uri uri = Uri.parse(uriString);
BluetoothOppSendFileInfo sendFileInfo =
- BluetoothOppSendFileInfo.generateFileInfo(mContext, uri, mimeType);
+ BluetoothOppSendFileInfo.generateFileInfo(mContext, uri, mimeType, fromExternal);
uri = BluetoothOppUtility.generateUri(uri, sendFileInfo);
BluetoothOppUtility.putSendFileInfo(uri, sendFileInfo);
mUriOfSendingFile = uri.toString();
@@ -263,7 +264,8 @@ public class BluetoothOppManager {
}
}
- public void saveSendingFileInfo(String mimeType, ArrayList<Uri> uris, boolean isHandover) {
+ public void saveSendingFileInfo(String mimeType, ArrayList<Uri> uris, boolean isHandover,
+ boolean fromExternal) {
synchronized (BluetoothOppManager.this) {
mMultipleFlag = true;
mMimeTypeOfSendingFiles = mimeType;
@@ -271,7 +273,7 @@ public class BluetoothOppManager {
mIsHandoverInitiated = isHandover;
for (Uri uri : uris) {
BluetoothOppSendFileInfo sendFileInfo =
- BluetoothOppSendFileInfo.generateFileInfo(mContext, uri, mimeType);
+ BluetoothOppSendFileInfo.generateFileInfo(mContext, uri, mimeType, fromExternal);
uri = BluetoothOppUtility.generateUri(uri, sendFileInfo);
mUrisOfSendingFiles.add(uri);
BluetoothOppUtility.putSendFileInfo(uri, sendFileInfo);
diff --git a/src/com/android/bluetooth/opp/BluetoothOppSendFileInfo.java b/src/com/android/bluetooth/opp/BluetoothOppSendFileInfo.java
index f60f06cab..3cd3ca933 100644
--- a/src/com/android/bluetooth/opp/BluetoothOppSendFileInfo.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppSendFileInfo.java
@@ -39,6 +39,7 @@ import android.database.Cursor;
import android.database.sqlite.SQLiteException;
import android.net.Uri;
import android.provider.OpenableColumns;
+import android.util.EventLog;
import android.util.Log;
import java.io.File;
@@ -97,8 +98,8 @@ public class BluetoothOppSendFileInfo {
mStatus = status;
}
- public static BluetoothOppSendFileInfo generateFileInfo(Context context, Uri uri,
- String type) {
+ public static BluetoothOppSendFileInfo generateFileInfo(
+ Context context, Uri uri, String type, boolean fromExternal) {
ContentResolver contentResolver = context.getContentResolver();
String scheme = uri.getScheme();
String fileName = null;
@@ -142,6 +143,16 @@ public class BluetoothOppSendFileInfo {
fileName = uri.getLastPathSegment();
}
} else if ("file".equals(scheme)) {
+ if (uri.getPath() == null) {
+ Log.e(TAG, "Invalid URI path: " + uri);
+ return SEND_FILE_INFO_ERROR;
+ }
+ if (fromExternal && !BluetoothOppUtility.isInExternalStorageDir(uri)) {
+ EventLog.writeEvent(0x534e4554, "35310991", -1, uri.getPath());
+ Log.e(TAG,
+ "File based URI not in Environment.getExternalStorageDirectory() is not allowed.");
+ return SEND_FILE_INFO_ERROR;
+ }
fileName = uri.getLastPathSegment();
contentType = type;
File f = new File(uri.getPath());
diff --git a/src/com/android/bluetooth/opp/BluetoothOppTransferActivity.java b/src/com/android/bluetooth/opp/BluetoothOppTransferActivity.java
index 6883523ad..d93c9172c 100644
--- a/src/com/android/bluetooth/opp/BluetoothOppTransferActivity.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppTransferActivity.java
@@ -402,7 +402,7 @@ public class BluetoothOppTransferActivity extends AlertActivity implements
public void run() {
BluetoothOppSendFileInfo sendFileInfo =
BluetoothOppSendFileInfo.generateFileInfo(BluetoothOppTransferActivity.this,
- uri, mTransInfo.mFileType);
+ uri, mTransInfo.mFileType, false);
uri = BluetoothOppUtility.generateUri(uri, sendFileInfo);
BluetoothOppUtility.putSendFileInfo(uri, sendFileInfo);
mTransInfo.mFileUri = uri.toString();
diff --git a/src/com/android/bluetooth/opp/BluetoothOppUtility.java b/src/com/android/bluetooth/opp/BluetoothOppUtility.java
index 15f4a8932..407c17355 100644
--- a/src/com/android/bluetooth/opp/BluetoothOppUtility.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppUtility.java
@@ -39,6 +39,7 @@ import com.google.android.collect.Lists;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.net.Uri;
+import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.Context;
import android.content.ActivityNotFoundException;
@@ -47,6 +48,7 @@ import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.database.Cursor;
import android.database.sqlite.SQLiteException;
+import android.os.Environment;
import android.util.Log;
import java.io.File;
@@ -67,6 +69,10 @@ public class BluetoothOppUtility {
private static final ConcurrentHashMap<Uri, BluetoothOppSendFileInfo> sSendFileMap
= new ConcurrentHashMap<Uri, BluetoothOppSendFileInfo>();
+ public static boolean isBluetoothShareUri(Uri uri) {
+ return uri.toString().startsWith(BluetoothShare.CONTENT_URI.toString());
+ }
+
public static BluetoothOppTransferInfo queryRecord(Context context, Uri uri) {
BluetoothOppTransferInfo info = new BluetoothOppTransferInfo();
Cursor cursor;
@@ -192,6 +198,11 @@ public class BluetoothOppUtility {
return;
}
+ if (!isBluetoothShareUri(uri)) {
+ Log.e(TAG, "Trying to open a file that wasn't transfered over Bluetooth");
+ return;
+ }
+
File f = new File(fileName);
if (!f.exists()) {
Intent in = new Intent(context, BluetoothOppBtErrorActivity.class);
@@ -207,14 +218,6 @@ public class BluetoothOppUtility {
return;
}
- CustomIntent activityIntent = new CustomIntent(Intent.ACTION_VIEW);
- if ("application/vnd.android.package-archive".equals(mimetype)) {
- // PackageInstaller doesn't like content URIs, so open file
- activityIntent.setDataAndType(Uri.fromFile(f), mimetype);
- context.startActivity(activityIntent);
- return;
- }
-
Uri path = FileProvider.getUriForFile(context,
"com.google.android.bluetooth.fileprovider", f);
// If there is no scheme, then it must be a file
@@ -223,23 +226,15 @@ public class BluetoothOppUtility {
}
if (isRecognizedFileType(context, path, mimetype)) {
+ CustomIntent activityIntent = new CustomIntent(Intent.ACTION_VIEW);
activityIntent.setDataAndTypeAndNormalize(path, mimetype);
List<ResolveInfo> resInfoList = context.getPackageManager()
.queryIntentActivities(activityIntent,
PackageManager.MATCH_DEFAULT_ONLY);
- // Grant permissions for any app that can handle a file to access it
- for (ResolveInfo resolveInfo : resInfoList) {
- String packageName = resolveInfo.activityInfo.packageName;
- context.grantUriPermission(packageName, path,
- Intent.FLAG_GRANT_WRITE_URI_PERMISSION |
- Intent.FLAG_GRANT_READ_URI_PERMISSION);
- }
-
activityIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- activityIntent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
- activityIntent.setFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
+ activityIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
try {
if (V) Log.d(TAG, "ACTION_VIEW intent sent out: " + path + " / " + mimetype);
@@ -397,6 +392,42 @@ public class BluetoothOppUtility {
}
}
+ /**
+ * Checks if the URI is in Environment.getExternalStorageDirectory() as it
+ * is the only directory that is possibly readable by both the sender and
+ * the Bluetooth process.
+ */
+ static boolean isInExternalStorageDir(Uri uri) {
+ if (!ContentResolver.SCHEME_FILE.equals(uri.getScheme())) {
+ Log.e(TAG, "Not a file URI: " + uri);
+ return false;
+ }
+ final File file = new File(uri.getCanonicalUri().getPath());
+ return isSameOrSubDirectory(Environment.getExternalStorageDirectory(), file);
+ }
+
+ /**
+ * Checks, whether the child directory is the same as, or a sub-directory of the base
+ * directory. Neither base nor child should be null.
+ */
+ static boolean isSameOrSubDirectory(File base, File child) {
+ try {
+ base = base.getCanonicalFile();
+ child = child.getCanonicalFile();
+ File parentFile = child;
+ while (parentFile != null) {
+ if (base.equals(parentFile)) {
+ return true;
+ }
+ parentFile = parentFile.getParentFile();
+ }
+ return false;
+ } catch (IOException ex) {
+ Log.e(TAG, "Error while accessing file", ex);
+ return false;
+ }
+ }
+
// Custom class to remove special characters from Intent.toString()
static class CustomIntent extends Intent {