am a4a61b09: Merge "Remove bogus apache-http dependency."

* commit 'a4a61b09975d8cefbc7baa7313376c87a585b476':
  Remove bogus apache-http dependency.
diff --git a/jni/com_android_bluetooth_gatt.cpp b/jni/com_android_bluetooth_gatt.cpp
index 823433d..166693b 100644
--- a/jni/com_android_bluetooth_gatt.cpp
+++ b/jni/com_android_bluetooth_gatt.cpp
@@ -191,6 +191,7 @@
 static jmethodID method_onExecuteWrite;
 static jmethodID method_onNotificationSent;
 static jmethodID method_onServerCongestion;
+static jmethodID method_onServerMtuChanged;
 
 /**
  * Static variables
@@ -774,6 +775,13 @@
     checkAndClearExceptionFromCallback(sCallbackEnv, __FUNCTION__);
 }
 
+void btgatts_mtu_changed_cb(int conn_id, int mtu)
+{
+    CHECK_CALLBACK_ENV
+    sCallbackEnv->CallVoidMethod(mCallbacksObj, method_onServerMtuChanged, conn_id, mtu);
+    checkAndClearExceptionFromCallback(sCallbackEnv, __FUNCTION__);
+}
+
 static const btgatt_server_callbacks_t sGattServerCallbacks = {
     btgatts_register_app_cb,
     btgatts_connection_cb,
@@ -789,7 +797,8 @@
     btgatts_request_exec_write_cb,
     btgatts_response_confirmation_cb,
     btgatts_indication_sent_cb,
-    btgatts_congestion_cb
+    btgatts_congestion_cb,
+    btgatts_mtu_changed_cb
 };
 
 /**
@@ -859,6 +868,7 @@
     method_onExecuteWrite= env->GetMethodID(clazz, "onExecuteWrite", "(Ljava/lang/String;III)V");
     method_onNotificationSent = env->GetMethodID(clazz, "onNotificationSent", "(II)V");
     method_onServerCongestion = env->GetMethodID(clazz, "onServerCongestion", "(IZ)V");
+    method_onServerMtuChanged = env->GetMethodID(clazz, "onMtuChanged", "(II)V");
 
     info("classInitNative: Success!");
 }
@@ -1720,6 +1730,8 @@
     {"gattClientUpdateAdvNative", "(IIIIIII)V", (void *) gattClientUpdateAdvNative},
     {"gattClientSetAdvDataNative", "(IZZZI[B[B[B)V", (void *) gattClientSetAdvDataNative},
     {"gattClientDisableAdvNative", "(I)V", (void *) gattClientDisableAdvNative},
+    {"gattSetAdvDataNative", "(IZZZIII[B[B[B)V", (void *) gattSetAdvDataNative},
+    {"gattAdvertiseNative", "(IZ)V", (void *) gattAdvertiseNative},
 };
 
 // JNI functions defined in ScanManager class.
@@ -1763,7 +1775,6 @@
     {"gattClientExecuteWriteNative", "(IZ)V", (void *) gattClientExecuteWriteNative},
     {"gattClientRegisterForNotificationsNative", "(ILjava/lang/String;IIJJIJJZ)V", (void *) gattClientRegisterForNotificationsNative},
     {"gattClientReadRemoteRssiNative", "(ILjava/lang/String;)V", (void *) gattClientReadRemoteRssiNative},
-    {"gattAdvertiseNative", "(IZ)V", (void *) gattAdvertiseNative},
     {"gattClientConfigureMTUNative", "(II)V", (void *) gattClientConfigureMTUNative},
     {"gattConnectionParameterUpdateNative", "(ILjava/lang/String;IIII)V", (void *) gattConnectionParameterUpdateNative},
     {"gattServerRegisterAppNative", "(JJ)V", (void *) gattServerRegisterAppNative},
@@ -1781,7 +1792,6 @@
     {"gattServerSendNotificationNative", "(III[B)V", (void *) gattServerSendNotificationNative},
     {"gattServerSendResponseNative", "(IIIIII[BI)V", (void *) gattServerSendResponseNative},
 
-    {"gattSetAdvDataNative", "(IZZZIII[B[B[B)V", (void *) gattSetAdvDataNative},
     {"gattTestNative", "(IJJLjava/lang/String;IIIII)V", (void *) gattTestNative},
 };
 
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 19e0931..8388156 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Kanselleer"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Skakel aan"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Lêeroordrag"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Aanvaar inkomende lêer?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" wil <xliff:g id="FILE">%2$s</xliff:g> vir jou stuur (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Aanvaar die lêer?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Wys af"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Aanvaar"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Ontvang tans lêer…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Stop"</string>
     <string name="download_ok" msgid="5000360731674466039">"Versteek"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Van"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Lêernaam"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Grootte"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Lêer nie ontvang nie"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Lêer: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Rede: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Open"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Verwyder uit lys"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Vee uit"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Stoor"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Kanselleer"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Kies die e-posrekeninge wat jy via Bluetooth wil deel. Jy moet steeds enige toegang tot die rekeninge aanvaar wanneer jy koppel."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Gleuwe oor:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Programikoon"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth-boodskap deel tans instellings"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Kan nie rekening kies nie. 0 gleuwe oor"</string>
 </resources>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 9912e25..6df8100 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" <xliff:g id="FILE">%2$s</xliff:g>(<xliff:g id="SIZE">%3$s</xliff:g>) ሊልኩልዎ ይፈልጋሉ፡ \n\n ፋይል ይቀበሉ?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"አትቀበል"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"ተቀበል"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"እሺ"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"የፋይል ስም"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"መጠን"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ፋይል አልደረሰም"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ፋይል: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"ምክንያት: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"ክፈት"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"ከዝርዝር አጽዳ"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"አጽዳ"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"አስቀምጥ"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"ይቅር"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"በብሉቱዝ በኩል ማጋራት የሚፈልጉትን የኢሜይል አድራሻ ይምረጡ። አሁንም በሚያገናኙበት ወቅት ወደመለያዎቹ ማንኛውንም መዳረሻ መፍቀድ አለብዎ።"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"መክተቻዎች ይቀራሉ፦"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"የመተግበሪያ አዶ"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"የብሉቱዝ የመልዕክት ማጋራት ቅንብሮች"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"መለያን መምረጥ አይቻልም። 0 መክተቻዎች ይቀራሉ"</string>
 </resources>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 290ee5b..d0969a4 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"يريد \"<xliff:g id="SENDER">%1$s</xliff:g>\" إرسال <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) لك. \n\n هل تقبل الملف؟"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"رفض"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"قبول"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"موافق"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"اسم الملف"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"الحجم"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"لم يتم استلام الملف"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"الملف: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"السبب: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"فتح"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"محو من القائمة"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"محو"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"حفظ"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"إلغاء"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"حدد حسابات البريد الإلكتروني التي تريد مشاركتها عبر بلوتوث. لا يزال يتعين عليك قبول أي دخول إلى الحسابات أثناء الاتصال."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"المنافذ المتبقية:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"رمز التطبيق"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"إعدادات مشاركة الرسائل عبر بلوتوث"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"يتعذر تحديد الحساب. عدد المنافذ المتبقية: 0"</string>
 </resources>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index d997f8e..4e31ee3 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"„<xliff:g id="SENDER">%1$s</xliff:g>“ иска да ви изпрати <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Приемате ли файла?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Отхвърляне"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Приемане"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Име на файла"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Размер"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Файлът не е получен"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Файл: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Причина: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Отваряне"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Изчистване от списъка"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Изчистване"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Запазване"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Отказ"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Изберете профилите за електронна поща, които искате да споделите чрез Bluetooth. Пак трябва да приемете достъпа до тях при свързване."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Оставащи слотове:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Икона на приложението"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Настройки за споделяне на съобщения чрез Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Не може да се избере профил. Останали са 0 слота."</string>
 </resources>
diff --git a/res/values-bn-rBD/strings.xml b/res/values-bn-rBD/strings.xml
index ebf586c..c55c483 100644
--- a/res/values-bn-rBD/strings.xml
+++ b/res/values-bn-rBD/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" আপনাকে <xliff:g id="FILE">%2$s</xliff:g>(<xliff:g id="SIZE">%3$s</xliff:g>) পাঠাতে চাইছে। \n\n ফাইলটি গ্রহণ করবেন?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"অস্বীকার করুন"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"স্বীকার করুন"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ঠিক আছে"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ফাইলের নাম"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"আকার"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ফাইল প্রাপ্ত করা যায়নি"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ফাইল: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"কারণ: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"খুলুন"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"তালিকা থেকে সাফ করুন"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"সাফ করুন"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"সংরক্ষণ করুন"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"বাতিল করুন"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Bluetooth এর মাধ্যমে ভাগ করতে চান এমন ইমেল অ্যাকাউন্টগুলি নির্বাচন করুন। সংযুক্ত হওয়ার সময় আপনাকে এখনও অ্যাকাউন্টগুলোতে অ্যাক্সেস গ্রহণ করতে হবে।"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"যে স্লটগুলি বাকি আছে:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"অ্যাপ্লিকেশান আইকন"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth মারফত বার্তা ভাগ করার সেটিংস"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"অ্যাকাউন্ট নির্বাচন করা যাচ্ছে না। ০ স্লট বাকি আছে"</string>
 </resources>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 29ab763..bd42ea8 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Cancel·la"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Activa"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transferència del fitxer"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Acceptes el fitxer entrant?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" et vol enviar <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Acceptes el fitxer?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Rebutja"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Accepta"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"D\'acord"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"S\'està rebent un fitxer..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Atura"</string>
     <string name="download_ok" msgid="5000360731674466039">"Amaga"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"De"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nom del fitxer"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Mida"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"No s\'ha rebut el fitxer"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fitxer: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motiu: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Obre"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Esborra de la llista"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Esborra"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Desa"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Cancel·la"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Selecciona els comptes de correu electrònic que vulguis compartir mitjançant Bluetooth. Cal que acceptis l\'accés als comptes en connectar-hi."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Espais que queden:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Icona d\'aplicació"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Configuració per compartir missatges mitjançant Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"No es pot seleccionar el compte. No queda cap espai."</string>
 </resources>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index fa090d8..cc087fa 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -23,15 +23,15 @@
     <string name="bt_share_picker_label" msgid="6268100924487046932">"Bluetooth"</string>
     <string name="unknown_device" msgid="9221903979877041009">"Neznámé zařízení"</string>
     <string name="unknownNumber" msgid="4994750948072751566">"Neznámé"</string>
-    <string name="airplane_error_title" msgid="2683839635115739939">"Režim Letadlo"</string>
-    <string name="airplane_error_msg" msgid="8698965595254137230">"V režimu Letadlo není možné Bluetooth použít."</string>
+    <string name="airplane_error_title" msgid="2683839635115739939">"Režim V letadle"</string>
+    <string name="airplane_error_msg" msgid="8698965595254137230">"V režimu V letadle není možné Bluetooth použít."</string>
     <string name="bt_enable_title" msgid="8657832550503456572"></string>
     <string name="bt_enable_line1" msgid="7203551583048149">"Chcete-li používat služby Bluetooth, musíte Bluetooth nejprve zapnout."</string>
     <string name="bt_enable_line2" msgid="4341936569415937994">"Zapnout Bluetooth?"</string>
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Zrušit"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Zapnout"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Přenos souborů"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Přijmout příchozí soubor?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"Uživatel <xliff:g id="SENDER">%1$s</xliff:g> se vám pokouší odeslat soubor <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Chcete soubor přijmout?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Odmítnout"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Přijmout"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Přijímání souboru..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Zastavit"</string>
     <string name="download_ok" msgid="5000360731674466039">"Skrýt"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Z"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Název souboru"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Velikost"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Soubor nebyl přijat"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Soubor: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Důvod: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Otevřít"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Vymazat ze seznamu"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Vymazat"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Uložit"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Zrušit"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Vyberte e-mailové účty, které chcete prostřednictvím Bluetooth sdílet. Při připojování bude třeba přístup k účtům i nadále schvalovat."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Zbývající sloty:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ikona aplikace"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Nastavení sdílení zpráv přes Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Účet nelze vybrat. Nezbývají žádné sloty."</string>
 </resources>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 1703da2..345400f 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Annuller"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Slå til"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Filoverførsel"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Vil du acceptere den indgående fil?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" vil sende <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) til dig. \n\n Vil du modtage filen?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Afvis"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Accepter"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Modtager fil…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Stop"</string>
     <string name="download_ok" msgid="5000360731674466039">"Skjul"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Fra"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Filnavn"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Størrelse"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Filen blev ikke modtaget"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fil: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Årsag: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Åbn"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Fjern fra listen"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Ryd"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Gem"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Annuller"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Vælg de e-mailkonti, du vil dele via Bluetooth. Du skal stadig acceptere adgang til kontiene, når du opretter forbindelse."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Pladser tilbage:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Applikationsikon"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Indstillinger for beskeddeling via Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Kontoen kan ikke vælges. Der er ikke flere pladser tilbage"</string>
 </resources>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 34eb7b9..437968d 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Abbrechen"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Aktivieren"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Dateiübertragung"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Eingehende Datei annehmen?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" möchte Ihnen <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) senden. \n\n Datei annehmen?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Ablehnen"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Akzeptieren"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Datei wird heruntergeladen..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Abbrechen"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ausblenden"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Von"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Dateiname"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Größe"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Datei nicht empfangen"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Datei: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Grund: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Öffnen"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Aus Liste löschen"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Löschen"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Speichern"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Abbrechen"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Wählen Sie die E-Mail-Konten aus, die Sie über Bluetooth freigeben möchten. Sie müssen beim Verbinden Zugriffe auf die Konten akzeptieren."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Plätze frei:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"App-Symbol"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth-Nachrichtenfreigabeeinstellungen"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Konto kann nicht ausgewählt werden. 0 Plätze frei."</string>
 </resources>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index f0b546f..b3e1993 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"Ο αποστολέας \"<xliff:g id="SENDER">%1$s</xliff:g>\" θέλει να σας στείλει το <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Αποδοχή του αρχείου;"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Απόρριψη"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Αποδοχή"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Όνομα αρχείου"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Μέγεθος"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Δεν ελήφθη το αρχείο"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Αρχείο: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Λόγος: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Άνοιγμα"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Εκκαθάριση από τη λίστα"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Εκκαθάριση"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Αποθήκευση"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Ακύρωση"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Επιλέξτε τους λογαριασμούς ηλεκτρονικού ταχυδρομείου που θέλετε να μοιραστείτε μέσω Bluetooth. Θα πρέπει ακόμη να αποδεχτείτε τυχόν αιτήματα πρόσβασης στους λογαριασμούς κατά τη σύνδεση."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Υποδοχές που απομένουν:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Εικονίδιο εφαρμογής"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Ρυθμίσεις κοινής χρήσης μηνυμάτων μέσω Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Δεν είναι δυνατή η επιλογή λογαριασμού. Απομένουν 0 υποδοχές"</string>
 </resources>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index a9604d4..6b5d696 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Cancel"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Turn on"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"File transfer"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Accept incoming file?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" wants to send you <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Accept the file?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Decline"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Accept"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Receiving file…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Stop"</string>
     <string name="download_ok" msgid="5000360731674466039">"Hide"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"From"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Filename"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Size"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"File not received"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"File: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Reason: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Open"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Clear from list"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Clear"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Save"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Cancel"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Select the email accounts that you want to share through Bluetooth. You still have to accept any access to the accounts when connecting."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Slots left:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Application Icon"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth Message Sharing Settings"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Cannot select account. 0 slots left"</string>
 </resources>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index a9604d4..6b5d696 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Cancel"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Turn on"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"File transfer"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Accept incoming file?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" wants to send you <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Accept the file?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Decline"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Accept"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Receiving file…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Stop"</string>
     <string name="download_ok" msgid="5000360731674466039">"Hide"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"From"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Filename"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Size"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"File not received"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"File: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Reason: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Open"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Clear from list"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Clear"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Save"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Cancel"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Select the email accounts that you want to share through Bluetooth. You still have to accept any access to the accounts when connecting."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Slots left:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Application Icon"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth Message Sharing Settings"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Cannot select account. 0 slots left"</string>
 </resources>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index f998297..0a39f07 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Cancelar"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Activar"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transferencia de archivo"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"¿Aceptar archivo entrante?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" desea enviarte <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n ¿Aceptas el archivo?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Rechazar"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Aceptar"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Aceptar"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Recibiendo archivo..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Detener"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ocultar"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"De"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nombre del archivo"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Tamaño"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Archivo no recibido"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Archivo: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motivo: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Abrir"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Eliminar de la lista"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Eliminar"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Guardar"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Cancelar"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Selecciona las cuentas de correo electrónico que deseas compartir a través de Bluetooth. Tendrás que aceptar cualquier acceso a las cuentas al conectarte."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Espacios restantes:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ícono de la aplicación"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Configuración de mensajes compartidos por Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"No puedes seleccionar la cuenta. No quedan espacios."</string>
 </resources>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 9770e76..43abc35 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Cancelar"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Activar"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transferencia de archivos"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"¿Aceptar archivo entrante?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" quiere enviarte <xliff:g id="FILE">%2$s</xliff:g>(<xliff:g id="SIZE">%3$s</xliff:g>). \n\n ¿Aceptas el archivo?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Rechazar"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Aceptar"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Aceptar"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Recibiendo archivo…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Detener"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ocultar"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"De"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nombre de archivo"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Tamaño"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Archivo no recibido"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Archivo: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motivo: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Abrir"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Borrar de la lista"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Borrar"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Guardar"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Cancelar"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Selecciona las cuentas de correo electrónico que quieras compartir a través de Bluetooth. Tendrás que aceptar cualquier acceso a las cuentas al establecer conexión."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Ranuras libres:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Icono de aplicación"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Ajustes de mensajes compartidos por Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"No se puede seleccionar la cuenta. No quedan ranuras"</string>
 </resources>
diff --git a/res/values-et-rEE/strings.xml b/res/values-et-rEE/strings.xml
index aba6952..1633962 100644
--- a/res/values-et-rEE/strings.xml
+++ b/res/values-et-rEE/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Tühista"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Lülita sisse"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Failiedastus"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Kas aktsepteerida sissetulev fail?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"<xliff:g id="SENDER">%1$s</xliff:g> soovib teile saata faili <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Võtan faili vastu?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Keeldu"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Nõustun"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Faili vastuvõtmine ..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Peata"</string>
     <string name="download_ok" msgid="5000360731674466039">"Peida"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Saatja"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Faili nimi"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Suurus"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Faili ei saadud"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fail: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Põhjus: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Ava"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Eemaldage loendist"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Kustuta"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Salvesta"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Tühista"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Valige e-posti kontod, mida soovite Bluetoothi kaudu jagada. Ühendamisel peate ikka lubama mis tahes juurdepääsu kontodele."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Järelejäänud vabu kohti:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Rakenduse ikoon"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetoothi sõnumijagamise seaded"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Kontot ei saa valida. Pole ühtegi vaba kohta"</string>
 </resources>
diff --git a/res/values-eu-rES/strings.xml b/res/values-eu-rES/strings.xml
index e8a60a1..b9f871b 100644
--- a/res/values-eu-rES/strings.xml
+++ b/res/values-eu-rES/strings.xml
@@ -20,7 +20,7 @@
     <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"Bluetooth bidezko partekatzeen kudeatzailea atzitzea eta fitxategiak transferitzeko erabiltzea baimentzen die aplikazioei."</string>
     <string name="permlab_bluetoothWhitelist" msgid="7091552898592306386">"Sartu sarbidedunen zerrendan Bluetooth gailua."</string>
     <string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"Bluetooth gailu bat aldi baterako sarbidedunen zerrendan sartzea baimentzen die aplikazioei, gailu honetara fitxategiak bidaltzeko baimena izan dezan, baina gailu honen erabiltzaileari berrespena eskatu beharrik gabe."</string>
-    <string name="bt_share_picker_label" msgid="6268100924487046932">"Bluetooth"</string>
+    <string name="bt_share_picker_label" msgid="6268100924487046932">"Bluetootha"</string>
     <string name="unknown_device" msgid="9221903979877041009">"Gailu ezezaguna"</string>
     <string name="unknownNumber" msgid="4994750948072751566">"Ezezaguna"</string>
     <string name="airplane_error_title" msgid="2683839635115739939">"Hegaldi modua"</string>
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Utzi"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Aktibatu"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Fitxategi-transferentzia"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Sarrerako fitxategia onartu nahi duzu?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" igorleak <xliff:g id="FILE">%2$s</xliff:g> fitxategia bidali nahi dizu (<xliff:g id="SIZE">%3$s</xliff:g>).\n\nFitxategia onartu nahi duzu?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Baztertu"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Onartu"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Ados"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Fitxategia jasotzen…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Gelditu"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ezkutatu"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Igorlea"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Fitxategi-izena"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Tamaina"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Ez da fitxategia jaso"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fitxategia: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Arrazoia: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Ireki"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Garbitu zerrendatik"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Garbitu"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Gorde"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Utzi"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Hautatu Bluetooth bidez partekatu nahi dituzun posta elektronikoko kontuak. Konektatzean, kontuak atzitzeko eskaera guztiak baimendu beharko dituzu."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Geratzen diren erretenak:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Aplikazioaren ikonoa"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth bidez mezuak partekatzeko ezarpenak"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Ezin da hautatu kontua. Ez da erretenik geratzen."</string>
 </resources>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index cf66b32..c6d5224 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" می‌خواهد <xliff:g id="FILE">%2$s</xliff:g> را به شما ارسال کند. (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n فایل را می‌پذیرید؟"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"عدم پذیرش"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"پذیرش"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"تأیید"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"نام فایل"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"اندازه"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"فایل دریافت نشد"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"فایل: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"دلیل: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"باز کردن"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"پاک کردن از لیست"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"پاک کردن"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"ذخیره‌"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"لغو"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"حساب‌های ایمیلی را که می‌خواهید از طریق بلوتوث اشتراک‌گذاری کنید، انتخاب نمایید. هنگام اتصال، همچنان باید با هر گونه دسترسی به حساب‌ها موافقت کنید."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"شیارهای باقی‌مانده:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"نماد برنامه"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"تنظیمات اشتراک‌گذاری پیام بلوتوث"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"انتخاب حساب امکان‌پذیر نیست. ۰ شیار باقی مانده است"</string>
 </resources>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 2bda5bd..53964c3 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Peruuta"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Ota käyttöön"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Tiedostonsiirto"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Hyväksytäänkö saapuva tiedosto?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"<xliff:g id="SENDER">%1$s</xliff:g> haluaa lähettää sinulle tiedoston <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Haluatko vastaanottaa tiedoston?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Hylkää"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Hyväksy"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Vastaanotetaan tiedostoa…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Lopeta"</string>
     <string name="download_ok" msgid="5000360731674466039">"Piilota"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Lähettäjä"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Tiedostonimi"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Koko"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Tiedostoa ei vastaanotettu"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Tiedosto: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Syy: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Avaa"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Poista luettelosta"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Poista"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Tallenna"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Peruuta"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Valitse, mitkä sähköpostitilit haluat jakaa Bluetoothin kautta. Tilien käyttöoikeus pitää silti hyväksyä yhdistettäessä."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Paikkoja jäljellä:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Sovelluskuvake"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetoothin viestinjakoasetukset"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Tilin valinta epäonnistui. 0 paikkaa jäljellä"</string>
 </resources>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 9d6de6c..26e97fb 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Annuler"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Activer"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transfert de fichier"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Accepter le fichier entrant?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" souhaite vous envoyer <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Accepter le fichier?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Refuser"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Accepter"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Réception de fichier en cours"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Arrêter"</string>
     <string name="download_ok" msgid="5000360731674466039">"Masquer"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"De"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nom de fichier"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Taille"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Fichier non reçu"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fichier : <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motif : <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"ouvrir"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Effacer de la liste"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Effacer"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Enregistrer"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Annuler"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Sélectionnez les comptes de courriel que vous souhaitez partager par Bluetooth. Vous devez toujours accepter l\'accès à ces comptes lors de la connexion."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Espaces libres :"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Icône de l\'application"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Paramètres de partage des messages par Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Impossible de sélectionner le compte : aucun espace libre."</string>
 </resources>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 73079af..0d3c633 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Annuler"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Activer"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transfert de fichier"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Accepter le fichier entrant ?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" souhaite vous envoyer <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Accepter le fichier ?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Refuser"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Accepter"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Réception de fichier en cours…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Arrêter"</string>
     <string name="download_ok" msgid="5000360731674466039">"Masquer"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Expéditeur"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nom de fichier"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Taille"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Fichier non reçu"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fichier : <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motif : <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Ouvrir"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Effacer de la liste"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Effacer"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Enregistrer"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Annuler"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Sélectionnez les comptes de messagerie que vous souhaitez partager via le Bluetooth. Vous devez toujours accepter l\'accès à ces comptes lors de la connexion."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Espaces libres :"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Icône de l\'application"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Paramètres de partage de la messagerie via le Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Impossible de sélectionner le compte : aucun espace libre."</string>
 </resources>
diff --git a/res/values-gl-rES/strings.xml b/res/values-gl-rES/strings.xml
index 45aa484..4be77fa 100644
--- a/res/values-gl-rES/strings.xml
+++ b/res/values-gl-rES/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Cancelar"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Activar"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transferencia de ficheiros"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Queres aceptar o ficheiro entrante?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" quere enviarche <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Queres aceptar o ficheiro?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Rexeitar"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Aceptar"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Aceptar"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Recibindo ficheiro..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Deter"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ocultar"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"De"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nome do ficheiro"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Tamaño"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Ficheiro non recibido"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Ficheiro: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motivo: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Abrir"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Borrar da lista"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Borrar"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Gardar"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Cancelar"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Selecciona as contas de correo electrónico que queres compartir por Bluetooth. Aínda tes que aceptar os accesos ás contas ao conectarte."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Rañuras restantes:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Icona da aplicación"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Configuración de mensaxes compartidas por Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Non se pode seleccionar a conta. Quedan 0 rañuras"</string>
 </resources>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 1824a79..1ccc764 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -18,34 +18,34 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <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">"ऐप्स को ब्लूटूथ डिवाइस को इस डिवाइस पर फ़ाइल भेजने की‍ अनुमति देकर, उपयोगकर्ता की पुष्टि के बिना अस्‍थायी रूप से श्वेतसूची में शामिल करने देता है."</string>
-    <string name="bt_share_picker_label" msgid="6268100924487046932">"ब्लूटूथ"</string>
-    <string name="unknown_device" msgid="9221903979877041009">"अज्ञात डिवाइस"</string>
+    <string name="permlab_bluetoothWhitelist" msgid="7091552898592306386">"श्वेतसूची 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>
     <string name="airplane_error_title" msgid="2683839635115739939">"हवाई जहाज मोड"</string>
-    <string name="airplane_error_msg" msgid="8698965595254137230">"आप हवाई जहाज मोड में ब्लूटूथ का उपयोग नहीं कर सकते हैं."</string>
+    <string name="airplane_error_msg" msgid="8698965595254137230">"आप हवाई जहाज मोड में Bluetooth का उपयोग नहीं कर सकते हैं."</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_line1" msgid="7203551583048149">"Bluetooth सेवाओं के उपयोग के लिए, आपको पहले Bluetooth चालू करना चाहिए."</string>
+    <string name="bt_enable_line2" msgid="4341936569415937994">"अभी Bluetooth चालू करें?"</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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" द्वारा आपको <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) भेजी जा रही है. \n\n फ़ाइल स्वीकार करनी है?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"अस्वीकारें"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"स्वीकारें"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ठीक है"</string>
     <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="2958227698135117210">"ब्लूटूथ शेयर: आने वाली फ़ाइल"</string>
+    <string name="incoming_file_confirm_Notification_title" msgid="2958227698135117210">"Bluetooth शेयर: आने वाली फ़ाइल"</string>
     <string name="incoming_file_confirm_Notification_caption" msgid="6671081128475981157">"क्या आप यह फ़ाइल प्राप्त करना चाहते हैं?"</string>
-    <string name="incoming_file_toast_msg" msgid="1733710749992901811">"दूसरे डिवाइस से कोई फ़ाइल आ रही है. सुनिश्चित करें कि आप यह फ़ाइल प्राप्त करना चाहते हैं."</string>
-    <string name="notification_receiving" msgid="4674648179652543984">"ब्लूटूथ शेयर: <xliff:g id="FILE">%1$s</xliff:g> प्राप्त कर रहा है"</string>
-    <string name="notification_received" msgid="3324588019186687985">"ब्लूटूथ शेयर: <xliff:g id="FILE">%1$s</xliff:g> प्राप्त"</string>
-    <string name="notification_received_fail" msgid="3619350997285714746">"ब्लूटूथ शेयर: फ़ाइल <xliff:g id="FILE">%1$s</xliff:g> प्राप्त नहीं हुई"</string>
-    <string name="notification_sending" msgid="3035748958534983833">"ब्लूटूथ शेयर: <xliff:g id="FILE">%1$s</xliff:g> भेज रहा है"</string>
-    <string name="notification_sent" msgid="9218710861333027778">"ब्लूटूथ शेयर: <xliff:g id="FILE">%1$s</xliff:g> भेजा गया"</string>
+    <string name="incoming_file_toast_msg" msgid="1733710749992901811">"दूसरे उपकरण से कोई फ़ाइल आ रही है. सुनिश्चित करें कि आप यह फ़ाइल प्राप्त करना चाहते हैं."</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">"ब्लूटूथ शेयर: फ़ाइल <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>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"फ़ाइल नाम"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"आकार"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"फ़ाइल प्राप्त नहीं हुई"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"फ़ाइल: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"कारण: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -78,14 +75,14 @@
     <string name="not_exist_file" msgid="3489434189599716133">"कोई फ़ाइल नहीं"</string>
     <string name="not_exist_file_desc" msgid="4059531573790529229">"फ़ाइल मौजूद नहीं है. \n"</string>
     <string name="enabling_progress_title" msgid="436157952334723406">"कृपया प्रतीक्षा करें..."</string>
-    <string name="enabling_progress_content" msgid="4601542238119927904">"ब्लूटूथ चालू कर रहा है…"</string>
-    <string name="bt_toast_1" msgid="972182708034353383">"फ़ाइल प्राप्त होगी. नोटिफिकेशन फलक में प्रगति देखें."</string>
+    <string name="enabling_progress_content" msgid="4601542238119927904">"Bluetooth चालू कर रहा है…"</string>
+    <string name="bt_toast_1" msgid="972182708034353383">"फ़ाइल प्राप्त होगी. सूचनाएं फलक में प्रगति देखें."</string>
     <string name="bt_toast_2" msgid="8602553334099066582">"फ़ाइल प्राप्त नहीं की जा सकती."</string>
     <string name="bt_toast_3" msgid="6707884165086862518">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" से फ़ाइल प्राप्त करना रोका गया"</string>
     <string name="bt_toast_4" msgid="4678812947604395649">"\"<xliff:g id="RECIPIENT">%1$s</xliff:g>\" को फ़ाइल भेज रहा है"</string>
     <string name="bt_toast_5" msgid="2846870992823019494">"\"<xliff:g id="RECIPIENT">%2$s</xliff:g>\" को <xliff:g id="NUMBER">%1$s</xliff:g> फ़ाइलें भेज रहा है"</string>
     <string name="bt_toast_6" msgid="1855266596936622458">"\"<xliff:g id="RECIPIENT">%1$s</xliff:g>\" को फ़ाइल भेजना रोका गया"</string>
-    <string name="bt_sm_2_1" product="nosdcard" msgid="352165168004521000">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" की फ़ाइल सहेजने के लिए USB मेमोरी में पर्याप्त स्थान नहीं है"</string>
+    <string name="bt_sm_2_1" product="nosdcard" msgid="352165168004521000">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" की फ़ाइल सहेजने के लिए USB संग्रहण में पर्याप्त स्थान नहीं है"</string>
     <string name="bt_sm_2_1" product="default" msgid="1989018443456803630">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" की फ़ाइल सहेजने के लिए SD कार्ड पर पर्याप्त स्थान नहीं है"</string>
     <string name="bt_sm_2_2" msgid="2965243265852680543">"आवश्यक स्थान: <xliff:g id="SIZE">%1$s</xliff:g>"</string>
     <string name="ErrorTooManyRequests" msgid="8578277541472944529">"बहुत सारे अनुरोधों पर कार्रवाई चल रही है. बाद में पुन: प्रयास करें."</string>
@@ -93,33 +90,26 @@
     <string name="status_running" msgid="6562808920311008696">"फ़ाइल स्थानांतरण जारी है."</string>
     <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_forbidden" msgid="613956401054050725">"लक्ष्य उपकरण द्वारा स्थानांतरण प्रतिबंधित किया गया."</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_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>
     <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="btopp_live_folder" msgid="7967791481444474554">"ब्लूटूथ प्राप्त"</string>
+    <string name="btopp_live_folder" msgid="7967791481444474554">"Bluetooth प्राप्त"</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>
     <string name="inbound_history_title" msgid="6940914942271327563">"अंतर्गामी स्थानांतरण"</string>
     <string name="outbound_history_title" msgid="4279418703178140526">"बहिर्गामी स्थानांतरण"</string>
     <string name="no_transfers" msgid="3482965619151865672">"स्थानांतरण इतिहास खाली है."</string>
     <string name="transfer_clear_dlg_msg" msgid="1712376797268438075">"सूची से सभी आइटम साफ़ कर दिए जाएंगे."</string>
-    <string name="outbound_noti_title" msgid="8051906709452260849">"ब्लूटूथ शेयर: भेजी गई फ़ाइलें"</string>
-    <string name="inbound_noti_title" msgid="4143352641953027595">"ब्लूटूथ शेयर: प्राप्त फ़ाइलें"</string>
+    <string name="outbound_noti_title" msgid="8051906709452260849">"Bluetooth शेयर: भेजी गई फ़ाइलें"</string>
+    <string name="inbound_noti_title" msgid="4143352641953027595">"Bluetooth शेयर: प्राप्त फ़ाइलें"</string>
     <string name="noti_caption" msgid="7508708288885707365">"<xliff:g id="SUCCESSFUL_NUMBER_0">%1$s</xliff:g> सफल, <xliff:g id="UNSUCCESSFUL_NUMBER">%2$s</xliff:g> विफल."</string>
     <string name="transfer_menu_clear_all" msgid="790017462957873132">"सूची साफ़ करें"</string>
     <string name="transfer_menu_open" msgid="3368984869083107200">"खोलें"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"सूची से साफ़ करें"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"साफ़ करें"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"जोड़ें"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"रहने दें"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"वे ईमेल खाते चुनें जिन्हें आप ब्लूटूथ के द्वारा साझा करना चाहते हैं. फिर भी कनेक्ट करते समय आपको खातों की सभी एक्सेस को स्वीकार करना होगा."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"शेष स्लॉट:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"ऐप्लिकेशन आइकन"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"ब्लूटूथ संदेश साझाकरण सेटिंग"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"खाता नहीं चुना जा सकता. 0 स्लॉट शेष"</string>
 </resources>
diff --git a/res/values-hi/strings_pbap.xml b/res/values-hi/strings_pbap.xml
index 96b7cc2..c63027b 100644
--- a/res/values-hi/strings_pbap.xml
+++ b/res/values-hi/strings_pbap.xml
@@ -2,7 +2,7 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="pbap_session_key_dialog_title" msgid="3580996574333882561">"%1$s के लिए सत्र कुंजी लिखें"</string>
-    <string name="pbap_session_key_dialog_header" msgid="2772472422782758981">"ब्लूटूथ सत्र कुंजी आवश्यक"</string>
+    <string name="pbap_session_key_dialog_header" msgid="2772472422782758981">"Bluetooth सत्र कुंजी आवश्यक"</string>
     <string name="pbap_acceptance_timeout_message" msgid="1107401415099814293">"%1$s के साथ कनेक्शन स्वीकार करने में समयबाह्य हुआ"</string>
     <string name="pbap_authentication_timeout_message" msgid="4166979525521902687">"%1$s के साथ सत्र कुंजी इनपुट करने में समयबाह्य हो गया था"</string>
     <string name="auth_notif_ticker" msgid="1575825798053163744">"Obex प्रमाणीकरण अनुरोध"</string>
diff --git a/res/values-hi/test_strings.xml b/res/values-hi/test_strings.xml
index 80aa680..e6889e7 100644
--- a/res/values-hi/test_strings.xml
+++ b/res/values-hi/test_strings.xml
@@ -2,9 +2,9 @@
 <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">"नमस्ते दुनिया, परीक्षण गतिविधि"</string>
-    <string name="app_name" msgid="1203877025577761792">"ब्लूटूथ शेयर"</string>
+    <string name="app_name" msgid="1203877025577761792">"Bluetooth शेयर"</string>
     <string name="insert_record" msgid="1450997173838378132">"रिकॉर्ड सम्मिलित करें"</string>
-    <string name="update_record" msgid="2480425402384910635">"रिकॉर्ड की दुबारा पूछें"</string>
+    <string name="update_record" msgid="2480425402384910635">"रिकॉर्ड की पुष्टि करें"</string>
     <string name="ack_record" msgid="6716152390978472184">"रिकॉर्ड अभिस्वीकृत करें"</string>
     <string name="deleteAll_record" msgid="4383349788485210582">"सभी रिकॉर्ड हटाएं"</string>
     <string name="ok_button" msgid="6519033415223065454">"ठीक है"</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index f8f8353..99699ad 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Odustani"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Uključi"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Prijenos datoteke"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Prihvatiti dolaznu datoteku?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" vam želi poslati <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Prihvaćate li datoteku?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Odbaci"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Prihvaćam"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"U redu"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Primanje datoteke..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Zaustavi"</string>
     <string name="download_ok" msgid="5000360731674466039">"Sakrij"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Šalje"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Naziv datoteke"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Veličina"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Datoteka nije primljena"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Datoteka: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Razlog: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Otvori"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Očisti s popisa"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Očisti"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Spremi"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Odustani"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Odaberite račune e-pošte koje želite dijeliti putem Bluetootha. I dalje morate prihvatiti pristupe računima prilikom povezivanja."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Preostala mjesta:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ikona aplikacije"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Postavke dijeljenja poruka putem Bluetootha"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Račun se ne može odabrati. Nema više nijednog mjesta"</string>
 </resources>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index cbaedf8..3a610cc 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Mégse"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Bekapcsolás"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Fájlátvitel"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Fogadja a bejövő fájlt?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" a következő fájlt szeretné elküldeni: <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Fogadja?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Elutasítás"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Elfogadás"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Fájl fogadása..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Leállítás"</string>
     <string name="download_ok" msgid="5000360731674466039">"Elrejtés"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Küldő"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Fájlnév"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Méret"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"A fájl fogadása nem sikerült"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fájl: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Indoklás: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Megnyitás"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Törlés a listáról"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Törlés"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Mentés"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Mégse"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Válassza ki a Bluetooth-kapcsolaton keresztül megosztani kívánt e-mail fiókokat. Csatlakozáskor továbbra is el kell fogadnia a fiókokhoz való hozzáférést."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Szabadon maradt helyek száma:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Alkalmazás ikonja"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth-kapcsolaton keresztüli üzenetmegosztás beállításai"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"A fiók kiválasztása sikertelen. 0 hely maradt"</string>
 </resources>
diff --git a/res/values-hy-rAM/strings.xml b/res/values-hy-rAM/strings.xml
index b7910bc..e65281e 100644
--- a/res/values-hy-rAM/strings.xml
+++ b/res/values-hy-rAM/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"«<xliff:g id="SENDER">%1$s</xliff:g>»-ը ցանկանում է ձեզ ուղարկել <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>): \n\n Ընդունե՞լ ֆայլը:"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Մերժել"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Ընդունել"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Լավ"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Ֆայլի անունը"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Չափը"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Ֆայլը չհաջողվեց ստանալ"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Ֆայլ՝ <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Պատճառը՝ <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Բաց"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Ջնջել ցուցակից"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Ջնջել"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Պահել"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Չեղարկել"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Ընտրեք էլփոստի հաշիվը, որը ցանկանում եք համօգտագործել Bluetooth-ի միջոցով: Դուք դեռ պետք է ընդունեք ցանկացած մուտքի հայց՝ միանալու ընթացքում:"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Տեղերի քանակը՝"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ծրագրի պատկերակը"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth հաղորդագրության համօգտագործման կարգավորումներ"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Հնարավոր չէ ընտրել հաշիվը: Տեղ չկա"</string>
 </resources>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 288bb00..d008bba 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Batal"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Hidupkan"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transfer file"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Terima file masuk?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" Ingin mengirimi Anda <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Terima file?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Tolak"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Terima"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Oke"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Menerima file…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Berhenti"</string>
     <string name="download_ok" msgid="5000360731674466039">"Sembunyikan"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Dari"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nama file"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Ukuran"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"File tidak diterima"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"File: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Alasan: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Buka"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Hapus dari daftar"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Bersihkan"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Simpan"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Batal"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Pilih akun email yang ingin Anda bagikan melalui Bluetooth. Anda masih harus menerima akses apa pun ke akun saat tersambung."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Slot tersisa:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ikon Aplikasi"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Setelan Berbagi Pesan Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Tidak dapat memilih akun. 0 slot tersisa"</string>
 </resources>
diff --git a/res/values-is-rIS/strings.xml b/res/values-is-rIS/strings.xml
index 401edd2..af64fec 100644
--- a/res/values-is-rIS/strings.xml
+++ b/res/values-is-rIS/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Hætta við"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Kveikja"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Skráaflutningur"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Samþykkja skrá sem berst?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"„<xliff:g id="SENDER">%1$s</xliff:g>“ vill senda þér <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Samþykkja þessa skrá?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Hafna"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Samþykkja"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Í lagi"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Tekur á móti skrá…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Stöðva"</string>
     <string name="download_ok" msgid="5000360731674466039">"Fela"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Frá"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Skráarheiti"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Stærð"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Skrá ekki móttekin"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Skrá: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Ástæða: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Opna"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Hreinsa af lista"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Hreinsa"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Vista"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Hætta við"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Veldu tölvupóstreikningana sem þú vilt deila í gegnum Bluetooth. Þú þarft samt að samþykkja allan aðgang að reikningunum við tengingu."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Hólf eftir:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Tákn forrits"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Stillingar Bluetooth-skilaboðadeilingar"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Ekki er hægt að velja reikninginn. Engin hólf eftir"</string>
 </resources>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index fa05f1b..7b8f728 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Annulla"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Attiva"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Trasferimento file"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Accettare il file in arrivo?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" vuole inviarti <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Accetti il file?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Rifiuta"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Accetta"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Ricezione file..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Interrompi"</string>
     <string name="download_ok" msgid="5000360731674466039">"Nascondi"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Da"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nome file"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Dimensioni"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"File non ricevuto"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"File: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motivo: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Apri"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Cancella da elenco"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Cancella"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Salva"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Annulla"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Seleziona gli account email che desideri condividere tramite Bluetooth. Devi comunque accettare tutti gli accessi agli account durante la connessione."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Slot a sinistra:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Icona dell\'applicazione"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Impostazioni di condivisione dei messaggi Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Impossibile selezionare l\'account. Nessuno slot rimanente"</string>
 </resources>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 8cc4aee..66e325e 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" מעוניין לשלוח לך את <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n לקבל את הקובץ?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"דחה"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"קבל"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"אישור"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"שם קובץ"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"גודל"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"הקובץ לא התקבל"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"קובץ: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"סיבה: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"פתח"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"נקה מהרשימה"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"נקה"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"שמור"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"בטל"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"‏בחר את חשבונות האימייל שברצונך לשתף באמצעות Bluetooth. עדיין יהיה עליך לאשר גישה אל החשבונות בעת החיבור."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"מקומות נותרים:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"סמל אפליקציה"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"‏הגדרות לשיתוף הודעות ב-Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"לא ניתן לבחור חשבון. נותרו 0 מקומות"</string>
 </resources>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index c843e21..219e796 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"キャンセル"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"ONにする"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"ファイル転送"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"着信ファイルを受信しますか?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"「<xliff:g id="SENDER">%1$s</xliff:g>」が<xliff:g id="FILE">%2$s</xliff:g>(<xliff:g id="SIZE">%3$s</xliff:g>)を送信しようとしています。\n\nファイルを受信しますか?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"拒否"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"承諾"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ファイル名"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"サイズ"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ファイルを受信していません"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ファイル: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"理由: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"開く"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"リストから消去"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"消去"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"保存"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"キャンセル"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Bluetoothを介して共有するメールアカウントを選択してください。接続中はアカウントへのアクセスをすべて承認する必要があります。"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"残りスロット数:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"アプリアイコン"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetoothメッセージ共有の設定"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"アカウントを選択できません。残りスロット数が0です"</string>
 </resources>
diff --git a/res/values-ka-rGE/strings.xml b/res/values-ka-rGE/strings.xml
index 0bb24d6..0668b75 100644
--- a/res/values-ka-rGE/strings.xml
+++ b/res/values-ka-rGE/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"„<xliff:g id="SENDER">%1$s</xliff:g>“ გიგზავნით <xliff:g id="FILE">%2$s</xliff:g>-ს (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n გსურთ ფაილის მიღება?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"უარყოფა"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"მიღება"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"კარგი"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ფაილის სახელი"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"ზომა"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ფაილი არ მიღებულა"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ფაილი: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"მიზეზი: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"გახსნა"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"სიიდან ამოშლა"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"ამოშლა"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"შენახვა"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"გაუქმება"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"აირჩიეთ ელფოსტის ანგარიშები, რომელთა გაზიარებაც Bluetooth-ით გსურთ. დაკავშირებისას ანგარიშებზე ნებისმიერი წვდომის დადასტურება მაინც მოგიწევთ."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"დარჩენილი სლოტი:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"აპლიკაციის ხატულა"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth შეტყობინების გაზიარების პარამეტრები"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"ანგარიშის არჩევა ვერ ხერხდება. დარჩენილია 0 სლოტი"</string>
 </resources>
diff --git a/res/values-kk-rKZ/strings.xml b/res/values-kk-rKZ/strings.xml
index c342f17..0b3818a 100644
--- a/res/values-kk-rKZ/strings.xml
+++ b/res/values-kk-rKZ/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" сізге <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) жіберуді қалайды. \n\n Файл қабылдансын ба?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Бас тарту"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Қабылдау"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Жарайды"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Файл атауы"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Өлшем"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Файл қабылданбады"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Файл: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Себеп: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Ашу"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Тізімнен өшіру."</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Өшіру"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Сақтау"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Бас тарту"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Bluetooth арқылы бөлісу керек электрондық пошта есептік жазбаларын таңдаңыз. Қосылу кезінде есептік жазбаларға кез келген қатынасты қабылдау керек."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Қалған слоттар:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Қолданба белгішесі"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth хабарын бөлісу параметрлері"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Есептік жазбаны таңдау мүмкін емес. 0 слот қалды"</string>
 </resources>
diff --git a/res/values-km-rKH/strings.xml b/res/values-km-rKH/strings.xml
index 769567b..f3f9943 100644
--- a/res/values-km-rKH/strings.xml
+++ b/res/values-km-rKH/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" ចង់​ផ្ញើ <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) ឲ្យ​អ្នក។ \n\n ទទួល​ឯកសារ?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"បោះបង់"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"ទទួល"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"យល់​ព្រម​"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ឈ្មោះ​ឯកសារ"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"ទំហំ"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"មិន​​បាន​ទទួល​​​ឯកសារ"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ឯកសារ៖ <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"មូលហេតុ៖ <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"បើក"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"សម្អាត​ពី​បញ្ជី"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"សម្អាត"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"រក្សាទុក"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"បោះបង់"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"ជ្រើស​គណនី​អ៊ីមែល​ដែល​អ្នក​ចង់​ចែករំលែក​តាម​ប៊្លូធូស។ អ្នក​នៅតែ​ត្រូវ​ទទួល​ការ​ចូល​ដំណើរការ​គណនី​ណា​មួយ​ពេល​ភ្ជាប់។"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"រន្ធ​នៅ​សល់៖"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"រូបតំណាង​កម្មវិធី"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"កំណត់​ការ​ចែករំលែក​សារ​តាម​ប៊្លូធូស"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"មិន​អាច​ជ្រើស​គណនី។ អស់​រន្ធ​នៅ​សល់"</string>
 </resources>
diff --git a/res/values-kn-rIN/strings.xml b/res/values-kn-rIN/strings.xml
index 381fa7c..559d1e1 100644
--- a/res/values-kn-rIN/strings.xml
+++ b/res/values-kn-rIN/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" ಅವರು <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) ಅನ್ನು ನಿಮಗೆ ಕಳುಹಿಸಲು ಬಯಸುತ್ತಾರೆ. \n\n ಫೈಲ್‌ ಅನ್ನು ಸ್ವೀಕರಿಸುವುದೇ?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"ನಿರಾಕರಿಸಿ"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"ಸ್ವೀಕರಿಸಿ"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ಸರಿ"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ಫೈಲ್‌ಹೆಸರು"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"ಗಾತ್ರ"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ಫೈಲ್‌ ಸ್ವೀಕರಿಸಿಲ್ಲ"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ಫೈಲ್‌: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"ಕಾರಣ: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"ತೆರೆಯಿರಿ"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"ಪಟ್ಟಿಯಿಂದ ತೆರವುಗೊಳಿಸಿ"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"ತೆರವುಗೊಳಿಸು"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"ಉಳಿಸು"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"ರದ್ದುಮಾಡು"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"ಬ್ಲೂಟೂತ್‌ ಮೂಲಕ ಹಂಚಿಕೊಳ್ಳಲು ಬಯಸುವ ಇಮೇಲ್‌ ಖಾತೆಗಳನ್ನು ಆಯ್ಕೆಮಾಡಿ. ಸಂಪರ್ಕಿಸುವಾಗ ಖಾತೆಗಳಿಗೆ ಯಾವುದೇ ಪ್ರವೇಶವನ್ನು ನೀವು ಈಗಲೂ ಒಪ್ಪಿಕೊಳ್ಳಬೇಕಾಗುತ್ತದೆ."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"ಉಳಿದಿರುವ ಸ್ಲಾಟ್‌ಗಳು:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"ಅಪ್ಲಿಕೇಶನ್‌ ಐಕಾನ್‌"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"ಬ್ಲೂಟೂತ್ ಸಂದೇಶ ಹಂಚಿಕೆ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"ಖಾತೆಯನ್ನು ಆಯ್ಕೆಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ. 0 ಸ್ಲಾಟ್‌ಗಳು ಉಳಿದಿವೆ"</string>
 </resources>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index feed94d..186a3f4 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\'<xliff:g id="SENDER">%1$s</xliff:g>\'님이 <xliff:g id="FILE">%2$s</xliff:g>(<xliff:g id="SIZE">%3$s</xliff:g>)을(를) 보내려고 합니다. \n\n 파일을 수락하시겠습니까?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"거부"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"수락"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"확인"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"파일 이름"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"크기"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"파일이 수신되지 않았습니다."</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"파일: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"이유: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"열기"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"목록에서 지우기"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"지우기"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"저장"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"취소"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"블루투스를 통해 공유하려는 이메일 계정을 선택하세요. 연결할 때 계정에 대한 모든 액세스를 수락해야 합니다."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"남은 슬롯:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"애플리케이션 아이콘"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"블루투스 메시지 공유 설정"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"계정을 선택할 수 없습니다. 남은 슬롯이 없습니다."</string>
 </resources>
diff --git a/res/values-ky-rKG/strings.xml b/res/values-ky-rKG/strings.xml
index 497db31..47a2720 100644
--- a/res/values-ky-rKG/strings.xml
+++ b/res/values-ky-rKG/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" сизге <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) файлын жөнөткүсү келип жатат. \n\n Файлды кабыл аласызбы?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Баш тартуу"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Кабыл алуу"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Файлдын аталышы"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Өлчөмү"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Файл алынган жок"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Файл: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Себеп: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Ачуу"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Тизмектен алып салуу"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Тазалоо"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Сактоо"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Жокко чыгаруу"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Bluetooth аркылуу бөлүшө турган электрондук почта каттоо эсептерин тандаңыз. Туташып жатканда, каттоо эсептерине кирүү мүмкүнчүлүгүн кабыл алышыңыз керек."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Калган көзөнөктөр:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Колдонмонун сүрөтчөсү"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth билдирүү бөлүшүү жөндөөлөрү"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Каттоо эсебин тандоо мүмкүн эмес. 0 көзөнөк калды"</string>
 </resources>
diff --git a/res/values-lo-rLA/strings.xml b/res/values-lo-rLA/strings.xml
index 77af8c5..ccb0b64 100644
--- a/res/values-lo-rLA/strings.xml
+++ b/res/values-lo-rLA/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" ຕ້ອງການທີ່ຈະສົ່ງ <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) ໃຫ້ທ່ານ. \n\n ຮັບເອົາໄຟລ໌ດັ່ງກ່າວບໍ່?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"ປະຕິເສດ"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"ຮັບເອົາ"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ຕົກລົງ"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ຊື່ໄຟລ໌"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"ຂະໜາດ"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ໄຟລ໌ບໍ່ໄດ້ຮັບ"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ໄຟລ໌: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"ເຫດ​ຜົນ​: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"ເປີດ"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"ລຶບອອກຈາກລາຍການ"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"ລຶບ"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"ບັນທຶກ"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"​ຍົກ​ເລີກ"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"ເລືອກ​ບັນ​ຊີ​ອີ​ເມວ​ທີ່​ທ່ານ​ຕ້ອງ​ການ​​ແບ່ງ​ປັນ​ຜ່ານ Bluetooth. ​ທ່ານ​ຍັງ​ຄົງ​ຕ້ອງຍອມ​ຮັບ​ການ​ເຂົ້າ​ເຖິງ​ໃດໆ​ຕໍ່​ບັນ​ຊີ​ຕ່າງໆ​ເມື່ອ​ທຳ​ການ​ເຊື່ອມ​ຕໍ່."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"ຊ່ອງ​ຊ້າຍ:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"​ໄອ​ຄອນ​ແອັບ​ພລິ​ເຄ​ຊັນ"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"ການ​ຕັ້ງ​ຄ່າ​ແບ່ງ​ປັນ​ຂໍ້​ຄວາມ Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"ບໍ່​ສາ​ມາດ​ເລືອກ​ບັນ​ຊີ​ໄດ້. ​ເຫຼືອ 0 ຊ່ອງ"</string>
 </resources>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 2e2f2a5a..8580c4e 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Atšaukti"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Įjungti"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Failo perkėlimas"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Priimti gaunamą failą?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"<xliff:g id="SENDER">%1$s</xliff:g> nori jums atsiųsti <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Priimti failą?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Atmesti"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Priimti"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Gerai"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Gaunamas failas..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Sustabdyti"</string>
     <string name="download_ok" msgid="5000360731674466039">"Slėpti"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Nuo"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Failo pavadinimas"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Dydis"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Failas negautas"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Failas: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Priežastis: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Atidaryti"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Išvalyti iš sąrašo"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Išvalyti"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Išsaugoti"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Atšaukti"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Pasirinkite el. pašto paskyras, kurias norite bendrinti per „Bluetooth“. Jungiantis vis tiek reikės suteikti prieigą prie paskyrų."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Liko sričių:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Programos piktograma"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"„Bluetooth“ pranešimų bendrinimo nustatymai"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Negalima pasirinkti paskyros. Neliko jokių sričių"</string>
 </resources>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index ca02f04..7860110 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Atcelt"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Ieslēgt"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Faila pārsūtīšana"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Vai pieņemt ienākošo failu?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"<xliff:g id="SENDER">%1$s</xliff:g> vēlas nosūtīt jums failu <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>).\n\nVai pieņemt šo failu?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Noraidīt"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Piekrist"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Labi"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Notiek faila saņemšana..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Apturēt"</string>
     <string name="download_ok" msgid="5000360731674466039">"Slēpt"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"No"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Faila nosaukums"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Lielums"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Fails netika saņemts."</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fails: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Iemesls: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Atvērt"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Notīrīt no saraksta"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Notīrīšana"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Saglabāt"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Atcelt"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Atlasiet e-pasta kontus, kurus vēlaties koplietot, izmantojot Bluetooth. Kad tiks izveidots savienojums, jums joprojām būs jāapstiprina piekļuve kontiem."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Atlikušie sloti:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Lietojumprogrammas ikona"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth ziņojumu kopīgošanas iestatījumi"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Nevar atlasīt kontu. Atlicis 0 slotu."</string>
 </resources>
diff --git a/res/values-mk-rMK/strings.xml b/res/values-mk-rMK/strings.xml
index 1c19c91..546de36 100644
--- a/res/values-mk-rMK/strings.xml
+++ b/res/values-mk-rMK/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"„<xliff:g id="SENDER">%1$s</xliff:g>“ сака да ти испрати <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n \nПрифати датотеката?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Одбиј"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Прифати"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Во ред"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Име на датотека"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Големина"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Датотеката не е примена"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Датотека: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Причина: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Отвори"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Исчисти од списокот"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Исчисти"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Зачувај"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Откажи"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Изберете ја сметката на е-пошта што сакате да ја споделите преку Bluetooth. Сепак ќе мора да го прифаќате секој пристап до сметките при поврзувањето."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Слободни отвори:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Икона на апликацијата"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Параметри за споделување пораки преку Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Не може да се избере сметка. 0 слободни отвори"</string>
 </resources>
diff --git a/res/values-ml-rIN/strings.xml b/res/values-ml-rIN/strings.xml
index 86356e2..3f51196 100644
--- a/res/values-ml-rIN/strings.xml
+++ b/res/values-ml-rIN/strings.xml
@@ -18,34 +18,34 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="permlab_bluetoothShareManager" msgid="311492132450338925">"ഡൗൺലോഡ് മാനേജർ ആക്‌സസ്സുചെയ്യുക."</string>
     <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"BluetoothShare മാനേജർ ആക്‌സസ്സുചെയ്യാനും ഫയലുകൾ കൈമാറാൻ അത് ഉപയോഗിക്കാനും അപ്ലിക്കേഷനെ അനുവദിക്കുന്നു."</string>
-    <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="permlab_bluetoothWhitelist" msgid="7091552898592306386">"വൈറ്റ്‌ലിസ്റ്റ് 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>
-    <string name="airplane_error_title" msgid="2683839635115739939">"ഫ്ലൈറ്റ് മോഡ്"</string>
-    <string name="airplane_error_msg" msgid="8698965595254137230">"നിങ്ങൾക്ക് വിമാന മോഡിൽ ബ്ലൂടൂത്ത് ഉപയോഗിക്കാനാകില്ല."</string>
+    <string name="airplane_error_title" msgid="2683839635115739939">"വിമാന മോഡ്"</string>
+    <string name="airplane_error_msg" msgid="8698965595254137230">"നിങ്ങൾക്ക് വിമാന മോഡിൽ Bluetooth ഉപയോഗിക്കാനാകില്ല."</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_line1" msgid="7203551583048149">"Bluetooth സേവനങ്ങൾ ഉപയോഗിക്കാൻ, നിങ്ങൾ ആദ്യം Bluetooth ഓൺ ചെയ്യണം."</string>
+    <string name="bt_enable_line2" msgid="4341936569415937994">"ഇപ്പോൾ Bluetooth ഓണാക്കണോ?"</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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\", നിങ്ങൾക്ക് <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) അയയ്‌ക്കാൻ താൽപ്പര്യപ്പെടുന്നു. \n\n ഫയൽ സ്വീകരിക്കണോ?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"നിരസിക്കുക"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"സ്വീകരിക്കുക"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ശരി"</string>
     <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="2958227698135117210">"ബ്ലൂടൂത്ത് പങ്കിടൽ: ഇൻകമിംഗ് ഫയൽ"</string>
+    <string name="incoming_file_confirm_Notification_title" msgid="2958227698135117210">"Bluetooth പങ്കിടൽ: ഇൻകമിംഗ് ഫയൽ"</string>
     <string name="incoming_file_confirm_Notification_caption" msgid="6671081128475981157">"നിങ്ങൾക്ക് ഈ ഫയൽ നേടണോ?"</string>
     <string name="incoming_file_toast_msg" msgid="1733710749992901811">"മറ്റൊരു ഉപകരണത്തിൽ നിന്നുള്ള ഇൻകമിംഗ് ഫയൽ. ഈ ഫയൽ നിങ്ങൾക്ക് നേടണമെങ്കിൽ സ്ഥിരീകരിക്കുക."</string>
-    <string name="notification_receiving" msgid="4674648179652543984">"ബ്ലൂടൂത്ത് പങ്കിടൽ: <xliff:g id="FILE">%1$s</xliff:g> എന്ന ഫയൽ ലഭിക്കുന്നു"</string>
-    <string name="notification_received" msgid="3324588019186687985">"ബ്ലൂടൂത്ത് പങ്കിടൽ: <xliff:g id="FILE">%1$s</xliff:g> ലഭിച്ചു"</string>
-    <string name="notification_received_fail" msgid="3619350997285714746">"ബ്ലൂടൂത്ത് പങ്കിടൽ: <xliff:g id="FILE">%1$s</xliff:g> എന്ന ഫയൽ ലഭിച്ചില്ല."</string>
-    <string name="notification_sending" msgid="3035748958534983833">"ബ്ലൂടൂത്ത് പങ്കിടൽ: <xliff:g id="FILE">%1$s</xliff:g> എന്ന ഫയൽ അയയ്‌ക്കുന്നു"</string>
-    <string name="notification_sent" msgid="9218710861333027778">"ബ്ലൂടൂത്ത് പങ്കിടൽ: <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">"ബ്ലൂടൂത്ത് പങ്കിടൽ: <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>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ഫയല്‍നാമം"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"വലുപ്പം"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ഫയൽ ലഭിച്ചില്ല"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ഫയൽ: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"കാരണം: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -78,7 +75,7 @@
     <string name="not_exist_file" msgid="3489434189599716133">"ഫയലൊന്നുമില്ല"</string>
     <string name="not_exist_file_desc" msgid="4059531573790529229">"ഈ ഫയൽ നിലവിലില്ല. \n"</string>
     <string name="enabling_progress_title" msgid="436157952334723406">"കാത്തിരിക്കുക…"</string>
-    <string name="enabling_progress_content" msgid="4601542238119927904">"ബ്ലൂടൂത്ത് ഓൺ ചെയ്യുന്നു…"</string>
+    <string name="enabling_progress_content" msgid="4601542238119927904">"Bluetooth ഓൺ ചെയ്യുന്നു…"</string>
     <string name="bt_toast_1" msgid="972182708034353383">"ഫയൽ ലഭിക്കും. അറിയിപ്പ് പാനലിൽ പുരോഗതി പരിശോധിക്കുക."</string>
     <string name="bt_toast_2" msgid="8602553334099066582">"ഫയൽ നേടാനാകില്ല."</string>
     <string name="bt_toast_3" msgid="6707884165086862518">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" എന്നയാളിൽ നിന്നും ഫയൽ നേടുന്നത് നിർത്തി"</string>
@@ -101,25 +98,18 @@
     <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="btopp_live_folder" msgid="7967791481444474554">"ബ്ലൂടൂത്ത് ലഭിച്ചു"</string>
+    <string name="btopp_live_folder" msgid="7967791481444474554">"Bluetooth ലഭിച്ചു"</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>
     <string name="inbound_history_title" msgid="6940914942271327563">"ഇൻബൗണ്ട് കൈമാറലുകൾ"</string>
     <string name="outbound_history_title" msgid="4279418703178140526">"ഔട്ട്‌ബൗണ്ട് കൈമാറലുകൾ"</string>
     <string name="no_transfers" msgid="3482965619151865672">"കൈമാറൽ ചരിത്രം ശൂന്യമാണ്."</string>
     <string name="transfer_clear_dlg_msg" msgid="1712376797268438075">"ലിസ്റ്റിൽ നിന്നും എല്ലാ ഇനങ്ങളും മായ്‌ക്കും."</string>
-    <string name="outbound_noti_title" msgid="8051906709452260849">"ബ്ലൂടൂത്ത് പങ്കിടൽ: അയച്ച ഫയലുകൾ"</string>
-    <string name="inbound_noti_title" msgid="4143352641953027595">"ബ്ലൂടൂത്ത് പങ്കിടൽ: ലഭിച്ച ഫയലുകൾ"</string>
+    <string name="outbound_noti_title" msgid="8051906709452260849">"Bluetooth പങ്കിടൽ: അയച്ച ഫയലുകൾ"</string>
+    <string name="inbound_noti_title" msgid="4143352641953027595">"Bluetooth പങ്കിടൽ: ലഭിച്ച ഫയലുകൾ"</string>
     <string name="noti_caption" msgid="7508708288885707365">"<xliff:g id="SUCCESSFUL_NUMBER_0">%1$s</xliff:g> എണ്ണം വിജയകരം, <xliff:g id="UNSUCCESSFUL_NUMBER">%2$s</xliff:g> എണ്ണം പരാജയപ്പെട്ടു."</string>
     <string name="transfer_menu_clear_all" msgid="790017462957873132">"ലിസ്റ്റ് മായ്‌ക്കുക"</string>
     <string name="transfer_menu_open" msgid="3368984869083107200">"തുറക്കുക"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"ലിസ്റ്റിൽ നിന്നും മായ്‌ക്കുക"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"മായ്‌ക്കുക"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"സംരക്ഷിക്കുക"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"റദ്ദാക്കുക"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"ബ്ലൂടൂത്ത് വഴി പങ്കിടേണ്ട ഇമെയിൽ അക്കൗണ്ടുകൾ തിരഞ്ഞെടുക്കുക. കണക്‌റ്റുചെയ്യുമ്പോൾ അക്കൗണ്ടുകളിലേക്കുള്ള എല്ലാ ആക്‌സസ്സും നിങ്ങൾ തുടർന്നും അംഗീകരിക്കേണ്ടതുണ്ട്."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"ശേഷിക്കുന്ന സ്ലോട്ടുകൾ:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"അപ്ലിക്കേഷൻ ഐക്കൺ"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"ബ്ലൂടൂത്ത് സന്ദേശം പങ്കിടൽ ക്രമീകരണങ്ങൾ"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"അക്കൗണ്ട് തിരഞ്ഞെടുക്കാനാകില്ല. 0 സ്ലോട്ടുകൾ ശേഷിക്കുന്നു"</string>
 </resources>
diff --git a/res/values-ml-rIN/strings_pbap.xml b/res/values-ml-rIN/strings_pbap.xml
index f6d8a12..3acf7fc 100644
--- a/res/values-ml-rIN/strings_pbap.xml
+++ b/res/values-ml-rIN/strings_pbap.xml
@@ -2,7 +2,7 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="pbap_session_key_dialog_title" msgid="3580996574333882561">"%1$s എന്നതിനുള്ള സെഷൻ കീ ടൈപ്പുചെയ്യുക"</string>
-    <string name="pbap_session_key_dialog_header" msgid="2772472422782758981">"ബ്ലൂടൂത്ത് സെഷൻ കീ ആവശ്യമാണ്"</string>
+    <string name="pbap_session_key_dialog_header" msgid="2772472422782758981">"Bluetooth സെഷൻ കീ ആവശ്യമാണ്"</string>
     <string name="pbap_acceptance_timeout_message" msgid="1107401415099814293">"%1$s എന്നതുമായുള്ള കണക്ഷൻ അംഗീകരിക്കുന്നത് കാലഹരണപ്പെട്ടു"</string>
     <string name="pbap_authentication_timeout_message" msgid="4166979525521902687">"%1$s എന്നതിൽ സെഷൻ കീ നൽകുന്നത് കാലഹരണപ്പെട്ടു"</string>
     <string name="auth_notif_ticker" msgid="1575825798053163744">"Obex പ്രാമാണീകരണ അഭ്യർത്ഥന"</string>
diff --git a/res/values-ml-rIN/test_strings.xml b/res/values-ml-rIN/test_strings.xml
index fe0a192..493e180 100644
--- a/res/values-ml-rIN/test_strings.xml
+++ b/res/values-ml-rIN/test_strings.xml
@@ -2,7 +2,7 @@
 <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">"ഹലോ ലോകമേ, TestActivity"</string>
-    <string name="app_name" msgid="1203877025577761792">"ബ്ലൂടൂത്ത് പങ്കിടൽ"</string>
+    <string name="app_name" msgid="1203877025577761792">"Bluetooth പങ്കിടൽ"</string>
     <string name="insert_record" msgid="1450997173838378132">"റെക്കോർഡ് ചേർക്കുക"</string>
     <string name="update_record" msgid="2480425402384910635">"റെക്കോർഡ് സ്ഥിരീകരിക്കുക"</string>
     <string name="ack_record" msgid="6716152390978472184">"Ack റെക്കോർഡ്"</string>
diff --git a/res/values-mn-rMN/strings.xml b/res/values-mn-rMN/strings.xml
index de6b82d..cdfb557 100644
--- a/res/values-mn-rMN/strings.xml
+++ b/res/values-mn-rMN/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" танд <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>)-г илгээхийг хүсэж байна. \n\n Энэ файлыг авах уу?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Татгалзах"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Зөвшөөрөх"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Тийм"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Файлын нэр"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Хэмжээ"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Файлыг хүлээж аваагүй"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Файл: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Шалтгаан: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Нээх"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Жагсаалтаас арилгах"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Арилгах"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Хадгалах"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Цуцлах"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Блютүүтээр хуваалцахыг хүсэж буй имэйл акаунтуудыг сонгоно уу. Та холбогдох үедээ акаунт руу хандалтыг зөвшөөрөх шаардлагатай хэвээр байх болно."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Үлдсэн слотууд:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Аппликешний дүрс"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Блютүүт Зурвас Хуваалцах Тохиргоо"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Акаунтыг сонгох боломжгүй. 0 слот үлдсэн"</string>
 </resources>
diff --git a/res/values-mr-rIN/strings.xml b/res/values-mr-rIN/strings.xml
index 53bb625..25ce940 100644
--- a/res/values-mr-rIN/strings.xml
+++ b/res/values-mr-rIN/strings.xml
@@ -18,34 +18,34 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="permlab_bluetoothShareManager" msgid="311492132450338925">"डाउनलोड व्यवस्थापकावर प्रवेश करा."</string>
     <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"अ‍ॅपला BluetoothShare व्‍यवस्‍थापकामध्‍ये प्रवेश करण्‍याची आणि फायली स्‍थानांतरित करण्‍यासाठी त्याचा वापर करण्‍याची अनुमती देते."</string>
-    <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="permlab_bluetoothWhitelist" msgid="7091552898592306386">"श्वेतसूची 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>
     <string name="airplane_error_title" msgid="2683839635115739939">"विमान मोड"</string>
-    <string name="airplane_error_msg" msgid="8698965595254137230">"आपण विमान मोड मध्ये ब वापरू शकत नाही."</string>
+    <string name="airplane_error_msg" msgid="8698965595254137230">"आपण विमान मोड मध्ये Bluetooth वापरू शकत नाही."</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_line1" msgid="7203551583048149">"Bluetooth सेवांचा वापर करण्‍यासाठी, आपण प्रथम Bluetooth चालू करा."</string>
+    <string name="bt_enable_line2" msgid="4341936569415937994">"आता Bluetooth चालू करायचे?"</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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" आपल्‍याला <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) पाठवू इच्‍छित आहे. \n\n फाइल स्‍वीकार करायची?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"नकार द्या"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"स्वीकारा"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ठीक"</string>
     <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="2958227698135117210">"ब शेअर: येणारी फाइल"</string>
+    <string name="incoming_file_confirm_Notification_title" msgid="2958227698135117210">"Bluetooth शेअर: येणारी फाइल"</string>
     <string name="incoming_file_confirm_Notification_caption" msgid="6671081128475981157">"आपण ही फाइल प्राप्त करू इच्छिता?"</string>
     <string name="incoming_file_toast_msg" msgid="1733710749992901811">"दुसर्‍या डिव्‍हाइस वरील येणारी फाइल. ही फाइल आपण प्राप्त करू इच्‍छिता याची पुष्‍टी करा."</string>
-    <string name="notification_receiving" msgid="4674648179652543984">"ब शेअर: <xliff:g id="FILE">%1$s</xliff:g> प्राप्त करीत आहे"</string>
-    <string name="notification_received" msgid="3324588019186687985">"ब शेअर: <xliff:g id="FILE">%1$s</xliff:g> प्राप्त केली"</string>
-    <string name="notification_received_fail" msgid="3619350997285714746">"ब शेअर: <xliff:g id="FILE">%1$s</xliff:g> फाइल प्राप्त केली नाही"</string>
-    <string name="notification_sending" msgid="3035748958534983833">"ब शेअर: <xliff:g id="FILE">%1$s</xliff:g> पाठवित आहे"</string>
-    <string name="notification_sent" msgid="9218710861333027778">"ब शेअर: <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">"ब शेअर: <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>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"फाईलनाव"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"आकार"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"फाइल प्राप्त केली नाही"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"फाइल: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"कारण: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -78,7 +75,7 @@
     <string name="not_exist_file" msgid="3489434189599716133">"फाइल नाही"</string>
     <string name="not_exist_file_desc" msgid="4059531573790529229">"फाइल अस्‍तित्वात नाही. \n"</string>
     <string name="enabling_progress_title" msgid="436157952334723406">"कृपया प्रतीक्षा करा..."</string>
-    <string name="enabling_progress_content" msgid="4601542238119927904">"ब चालू करीत आहे…"</string>
+    <string name="enabling_progress_content" msgid="4601542238119927904">"Bluetooth चालू करीत आहे…"</string>
     <string name="bt_toast_1" msgid="972182708034353383">"फाइल प्राप्त होईल. सूचना पॅनेल मधील प्रगती तपासा."</string>
     <string name="bt_toast_2" msgid="8602553334099066582">"फाइल प्राप्त होऊ शकत नाही."</string>
     <string name="bt_toast_3" msgid="6707884165086862518">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" कडील फाइल प्राप्त करणे थांबविले"</string>
@@ -101,25 +98,18 @@
     <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="btopp_live_folder" msgid="7967791481444474554">"ब प्राप्त केले"</string>
+    <string name="btopp_live_folder" msgid="7967791481444474554">"Bluetooth प्राप्त केले"</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>
     <string name="inbound_history_title" msgid="6940914942271327563">"इनबाउंड स्‍थानांतरणे"</string>
     <string name="outbound_history_title" msgid="4279418703178140526">"आउटबाउंड स्‍थानांतरणे"</string>
     <string name="no_transfers" msgid="3482965619151865672">"स्‍थानांतरण इतिहास रिक्त आहे."</string>
     <string name="transfer_clear_dlg_msg" msgid="1712376797268438075">"सूचीमधून सर्व आयटम साफ केले जातील."</string>
-    <string name="outbound_noti_title" msgid="8051906709452260849">"ब शेअर: पाठविलेल्‍या फायली"</string>
-    <string name="inbound_noti_title" msgid="4143352641953027595">"ब शेअर: प्राप्त केलेल्‍या फायली"</string>
+    <string name="outbound_noti_title" msgid="8051906709452260849">"Bluetooth शेअर: पाठविलेल्‍या फायली"</string>
+    <string name="inbound_noti_title" msgid="4143352641953027595">"Bluetooth शेअर: प्राप्त केलेल्‍या फायली"</string>
     <string name="noti_caption" msgid="7508708288885707365">"<xliff:g id="SUCCESSFUL_NUMBER_0">%1$s</xliff:g> यशस्‍वी, <xliff:g id="UNSUCCESSFUL_NUMBER">%2$s</xliff:g> अयशस्‍वी."</string>
     <string name="transfer_menu_clear_all" msgid="790017462957873132">"सूची साफ करा"</string>
     <string name="transfer_menu_open" msgid="3368984869083107200">"उघडा"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"सूचीमधून साफ करा"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"साफ करा"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"जतन करा"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"रद्द करा"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"आपण ब द्वारे सामायिक करू इच्छित असलेली ईमेल खाती निवडा. कनेक्‍ट करताना आपल्याला खात्यांवरील कोणतेही प्रवेश अद्याप स्वीकारावे लागतील."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"स्लॉट शिल्लक:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"अनुप्रयोग चिन्ह"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"ब संदेश सामायिकरण सेटिंग्ज"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"खाते निवडू शकले नाही. 0 स्लॉट शिल्लक"</string>
 </resources>
diff --git a/res/values-mr-rIN/strings_pbap.xml b/res/values-mr-rIN/strings_pbap.xml
index 57b3f1d..9f7e71e 100644
--- a/res/values-mr-rIN/strings_pbap.xml
+++ b/res/values-mr-rIN/strings_pbap.xml
@@ -2,7 +2,7 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="pbap_session_key_dialog_title" msgid="3580996574333882561">"%1$s साठी सत्र की टाईप करा"</string>
-    <string name="pbap_session_key_dialog_header" msgid="2772472422782758981">"ब सत्र की आवश्‍यक आहे"</string>
+    <string name="pbap_session_key_dialog_header" msgid="2772472422782758981">"Bluetooth सत्र की आवश्‍यक आहे"</string>
     <string name="pbap_acceptance_timeout_message" msgid="1107401415099814293">"%1$s सह कनेक्शन स्वीकारणे कालबाह्य झाले"</string>
     <string name="pbap_authentication_timeout_message" msgid="4166979525521902687">"%1$s सह सत्र की इनपुट करणे कालबाह्य झाले"</string>
     <string name="auth_notif_ticker" msgid="1575825798053163744">"Obex प्रमाणीकरण विनंती"</string>
diff --git a/res/values-mr-rIN/test_strings.xml b/res/values-mr-rIN/test_strings.xml
index 1650fc4..e380885 100644
--- a/res/values-mr-rIN/test_strings.xml
+++ b/res/values-mr-rIN/test_strings.xml
@@ -2,7 +2,7 @@
 <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">"हॅलो वर्ल्ड, TestActivity"</string>
-    <string name="app_name" msgid="1203877025577761792">"ब शेअर"</string>
+    <string name="app_name" msgid="1203877025577761792">"Bluetooth शेअर"</string>
     <string name="insert_record" msgid="1450997173838378132">"रेकॉर्ड घाला"</string>
     <string name="update_record" msgid="2480425402384910635">"रेकॉर्डची पुष्टी करा"</string>
     <string name="ack_record" msgid="6716152390978472184">"Ack रेकॉर्ड"</string>
diff --git a/res/values-ms-rMY/strings.xml b/res/values-ms-rMY/strings.xml
index a779c23..027d372 100644
--- a/res/values-ms-rMY/strings.xml
+++ b/res/values-ms-rMY/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Batal"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Hidupkan"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Pemindahan fail"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Terima fail masuk?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" mahu menghantar <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) kepada anda. \n\n Terima fail?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Tolak"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Terima"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Menerima fail..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Berhenti"</string>
     <string name="download_ok" msgid="5000360731674466039">"Sembunyi"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Daripada"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nama fail"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Saiz"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Fail tidak diterima"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fail: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Sebab: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Buka"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Padam bersih daripada senarai"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Padam bersih"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Simpan"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Batal"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Pilih akaun e-mel yang ingin anda kongsikan melalui Bluetooth. Anda masih perlu menerima akses kepada akaun semasa menyambung."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Slot yang tinggal:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ikon Aplikasi"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Tetapan Perkongsian Mesej Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Tidak boleh memilih akaun. 0 slot yang tinggal"</string>
 </resources>
diff --git a/res/values-my-rMM/strings.xml b/res/values-my-rMM/strings.xml
index aca9f3f..8b54c91 100644
--- a/res/values-my-rMM/strings.xml
+++ b/res/values-my-rMM/strings.xml
@@ -23,18 +23,18 @@
     <string name="bt_share_picker_label" msgid="6268100924487046932">"ဘလူးတုသ်"</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_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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" မှ သင်ထံပို့ချင်ပါသည်<xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\nဖိုင်ကိုလက်ခံမည်လား?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"လက်မခံပါ"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"လက်ခံရန်"</string>
-    <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ကောင်းပြီ"</string>
+    <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"သဘောတူသည်"</string>
     <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="2958227698135117210">"ဘလူးတုသ် ဝေမျှမှု - အဝင်ဖိုင်"</string>
     <string name="incoming_file_confirm_Notification_caption" msgid="6671081128475981157">"ဤဖိုင်ကို လက်ခံမည်လား?"</string>
@@ -54,25 +54,22 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ဖိုင်အမည်"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"ဆိုက်"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ဖိုင် မရရှိပါ"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ဖိုင် - <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"အကြောင်းပြချက် - <xliff:g id="REASON">%1$s</xliff:g>"</string>
-    <string name="download_fail_ok" msgid="1521733664438320300">"ကောင်းပြီ"</string>
+    <string name="download_fail_ok" msgid="1521733664438320300">"သဘောတူသည်"</string>
     <string name="download_succ_line5" msgid="4509944688281573595">"လက်ခံရပြီးဖိုင်"</string>
     <string name="download_succ_ok" msgid="7053688246357050216">"ဖွင့်ရန်"</string>
     <string name="upload_line1" msgid="2055952074059709052">"သို့ - \"<xliff:g id="RECIPIENT">%1$s</xliff:g>\""</string>
     <string name="upload_line3" msgid="4920689672457037437">"ဖိုင်အမျိုးအစား - <xliff:g id="TYPE">%1$s</xliff:g> (<xliff:g id="SIZE">%2$s</xliff:g>)"</string>
     <string name="upload_line5" msgid="7759322537674229752">"ဖိုင်ပို့နေပါသည်"</string>
     <string name="upload_succ_line5" msgid="5687317197463383601">"ဖိုင်ပို့ပြီး"</string>
-    <string name="upload_succ_ok" msgid="7705428476405478828">"ကောင်းပြီ"</string>
+    <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_cancel" msgid="9118496285835687125">"ပိတ်ရန်"</string>
-    <string name="bt_error_btn_ok" msgid="5965151173011534240">"ကောင်းပြီ"</string>
+    <string name="bt_error_btn_ok" msgid="5965151173011534240">"သဘောတူသည်"</string>
     <string name="unknown_file" msgid="6092727753965095366">"အမျိုးအမည် မသိသောဖိုင်"</string>
     <string name="unknown_file_desc" msgid="480434281415453287">"ဤဖိုင်အမျိုးအစားကို ကိုင်တွယ်ရန် အပလီကေးရှင်းမရှိပါ\n"</string>
     <string name="not_exist_file" msgid="3489434189599716133">"ဖိုင်မရှိပါ"</string>
@@ -102,7 +99,7 @@
     <string name="status_protocol_error" msgid="3245444473429269539">"တောင်းခံခြင်းကို မှန်ကန်စွာကိုင်တွယ်မရပါ"</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="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>
     <string name="inbound_history_title" msgid="6940914942271327563">"ပြန်လည်ရောက်လာသော လွှဲမှုများ"</string>
     <string name="outbound_history_title" msgid="4279418703178140526">"ပြန်လည်ထွက်မည့် လွှဲမှုများ"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"ဖွင့်ရန်"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"စာရင်းမှ ရှင်းပစ်မည်"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"ရှင်းလင်းရန်"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"သိမ်းပါ"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"ထားတော့"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"သင်က ဘလူးတုသ် မှတစ်ဆင့် မျှဝေလိုသည့် အီးမေးလ် အကောင့်ကို ရွေးပါ။ သင်သည် အကောင့်အား ရယူသုံးလိုမှု မှန်သမျှကို ချိတ်ဆက်လာသည့် အခါမှာ လက်ခံပေးရန် လိုဦးမည်။"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"ကျန်နေသည့် အပေါက်များ:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"အပလီကေးရှင်း အိုင်ကွန်"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"ဘလူးတုသ် စာ မျှဝေရေး ဆက်တင်များ"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"ရွေးထားသည့် အကောင့်ကို မရွေးနိုင်ပါ။ သုည အပေါက်များ ကျန်နေ"</string>
 </resources>
diff --git a/res/values-my-rMM/test_strings.xml b/res/values-my-rMM/test_strings.xml
index b615a5d..52c9bb1 100644
--- a/res/values-my-rMM/test_strings.xml
+++ b/res/values-my-rMM/test_strings.xml
@@ -7,7 +7,7 @@
     <string name="update_record" msgid="2480425402384910635">"မှတ်တမ်းအတည်ပြုရန်"</string>
     <string name="ack_record" msgid="6716152390978472184">"အသိအမှတ်ပြု မှတ်တမ်း"</string>
     <string name="deleteAll_record" msgid="4383349788485210582">"မှတ်တမ်းအားလုံးကို ဖျက်ရန်"</string>
-    <string name="ok_button" msgid="6519033415223065454">"ကောင်းပြီ"</string>
+    <string name="ok_button" msgid="6519033415223065454">"သဘောတူသည်"</string>
     <string name="delete_record" msgid="4645040331967533724">"မှတ်တမ်းကို ဖျက်ရန်"</string>
     <string name="start_server" msgid="9034821924409165795">"TCP ဆာဗာ စတင်ရန်"</string>
     <string name="notify_server" msgid="4369106744022969655">"TCP ဆာဗာကို အကြောင်းကြားရန်"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 1488fae..142248d 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Avbryt"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Slå på"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Filoverføring"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Vil du godta den innkommende filen?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"«<xliff:g id="SENDER">%1$s</xliff:g>» vil sende deg <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Vil du godta filen?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Avslå"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Godta"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Mottar fil ..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Stopp"</string>
     <string name="download_ok" msgid="5000360731674466039">"Skjul"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Fra"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Filnavn"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Størrelse"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Filen ble ikke mottatt"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fil: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Årsak: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Åpne"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Fjern fra listen"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Tøm"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Lagre"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Avbryt"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Velg e-postkontoene du ønsker å dele via Bluetooth. Du må fortsatt akseptere eventuell tilgang til kontoene når du kobler til."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Plasser igjen:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Appikon"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Innstillinger for meldingsdeling via Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Kan ikke velge kontoen. Det er 0 plasser igjen"</string>
 </resources>
diff --git a/res/values-ne-rNP/strings.xml b/res/values-ne-rNP/strings.xml
index f196602..f1dfd3f 100644
--- a/res/values-ne-rNP/strings.xml
+++ b/res/values-ne-rNP/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\" <xliff:g id="SENDER">%1$s</xliff:g>\" ले तपाईँलाई <xliff:g id="FILE">%2$s</xliff:g> ( <xliff:g id="SIZE">%3$s</xliff:g> )। \n \n पठाउन चाहन्छ। फाइल स्वीकार्ने हो?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"अस्वीकार गर्नुहोस्"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"स्वीकार्नुहोस्"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ठीक छ"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"फाइलको नाम"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"आकार"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"फाइल प्राप्त भएन"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"फाइल: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"कारण: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"खोल्नुहोस्"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"सूचीबाट हटाउनुहोस्"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"हटाउनुहोस्"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"सुरक्षित गर्नुहोस्"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"रद्द गर्नुहोस्"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"तपाईँ ब्लूटूथ मार्फत साझेदारी गर्न चाहनुहुन्छ भने इमेल खाता चयन गर्नुहोस्। जडान हुँदा खाताहरूलाई तपाईँले अझै कुनै पहुँच स्वीकार्नु पर्ने हुन्छ।"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"स्लटहरू बायाँ:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"आवेदन प्रतीक"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"ब्लुटुथ सन्देश साझेदारी सेटिङहरू"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"खाता चयन गर्न सकिँदैन। ० स्लट बाँकी"</string>
 </resources>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index cda46f5..f906368 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Annuleren"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Inschakelen"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Bestandsoverdracht"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Inkomend bestand accepteren?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\'<xliff:g id="SENDER">%1$s</xliff:g>\' wil <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) naar u verzenden. \n\n Het bestand accepteren?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Weigeren"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Accepteren"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Bestand ontvangen…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Stoppen"</string>
     <string name="download_ok" msgid="5000360731674466039">"Verbergen"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Van"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Bestandsnaam"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Gootte"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Bestand niet ontvangen"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Bestand: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Reden: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Openen"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Wissen uit lijst"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Wissen"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Opslaan"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Annuleren"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Selecteer de e-mailaccounts die u wilt delen via Bluetooth. U moet nog steeds toegang tot de accounts accepteren wanneer u verbinding maakt."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Resterende posities:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"App-pictogram"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Instellingen voor berichten delen via Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Kan account niet selecteren, 0 posities resterend"</string>
 </resources>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 32ffdbd..3d4f6e5 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Anuluj"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Włącz"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Przesyłanie pliku"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Zaakceptować udostępniony plik?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"Urządzenie „<xliff:g id="SENDER">%1$s</xliff:g>” chce wysłać do Ciebie plik <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Czy zaakceptować ten plik?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Odrzuć"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Akceptuj"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Odbieranie pliku…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Zatrzymaj"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ukryj"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Od"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nazwa pliku"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Rozmiar"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Plik nie został odebrany"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Plik: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Przyczyna: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Otwórz"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Usuń z listy"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Wyczyść"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Zapisz"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Anuluj"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Wybierz konta, które chcesz udostępnić przez Bluetooth. Przy łączeniu trzeba zgodzić się na dostęp do kont."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Wolne miejsca:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ikona aplikacji"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Ustawienia udostępniania wiadomości przez Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Nie można wybrać konta. Pozostało 0 miejsc."</string>
 </resources>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index bff7a33..17dfd60 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Cancelar"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Ativar"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transferência do ficheiro"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Pretende aceitar o ficheiro a receber?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" quer enviar-lhe <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Aceita o ficheiro?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Recusar"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Aceitar"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"A receber ficheiro..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Parar"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ocultar"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"De"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nome do ficheiro"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Tamanho"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Ficheiro não recebido"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Ficheiro: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motivo: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Abrir"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Limpar da lista"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Limpar"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Guardar"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Cancelar"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Selecione as contas de email que pretende partilhar através de Bluetooth. Ao ligar, ainda tem de aceitar eventuais acessos às contas."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Ranhuras restantes:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ícone de aplicação"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Definições de partilha de mensagens por Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Não é possível selecionar a conta. Não há ranhuras restantes"</string>
 </resources>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 46cf4ae..3e917dc 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -17,9 +17,9 @@
 <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">"Acessar o gerenciador de download."</string>
-    <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"Permite que o app acesse e use o gerenciador BluetoothShare para transferir arquivos."</string>
+    <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"Permite que o aplicativo acesse e use o gerenciador BluetoothShare para transferir arquivos."</string>
     <string name="permlab_bluetoothWhitelist" msgid="7091552898592306386">"Colocar o acesso do dispositivo Bluetooth na lista de permissões."</string>
-    <string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"Permite que o app adicione um dispositivo Bluetooth à uma lista de permissões temporariamente. Assim, o dispositivo Bluetooth poderá enviar arquivos para este dispositivo sem precisar de confirmação do usuário."</string>
+    <string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"Permite que o aplicativo adicione um dispositivo Bluetooth à uma lista de permissões temporariamente. Assim, o dispositivo Bluetooth poderá enviar arquivos para este dispositivo sem precisar de confirmação do usuário."</string>
     <string name="bt_share_picker_label" msgid="6268100924487046932">"Bluetooth"</string>
     <string name="unknown_device" msgid="9221903979877041009">"Dispositivo desconhecido"</string>
     <string name="unknownNumber" msgid="4994750948072751566">"Desconhecido"</string>
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Cancelar"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Ativar"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transferência de arquivo"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Aceitar o arquivo recebido?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" deseja enviar para você <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Aceitar o arquivo?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Recusar"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Aceitar"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Recebendo arquivo…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Parar"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ocultar"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"De"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Nome do arquivo"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Tamanho"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Arquivo não recebido"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Arquivo: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motivo: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -74,7 +71,7 @@
     <string name="upload_fail_cancel" msgid="9118496285835687125">"Fechar"</string>
     <string name="bt_error_btn_ok" msgid="5965151173011534240">"OK"</string>
     <string name="unknown_file" msgid="6092727753965095366">"Arquivo desconhecido"</string>
-    <string name="unknown_file_desc" msgid="480434281415453287">"Não há um app para lidar com este tipo de arquivo. \n"</string>
+    <string name="unknown_file_desc" msgid="480434281415453287">"Não há um aplicativo para lidar com este tipo de arquivo. \n"</string>
     <string name="not_exist_file" msgid="3489434189599716133">"Nenhum arquivo"</string>
     <string name="not_exist_file_desc" msgid="4059531573790529229">"O arquivo não existe. \n"</string>
     <string name="enabling_progress_title" msgid="436157952334723406">"Aguarde..."</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Abrir"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Limpar da lista"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Limpar"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Salvar"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Cancelar"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Selecione as contas de e-mail que deseja compartilhar via Bluetooth. Você ainda precisará aceitar qualquer acesso às contas ao conectar."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Espaços disponíveis:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ícone do app"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Configurações de compartilhamento de mensagens via Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Não é possível selecionar conta. 0 espaços disponíveis"</string>
 </resources>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 6c96dfa..0999696 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Anulaţi"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Activaţi"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Transfer de fişier"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Acceptați fișierul primit?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"„<xliff:g id="SENDER">%1$s</xliff:g>” doreşte să vă trimită <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Acceptaţi acest fişier?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Refuzaţi"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Acceptaţi"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Se primeşte fişierul..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Opriţi"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ascundeţi"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"De la"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Numele fișierului"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Dimensiunea"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Fişierul nu este primit"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fişier: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Motiv: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Deschideţi"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Ștergeţi din listă"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Ștergeţi"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Salvați"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Anulați"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Selectați conturile de e-mail la care doriți să permiteți accesul prin Bluetooth. Va trebui să acceptați accesul la conturi când vă conectați."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Sloturi rămase:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Pictograma aplicației"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Setări de permitere a accesului la mesajele prin Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Nu se poate selecta contul. 0 sloturi rămase"</string>
 </resources>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index ca679fb..1a832eb 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" отправляет вам файл <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\nПринять файл?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Отклонить"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Принять"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ОК"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Имя файла"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Размер"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Файл не получен."</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Файл: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Причина: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Открыть"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Удалить из списка"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Очистить"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Сохранить"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Отмена"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Выберите аккаунты, к которым хотите предоставить доступ через Bluetooth. Доступ необходимо будет разрешать при каждом подключении."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Осталось мест:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Значок приложения"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Настройки доступа к сообщениям через Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Не удалось выбрать аккаунт: не осталось мест."</string>
 </resources>
diff --git a/res/values-si-rLK/strings.xml b/res/values-si-rLK/strings.xml
index 4d781b6..9184b4e 100644
--- a/res/values-si-rLK/strings.xml
+++ b/res/values-si-rLK/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" හට ඔබට <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) යැවීමට අවශ්‍යයි. \n\n ගොනුව පිළිගන්නද?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"ප්‍රතික්ෂේප කරන්න"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"පිළිගන්න"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"හරි"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ගොනුවේ නම"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"ප්‍රමාණය"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ගොනුව නොලැබිණි"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ගොනුව: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"හේතුව: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"විවෘත කරන්න"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"ලැයිස්තුව වෙතින් හිස් කරන්න"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"හිස් කරන්න"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"සුරකින්න"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"අවලංගු කරන්න"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"බ්ලූටූත් හරහා ඔබට බෙදාගැනීමට අවශ්‍ය ගිණුම තෝරන්න. සම්බන්ධ වන විට ගිණුම් වෙත ඕනෑම ප්‍රවේශයක් ඔබ තවමත් තේරිය යුතුය."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"ඉතිරිව ඇති විවර:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"යෙදුමේ නිරූපකය"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"බ්ලූටූත් පණිවිඩ බෙදාගැනීමේ සැකසීම්"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"ගිණුමක් තේරීම කළ නොහැක. විවර 0 ඉතිරිව තිබේ"</string>
 </resources>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index c9993c6..7b066ec 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -23,7 +23,7 @@
     <string name="bt_share_picker_label" msgid="6268100924487046932">"Bluetooth"</string>
     <string name="unknown_device" msgid="9221903979877041009">"Neznáme zariadenie"</string>
     <string name="unknownNumber" msgid="4994750948072751566">"Neznáme"</string>
-    <string name="airplane_error_title" msgid="2683839635115739939">"Režim v lietadle"</string>
+    <string name="airplane_error_title" msgid="2683839635115739939">"Režim V lietadle"</string>
     <string name="airplane_error_msg" msgid="8698965595254137230">"Technológiu Bluetooth nemôžete používať v režime V lietadle."</string>
     <string name="bt_enable_title" msgid="8657832550503456572"></string>
     <string name="bt_enable_line1" msgid="7203551583048149">"Ak chcete používať služby Bluetooth, musíte najskôr rozhranie Bluetooth zapnúť."</string>
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Zrušiť"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Zapnúť"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Prenos súborov"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Prijať prichádzajúci súbor?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"Používateľ <xliff:g id="SENDER">%1$s</xliff:g> sa vám pokúša odoslať súbor <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Chcete súbor prijať?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Odmietnuť"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Prijať"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Prebieha prijímanie súboru..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Zastaviť"</string>
     <string name="download_ok" msgid="5000360731674466039">"Skryť"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Od"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Názov súboru"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Veľkosť"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Súbor nebol prijatý"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Súbor: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Dôvod: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Otvoriť"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Vymazať zo zoznamu"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Vymazať"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Uložiť"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Zrušiť"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Vyberte e-mailové účty, ktoré chcete zdieľať prostredníctvom rozhrania Bluetooth. Počas pripájania budete musieť aj tak prijať akékoľvek prístupy k účtom."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Počet zostávajúcich slotov:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ikona aplikácie"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Nastavenia zdieľania správ prostredníctvom rozhrania Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Účet sa nedá vybrať. Nie sú k dispozícii žiadne ďalšie sloty."</string>
 </resources>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 56e035d..d52a91b 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -17,7 +17,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">"Dostop do upravitelja prenosov."</string>
-    <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"Aplikaciji omogoča dostop do upravitelja BluetoothShare in njegovo uporabo za prenašanje datotek."</string>
+    <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"Programu omogoča dostop do upravitelja BluetoothShare in njegovo uporabo za prenašanje datotek."</string>
     <string name="permlab_bluetoothWhitelist" msgid="7091552898592306386">"Doda napravo Bluetooth na seznam z dovoljenim dostopom."</string>
     <string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"Aplikaciji omogoča, da začasno uvrsti napravo Bluetooth na seznam dovoljenih, kar omogoči napravi pošiljanje datotek v to napravo brez potrditve uporabnika."</string>
     <string name="bt_share_picker_label" msgid="6268100924487046932">"Bluetooth"</string>
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Prekliči"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Vklopi"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Prenos datoteke"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Želite sprejeti dohodno datoteko?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"»<xliff:g id="SENDER">%1$s</xliff:g>« vam želi poslati <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Želite sprejeti datoteko?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Zavrni"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Sprejmi"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"V redu"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Prejemanje datoteke ..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Ustavi"</string>
     <string name="download_ok" msgid="5000360731674466039">"Skrij"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Od"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Ime datoteke"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Velikost"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Datoteka ni bila prejeta"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Datoteka: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Vzrok: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -74,7 +71,7 @@
     <string name="upload_fail_cancel" msgid="9118496285835687125">"Zapri"</string>
     <string name="bt_error_btn_ok" msgid="5965151173011534240">"V redu"</string>
     <string name="unknown_file" msgid="6092727753965095366">"Neznana datoteka"</string>
-    <string name="unknown_file_desc" msgid="480434281415453287">"Ni aplikacije, s katero bi bilo mogoče odpreti to vrsto datoteke. \n"</string>
+    <string name="unknown_file_desc" msgid="480434281415453287">"Ni programa, s katerim bi bilo mogoče odpreti to vrsto datoteke. \n"</string>
     <string name="not_exist_file" msgid="3489434189599716133">"Ni datoteke"</string>
     <string name="not_exist_file_desc" msgid="4059531573790529229">"Datoteka ne obstaja. \n"</string>
     <string name="enabling_progress_title" msgid="436157952334723406">"Počakajte ..."</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Odpri"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Počisti s seznama"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Počisti"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Shrani"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Prekliči"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Izberite e-poštne račune, ki jih želite dati v skupno rabo prek Bluetootha. Pri vzpostavljanju povezave morate še vedno sprejeti morebiten dostop do računov."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Št. mest na voljo:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ikona aplikacije"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Nastavitve skupne rabe sporočil prek Bluetootha"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Ni mogoče izbrati računa. Na voljo je 0 mest."</string>
 </resources>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index a5937d5..187f91c 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"„<xliff:g id="SENDER">%1$s</xliff:g>“ жели да вам пошаље <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Желите ли да прихватите датотеку?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Одбиј"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Прихвати"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Потврди"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Назив датотеке"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Величина"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Датотека није примљена"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Датотека: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Разлог: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Отвори"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Обриши са листе"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Брисање"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Сачувај"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Откажи"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Изаберите имејл налоге које желите да делите преко Bluetooth-а. И даље морате да прихватите било какав приступ налозима при повезивању."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Преосталих места:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Икона апликације"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Подешавања Bluetooth дељења порука"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Није могуће изабрати налог. Нема преосталих места"</string>
 </resources>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 3bbca9b..bd42b87 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Avbryt"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Aktivera"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Filöverföring"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Vill du ta emot den inkommande filen?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"<xliff:g id="SENDER">%1$s</xliff:g> vill skicka <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) till dig. \n\n Vill du ta emot filen?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Avvisa"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Godkänn"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Tar emot fil ..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Stopp"</string>
     <string name="download_ok" msgid="5000360731674466039">"Dölj"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Från"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Filnamn"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Storlek"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Filen har inte tagits emot"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fil: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Anledning: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Öppna"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Ta bort från listan"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Ta bort"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Spara"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Avbryt"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Välj vilka e-postkonton som du vill dela via Bluetooth. Du måste fortfarande godkänna åtkomst till konton när du ansluter."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Platser kvar:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Appikon"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Inställningar för meddelandedelning via Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Det gick inte att välja konton. 0 platser kvar"</string>
 </resources>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index b310daf..2497253 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Ghairi"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Washa"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Uhamishaji faili"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Ungependa kupokea faili inayoingia?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" anataka kukutumia <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Ikubali faili?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Kataa"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Kubali"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Sawa"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Inapokea faili..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Komesha"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ficha"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Kutoka"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Jina la faili"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Ukubwa"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Faili haijapokelewa"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Faili: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Sababu: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -91,7 +88,7 @@
     <string name="ErrorTooManyRequests" msgid="8578277541472944529">"Maombi mengi sana yanashughulikiwa. Jaribu tena baadaye."</string>
     <string name="status_pending" msgid="2503691772030877944">"Uhamishaji wa faili bado haijaanzishwa."</string>
     <string name="status_running" msgid="6562808920311008696">"Uhamihaji faili unaendelea."</string>
-    <string name="status_success" msgid="239573225847565868">"Faili imehamishwa."</string>
+    <string name="status_success" msgid="239573225847565868">"Uhamishaji picha umekamilika kwa mafanikio."</string>
     <string name="status_not_accept" msgid="1695082417193780738">"Maudhui haiauniwi."</string>
     <string name="status_forbidden" msgid="613956401054050725">"Uhamishaji umekatazwa na kifaa kinacholengwa."</string>
     <string name="status_canceled" msgid="6664490318773098285">"Uhamishaji umeghairiwa na mtumiaji."</string>
@@ -110,16 +107,9 @@
     <string name="transfer_clear_dlg_msg" msgid="1712376797268438075">"Vipengee vyote vitafutwa kutoka kwenye orodha."</string>
     <string name="outbound_noti_title" msgid="8051906709452260849">"Kushiriki kwa bluetooth: Faili zilizotumwa"</string>
     <string name="inbound_noti_title" msgid="4143352641953027595">"Kushiriki kwa bluetooth: Faili zilizopokelewa"</string>
-    <string name="noti_caption" msgid="7508708288885707365">"<xliff:g id="SUCCESSFUL_NUMBER_0">%1$s</xliff:g> zimetumwa, <xliff:g id="UNSUCCESSFUL_NUMBER">%2$s</xliff:g> hazikutumwa"</string>
+    <string name="noti_caption" msgid="7508708288885707365">"<xliff:g id="SUCCESSFUL_NUMBER_0">%1$s</xliff:g> zimefanikiwa, <xliff:g id="UNSUCCESSFUL_NUMBER">%2$s</xliff:g> hazikufanikiwa"</string>
     <string name="transfer_menu_clear_all" msgid="790017462957873132">"Futa orodha"</string>
     <string name="transfer_menu_open" msgid="3368984869083107200">"Fungua"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Futa kutoka orodha"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Futa"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Hifadhi"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Ghairi"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Chagua akaunti za barua pepe unazotaka kushiriki kupitia Bluetooth. Bado unatakiwa kukubali ufikiaji wowote kwenye akaunti yako wakati unaunganisha."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Nafasi zilizosalia:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Aikoni ya programu"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Mipangilio ya Kushiriki Ujumbe wa Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Haiwezi kuchagua akaunti. Nafasi 0 zimesalia"</string>
 </resources>
diff --git a/res/values-ta-rIN/strings.xml b/res/values-ta-rIN/strings.xml
index 7c8f0ab..afb2ea7 100644
--- a/res/values-ta-rIN/strings.xml
+++ b/res/values-ta-rIN/strings.xml
@@ -18,34 +18,34 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="permlab_bluetoothShareManager" msgid="311492132450338925">"பதிவிறக்க நிர்வாகியை அணுகவும்."</string>
     <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"BluetoothShare நிர்வாகியை அணுகுவதற்குப் பயன்பாட்டை அனுமதித்து,  கோப்புகளைப் பரிமாற்ற அதைப் பயன்படுத்துகிறது."</string>
-    <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="permlab_bluetoothWhitelist" msgid="7091552898592306386">"ஏற்புபட்டியல் 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>
     <string name="airplane_error_title" msgid="2683839635115739939">"விமானப் பயன்முறை"</string>
-    <string name="airplane_error_msg" msgid="8698965595254137230">"விமானப் பயன்முறையில் புளூடூத் ஐப் பயன்படுத்த முடியாது."</string>
+    <string name="airplane_error_msg" msgid="8698965595254137230">"விமானப் பயன்முறையில் Bluetooth ஐப் பயன்படுத்த முடியாது."</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_line1" msgid="7203551583048149">"Bluetooth சேவைகளைப் பயன்படுத்த, முதலில் Bluetooth ஐ இயக்க வேண்டும்."</string>
+    <string name="bt_enable_line2" msgid="4341936569415937994">"இப்போது Bluetooth ஐ இயக்கவா?"</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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\", <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) ஐ விரும்புகிறார். \n\n கோப்பை ஏற்கவா?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"நிராகரி"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"ஏற்கிறேன்"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"சரி"</string>
     <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="2958227698135117210">"புளூடூத் பகிர்வு: உள்வரும் கோப்பு"</string>
+    <string name="incoming_file_confirm_Notification_title" msgid="2958227698135117210">"Bluetooth பகிர்வு: உள்வரும் கோப்பு"</string>
     <string name="incoming_file_confirm_Notification_caption" msgid="6671081128475981157">"கோப்பைப் பெறவா?"</string>
     <string name="incoming_file_toast_msg" msgid="1733710749992901811">"வேறொரு சாதனத்திலிருந்து கோப்பு வருகிறது. அதைப் பெற விருப்பமா என்பதை உறுதிப்படுத்தவும்."</string>
-    <string name="notification_receiving" msgid="4674648179652543984">"புளூடூத் பகிர்வு: <xliff:g id="FILE">%1$s</xliff:g> ஐப் பெறுகிறது"</string>
-    <string name="notification_received" msgid="3324588019186687985">"புளூடூத் பகிர்வு: <xliff:g id="FILE">%1$s</xliff:g> பெறப்பட்டது"</string>
-    <string name="notification_received_fail" msgid="3619350997285714746">"புளூடூத் பகிர்வு: <xliff:g id="FILE">%1$s</xliff:g> ஐப் பெறவில்லை"</string>
-    <string name="notification_sending" msgid="3035748958534983833">"புளூடூத் பகிர்வு: <xliff:g id="FILE">%1$s</xliff:g> ஐ அனுப்புகிறது"</string>
-    <string name="notification_sent" msgid="9218710861333027778">"புளூடூத் பகிர்வு: <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">"புளூடூத் பகிர்வு: <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>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"கோப்புப்பெயர்"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"அளவு"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"கோப்பு பெறப்படவில்லை"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"கோப்பு: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"காரணம்: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -78,7 +75,7 @@
     <string name="not_exist_file" msgid="3489434189599716133">"கோப்பு இல்லை"</string>
     <string name="not_exist_file_desc" msgid="4059531573790529229">"கோப்பு இல்லை. \n"</string>
     <string name="enabling_progress_title" msgid="436157952334723406">"காத்திருக்கவும்…"</string>
-    <string name="enabling_progress_content" msgid="4601542238119927904">"புளூடூத்தை இயக்குகிறது…"</string>
+    <string name="enabling_progress_content" msgid="4601542238119927904">"Bluetooth ஐ இயக்குகிறது…"</string>
     <string name="bt_toast_1" msgid="972182708034353383">"கோப்பு பெறப்படும். அறிவிப்புகள் பலகத்தில் செயல்நிலையைப் பார்க்கவும்."</string>
     <string name="bt_toast_2" msgid="8602553334099066582">"கோப்பு பெறப்படவில்லை."</string>
     <string name="bt_toast_3" msgid="6707884165086862518">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" இடமிருந்து கோப்பு பெறுவது நிறுத்தப்பட்டது"</string>
@@ -101,25 +98,18 @@
     <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="btopp_live_folder" msgid="7967791481444474554">"புளூடூத் பெறப்பட்டது"</string>
+    <string name="btopp_live_folder" msgid="7967791481444474554">"Bluetooth பெறப்பட்டது"</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>
     <string name="inbound_history_title" msgid="6940914942271327563">"உள் இடமாற்றங்கள்"</string>
     <string name="outbound_history_title" msgid="4279418703178140526">"வெளிச்செல்லும் பரிமாற்றங்கள்"</string>
     <string name="no_transfers" msgid="3482965619151865672">"பரிமாற்ற வரலாற்றில் எதுவுமில்லை."</string>
     <string name="transfer_clear_dlg_msg" msgid="1712376797268438075">"எல்லா உருப்படிகளும் பட்டியலிலிருந்து அழிக்கப்படும்."</string>
-    <string name="outbound_noti_title" msgid="8051906709452260849">"புளூடூத் பகிர்வு: அனுப்பியவை"</string>
-    <string name="inbound_noti_title" msgid="4143352641953027595">"புளூடூத் பகிர்வு: பெற்ற கோப்புகள்"</string>
+    <string name="outbound_noti_title" msgid="8051906709452260849">"Bluetooth பகிர்வு: அனுப்பியவை"</string>
+    <string name="inbound_noti_title" msgid="4143352641953027595">"Bluetooth பகிர்வு: பெறப்பட்ட கோப்புகள்"</string>
     <string name="noti_caption" msgid="7508708288885707365">"<xliff:g id="SUCCESSFUL_NUMBER_0">%1$s</xliff:g> வெற்றி, <xliff:g id="UNSUCCESSFUL_NUMBER">%2$s</xliff:g> தோல்வி."</string>
     <string name="transfer_menu_clear_all" msgid="790017462957873132">"பட்டியலை அழி"</string>
     <string name="transfer_menu_open" msgid="3368984869083107200">"திற"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"பட்டியலிலிருந்து அழி"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"அழி"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"சேமி"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"ரத்துசெய்"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"புளுடூத் வழியாக பகிர விரும்பும் மின்னஞ்சல் கணக்குகளைத் தேர்வுசெய்யவும். இணைக்கும் போது கணக்கிற்கான எந்த அணுகல்களையும் ஏற்க வேண்டும்."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"மீதமுள்ள ஸ்லாட்கள்:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"பயன்பாட்டு ஐகான்"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"புளுடூத் செய்தி பகிர்தல் அமைப்புகள்"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"கணக்கைத் தேர்வுசெய்ய முடியாது. 0 ஸ்லாட்கள் மீதமுள்ளன"</string>
 </resources>
diff --git a/res/values-ta-rIN/strings_pbap.xml b/res/values-ta-rIN/strings_pbap.xml
index 1b016fb..cb51e1f 100644
--- a/res/values-ta-rIN/strings_pbap.xml
+++ b/res/values-ta-rIN/strings_pbap.xml
@@ -2,7 +2,7 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="pbap_session_key_dialog_title" msgid="3580996574333882561">"%1$s க்கான அமர்வு விசையை உள்ளிடவும்"</string>
-    <string name="pbap_session_key_dialog_header" msgid="2772472422782758981">"புளூடூத் அமர்வு விசை தேவை"</string>
+    <string name="pbap_session_key_dialog_header" msgid="2772472422782758981">"Bluetooth அமர்வு விசை தேவை"</string>
     <string name="pbap_acceptance_timeout_message" msgid="1107401415099814293">"%1$s உடனான இணைப்பை ஏற்பதற்கான நேரம் முடிந்தது"</string>
     <string name="pbap_authentication_timeout_message" msgid="4166979525521902687">"%1$s உடனான அமர்வு விசையை உள்ளிடுவதற்கான நேரம் முடிந்தது"</string>
     <string name="auth_notif_ticker" msgid="1575825798053163744">"Obex அங்கீகரிப்பு கோரிக்கை"</string>
diff --git a/res/values-ta-rIN/test_strings.xml b/res/values-ta-rIN/test_strings.xml
index 1331dbe..7ac479d 100644
--- a/res/values-ta-rIN/test_strings.xml
+++ b/res/values-ta-rIN/test_strings.xml
@@ -2,7 +2,7 @@
 <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">"அன்பார்ந்தவர்களே, TestActivity"</string>
-    <string name="app_name" msgid="1203877025577761792">"புளூடூத் பகிர்வு"</string>
+    <string name="app_name" msgid="1203877025577761792">"Bluetooth பகிர்வு"</string>
     <string name="insert_record" msgid="1450997173838378132">"பதிவைச் செருகு"</string>
     <string name="update_record" msgid="2480425402384910635">"பதிவை உறுதிப்படுத்து"</string>
     <string name="ack_record" msgid="6716152390978472184">"ஒப்புதல் பதிவு"</string>
diff --git a/res/values-te-rIN/strings.xml b/res/values-te-rIN/strings.xml
index f83cf0c..b99d988 100644
--- a/res/values-te-rIN/strings.xml
+++ b/res/values-te-rIN/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" మీకు <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>)ని పంపాలనుకుంటున్నారు. \n\n ఫైల్‌ను అంగీకరిస్తున్నారా?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"తిరస్కరిస్తున్నాను"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"అంగీకరిస్తున్నాను"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"సరే"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ఫైల్ పేరు"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"పరిమాణం"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ఫైల్ స్వీకరించబడలేదు"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ఫైల్: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"కారణం: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"తెరువు"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"జాబితా నుండి క్లియర్ చేయి"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"క్లియర్ చేయి"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"సేవ్ చేయి"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"రద్దు చేయి"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"మీరు బ్లూటూత్ ద్వారా భాగస్వామ్యం చేయాలనుకునే ఇమెయిల్ ఖాతాలను ఎంచుకోండి. మీరు ఇప్పటికీ కనెక్ట్ చేస్తున్నప్పుడు ఖాతాలకు ప్రాప్యతలను ఆమోదించాలి."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"మిగిలిన స్లాట్‌లు:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"అనువర్తన చిహ్నం"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"బ్లూటూత్ సందేశ భాగస్వామ్య సెట్టింగ్‌లు"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"ఖాతాను ఎంచుకోవడం సాధ్యపడదు. 0 స్లాట్‌లు మిగిలి ఉన్నాయి"</string>
 </resources>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index d8b11cc..739cbe2 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" ต้องการส่ง <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) ถึงคุณ \n\n ยอมรับไฟล์หรือไม่"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"ปฏิเสธ"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"ยอมรับ"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ตกลง"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"ชื่อไฟล์"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"ขนาด"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"ไม่ได้รับไฟล์"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"ไฟล์: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"เหตุผล: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"เปิด"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"ล้างจากรายการ"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"ล้าง"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"บันทึก"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"ยกเลิก"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"เลือกบัญชีอีเมลที่คุณต้องการแชร์ผ่านบลูทูธ คุณยังคงต้องยอมรับการเข้าถึงบัญชีเมื่อเชื่อมต่อ"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"ช่องที่เหลือ:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"ไอคอนแอปพลิเคชัน"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"การตั้งค่าการแชร์ข้อความผ่านบลูทูธ"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"ไม่สามารถเลือกบัญชีได้ ช่องเหลือ 0 ช่อง"</string>
 </resources>
diff --git a/res/values-th/test_strings.xml b/res/values-th/test_strings.xml
index a2cb81e..add479f 100644
--- a/res/values-th/test_strings.xml
+++ b/res/values-th/test_strings.xml
@@ -6,9 +6,9 @@
     <string name="insert_record" msgid="1450997173838378132">"แทรกบันทึก"</string>
     <string name="update_record" msgid="2480425402384910635">"ยืนยันบันทึก"</string>
     <string name="ack_record" msgid="6716152390978472184">"บันทึก Ack"</string>
-    <string name="deleteAll_record" msgid="4383349788485210582">"ลบบันทึกทั้งหมด"</string>
+    <string name="deleteAll_record" msgid="4383349788485210582">"นำออกบันทึกทั้งหมด"</string>
     <string name="ok_button" msgid="6519033415223065454">"ตกลง"</string>
-    <string name="delete_record" msgid="4645040331967533724">"ลบบันทึก"</string>
+    <string name="delete_record" msgid="4645040331967533724">"นำออกบันทึก"</string>
     <string name="start_server" msgid="9034821924409165795">"เริ่มต้นเซิร์ฟเวอร์ TCP"</string>
     <string name="notify_server" msgid="4369106744022969655">"แจ้งเตือนเซิร์ฟเวอร์ TCP"</string>
 </resources>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 49a104f..f1349b1 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Kanselahin"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"I-on"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Paglilipat ng file"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Tanggapin ang papasok na file?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"Gusto kang padalhan ni \"<xliff:g id="SENDER">%1$s</xliff:g>\" ng <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Tanggapin ang file?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Tanggihan"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Tanggapin"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Tumatanggap ng file…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Itigil"</string>
     <string name="download_ok" msgid="5000360731674466039">"Itago"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Mula sa"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Filename"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Laki"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Hindi natanggap ang file"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"File: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Dahilan: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Buksan"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"I-clear mula sa listahan"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"I-clear"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"I-save"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Kanselahin"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Piliin ang mga email account na gusto mong ibahagi sa pamamagitan ng Bluetooth. Dapat mo pa ring tanggapin ang anumang pag-access sa mga account kapag kumokonekta."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Mga slot na natitira:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Icon ng Application"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Mga Setting ng Pagbabahagi ng Mensahe sa Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Hindi mapili ang account. 0 slot ang natitira"</string>
 </resources>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index eb21faf..7b5bef2 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"İptal"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Aç"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Dosya aktarımı"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Gelen dosya kabul edilsin mi?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" size <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) dosyasını göndermek istiyor. \n\n Dosyayı kabul ediyor musunuz?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Reddet"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Kabul Et"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Tamam"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Dosya alınıyor..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Durdur"</string>
     <string name="download_ok" msgid="5000360731674466039">"Gizle"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Gönderen"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Dosya adı"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Boyut"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Dosya alınamadı"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Dosya: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Nedeni: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Aç"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Listeden temizle"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Temizle"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Kaydet"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"İptal"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Bluetooth üzerinden paylaşmak istediğiniz e-posta hesaplarını seçin. Yine de, bağlanırken hesaplara erişimi kabul etmeniz gerekecektir."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Kalan yuva sayısı:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Uygulama Simgesi"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth İleti Paylaşımı Ayarları"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Hesap seçilemiyor. 0 yuva kaldı."</string>
 </resources>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index 7852d89..c9af107 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" хоче надіслати вам <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Прийняти файл?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Відхилити"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Прийняти"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"Назва файлу"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Розмір"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Файл не отримано"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Файл: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Причина: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Відкр."</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Видал. зі списку"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Очистити"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Зберегти"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Скасувати"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Виберіть облікові записи електронної пошти, до яких ви хочете надати доступ через Bluetooth. Під час під’єднання все одно потрібно буде прийняти умови доступу до облікових записів."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Залишилося рядків:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Значок додатка"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Параметри надсилання повідомлень через Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Обліковий запис не вибрано. Залишилося 0 рядків"</string>
 </resources>
diff --git a/res/values-ur-rPK/strings.xml b/res/values-ur-rPK/strings.xml
index 2adbe97..baaaa8b 100644
--- a/res/values-ur-rPK/strings.xml
+++ b/res/values-ur-rPK/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" آپ کو <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) بھیجنا چاہتا ہے۔ \n\n فائل قبول کریں؟"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"مسترد کریں"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"قبول کریں"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"ٹھیک ہے"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"فائل کا نام"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"سائز"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"فائل موصول نہیں ہوئی"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"فائل: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"وجہ: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"کھولیں"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"فہرست سے صاف کریں"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"صاف کریں"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"محفوظ کریں"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"منسوخ کریں"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"ان ای میل اکاؤنٹس کو منتخب کریں جن کا آپ بلوٹوتھ کے ذریعے اشتراک کرنا چاہتے ہیں۔ آپ کو ابھی بھی مربوط ہوتے وقت اکاؤنٹس تک کسی رسائی کو قبول کرنا ہوگا۔"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"بچے ہوئے سلاٹس:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"ایپلیکیشن کا آئیکن"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"بلوٹوتھ پیغام کے اشتراک کی ترتیبات"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"اکاؤنٹ کو منتخب نہیں کیا جا سکتا ہے۔ 0 سلاٹس باقی ہیں"</string>
 </resources>
diff --git a/res/values-uz-rUZ/strings.xml b/res/values-uz-rUZ/strings.xml
index aafe740..58403d2 100644
--- a/res/values-uz-rUZ/strings.xml
+++ b/res/values-uz-rUZ/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Bekor qilish"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Yoqish"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Fayl uzatish"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Yuborilgan faylni qabul qilasizmi?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" sizga <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>)ni jo‘natmoqchi. \n\n Fayl qabul qilinsinmi?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Rad qilish"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Roziman"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Fayl qabul qilinmoqda…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"To‘xtatish"</string>
     <string name="download_ok" msgid="5000360731674466039">"Yashirish"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Kimdan"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Fayl nomi"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Hajmi"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Fayl qabul qilinmadi"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Fayl: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Sababi: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Ochish"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Ro‘yxatdan tozalash"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Tozalash"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Saqlash"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Bekor qilish"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Bluetooth orqali ulashmoqchi bo‘lgan e-pochta hisoblarini tanlang. Ulanayotganda ushbu hisoblarga kirish uchun har qanday so‘rovni qabul qilishingiz lozim."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Qolgan uyalar:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Ilova ikonkasi"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Bluetooth orqali xabal almashish sozlamalari"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Hisobni tanlab bo‘lmadi. 0 ta uya qoldi"</string>
 </resources>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index ea54f01..b50ab64 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Hủy"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Bật"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Chuyển tệp"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Chấp nhận tệp đến?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" muốn gửi cho bạn <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Chấp nhận tệp?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Từ chối"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Chấp nhận"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"OK"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Đang nhận tệp…"</string>
     <string name="download_cancel" msgid="9177305996747500768">"Dừng"</string>
     <string name="download_ok" msgid="5000360731674466039">"Ẩn"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Từ"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Tên tệp"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Kích thước"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Tệp chưa nhận được"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Tệp: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Lý do: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Mở"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Xóa khỏi danh sách"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Xóa"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Lưu"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Hủy"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Chọn tài khoản email mà bạn muốn chia sẻ qua Bluetooth. Bạn vẫn phải chấp nhận mọi quyền truy cập vào tài khoản khi kết nối."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Số khe cắm còn lại:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Biểu tượng ứng dụng"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Cài đặt chia sẻ thư qua Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Không chọn được tài khoản. Còn lại 0 khe cắm"</string>
 </resources>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index f3ea5fc..fe58959 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/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">"使用下载管理器。"</string>
+    <string name="permlab_bluetoothShareManager" msgid="311492132450338925">"访问下载管理器。"</string>
     <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"允许应用访问蓝牙共享 (BluetoothShare) 管理器并将其用于传输文件。"</string>
     <string name="permlab_bluetoothWhitelist" msgid="7091552898592306386">"将蓝牙设备列入访问权限白名单。"</string>
     <string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"允许该应用暂时将某个蓝牙设备列入白名单,从而允许该设备在不经过用户确认的情况下,将文件发送到本设备。"</string>
@@ -26,49 +26,46 @@
     <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_line1" msgid="7203551583048149">"若要使用蓝牙服务,您必须先打开蓝牙。"</string>
+    <string name="bt_enable_line2" msgid="4341936569415937994">"立即打开蓝牙?"</string>
     <string name="bt_enable_cancel" msgid="1988832367505151727">"取消"</string>
-    <string name="bt_enable_ok" msgid="3432462749994538265">"开启"</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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"“<xliff:g id="SENDER">%1$s</xliff:g>”想给您发送 <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>)。\n\n是否接受该文件?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"拒绝"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"接受"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"确定"</string>
     <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="2958227698135117210">"蓝牙共享:传入文件"</string>
     <string name="incoming_file_confirm_Notification_caption" msgid="6671081128475981157">"要接收该文件吗?"</string>
-    <string name="incoming_file_toast_msg" msgid="1733710749992901811">"从其他设备传入了文件,请确认是否要接收。"</string>
-    <string name="notification_receiving" msgid="4674648179652543984">"蓝牙共享:正在接收“<xliff:g id="FILE">%1$s</xliff:g>”"</string>
-    <string name="notification_received" msgid="3324588019186687985">"蓝牙共享:已接收“<xliff:g id="FILE">%1$s</xliff:g>”"</string>
-    <string name="notification_received_fail" msgid="3619350997285714746">"蓝牙共享:未收到文件“<xliff:g id="FILE">%1$s</xliff:g>”"</string>
-    <string name="notification_sending" msgid="3035748958534983833">"蓝牙共享:正在发送“<xliff:g id="FILE">%1$s</xliff:g>”"</string>
-    <string name="notification_sent" msgid="9218710861333027778">"蓝牙共享:已发送“<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">"蓝牙共享:未发送文件“<xliff:g id="FILE">%1$s</xliff:g>”"</string>
+    <string name="incoming_file_toast_msg" msgid="1733710749992901811">"从其他设备收到一个文件,请确认是否要接收该文件。"</string>
+    <string name="notification_receiving" msgid="4674648179652543984">"蓝牙共享:正在接收 <xliff:g id="FILE">%1$s</xliff:g>"</string>
+    <string name="notification_received" msgid="3324588019186687985">"蓝牙共享:<xliff:g id="FILE">%1$s</xliff:g> 已接收"</string>
+    <string name="notification_received_fail" msgid="3619350997285714746">"蓝牙共享:未收到文件 <xliff:g id="FILE">%1$s</xliff:g>"</string>
+    <string name="notification_sending" msgid="3035748958534983833">"蓝牙共享:正在发送 <xliff:g id="FILE">%1$s</xliff:g>"</string>
+    <string name="notification_sent" msgid="9218710861333027778">"蓝牙共享:<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">"蓝牙共享:未发送文件 <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_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>
     <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_cancel" msgid="9177305996747500768">"停止"</string>
     <string name="download_ok" msgid="5000360731674466039">"隐藏"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"来自"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"文件名"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"大小"</string>
-    <string name="download_fail_line1" msgid="3846450148862894552">"未收到文件"</string>
+    <string name="download_fail_line1" msgid="3846450148862894552">"未接收到文件"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"文件:<xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"原因:<xliff:g id="REASON">%1$s</xliff:g>"</string>
     <string name="download_fail_ok" msgid="1521733664438320300">"确定"</string>
     <string name="download_succ_line5" msgid="4509944688281573595">"已接收文件"</string>
     <string name="download_succ_ok" msgid="7053688246357050216">"打开"</string>
-    <string name="upload_line1" msgid="2055952074059709052">"发给:“<xliff:g id="RECIPIENT">%1$s</xliff:g>”"</string>
+    <string name="upload_line1" msgid="2055952074059709052">"收件人:“<xliff:g id="RECIPIENT">%1$s</xliff:g>”"</string>
     <string name="upload_line3" msgid="4920689672457037437">"文件类型:<xliff:g id="TYPE">%1$s</xliff:g> (<xliff:g id="SIZE">%2$s</xliff:g>)"</string>
     <string name="upload_line5" msgid="7759322537674229752">"正在发送文件..."</string>
     <string name="upload_succ_line5" msgid="5687317197463383601">"已发送文件"</string>
     <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" 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_cancel" msgid="9118496285835687125">"关闭"</string>
@@ -79,14 +76,14 @@
     <string name="not_exist_file_desc" msgid="4059531573790529229">"该文件不存在。\n"</string>
     <string name="enabling_progress_title" msgid="436157952334723406">"请稍候..."</string>
     <string name="enabling_progress_content" msgid="4601542238119927904">"正在打开蓝牙..."</string>
-    <string name="bt_toast_1" msgid="972182708034353383">"系统将会接收该文件。请在通知面板中检查进度。"</string>
+    <string name="bt_toast_1" msgid="972182708034353383">"系统将要接收该文件。请在“通知”面板中检查进度。"</string>
     <string name="bt_toast_2" msgid="8602553334099066582">"无法接收该文件。"</string>
     <string name="bt_toast_3" msgid="6707884165086862518">"已停止接收来自“<xliff:g id="SENDER">%1$s</xliff:g>”的文件"</string>
     <string name="bt_toast_4" msgid="4678812947604395649">"正在向“<xliff:g id="RECIPIENT">%1$s</xliff:g>”发送文件"</string>
-    <string name="bt_toast_5" msgid="2846870992823019494">"正在向“<xliff:g id="RECIPIENT">%2$s</xliff:g>”发送<xliff:g id="NUMBER">%1$s</xliff:g>个文件"</string>
+    <string name="bt_toast_5" msgid="2846870992823019494">"正在将 <xliff:g id="NUMBER">%1$s</xliff:g> 个文件发送给“<xliff:g id="RECIPIENT">%2$s</xliff:g>”"</string>
     <string name="bt_toast_6" msgid="1855266596936622458">"已停止向“<xliff:g id="RECIPIENT">%1$s</xliff:g>”发送文件"</string>
-    <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_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="status_pending" msgid="2503691772030877944">"尚未开始传输文件。"</string>
@@ -96,30 +93,23 @@
     <string name="status_forbidden" msgid="613956401054050725">"目标设备禁止进行传输。"</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>
+    <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>
     <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="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>
-    <string name="inbound_history_title" msgid="6940914942271327563">"传入"</string>
-    <string name="outbound_history_title" msgid="4279418703178140526">"传出"</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>
+    <string name="inbound_history_title" msgid="6940914942271327563">"传入历史记录"</string>
+    <string name="outbound_history_title" msgid="4279418703178140526">"传出历史记录"</string>
     <string name="no_transfers" msgid="3482965619151865672">"没有传输历史记录。"</string>
-    <string name="transfer_clear_dlg_msg" msgid="1712376797268438075">"所有内容都将从列表中清除。"</string>
-    <string name="outbound_noti_title" msgid="8051906709452260849">"蓝牙共享:已发送文件"</string>
-    <string name="inbound_noti_title" msgid="4143352641953027595">"蓝牙共享:已接收文件"</string>
-    <string name="noti_caption" msgid="7508708288885707365">"<xliff:g id="SUCCESSFUL_NUMBER_0">%1$s</xliff:g>个成功,<xliff:g id="UNSUCCESSFUL_NUMBER">%2$s</xliff:g>个失败。"</string>
+    <string name="transfer_clear_dlg_msg" msgid="1712376797268438075">"所有项都将从列表中清除。"</string>
+    <string name="outbound_noti_title" msgid="8051906709452260849">"蓝牙共享:已发送的文件"</string>
+    <string name="inbound_noti_title" msgid="4143352641953027595">"蓝牙共享:已接收的文件"</string>
+    <string name="noti_caption" msgid="7508708288885707365">"<xliff:g id="SUCCESSFUL_NUMBER_0">%1$s</xliff:g> 个成功,<xliff:g id="UNSUCCESSFUL_NUMBER">%2$s</xliff:g> 个失败。"</string>
     <string name="transfer_menu_clear_all" msgid="790017462957873132">"清除列表"</string>
     <string name="transfer_menu_open" msgid="3368984869083107200">"打开"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"从列表中清除"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"清除"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"保存"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"取消"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"选中您要通过蓝牙共享的电子邮件帐户。建立连接后,您仍需接受对这些帐户的访问请求。"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"剩余空档数:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"应用图标"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"蓝牙邮件共享设置"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"无法选择帐户。目前没有任何空档"</string>
 </resources>
diff --git a/res/values-zh-rCN/strings_pbap.xml b/res/values-zh-rCN/strings_pbap.xml
index dda67e4..93c4d90 100644
--- a/res/values-zh-rCN/strings_pbap.xml
+++ b/res/values-zh-rCN/strings_pbap.xml
@@ -1,13 +1,13 @@
 <?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_session_key_dialog_title" msgid="3580996574333882561">"输入%1$s的会话密钥"</string>
+    <string name="pbap_session_key_dialog_title" msgid="3580996574333882561">"键入 %1$s 的会话密钥"</string>
     <string name="pbap_session_key_dialog_header" msgid="2772472422782758981">"需要提供蓝牙会话密钥"</string>
-    <string name="pbap_acceptance_timeout_message" msgid="1107401415099814293">"接受与%1$s的连接时出现超时"</string>
-    <string name="pbap_authentication_timeout_message" msgid="4166979525521902687">"输入%1$s的会话密钥时出现超时"</string>
-    <string name="auth_notif_ticker" msgid="1575825798053163744">"OBEX身份验证请求"</string>
+    <string name="pbap_acceptance_timeout_message" msgid="1107401415099814293">"接受与 %1$s 的连接时超时"</string>
+    <string name="pbap_authentication_timeout_message" msgid="4166979525521902687">"输入带有 %1$s 的会话密钥时超时"</string>
+    <string name="auth_notif_ticker" msgid="1575825798053163744">"OBEX 身份验证请求"</string>
     <string name="auth_notif_title" msgid="7599854855681573258">"会话密钥"</string>
-    <string name="auth_notif_message" msgid="6667218116427605038">"输入%1$s的会话密钥"</string>
+    <string name="auth_notif_message" msgid="6667218116427605038">"键入 %1$s 的会话密钥"</string>
     <string name="defaultname" msgid="4821590500649090078">"Carkit"</string>
     <string name="unknownName" msgid="2841414754740600042">"未知名称"</string>
     <string name="localPhoneName" msgid="2349001318925409159">"我的名字"</string>
diff --git a/res/values-zh-rCN/test_strings.xml b/res/values-zh-rCN/test_strings.xml
index fd0a0fc..93d0f70 100644
--- a/res/values-zh-rCN/test_strings.xml
+++ b/res/values-zh-rCN/test_strings.xml
@@ -5,10 +5,10 @@
     <string name="app_name" msgid="1203877025577761792">"蓝牙共享"</string>
     <string name="insert_record" msgid="1450997173838378132">"插入记录"</string>
     <string name="update_record" msgid="2480425402384910635">"确认记录"</string>
-    <string name="ack_record" msgid="6716152390978472184">"Ack记录"</string>
+    <string name="ack_record" msgid="6716152390978472184">"Ack 记录"</string>
     <string name="deleteAll_record" msgid="4383349788485210582">"删除所有记录"</string>
     <string name="ok_button" msgid="6519033415223065454">"确定"</string>
     <string name="delete_record" msgid="4645040331967533724">"删除记录"</string>
-    <string name="start_server" msgid="9034821924409165795">"启动TCP服务器"</string>
-    <string name="notify_server" msgid="4369106744022969655">"通知TCP服务器"</string>
+    <string name="start_server" msgid="9034821924409165795">"启动 TCP 服务器"</string>
+    <string name="notify_server" msgid="4369106744022969655">"通知 TCP 服务器"</string>
 </resources>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index d3a1bd0..de58948 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -19,7 +19,7 @@
     <string name="permlab_bluetoothShareManager" msgid="311492132450338925">"存取下載管理員。"</string>
     <string name="permdesc_bluetoothShareManager" msgid="8930572979123190223">"允許應用程式存取 BluetoothShare 管理員並使用 BluetoothShare 管理員傳輸檔案。"</string>
     <string name="permlab_bluetoothWhitelist" msgid="7091552898592306386">"將藍牙裝置列入許可名單。"</string>
-    <string name="permdesc_bluetoothWhitelist" msgid="5494513855192170109">"允許應用程式暫時將藍牙裝置加入許可名單,使其不需經使用者確認便可把檔案傳送到裝置上。"</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>
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"「<xliff:g id="SENDER">%1$s</xliff:g>」想將 <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) 傳送給您。\n\n您要接收檔案嗎?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"拒絕"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"接受"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"確定"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"檔案名稱"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"大小"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"未接收檔案"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"檔案:<xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"原因: <xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -94,7 +91,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>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"開啟"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"從清單清除"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"清除"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"儲存"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"取消"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"選取您要透過藍牙分享的電郵帳戶。連線時,您仍然必須接受所有帳戶存取要求。"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"剩餘插槽數:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"應用程式圖示"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"藍牙訊息分享設定"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"無法選取帳戶 (剩餘插槽數為 0)"</string>
 </resources>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 4dfc270..3846a65 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -31,7 +31,7 @@
     <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>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"「<xliff:g id="SENDER">%1$s</xliff:g>」想將 <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>) 傳送給您。\n\n您要接收檔案嗎?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"拒絕"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"接受"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"確定"</string>
@@ -54,9 +54,6 @@
     <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>
-    <string name="incoming_line2" msgid="3348994249285315873">"檔案名稱"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"大小"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"未接收檔案"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"檔案:<xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"原因:<xliff:g id="REASON">%1$s</xliff:g>"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"開啟"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"從清單清除"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"清除"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"儲存"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"取消"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"選取您要透過藍牙分享的電子郵件帳戶。連線時,您仍須接受所有帳戶存取要求。"</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"剩餘插槽數:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"應用程式圖示"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"藍牙郵件分享設定"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"無法選取帳戶 (剩餘插槽數為 0)"</string>
 </resources>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index b6bfa3e..c409dd4 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -31,7 +31,7 @@
     <string name="bt_enable_cancel" msgid="1988832367505151727">"Khansela"</string>
     <string name="bt_enable_ok" msgid="3432462749994538265">"Vula"</string>
     <string name="incoming_file_confirm_title" msgid="8139874248612182627">"Ukudlulisa ifayela"</string>
-    <string name="incoming_file_confirm_content" msgid="2752605552743148036">"Yamukela ifayela elingenayo?"</string>
+    <string name="incoming_file_confirm_content" msgid="6673812334377911289">"\"<xliff:g id="SENDER">%1$s</xliff:g>\" ufuna ukukuthumela <xliff:g id="FILE">%2$s</xliff:g> (<xliff:g id="SIZE">%3$s</xliff:g>). \n\n Yamukela ifayela?"</string>
     <string name="incoming_file_confirm_cancel" msgid="2973321832477704805">"Nqaba"</string>
     <string name="incoming_file_confirm_ok" msgid="281462442932231475">"Yamukela"</string>
     <string name="incoming_file_confirm_timeout_ok" msgid="1414676773249857278">"Kulungile"</string>
@@ -54,9 +54,6 @@
     <string name="download_line5" msgid="3069560415845295386">"Yamukela ifayela..."</string>
     <string name="download_cancel" msgid="9177305996747500768">"Misa"</string>
     <string name="download_ok" msgid="5000360731674466039">"Fihla"</string>
-    <string name="incoming_line1" msgid="2127419875681087545">"Isuka ku-"</string>
-    <string name="incoming_line2" msgid="3348994249285315873">"Igama lefayela"</string>
-    <string name="incoming_line3" msgid="7954237069667474024">"Usayizi"</string>
     <string name="download_fail_line1" msgid="3846450148862894552">"Ifayela ayitholwanga"</string>
     <string name="download_fail_line2" msgid="8950394574689971071">"Ifayela: <xliff:g id="FILE">%1$s</xliff:g>"</string>
     <string name="download_fail_line3" msgid="3451040656154861722">"Isizathu: <xliff:g id="REASON">%1$s</xliff:g>_STRING"</string>
@@ -115,11 +112,4 @@
     <string name="transfer_menu_open" msgid="3368984869083107200">"Vula"</string>
     <string name="transfer_menu_clear" msgid="5854038118831427492">"Sula ohlwini"</string>
     <string name="transfer_clear_dlg_title" msgid="2953444575556460386">"Sula"</string>
-    <string name="bluetooth_map_email_settings_save" msgid="5349902976213455385">"Londoloza"</string>
-    <string name="bluetooth_map_email_settings_cancel" msgid="5019472404940038118">"Khansela"</string>
-    <string name="bluetooth_map_email_settings_intro" msgid="6219461401455143988">"Khetha ama-akhawunti we-imeyili ofuna ukwabelana ngawo nge-Bluetooth. Kusazomele wamukele noma yikuphi ukufinyelela kuma akhawunti uma uxhumeka."</string>
-    <string name="bluetooth_map_email_settings_count" msgid="8884933619108905375">"Izikhala ezisele:"</string>
-    <string name="bluetooth_map_email_settings_app_icon" msgid="6905622365985483669">"Isithonjana sohlelo lokusebenza"</string>
-    <string name="bluetooth_map_email_settings_title" msgid="2181388147513118336">"Izilungiselelo zokwabelana ngomlayezo we-Bluetooth"</string>
-    <string name="bluetooth_map_email_settings_no_account_slots_left" msgid="5989596869950397488">"Ayikwazi ukukhetha i-akhawunti. 0 izikhala ezisele."</string>
 </resources>
diff --git a/src/com/android/bluetooth/Utils.java b/src/com/android/bluetooth/Utils.java
index 56d5a64..81dc40b 100644
--- a/src/com/android/bluetooth/Utils.java
+++ b/src/com/android/bluetooth/Utils.java
@@ -17,12 +17,16 @@
 package com.android.bluetooth;
 
 import android.app.ActivityManager;
+import android.app.ActivityThread;
 import android.bluetooth.BluetoothAdapter;
 import android.bluetooth.BluetoothDevice;
+import android.content.Context;
 import android.content.ContextWrapper;
+import android.content.pm.UserInfo;
 import android.os.Binder;
 import android.os.ParcelUuid;
 import android.os.UserHandle;
+import android.os.UserManager;
 import android.util.Log;
 
 import java.io.IOException;
@@ -193,12 +197,19 @@
         // Get the caller's user id then clear the calling identity
         // which will be restored in the finally clause.
         int callingUser = UserHandle.getCallingUserId();
+        int callingUid = Binder.getCallingUid();
         long ident = Binder.clearCallingIdentity();
 
         try {
             // With calling identity cleared the current user is the foreground user.
             int foregroundUser = ActivityManager.getCurrentUser();
             ok = (foregroundUser == callingUser);
+            if (!ok) {
+                // Always allow SystemUI access.
+                int systemUiUid = ActivityThread.getPackageManager().getPackageUid(
+                        "com.android.systemui", UserHandle.USER_OWNER);
+                ok = systemUiUid == callingUid;
+            }
         } catch (Exception ex) {
             Log.e(TAG, "checkIfCallerIsSelfOrForegroundUser: Exception ex=" + ex);
             ok = false;
@@ -208,6 +219,40 @@
         return ok;
     }
 
+    public static boolean checkCallerAllowManagedProfiles(Context mContext) {
+        if (mContext == null) {
+            return checkCaller();
+        }
+        boolean ok;
+        // Get the caller's user id and if it's a managed profile, get it's parents
+        // id, then clear the calling identity
+        // which will be restored in the finally clause.
+        int callingUser = UserHandle.getCallingUserId();
+        int callingUid = Binder.getCallingUid();
+        long ident = Binder.clearCallingIdentity();
+        try {
+            UserManager um = (UserManager) mContext.getSystemService(Context.USER_SERVICE);
+            UserInfo ui = um.getProfileParent(callingUser);
+            int parentUser = (ui != null) ? ui.id : UserHandle.USER_NULL;
+            // With calling identity cleared the current user is the foreground user.
+            int foregroundUser = ActivityManager.getCurrentUser();
+            ok = (foregroundUser == callingUser) ||
+                    (foregroundUser == parentUser);
+            if (!ok) {
+                // Always allow SystemUI access.
+                int systemUiUid = ActivityThread.getPackageManager().getPackageUid(
+                        "com.android.systemui", UserHandle.USER_OWNER);
+                ok = systemUiUid == callingUid;
+            }
+        } catch (Exception ex) {
+            Log.e(TAG, "checkCallerAllowManagedProfiles: Exception ex=" + ex);
+            ok = false;
+        } finally {
+            Binder.restoreCallingIdentity(ident);
+        }
+        return ok;
+    }
+
     /**
      * Enforce the context has android.Manifest.permission.BLUETOOTH_ADMIN permission. A
      * {@link SecurityException} would be thrown if neither the calling process or the application
diff --git a/src/com/android/bluetooth/a2dp/A2dpService.java b/src/com/android/bluetooth/a2dp/A2dpService.java
index 808ec98..bae6373 100755
--- a/src/com/android/bluetooth/a2dp/A2dpService.java
+++ b/src/com/android/bluetooth/a2dp/A2dpService.java
@@ -297,4 +297,15 @@
             return service.isA2dpPlaying(device);
         }
     };
+
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+        if (mStateMachine != null) {
+            mStateMachine.dump(sb);
+        }
+        if (mAvrcp != null) {
+            mAvrcp.dump(sb);
+        }
+    }
 }
diff --git a/src/com/android/bluetooth/a2dp/A2dpSinkService.java b/src/com/android/bluetooth/a2dp/A2dpSinkService.java
index bd27952..5dcec73 100644
--- a/src/com/android/bluetooth/a2dp/A2dpSinkService.java
+++ b/src/com/android/bluetooth/a2dp/A2dpSinkService.java
@@ -210,4 +210,12 @@
             return service.getAudioConfig(device);
         }
     };
+
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+        if (mStateMachine != null) {
+            mStateMachine.dump(sb);
+        }
+    }
 }
diff --git a/src/com/android/bluetooth/a2dp/A2dpSinkStateMachine.java b/src/com/android/bluetooth/a2dp/A2dpSinkStateMachine.java
index 929676f..d57a0ca 100644
--- a/src/com/android/bluetooth/a2dp/A2dpSinkStateMachine.java
+++ b/src/com/android/bluetooth/a2dp/A2dpSinkStateMachine.java
@@ -156,7 +156,14 @@
         mAudioConfigs.clear();
     }
 
-        private class Disconnected extends State {
+    public void dump(StringBuilder sb) {
+        ProfileService.println(sb, "mCurrentDevice: " + mCurrentDevice);
+        ProfileService.println(sb, "mTargetDevice: " + mTargetDevice);
+        ProfileService.println(sb, "mIncomingDevice: " + mIncomingDevice);
+        ProfileService.println(sb, "StateMachine: " + this.toString());
+    }
+
+    private class Disconnected extends State {
         @Override
         public void enter() {
             log("Enter Disconnected: " + getCurrentMessage().what);
diff --git a/src/com/android/bluetooth/a2dp/A2dpStateMachine.java b/src/com/android/bluetooth/a2dp/A2dpStateMachine.java
index 94cc391..19d4ebd 100755
--- a/src/com/android/bluetooth/a2dp/A2dpStateMachine.java
+++ b/src/com/android/bluetooth/a2dp/A2dpStateMachine.java
@@ -134,7 +134,6 @@
         mIntentBroadcastHandler = new IntentBroadcastHandler();
 
         mAudioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
-
     }
 
     static A2dpStateMachine make(A2dpService svc, Context context) {
@@ -753,6 +752,13 @@
         }
     }
 
+    public void dump(StringBuilder sb) {
+        ProfileService.println(sb, "mCurrentDevice: " + mCurrentDevice);
+        ProfileService.println(sb, "mTargetDevice: " + mTargetDevice);
+        ProfileService.println(sb, "mIncomingDevice: " + mIncomingDevice);
+        ProfileService.println(sb, "mPlayingA2dpDevice: " + mPlayingA2dpDevice);
+        ProfileService.println(sb, "StateMachine: " + this.toString());
+    }
 
     // Event types for STACK_EVENT message
     final private static int EVENT_TYPE_NONE = 0;
diff --git a/src/com/android/bluetooth/avrcp/Avrcp.java b/src/com/android/bluetooth/avrcp/Avrcp.java
index 618ff8f..f514b6c 100755
--- a/src/com/android/bluetooth/avrcp/Avrcp.java
+++ b/src/com/android/bluetooth/avrcp/Avrcp.java
@@ -832,6 +832,33 @@
         mHandler.sendMessage(msg);
     }
 
+    public void dump(StringBuilder sb) {
+        sb.append("AVRCP:\n");
+        ProfileService.println(sb, "mMetadata: " + mMetadata);
+        ProfileService.println(sb, "mTransportControlFlags: " + mTransportControlFlags);
+        ProfileService.println(sb, "mCurrentPlayState: " + mCurrentPlayState);
+        ProfileService.println(sb, "mPlayStatusChangedNT: " + mPlayStatusChangedNT);
+        ProfileService.println(sb, "mTrackChangedNT: " + mTrackChangedNT);
+        ProfileService.println(sb, "mTrackNumber: " + mTrackNumber);
+        ProfileService.println(sb, "mCurrentPosMs: " + mCurrentPosMs);
+        ProfileService.println(sb, "mPlayStartTimeMs: " + mPlayStartTimeMs);
+        ProfileService.println(sb, "mSongLengthMs: " + mSongLengthMs);
+        ProfileService.println(sb, "mPlaybackIntervalMs: " + mPlaybackIntervalMs);
+        ProfileService.println(sb, "mPlayPosChangedNT: " + mPlayPosChangedNT);
+        ProfileService.println(sb, "mNextPosMs: " + mNextPosMs);
+        ProfileService.println(sb, "mPrevPosMs: " + mPrevPosMs);
+        ProfileService.println(sb, "mSkipStartTime: " + mSkipStartTime);
+        ProfileService.println(sb, "mFeatures: " + mFeatures);
+        ProfileService.println(sb, "mAbsoluteVolume: " + mAbsoluteVolume);
+        ProfileService.println(sb, "mLastSetVolume: " + mLastSetVolume);
+        ProfileService.println(sb, "mLastDirection: " + mLastDirection);
+        ProfileService.println(sb, "mVolumeStep: " + mVolumeStep);
+        ProfileService.println(sb, "mAudioStreamMax: " + mAudioStreamMax);
+        ProfileService.println(sb, "mVolCmdInProgress: " + mVolCmdInProgress);
+        ProfileService.println(sb, "mAbsVolRetryTimes: " + mAbsVolRetryTimes);
+        ProfileService.println(sb, "mSkipAmount: " + mSkipAmount);
+    }
+
     // Do not modify without updating the HAL bt_rc.h files.
 
     // match up with btrc_play_status_t enum of bt_rc.h
diff --git a/src/com/android/bluetooth/avrcp/AvrcpControllerService.java b/src/com/android/bluetooth/avrcp/AvrcpControllerService.java
index b7275d6..0c7e0b6 100644
--- a/src/com/android/bluetooth/avrcp/AvrcpControllerService.java
+++ b/src/com/android/bluetooth/avrcp/AvrcpControllerService.java
@@ -265,6 +265,11 @@
         return Utils.getBytesFromAddress(device.getAddress());
     }
 
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+    }
+
     private native static void classInitNative();
     private native void initNative();
     private native void cleanupNative();
diff --git a/src/com/android/bluetooth/btservice/AdapterService.java b/src/com/android/bluetooth/btservice/AdapterService.java
index 13416b3..48fe29a 100644
--- a/src/com/android/bluetooth/btservice/AdapterService.java
+++ b/src/com/android/bluetooth/btservice/AdapterService.java
@@ -54,14 +54,16 @@
 import android.provider.Settings;
 import android.util.Log;
 import android.util.Pair;
+
 import com.android.bluetooth.a2dp.A2dpService;
 import com.android.bluetooth.hid.HidService;
 import com.android.bluetooth.hfp.HeadsetService;
 import com.android.bluetooth.hdp.HealthService;
 import com.android.bluetooth.pan.PanService;
-import com.android.bluetooth.R;
 import com.android.bluetooth.Utils;
 import com.android.bluetooth.btservice.RemoteDevices.DeviceProperties;
+import com.android.internal.R;
+
 import java.io.FileDescriptor;
 import java.io.IOException;
 import java.util.ArrayList;
@@ -71,6 +73,7 @@
 import java.util.Iterator;
 import java.util.Map.Entry;
 import java.util.List;
+
 import android.content.pm.PackageManager;
 import android.os.ServiceManager;
 
@@ -90,6 +93,8 @@
     private int mIdleTimeTotalMs;
     private int mEnergyUsedTotalVoltAmpSecMicro;
 
+    private final ArrayList<ProfileService> mProfiles = new ArrayList<ProfileService>();
+
     public static final String ACTION_LOAD_ADAPTER_PROPERTIES =
         "com.android.bluetooth.btservice.action.LOAD_ADAPTER_PROPERTIES";
     public static final String ACTION_SERVICE_STATE_CHANGED =
@@ -254,6 +259,18 @@
         }
     }
 
+    public void addProfile(ProfileService profile) {
+        synchronized (mProfiles) {
+            mProfiles.add(profile);
+        }
+    }
+
+    public void removeProfile(ProfileService profile) {
+        synchronized (mProfiles) {
+            mProfiles.remove(profile);
+        }
+    }
+
     public void onProfileServiceStateChanged(String serviceName, int state) {
         Message m = mHandler.obtainMessage(MESSAGE_PROFILE_SERVICE_STATE_CHANGED);
         m.obj=serviceName;
@@ -492,6 +509,8 @@
     private static final int MESSAGE_PROFILE_CONNECTION_STATE_CHANGED=20;
     private static final int MESSAGE_CONNECT_OTHER_PROFILES = 30;
     private static final int MESSAGE_PROFILE_INIT_PRIORITIES=40;
+    private static final int MESSAGE_SET_WAKE_ALARM = 100;
+    private static final int MESSAGE_RELEASE_WAKE_ALARM = 110;
     private static final int CONNECT_OTHER_PROFILES_TIMEOUT= 6000;
 
     private final Handler mHandler = new Handler() {
@@ -525,6 +544,17 @@
                     processConnectOtherProfiles((BluetoothDevice) msg.obj,msg.arg1);
                 }
                     break;
+                case MESSAGE_SET_WAKE_ALARM: {
+                    debugLog( "handleMessage() - MESSAGE_SET_WAKE_ALARM");
+                    processSetWakeAlarm((Long) msg.obj, msg.arg1);
+                }
+                    break;
+                case MESSAGE_RELEASE_WAKE_ALARM: {
+                    debugLog( "handleMessage() - MESSAGE_RELEASE_WAKE_ALARM");
+                    mPendingAlarm = null;
+                    alarmFiredNative();
+                }
+                    break;
             }
         }
     };
@@ -547,7 +577,7 @@
             String serviceName = services[i].getName();
             Integer serviceState = mProfileServicesState.get(serviceName);
             if(serviceState != null && serviceState != expectedCurrentState) {
-                debugLog("setProfileServiceState() - Unable to " 
+                debugLog("setProfileServiceState() - Unable to "
                     + (state == BluetoothAdapter.STATE_OFF ? "start" : "stop" )
                     + " service " + serviceName
                     + ". Invalid state: " + serviceState);
@@ -655,7 +685,7 @@
 
         public String getAddress() {
             if ((Binder.getCallingUid() != Process.SYSTEM_UID) &&
-                (!Utils.checkCaller())) {
+                (!Utils.checkCallerAllowManagedProfiles(mService))) {
                 Log.w(TAG, "getAddress() - Not allowed for non-active user and non system user");
                 return null;
             }
@@ -700,7 +730,7 @@
         }
 
         public int getScanMode() {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "getScanMode() - Not allowed for non-active user");
                 return BluetoothAdapter.SCAN_MODE_NONE;
             }
@@ -765,7 +795,7 @@
             return service.cancelDiscovery();
         }
         public boolean isDiscovering() {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "isDiscovering() - Not allowed for non-active user");
                 return false;
             }
@@ -790,7 +820,7 @@
         }
 
         public int getProfileConnectionState(int profile) {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "getProfileConnectionState- Not allowed for non-active user");
                 return BluetoothProfile.STATE_DISCONNECTED;
             }
@@ -849,7 +879,7 @@
         }
 
         public String getRemoteName(BluetoothDevice device) {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "getRemoteName() - Not allowed for non-active user");
                 return null;
             }
@@ -860,7 +890,7 @@
         }
 
         public int getRemoteType(BluetoothDevice device) {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "getRemoteType() - Not allowed for non-active user");
                 return BluetoothDevice.DEVICE_TYPE_UNKNOWN;
             }
@@ -871,7 +901,7 @@
         }
 
         public String getRemoteAlias(BluetoothDevice device) {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "getRemoteAlias() - Not allowed for non-active user");
                 return null;
             }
@@ -893,7 +923,7 @@
         }
 
         public int getRemoteClass(BluetoothDevice device) {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "getRemoteClass() - Not allowed for non-active user");
                 return 0;
             }
@@ -904,7 +934,7 @@
         }
 
         public ParcelUuid[] getRemoteUuids(BluetoothDevice device) {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "getRemoteUuids() - Not allowed for non-active user");
                 return new ParcelUuid[0];
             }
@@ -915,7 +945,7 @@
         }
 
         public boolean fetchRemoteUuids(BluetoothDevice device) {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "fetchRemoteUuids() - Not allowed for non-active user");
                 return false;
             }
@@ -1022,7 +1052,7 @@
 
         public ParcelFileDescriptor connectSocket(BluetoothDevice device, int type,
                                                   ParcelUuid uuid, int port, int flag) {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "connectSocket() - Not allowed for non-active user");
                 return null;
             }
@@ -1034,7 +1064,7 @@
 
         public ParcelFileDescriptor createSocketChannel(int type, String serviceName,
                                                         ParcelUuid uuid, int port, int flag) {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG, "createSocketChannel() - Not allowed for non-active user");
                 return null;
             }
@@ -1071,8 +1101,13 @@
          public boolean isMultiAdvertisementSupported() {
              AdapterService service = getService();
              if (service == null) return false;
-             int val = service.getNumOfAdvertisementInstancesSupported();
-             return (val >= MIN_ADVT_INSTANCES_FOR_MA);
+             return service.isMultiAdvertisementSupported();
+         }
+
+         public boolean isPeripheralModeSupported() {
+             AdapterService service = getService();
+             if (service == null) return false;
+             return service.isPeripheralModeSupported();
          }
 
          public boolean isOffloadedFilteringSupported() {
@@ -1106,6 +1141,14 @@
              if (service == null) return null;
              return service.reportActivityInfo();
          }
+
+         public String dump() {
+            AdapterService service = getService();
+            if (service == null) {
+                return "AdapterService is null";
+            }
+            return service.dump();
+         }
     };
 
 
@@ -1632,6 +1675,11 @@
         return mAdapterProperties.getNumOfAdvertisementInstancesSupported();
     }
 
+    public boolean isMultiAdvertisementSupported() {
+        enforceCallingOrSelfPermission(BLUETOOTH_PERM, "Need BLUETOOTH permission");
+        return getNumOfAdvertisementInstancesSupported() >= MIN_ADVT_INSTANCES_FOR_MA;
+    }
+
     public boolean isRpaOffloadSupported() {
         enforceCallingOrSelfPermission(BLUETOOTH_PERM, "Need BLUETOOTH permission");
         return mAdapterProperties.isRpaOffloadSupported();
@@ -1647,6 +1695,10 @@
         return mAdapterProperties.getNumOfOffloadedScanFilterSupported();
     }
 
+    public boolean isPeripheralModeSupported() {
+        return getResources().getBoolean(R.bool.config_bluetooth_le_peripheral_mode_supported);
+    }
+
     public int getOffloadedScanResultStorage() {
         enforceCallingOrSelfPermission(BLUETOOTH_PERM, "Need BLUETOOTH permission");
         return mAdapterProperties.getOffloadedScanResultStorage();
@@ -1679,6 +1731,16 @@
         return info;
     }
 
+    private String dump() {
+        StringBuilder sb = new StringBuilder();
+        synchronized (mProfiles) {
+            for (ProfileService profile : mProfiles) {
+                profile.dump(sb);
+            }
+        }
+        return sb.toString();
+    }
+
     private static int convertScanModeToHal(int mode) {
         switch (mode) {
             case BluetoothAdapter.SCAN_MODE_NONE:
@@ -1706,24 +1768,30 @@
     }
 
     // This function is called from JNI. It allows native code to set a single wake
-    // alarm. If an alarm is already pending and a new request comes in, the alarm
-    // will be rescheduled (i.e. the previously set alarm will be cancelled).
+    // alarm.
     private boolean setWakeAlarm(long delayMillis, boolean shouldWake) {
-        synchronized (this) {
-            if (mPendingAlarm != null) {
-                mAlarmManager.cancel(mPendingAlarm);
-            }
+        Message m = mHandler.obtainMessage(MESSAGE_SET_WAKE_ALARM);
+        m.obj = new Long(delayMillis);
+        // alarm type
+        m.arg1 = shouldWake ? AlarmManager.ELAPSED_REALTIME_WAKEUP
+            : AlarmManager.ELAPSED_REALTIME;
+        mHandler.sendMessage(m);
 
-            long wakeupTime = SystemClock.elapsedRealtime() + delayMillis;
-            int type = shouldWake
-                ? AlarmManager.ELAPSED_REALTIME_WAKEUP
-                : AlarmManager.ELAPSED_REALTIME;
+        return true;
+    }
 
-            Intent intent = new Intent(ACTION_ALARM_WAKEUP);
-            mPendingAlarm = PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_ONE_SHOT);
-            mAlarmManager.setExact(type, wakeupTime, mPendingAlarm);
-            return true;
+    // If an alarm is already pending and a new request comes in, the alarm
+    // will be rescheduled (i.e. the previously set alarm will be cancelled).
+    private void processSetWakeAlarm(long delayMillis, int alarmType) {
+        if (mPendingAlarm != null) {
+            mAlarmManager.cancel(mPendingAlarm);
         }
+
+        long wakeupTime = SystemClock.elapsedRealtime() + delayMillis;
+
+        Intent intent = new Intent(ACTION_ALARM_WAKEUP);
+        mPendingAlarm = PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_ONE_SHOT);
+        mAlarmManager.setExact(alarmType, wakeupTime, mPendingAlarm);
     }
 
     // This function is called from JNI. It allows native code to acquire a single wake lock.
@@ -1801,10 +1869,7 @@
     private final BroadcastReceiver mAlarmBroadcastReceiver = new BroadcastReceiver() {
         @Override
         public void onReceive(Context context, Intent intent) {
-            synchronized (AdapterService.this) {
-                mPendingAlarm = null;
-                alarmFiredNative();
-            }
+            mHandler.sendMessage(mHandler.obtainMessage(MESSAGE_RELEASE_WAKE_ALARM));
         }
     };
 
diff --git a/src/com/android/bluetooth/btservice/ProfileService.java b/src/com/android/bluetooth/btservice/ProfileService.java
index 0c1b70e..d029249 100644
--- a/src/com/android/bluetooth/btservice/ProfileService.java
+++ b/src/com/android/bluetooth/btservice/ProfileService.java
@@ -32,6 +32,8 @@
 
 public abstract class ProfileService extends Service {
     private static final boolean DBG = false;
+    private static final String TAG = "BluetoothProfileService";
+
     //For Debugging only
     private static HashMap<String, Integer> sReferenceCount = new HashMap<String,Integer>();
 
@@ -53,6 +55,8 @@
     protected boolean mStartError=false;
     private boolean mCleaningUp = false;
 
+    private AdapterService mAdapterService;
+
     protected String getName() {
         return getClass().getSimpleName();
     }
@@ -105,6 +109,12 @@
         super.onCreate();
         mAdapter = BluetoothAdapter.getDefaultAdapter();
         mBinder = initBinder();
+        mAdapterService = AdapterService.getAdapterService();
+        if (mAdapterService != null) {
+            mAdapterService.addProfile(this);
+        } else {
+            Log.w(TAG, "onCreate, null mAdapterService");
+        }
     }
 
     public int onStartCommand(Intent intent, int flags, int startId) {
@@ -149,9 +159,22 @@
         return super.onUnbind(intent);
     }
 
+    // for dumpsys support
+    public void dump(StringBuilder sb) {
+        sb.append("Profile: " + mName + "\n");
+    }
+
+    // with indenting for subclasses
+    public static void println(StringBuilder sb, String s) {
+        sb.append("  ");
+        sb.append(s);
+        sb.append("\n");
+    }
+
     @Override
     public void onDestroy() {
         if (DBG) log("Destroying service.");
+        mAdapterService.removeProfile(this);
         if (mCleaningUp) {
             if (DBG) log("Cleanup already started... Skipping cleanup()...");
         } else {
@@ -194,17 +217,15 @@
 
     protected void notifyProfileServiceStateChanged(int state) {
         //Notify adapter service
-        AdapterService sAdapter = AdapterService.getAdapterService();
-        if (sAdapter!= null) {
-            sAdapter.onProfileServiceStateChanged(getClass().getName(), state);
+        if (mAdapterService != null) {
+            mAdapterService.onProfileServiceStateChanged(getClass().getName(), state);
         }
     }
 
     public void notifyProfileConnectionStateChanged(BluetoothDevice device,
             int profileId, int newState, int prevState) {
-        AdapterService svc = AdapterService.getAdapterService();
-        if (svc != null) {
-            svc.onProfileConnectionStateChanged(device, profileId, newState, prevState);
+        if (mAdapterService != null) {
+            mAdapterService.onProfileConnectionStateChanged(device, profileId, newState, prevState);
         }
     }
 
diff --git a/src/com/android/bluetooth/gatt/AdvertiseManager.java b/src/com/android/bluetooth/gatt/AdvertiseManager.java
index a2c8593..91932bb 100644
--- a/src/com/android/bluetooth/gatt/AdvertiseManager.java
+++ b/src/com/android/bluetooth/gatt/AdvertiseManager.java
@@ -40,7 +40,7 @@
 import java.util.concurrent.TimeUnit;
 
 /**
- * Manages Bluetooth LE advertising operations and interacts with bluedroid stack.
+ * Manages Bluetooth LE advertising operations and interacts with bluedroid stack. TODO: add tests.
  *
  * @hide
  */
@@ -56,6 +56,7 @@
     private static final int MSG_STOP_ADVERTISING = 1;
 
     private final GattService mService;
+    private final AdapterService mAdapterService;
     private final Set<AdvertiseClient> mAdvertiseClients;
     private final AdvertiseNative mAdvertiseNative;
 
@@ -68,9 +69,10 @@
     /**
      * Constructor of {@link AdvertiseManager}.
      */
-    AdvertiseManager(GattService service) {
-        mService = service;
+    AdvertiseManager(GattService service, AdapterService adapterService) {
         logd("advertise manager created");
+        mService = service;
+        mAdapterService = adapterService;
         mAdvertiseClients = new HashSet<AdvertiseClient>();
         mAdvertiseNative = new AdvertiseNative();
     }
@@ -218,13 +220,17 @@
         }
 
         // Returns maximum advertise instances supported by controller.
-        private int maxAdvertiseInstances() {
-            AdapterService adapter = AdapterService.getAdapterService();
-            int numOfAdvtInstances = adapter.getNumOfAdvertisementInstancesSupported();
+        int maxAdvertiseInstances() {
             // Note numOfAdvtInstances includes the standard advertising instance.
             // TODO: remove - 1 once the stack is able to include standard instance for multiple
             // advertising.
-            return numOfAdvtInstances - 1;
+            if (mAdapterService.isMultiAdvertisementSupported()) {
+                return mAdapterService.getNumOfAdvertisementInstancesSupported() - 1;
+            }
+            if (mAdapterService.isPeripheralModeSupported()) {
+                return 1;
+            }
+            return 0;
         }
     }
 
@@ -258,21 +264,33 @@
         private static final int ADVERTISING_EVENT_TYPE_SCANNABLE = 2;
         private static final int ADVERTISING_EVENT_TYPE_NON_CONNECTABLE = 3;
 
+        // TODO: Extract advertising logic into interface as we have multiple implementations now.
         boolean startAdverising(AdvertiseClient client) {
-            int clientIf = client.clientIf;
+            if (!mAdapterService.isMultiAdvertisementSupported() &&
+                    !mAdapterService.isPeripheralModeSupported()) {
+                return false;
+            }
+            if (mAdapterService.isMultiAdvertisementSupported()) {
+                return startMultiAdvertising(client);
+            }
+            return startSingleAdvertising(client);
+        }
+
+        boolean startMultiAdvertising(AdvertiseClient client) {
+            logd("starting multi advertising");
             resetCountDownLatch();
-            mAdvertiseNative.enableAdvertising(client);
+            enableAdvertising(client);
             if (!waitForCallback()) {
                 return false;
             }
             resetCountDownLatch();
-            mAdvertiseNative.setAdvertisingData(clientIf, client.advertiseData, false);
+            setAdvertisingData(client, client.advertiseData, false);
             if (!waitForCallback()) {
                 return false;
             }
             if (client.scanResponse != null) {
                 resetCountDownLatch();
-                mAdvertiseNative.setAdvertisingData(clientIf, client.scanResponse, true);
+                setAdvertisingData(client, client.scanResponse, true);
                 if (!waitForCallback()) {
                     return false;
                 }
@@ -280,8 +298,29 @@
             return true;
         }
 
+        boolean startSingleAdvertising(AdvertiseClient client) {
+            logd("starting single advertising");
+            resetCountDownLatch();
+            enableAdvertising(client);
+            if (!waitForCallback()) {
+                return false;
+            }
+            setAdvertisingData(client, client.advertiseData, false);
+            return true;
+        }
+
         void stopAdvertising(AdvertiseClient client) {
-            gattClientDisableAdvNative(client.clientIf);
+            if (mAdapterService.isMultiAdvertisementSupported()) {
+                gattClientDisableAdvNative(client.clientIf);
+            } else {
+                gattAdvertiseNative(client.clientIf, false);
+                try {
+                    mService.onAdvertiseInstanceDisabled(
+                            AdvertiseCallback.ADVERTISE_SUCCESS, client.clientIf);
+                } catch (RemoteException e) {
+                    Log.d(TAG, "failed onAdvertiseInstanceDisabled", e);
+                }
+            }
         }
 
         private void resetCountDownLatch() {
@@ -305,16 +344,21 @@
             int txPowerLevel = getTxPowerLevel(client.settings);
             int advertiseTimeoutSeconds = (int) TimeUnit.MILLISECONDS.toSeconds(
                     client.settings.getTimeout());
-            gattClientEnableAdvNative(
-                    clientIf,
-                    minAdvertiseUnit, maxAdvertiseUnit,
-                    advertiseEventType,
-                    ADVERTISING_CHANNEL_ALL,
-                    txPowerLevel,
-                    advertiseTimeoutSeconds);
+            if (mAdapterService.isMultiAdvertisementSupported()) {
+                gattClientEnableAdvNative(
+                        clientIf,
+                        minAdvertiseUnit, maxAdvertiseUnit,
+                        advertiseEventType,
+                        ADVERTISING_CHANNEL_ALL,
+                        txPowerLevel,
+                        advertiseTimeoutSeconds);
+            } else {
+                gattAdvertiseNative(client.clientIf, true);
+            }
         }
 
-        private void setAdvertisingData(int clientIf, AdvertiseData data, boolean isScanResponse) {
+        private void setAdvertisingData(AdvertiseClient client, AdvertiseData data,
+                boolean isScanResponse) {
             if (data == null) {
                 return;
             }
@@ -340,9 +384,15 @@
                 }
                 serviceUuids = advertisingUuidBytes.array();
             }
-            gattClientSetAdvDataNative(clientIf, isScanResponse, includeName, includeTxPower,
-                    appearance,
-                    manufacturerData, serviceData, serviceUuids);
+            if (mAdapterService.isMultiAdvertisementSupported()) {
+                gattClientSetAdvDataNative(client.clientIf, isScanResponse, includeName,
+                        includeTxPower, appearance,
+                        manufacturerData, serviceData, serviceUuids);
+            } else {
+                gattSetAdvDataNative(client.clientIf, isScanResponse, includeName,
+                        includeTxPower, 0, 0, appearance,
+                        manufacturerData, serviceData, serviceUuids);
+            }
         }
 
         // Combine manufacturer id and manufacturer data.
@@ -441,6 +491,12 @@
         private native void gattClientSetAdvDataNative(int client_if,
                 boolean set_scan_rsp, boolean incl_name, boolean incl_txpower, int appearance,
                 byte[] manufacturer_data, byte[] service_data, byte[] service_uuid);
+
+        private native void gattSetAdvDataNative(int serverIf, boolean setScanRsp, boolean inclName,
+                boolean inclTxPower, int minSlaveConnectionInterval, int maxSlaveConnectionInterval,
+                int appearance, byte[] manufacturerData, byte[] serviceData, byte[] serviceUuid);
+
+        private native void gattAdvertiseNative(int client_if, boolean start);
     }
 
     private void logd(String s) {
diff --git a/src/com/android/bluetooth/gatt/ContextMap.java b/src/com/android/bluetooth/gatt/ContextMap.java
index 65f8dce..bdb82b5 100644
--- a/src/com/android/bluetooth/gatt/ContextMap.java
+++ b/src/com/android/bluetooth/gatt/ContextMap.java
@@ -291,28 +291,23 @@
     /**
      * Logs debug information.
      */
-    void dump() {
-        StringBuilder b = new StringBuilder();
-        b.append(  "-------------- GATT Context Map ----------------");
-        b.append("\nEntries: " + mApps.size());
+    void dump(StringBuilder sb) {
+        sb.append("  Entries: " + mApps.size() + "\n");
 
         Iterator<App> i = mApps.iterator();
         while(i.hasNext()) {
             App entry = i.next();
             List<Connection> connections = getConnectionByApp(entry.id);
 
-            b.append("\n\nApplication Id: " + entry.id);
-            b.append("\nUUID: " + entry.uuid);
-            b.append("\nConnections: " + connections.size());
+            sb.append("\n  Application Id: " + entry.id + "\n");
+            sb.append("  UUID: " + entry.uuid + "\n");
+            sb.append("  Connections: " + connections.size() + "\n");
 
             Iterator<Connection> ii = connections.iterator();
             while(ii.hasNext()) {
                 Connection connection = ii.next();
-                b.append("\n  " + connection.connId + ": " + connection.address);
+                sb.append("    " + connection.connId + ": " + connection.address + "\n");
             }
         }
-
-        b.append("\n------------------------------------------------");
-        Log.d(TAG, b.toString());
     }
 }
diff --git a/src/com/android/bluetooth/gatt/GattDebugUtils.java b/src/com/android/bluetooth/gatt/GattDebugUtils.java
index 5c42db6..a1b37a2 100644
--- a/src/com/android/bluetooth/gatt/GattDebugUtils.java
+++ b/src/com/android/bluetooth/gatt/GattDebugUtils.java
@@ -28,13 +28,6 @@
     private static final String TAG = GattServiceConfig.TAG_PREFIX + "DebugUtils";
     private static final boolean DEBUG_ADMIN = GattServiceConfig.DEBUG_ADMIN;
 
-    private static final String ACTION_DEBUG_DUMP_CLIENTMAP =
-                                "android.bluetooth.action.DEBUG_DUMP_CLIENTMAP";
-    private static final String ACTION_DEBUG_DUMP_SERVERMAP =
-                                "android.bluetooth.action.DEBUG_DUMP_SERVERMAP";
-    private static final String ACTION_DEBUG_DUMP_HANDLEMAP =
-                                "android.bluetooth.action.DEBUG_DUMP_HANDLEMAP";
-
     private static final String ACTION_GATT_PAIRING_CONFIG =
                                 "android.bluetooth.action.GATT_PAIRING_CONFIG";
 
@@ -82,23 +75,10 @@
         Log.d(TAG, "handleDebugAction() action=" + action);
 
         /*
-         * Debug log functinos
-         */
-
-        if (ACTION_DEBUG_DUMP_CLIENTMAP.equals(action)) {
-            svc.mClientMap.dump();
-
-        } else if (ACTION_DEBUG_DUMP_SERVERMAP.equals(action)) {
-            svc.mServerMap.dump();
-
-        } else if (ACTION_DEBUG_DUMP_HANDLEMAP.equals(action)) {
-            svc.mHandleMap.dump();
-
-        /*
          * PTS test commands
          */
 
-        } else if (ACTION_GATT_TEST_USAGE.equals(action)) {
+        if (ACTION_GATT_TEST_USAGE.equals(action)) {
             logUsageInfo();
 
         } else if (ACTION_GATT_TEST_ENABLE.equals(action)) {
diff --git a/src/com/android/bluetooth/gatt/GattService.java b/src/com/android/bluetooth/gatt/GattService.java
index 982fd16..19e22d5 100644
--- a/src/com/android/bluetooth/gatt/GattService.java
+++ b/src/com/android/bluetooth/gatt/GattService.java
@@ -40,7 +40,10 @@
 import android.util.Log;
 
 import com.android.bluetooth.Utils;
+import com.android.bluetooth.btservice.AdapterService;
 import com.android.bluetooth.btservice.ProfileService;
+import com.android.bluetooth.util.NumberUtils;
+import com.android.internal.annotations.VisibleForTesting;
 
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -160,7 +163,7 @@
     protected boolean start() {
         if (DBG) Log.d(TAG, "start()");
         initializeNative();
-        mAdvertiseManager = new AdvertiseManager(this);
+        mAdvertiseManager = new AdvertiseManager(this, AdapterService.getAdapterService());
         mAdvertiseManager.start();
 
         mScanManager = new ScanManager(this);
@@ -546,7 +549,6 @@
     void onScanResult(String address, int rssi, byte[] adv_data) {
         if (VDBG) Log.d(TAG, "onScanResult() - address=" + address
                     + ", rssi=" + rssi);
-        ScanRecord record = ScanRecord.parseFromBytes(adv_data);
         List<UUID> remoteUuids = parseUuids(adv_data);
         for (ScanClient client : mScanManager.getRegularScanQueue()) {
             if (client.uuids.length > 0) {
@@ -615,9 +617,7 @@
         if (client.filters == null || client.filters.isEmpty()) {
             return true;
         }
-        if (DBG) Log.d(TAG, "result: " + scanResult.toString());
         for (ScanFilter filter : client.filters) {
-            if (DBG) Log.d(TAG, "filter: " + filter.toString());
             if (filter.matches(scanResult)) {
                 return true;
             }
@@ -1031,33 +1031,33 @@
     private Set<ScanResult> parseTruncatedResults(int numRecords, byte[] batchRecord) {
         if (DBG) Log.d(TAG, "batch record " + Arrays.toString(batchRecord));
         Set<ScanResult> results = new HashSet<ScanResult>(numRecords);
+        long now = SystemClock.elapsedRealtimeNanos();
         for (int i = 0; i < numRecords; ++i) {
             byte[] record = extractBytes(batchRecord, i * TRUNCATED_RESULT_SIZE,
                     TRUNCATED_RESULT_SIZE);
             byte[] address = extractBytes(record, 0, 6);
-            // TODO: remove temp hack.
             reverse(address);
             BluetoothDevice device = mAdapter.getRemoteDevice(address);
             int rssi = record[8];
-            // Timestamp is in every 50 ms.
-            long timestampNanos = parseTimestampNanos(extractBytes(record, 9, 2));
+            long timestampNanos = now - parseTimestampNanos(extractBytes(record, 9, 2));
             results.add(new ScanResult(device, ScanRecord.parseFromBytes(new byte[0]),
                     rssi, timestampNanos));
         }
         return results;
     }
 
-    private long parseTimestampNanos(byte[] data) {
-        long timestampUnit = data[1] & 0xFF << 8 + data[0];
-        long timestampNanos = SystemClock.elapsedRealtimeNanos() -
-                TimeUnit.MILLISECONDS.toNanos(timestampUnit * 50);
-        return timestampNanos;
+    @VisibleForTesting
+    long parseTimestampNanos(byte[] data) {
+        long timestampUnit = NumberUtils.littleEndianByteArrayToInt(data);
+        // Timestamp is in every 50 ms.
+        return TimeUnit.MILLISECONDS.toNanos(timestampUnit * 50);
     }
 
     private Set<ScanResult> parseFullResults(int numRecords, byte[] batchRecord) {
         Log.d(TAG, "Batch record : " + Arrays.toString(batchRecord));
         Set<ScanResult> results = new HashSet<ScanResult>(numRecords);
         int position = 0;
+        long now = SystemClock.elapsedRealtimeNanos();
         while (position < batchRecord.length) {
             byte[] address = extractBytes(batchRecord, position, 6);
             // TODO: remove temp hack.
@@ -1069,7 +1069,7 @@
             // Skip tx power level.
             position++;
             int rssi = batchRecord[position++];
-            long timestampNanos = parseTimestampNanos(extractBytes(batchRecord, position, 2));
+            long timestampNanos = now - parseTimestampNanos(extractBytes(batchRecord, position, 2));
             position += 2;
 
             // Combine advertise packet and scan response packet.
@@ -1175,6 +1175,7 @@
     // Callback for standard advertising instance.
     void onAdvertiseCallback(int status, int clientIf) {
         if (DBG) Log.d(TAG, "onAdvertiseCallback,- clientIf=" + clientIf + ", status=" + status);
+        mAdvertiseManager.callbackDone(clientIf, status);
     }
 
     // Followings are callbacks for Bluetooth LE Advertise operations.
@@ -1688,9 +1689,6 @@
         HandleMap.Entry entry = mHandleMap.getByHandle(attrHandle);
         if (entry == null) return;
 
-        if (DBG) Log.d(TAG, "onAttributeRead() UUID=" + entry.uuid
-            + ", serverIf=" + entry.serverIf + ", type=" + entry.type);
-
         mHandleMap.addRequest(transId, attrHandle);
 
         ServerMap.App app = mServerMap.getById(entry.serverIf);
@@ -1738,9 +1736,6 @@
         HandleMap.Entry entry = mHandleMap.getByHandle(attrHandle);
         if (entry == null) return;
 
-        if (DBG) Log.d(TAG, "onAttributeWrite() UUID=" + entry.uuid
-            + ", serverIf=" + entry.serverIf + ", type=" + entry.type);
-
         mHandleMap.addRequest(transId, attrHandle);
 
         ServerMap.App app = mServerMap.getById(entry.serverIf);
@@ -1793,7 +1788,7 @@
     }
 
     void onNotificationSent(int connId, int status) throws RemoteException {
-        if (DBG) Log.d(TAG, "onNotificationSent() connId=" + connId + ", status=" + status);
+        if (VDBG) Log.d(TAG, "onNotificationSent() connId=" + connId + ", status=" + status);
 
         String address = mServerMap.addressByConnId(connId);
         if (address == null) return;
@@ -1825,6 +1820,18 @@
         }
     }
 
+    void onMtuChanged(int connId, int mtu) throws RemoteException {
+        if (DBG) Log.d(TAG, "onMtuChanged() - connId=" + connId + ", mtu=" + mtu);
+
+        String address = mServerMap.addressByConnId(connId);
+        if (address == null) return;
+
+        ServerMap.App app = mServerMap.getByConnId(connId);
+        if (app == null) return;
+
+        app.callback.onMtuChanged(address, mtu);
+    }
+
     /**************************************************************************
      * GATT Service functions - SERVER
      *************************************************************************/
@@ -2181,6 +2188,33 @@
         return uuids;
     }
 
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+        println(sb, "mAdvertisingServiceUuids:");
+        for (UUID uuid : mAdvertisingServiceUuids) {
+            println(sb, "  " + uuid);
+        }
+        println(sb, "mOnFoundResults:");
+        for (ScanResult result : mOnFoundResults.values()) {
+            println(sb, "  " + result);
+        }
+        println(sb, "mOnFoundResults:");
+        for (ServiceDeclaration declaration : mServiceDeclarations) {
+            println(sb, "  " + declaration);
+        }
+        println(sb, "mMaxScanFilters: " + mMaxScanFilters);
+
+        sb.append("\nGATT Client Map\n");
+        mClientMap.dump(sb);
+
+        sb.append("\nGATT Server Map\n");
+        mServerMap.dump(sb);
+
+        sb.append("\nGATT Handle Map\n");
+        mHandleMap.dump(sb);
+    }
+
     /**************************************************************************
      * GATT Test functions
      *************************************************************************/
@@ -2274,17 +2308,11 @@
     private native void gattClientReadRemoteRssiNative(int clientIf,
             String address);
 
-    private native void gattAdvertiseNative(int client_if, boolean start);
-
     private native void gattClientConfigureMTUNative(int conn_id, int mtu);
 
     private native void gattConnectionParameterUpdateNative(int client_if, String address,
             int minInterval, int maxInterval, int latency, int timeout);
 
-    private native void gattSetAdvDataNative(int serverIf, boolean setScanRsp, boolean inclName,
-            boolean inclTxPower, int minInterval, int maxInterval,
-            int appearance, byte[] manufacturerData, byte[] serviceData, byte[] serviceUuid);
-
     private native void gattServerRegisterAppNative(long app_uuid_lsb,
                                                     long app_uuid_msb);
 
diff --git a/src/com/android/bluetooth/gatt/HandleMap.java b/src/com/android/bluetooth/gatt/HandleMap.java
index 187625a..4a20639 100644
--- a/src/com/android/bluetooth/gatt/HandleMap.java
+++ b/src/com/android/bluetooth/gatt/HandleMap.java
@@ -196,31 +196,28 @@
     /**
      * Logs debug information.
      */
-    void dump() {
-        StringBuilder b = new StringBuilder();
-        b.append(  "-------------- GATT Handle Map -----------------");
-        b.append("\nEntries: " + mEntries.size());
-        b.append("\nRequests: " + mRequestMap.size());
+    void dump(StringBuilder sb) {
+        sb.append("  Entries: " + mEntries.size() + "\n");
+        sb.append("  Requests: " + mRequestMap.size() + "\n");
 
         for (Entry entry : mEntries) {
-            b.append("\n" + entry.serverIf + ": [" + entry.handle + "] ");
+            sb.append("  " + entry.serverIf + ": [" + entry.handle + "] ");
             switch(entry.type) {
                 case TYPE_SERVICE:
-                    b.append("Service " + entry.uuid);
-                    b.append(", started " + entry.started);
+                    sb.append("Service " + entry.uuid);
+                    sb.append(", started " + entry.started);
                     break;
 
                 case TYPE_CHARACTERISTIC:
-                    b.append("  Characteristic " + entry.uuid);
+                    sb.append("  Characteristic " + entry.uuid);
                     break;
 
                 case TYPE_DESCRIPTOR:
-                    b.append("    Descriptor " + entry.uuid);
+                    sb.append("    Descriptor " + entry.uuid);
                     break;
             }
-        }
 
-        b.append("\n------------------------------------------------");
-        Log.d(TAG, b.toString());
+            sb.append("\n");
+        }
     }
 }
diff --git a/src/com/android/bluetooth/hdp/HealthService.java b/src/com/android/bluetooth/hdp/HealthService.java
index 21846c6..8d8eff7 100644
--- a/src/com/android/bluetooth/hdp/HealthService.java
+++ b/src/com/android/bluetooth/hdp/HealthService.java
@@ -788,6 +788,23 @@
         return healthDevices;
     }
 
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+        println(sb, "mHealthChannels:");
+        for (HealthChannel channel : mHealthChannels) {
+            println(sb, "  " + channel);
+        }
+        println(sb, "mApps:");
+        for (BluetoothHealthAppConfiguration conf : mApps.keySet()) {
+            println(sb, "  " + conf + " : " + mApps.get(conf));
+        }
+        println(sb, "mHealthDevices:");
+        for (BluetoothDevice device : mHealthDevices.keySet()) {
+            println(sb, "  " + device + " : " + mHealthDevices.get(device));
+        }
+    }
+
     private static class AppInfo {
         private IBluetoothHealthCallback mCallback;
         private BluetoothHealthDeathRecipient mRcpObj;
diff --git a/src/com/android/bluetooth/hfp/HeadsetPhoneState.java b/src/com/android/bluetooth/hfp/HeadsetPhoneState.java
old mode 100755
new mode 100644
index 2f8821a..8d4e1ee
--- a/src/com/android/bluetooth/hfp/HeadsetPhoneState.java
+++ b/src/com/android/bluetooth/hfp/HeadsetPhoneState.java
@@ -21,6 +21,8 @@
 import android.telephony.ServiceState;
 import android.telephony.SignalStrength;
 import android.telephony.TelephonyManager;
+import android.telephony.SubscriptionManager;
+import android.telephony.SubscriptionManager.OnSubscriptionsChangedListener;
 import android.util.Log;
 import android.bluetooth.BluetoothDevice;
 
@@ -63,30 +65,78 @@
 
     private boolean mListening = false;
 
+    // when HFP Service Level Connection is established
+    private boolean mSlcReady = false;
+
+    private Context mContext = null;
+
+    private PhoneStateListener mPhoneStateListener = null;
+
+    private SubscriptionManager mSubMgr;
+
+    private OnSubscriptionsChangedListener mOnSubscriptionsChangedListener =
+            new OnSubscriptionsChangedListener() {
+        @Override
+        public void onSubscriptionsChanged() {
+            listenForPhoneState(false);
+            listenForPhoneState(true);
+        }
+    };
+
+
     HeadsetPhoneState(Context context, HeadsetStateMachine stateMachine) {
         mStateMachine = stateMachine;
         mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
+        mContext = context;
+
+        // Register for SubscriptionInfo list changes which is guaranteed
+        // to invoke onSubscriptionInfoChanged and which in turns calls
+        // loadInBackgroud.
+        mSubMgr = SubscriptionManager.from(mContext);
+        mSubMgr.registerOnSubscriptionsChangedListener(mOnSubscriptionsChangedListener);
     }
 
     public void cleanup() {
         listenForPhoneState(false);
+        mSubMgr.unregisterOnSubscriptionsChangedListener(mOnSubscriptionsChangedListener);
+
         mTelephonyManager = null;
         mStateMachine = null;
     }
 
     void listenForPhoneState(boolean start) {
+
+        mSlcReady = start;
+
         if (start) {
-            if (!mListening) {
+            startListenForPhoneState();
+        } else {
+            stopListenForPhoneState();
+        }
+
+    }
+
+    private void startListenForPhoneState() {
+        if (!mListening && mSlcReady) {
+
+            int subId = SubscriptionManager.getDefaultSubId();
+
+            if (SubscriptionManager.isValidSubscriptionId(subId)) {
+                mPhoneStateListener = getPhoneStateListener(subId);
+
                 mTelephonyManager.listen(mPhoneStateListener,
                                          PhoneStateListener.LISTEN_SERVICE_STATE |
                                          PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
                 mListening = true;
             }
-        } else {
-            if (mListening) {
-                mTelephonyManager.listen(mPhoneStateListener, PhoneStateListener.LISTEN_NONE);
-                mListening = false;
-            }
+        }
+    }
+
+    private void stopListenForPhoneState() {
+        if (mListening) {
+
+            mTelephonyManager.listen(mPhoneStateListener, PhoneStateListener.LISTEN_NONE);
+            mListening = false;
         }
     }
 
@@ -177,107 +227,115 @@
         }
     }
 
-    private PhoneStateListener mPhoneStateListener = new PhoneStateListener() {
-        @Override
-        public void onServiceStateChanged(ServiceState serviceState) {
-            mServiceState = serviceState;
-            mService = (serviceState.getState() == ServiceState.STATE_IN_SERVICE) ?
-                HeadsetHalConstants.NETWORK_STATE_AVAILABLE :
-                HeadsetHalConstants.NETWORK_STATE_NOT_AVAILABLE;
-            setRoam(serviceState.getRoaming() ? HeadsetHalConstants.SERVICE_TYPE_ROAMING
-                                              : HeadsetHalConstants.SERVICE_TYPE_HOME);
-            sendDeviceStateChanged();
-        }
+    private PhoneStateListener getPhoneStateListener(int subId) {
+        PhoneStateListener mPhoneStateListener = new PhoneStateListener(subId) {
+            @Override
+            public void onServiceStateChanged(ServiceState serviceState) {
 
-        @Override
-        public void onSignalStrengthsChanged(SignalStrength signalStrength) {
-            int prevSignal = mSignal;
-            if (mService == HeadsetHalConstants.NETWORK_STATE_NOT_AVAILABLE)
-                mSignal = 0;
-            else if (signalStrength.isGsm()) {
-                mSignal = gsmAsuToSignal(signalStrength);
-            } else {
-                mSignal = cdmaDbmEcioToSignal(signalStrength);
-            }
-            // network signal strength is scaled to BT 1-5 levels.
-            // This results in a lot of duplicate messages, hence this check
-            if (prevSignal != mSignal)
+                mServiceState = serviceState;
+                mService = (serviceState.getState() == ServiceState.STATE_IN_SERVICE) ?
+                    HeadsetHalConstants.NETWORK_STATE_AVAILABLE :
+                    HeadsetHalConstants.NETWORK_STATE_NOT_AVAILABLE;
+                setRoam(serviceState.getRoaming() ? HeadsetHalConstants.SERVICE_TYPE_ROAMING
+                                                  : HeadsetHalConstants.SERVICE_TYPE_HOME);
+
                 sendDeviceStateChanged();
-        }
-
-        /* convert [0,31] ASU signal strength to the [0,5] expected by
-         * bluetooth devices. Scale is similar to status bar policy
-         */
-        private int gsmAsuToSignal(SignalStrength signalStrength) {
-            int asu = signalStrength.getGsmSignalStrength();
-            if      (asu >= 16) return 5;
-            else if (asu >= 8)  return 4;
-            else if (asu >= 4)  return 3;
-            else if (asu >= 2)  return 2;
-            else if (asu >= 1)  return 1;
-            else                return 0;
-        }
-
-        /**
-         * Convert the cdma / evdo db levels to appropriate icon level.
-         * The scale is similar to the one used in status bar policy.
-         *
-         * @param signalStrength
-         * @return the icon level
-         */
-        private int cdmaDbmEcioToSignal(SignalStrength signalStrength) {
-            int levelDbm = 0;
-            int levelEcio = 0;
-            int cdmaIconLevel = 0;
-            int evdoIconLevel = 0;
-            int cdmaDbm = signalStrength.getCdmaDbm();
-            int cdmaEcio = signalStrength.getCdmaEcio();
-
-            if (cdmaDbm >= -75) levelDbm = 4;
-            else if (cdmaDbm >= -85) levelDbm = 3;
-            else if (cdmaDbm >= -95) levelDbm = 2;
-            else if (cdmaDbm >= -100) levelDbm = 1;
-            else levelDbm = 0;
-
-            // Ec/Io are in dB*10
-            if (cdmaEcio >= -90) levelEcio = 4;
-            else if (cdmaEcio >= -110) levelEcio = 3;
-            else if (cdmaEcio >= -130) levelEcio = 2;
-            else if (cdmaEcio >= -150) levelEcio = 1;
-            else levelEcio = 0;
-
-            cdmaIconLevel = (levelDbm < levelEcio) ? levelDbm : levelEcio;
-
-            // STOPSHIP: Change back to getRilVoiceRadioTechnology
-            if (mServiceState != null &&
-                  (mServiceState.getRadioTechnology() ==
-                      ServiceState.RIL_RADIO_TECHNOLOGY_EVDO_0 ||
-                   mServiceState.getRadioTechnology() ==
-                       ServiceState.RIL_RADIO_TECHNOLOGY_EVDO_A)) {
-                  int evdoEcio = signalStrength.getEvdoEcio();
-                  int evdoSnr = signalStrength.getEvdoSnr();
-                  int levelEvdoEcio = 0;
-                  int levelEvdoSnr = 0;
-
-                  // Ec/Io are in dB*10
-                  if (evdoEcio >= -650) levelEvdoEcio = 4;
-                  else if (evdoEcio >= -750) levelEvdoEcio = 3;
-                  else if (evdoEcio >= -900) levelEvdoEcio = 2;
-                  else if (evdoEcio >= -1050) levelEvdoEcio = 1;
-                  else levelEvdoEcio = 0;
-
-                  if (evdoSnr > 7) levelEvdoSnr = 4;
-                  else if (evdoSnr > 5) levelEvdoSnr = 3;
-                  else if (evdoSnr > 3) levelEvdoSnr = 2;
-                  else if (evdoSnr > 1) levelEvdoSnr = 1;
-                  else levelEvdoSnr = 0;
-
-                  evdoIconLevel = (levelEvdoEcio < levelEvdoSnr) ? levelEvdoEcio : levelEvdoSnr;
             }
-            // TODO(): There is a bug open regarding what should be sent.
-            return (cdmaIconLevel > evdoIconLevel) ?  cdmaIconLevel : evdoIconLevel;
-        }
-    };
+
+            @Override
+            public void onSignalStrengthsChanged(SignalStrength signalStrength) {
+
+                int prevSignal = mSignal;
+                if (mService == HeadsetHalConstants.NETWORK_STATE_NOT_AVAILABLE) {
+                    mSignal = 0;
+                } else if (signalStrength.isGsm()) {
+                    mSignal = gsmAsuToSignal(signalStrength);
+                } else {
+                    mSignal = cdmaDbmEcioToSignal(signalStrength);
+                }
+
+                // network signal strength is scaled to BT 1-5 levels.
+                // This results in a lot of duplicate messages, hence this check
+                if (prevSignal != mSignal) {
+                    sendDeviceStateChanged();
+                }
+            }
+
+            /* convert [0,31] ASU signal strength to the [0,5] expected by
+             * bluetooth devices. Scale is similar to status bar policy
+             */
+            private int gsmAsuToSignal(SignalStrength signalStrength) {
+                int asu = signalStrength.getGsmSignalStrength();
+                if      (asu >= 16) return 5;
+                else if (asu >= 8)  return 4;
+                else if (asu >= 4)  return 3;
+                else if (asu >= 2)  return 2;
+                else if (asu >= 1)  return 1;
+                else                return 0;
+            }
+
+            /**
+             * Convert the cdma / evdo db levels to appropriate icon level.
+             * The scale is similar to the one used in status bar policy.
+             *
+             * @param signalStrength
+             * @return the icon level
+             */
+            private int cdmaDbmEcioToSignal(SignalStrength signalStrength) {
+                int levelDbm = 0;
+                int levelEcio = 0;
+                int cdmaIconLevel = 0;
+                int evdoIconLevel = 0;
+                int cdmaDbm = signalStrength.getCdmaDbm();
+                int cdmaEcio = signalStrength.getCdmaEcio();
+
+                if (cdmaDbm >= -75) levelDbm = 4;
+                else if (cdmaDbm >= -85) levelDbm = 3;
+                else if (cdmaDbm >= -95) levelDbm = 2;
+                else if (cdmaDbm >= -100) levelDbm = 1;
+                else levelDbm = 0;
+
+                // Ec/Io are in dB*10
+                if (cdmaEcio >= -90) levelEcio = 4;
+                else if (cdmaEcio >= -110) levelEcio = 3;
+                else if (cdmaEcio >= -130) levelEcio = 2;
+                else if (cdmaEcio >= -150) levelEcio = 1;
+                else levelEcio = 0;
+
+                cdmaIconLevel = (levelDbm < levelEcio) ? levelDbm : levelEcio;
+
+                // STOPSHIP: Change back to getRilVoiceRadioTechnology
+                if (mServiceState != null &&
+                      (mServiceState.getRadioTechnology() ==
+                          ServiceState.RIL_RADIO_TECHNOLOGY_EVDO_0 ||
+                       mServiceState.getRadioTechnology() ==
+                           ServiceState.RIL_RADIO_TECHNOLOGY_EVDO_A)) {
+                      int evdoEcio = signalStrength.getEvdoEcio();
+                      int evdoSnr = signalStrength.getEvdoSnr();
+                      int levelEvdoEcio = 0;
+                      int levelEvdoSnr = 0;
+
+                      // Ec/Io are in dB*10
+                      if (evdoEcio >= -650) levelEvdoEcio = 4;
+                      else if (evdoEcio >= -750) levelEvdoEcio = 3;
+                      else if (evdoEcio >= -900) levelEvdoEcio = 2;
+                      else if (evdoEcio >= -1050) levelEvdoEcio = 1;
+                      else levelEvdoEcio = 0;
+
+                      if (evdoSnr > 7) levelEvdoSnr = 4;
+                      else if (evdoSnr > 5) levelEvdoSnr = 3;
+                      else if (evdoSnr > 3) levelEvdoSnr = 2;
+                      else if (evdoSnr > 1) levelEvdoSnr = 1;
+                      else levelEvdoSnr = 0;
+
+                      evdoIconLevel = (levelEvdoEcio < levelEvdoSnr) ? levelEvdoEcio : levelEvdoSnr;
+                }
+                // TODO(): There is a bug open regarding what should be sent.
+                return (cdmaIconLevel > evdoIconLevel) ?  cdmaIconLevel : evdoIconLevel;
+            }
+        };
+        return mPhoneStateListener;
+    }
 
 }
 
diff --git a/src/com/android/bluetooth/hfp/HeadsetService.java b/src/com/android/bluetooth/hfp/HeadsetService.java
index ae2954e..1e8dc7f 100755
--- a/src/com/android/bluetooth/hfp/HeadsetService.java
+++ b/src/com/android/bluetooth/hfp/HeadsetService.java
@@ -129,7 +129,7 @@
         }
 
         private HeadsetService getService() {
-            if (!Utils.checkCaller()) {
+            if (!Utils.checkCallerAllowManagedProfiles(mService)) {
                 Log.w(TAG,"Headset call not allowed for non-active user");
                 return null;
             }
@@ -557,4 +557,11 @@
         return true;
     }
 
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+        if (mStateMachine != null) {
+            mStateMachine.dump(sb);
+        }
+    }
 }
diff --git a/src/com/android/bluetooth/hfp/HeadsetStateMachine.java b/src/com/android/bluetooth/hfp/HeadsetStateMachine.java
old mode 100755
new mode 100644
index eb273b6..108e519
--- a/src/com/android/bluetooth/hfp/HeadsetStateMachine.java
+++ b/src/com/android/bluetooth/hfp/HeadsetStateMachine.java
@@ -53,11 +53,13 @@
 import android.os.RemoteException;
 import android.os.ServiceManager;
 import android.os.PowerManager;
+import android.os.UserHandle;
 import android.os.PowerManager.WakeLock;
 import android.telephony.PhoneNumberUtils;
 import android.util.Log;
 import com.android.bluetooth.Utils;
 import com.android.bluetooth.btservice.AdapterService;
+import com.android.bluetooth.btservice.ProfileService;
 import com.android.internal.util.IState;
 import com.android.internal.util.State;
 import com.android.internal.util.StateMachine;
@@ -297,6 +299,20 @@
         }
     }
 
+    public void dump(StringBuilder sb) {
+        ProfileService.println(sb, "mCurrentDevice: " + mCurrentDevice);
+        ProfileService.println(sb, "mTargetDevice: " + mTargetDevice);
+        ProfileService.println(sb, "mIncomingDevice: " + mIncomingDevice);
+        ProfileService.println(sb, "mActiveScoDevice: " + mActiveScoDevice);
+        ProfileService.println(sb, "mMultiDisconnectDevice: " + mMultiDisconnectDevice);
+        ProfileService.println(sb, "mVirtualCallStarted: " + mVirtualCallStarted);
+        ProfileService.println(sb, "mVoiceRecognitionStarted: " + mVoiceRecognitionStarted);
+        ProfileService.println(sb, "mWaitingForVoiceRecognition: " + mWaitingForVoiceRecognition);
+        ProfileService.println(sb, "StateMachine: " + this.toString());
+        ProfileService.println(sb, "mPhoneState: " + mPhoneState);
+        ProfileService.println(sb, "mAudioState: " + mAudioState);
+    }
+
     private class Disconnected extends State {
         @Override
         public void enter() {
@@ -2295,7 +2311,8 @@
         intent.putExtra(BluetoothProfile.EXTRA_PREVIOUS_STATE, prevState);
         intent.putExtra(BluetoothProfile.EXTRA_STATE, newState);
         intent.putExtra(BluetoothDevice.EXTRA_DEVICE, device);
-        mService.sendBroadcast(intent, HeadsetService.BLUETOOTH_PERM);
+        mService.sendBroadcastAsUser(intent, UserHandle.ALL,
+                HeadsetService.BLUETOOTH_PERM);
     }
 
     private void broadcastAudioState(BluetoothDevice device, int newState, int prevState) {
@@ -2308,7 +2325,8 @@
         intent.putExtra(BluetoothProfile.EXTRA_PREVIOUS_STATE, prevState);
         intent.putExtra(BluetoothProfile.EXTRA_STATE, newState);
         intent.putExtra(BluetoothDevice.EXTRA_DEVICE, device);
-        mService.sendBroadcast(intent, HeadsetService.BLUETOOTH_PERM);
+        mService.sendBroadcastAsUser(intent, UserHandle.ALL,
+                HeadsetService.BLUETOOTH_PERM);
         log("Audio state " + device + ": " + prevState + "->" + newState);
     }
 
@@ -2333,7 +2351,8 @@
         intent.addCategory(BluetoothHeadset.VENDOR_SPECIFIC_HEADSET_EVENT_COMPANY_ID_CATEGORY
             + "." + Integer.toString(companyId));
 
-        mService.sendBroadcast(intent, HeadsetService.BLUETOOTH_PERM);
+        mService.sendBroadcastAsUser(intent, UserHandle.ALL,
+                HeadsetService.BLUETOOTH_PERM);
     }
 
     private void configAudioParameters(BluetoothDevice device)
@@ -2711,10 +2730,14 @@
                 String number = mPhoneProxy.getSubscriberNumber();
                 if (number != null) {
                     atResponseStringNative("+CNUM: ,\"" + number + "\"," +
-                                           PhoneNumberUtils.toaFromString(number) +
-                                             ",,4", getByteAddress(device));
+                                                PhoneNumberUtils.toaFromString(number) +
+                                                ",,4", getByteAddress(device));
                     atResponseCodeNative(HeadsetHalConstants.AT_RESPONSE_OK,
-                                                 0, getByteAddress(device));
+                                                0, getByteAddress(device));
+                } else {
+                    Log.e(TAG, "getSubscriberNumber returns null");
+                    atResponseCodeNative(HeadsetHalConstants.AT_RESPONSE_ERROR,
+                                                0, getByteAddress(device));
                 }
             } catch (RemoteException e) {
                 Log.e(TAG, Log.getStackTraceString(new Throwable()));
diff --git a/src/com/android/bluetooth/hfpclient/HeadsetClientService.java b/src/com/android/bluetooth/hfpclient/HeadsetClientService.java
index aaf7156..d7eb12d 100644
--- a/src/com/android/bluetooth/hfpclient/HeadsetClientService.java
+++ b/src/com/android/bluetooth/hfpclient/HeadsetClientService.java
@@ -734,4 +734,12 @@
         }
         return mStateMachine.getCurrentAgFeatures();
     }
+
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+        if (mStateMachine != null) {
+            mStateMachine.dump(sb);
+        }
+    }
 }
diff --git a/src/com/android/bluetooth/hfpclient/HeadsetClientStateMachine.java b/src/com/android/bluetooth/hfpclient/HeadsetClientStateMachine.java
index d50602a..b3e4b0a 100644
--- a/src/com/android/bluetooth/hfpclient/HeadsetClientStateMachine.java
+++ b/src/com/android/bluetooth/hfpclient/HeadsetClientStateMachine.java
@@ -158,6 +158,35 @@
         classInitNative();
     }
 
+    public void dump(StringBuilder sb) {
+        ProfileService.println(sb, "mCurrentDevice: " + mCurrentDevice);
+        ProfileService.println(sb, "mAudioOn: " + mAudioOn);
+        ProfileService.println(sb, "mAudioState: " + mAudioState);
+        ProfileService.println(sb, "mAudioWbs: " + mAudioWbs);
+        ProfileService.println(sb, "mIndicatorNetworkState: " + mIndicatorNetworkState);
+        ProfileService.println(sb, "mIndicatorNetworkType: " + mIndicatorNetworkType);
+        ProfileService.println(sb, "mIndicatorNetworkSignal: " + mIndicatorNetworkSignal);
+        ProfileService.println(sb, "mIndicatorBatteryLevel: " + mIndicatorBatteryLevel);
+        ProfileService.println(sb, "mIndicatorCall: " + mIndicatorCall);
+        ProfileService.println(sb, "mIndicatorCallSetup: " + mIndicatorCallSetup);
+        ProfileService.println(sb, "mIndicatorCallHeld: " + mIndicatorCallHeld);
+        ProfileService.println(sb, "mVgsFromStack: " + mVgsFromStack);
+        ProfileService.println(sb, "mVgmFromStack: " + mVgmFromStack);
+        ProfileService.println(sb, "mRingtone: " + mRingtone);
+        ProfileService.println(sb, "mOperatorName: " + mOperatorName);
+        ProfileService.println(sb, "mSubscriberInfo: " + mSubscriberInfo);
+        ProfileService.println(sb, "mVoiceRecognitionActive: " + mVoiceRecognitionActive);
+        ProfileService.println(sb, "mInBandRingtone: " + mInBandRingtone);
+        ProfileService.println(sb, "mCalls:");
+        for (BluetoothHeadsetClientCall call : mCalls.values()) {
+            ProfileService.println(sb, "  " + call);
+        }
+        ProfileService.println(sb, "mCallsUpdate:");
+        for (BluetoothHeadsetClientCall call : mCallsUpdate.values()) {
+            ProfileService.println(sb, "  " + call);
+        }
+    }
+
     private void clearPendingAction() {
         mPendingAction = new Pair<Integer, Object>(NO_ACTION, 0);
     }
diff --git a/src/com/android/bluetooth/hid/HidService.java b/src/com/android/bluetooth/hid/HidService.java
index 893054a..418c13b 100755
--- a/src/com/android/bluetooth/hid/HidService.java
+++ b/src/com/android/bluetooth/hid/HidService.java
@@ -185,13 +185,13 @@
                     } else {
                         broadcastConnectionState(device, convertHalState(halState));
                     }
-                    if (halState != CONN_STATE_CONNECTING) {
+                    if (halState == CONN_STATE_CONNECTED &&
+                        (mTargetDevice != null && mTargetDevice.equals(device))) {
                         mTargetDevice = null;
-                    }
-                    else {
-                        // CONN_STATE_CONNECTING is received only during
-                        // local initiated connection.
-                        mTargetDevice = device;
+                        // local device originated connection to hid device, move out
+                        // of quiet mode
+                        AdapterService adapterService = AdapterService.getAdapterService();
+                        adapterService.enable(false);
                     }
                 }
                     break;
@@ -680,6 +680,16 @@
         }
     }
 
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+        println(sb, "mTargetDevice: " + mTargetDevice);
+        println(sb, "mInputDevices:");
+        for (BluetoothDevice device : mInputDevices.keySet()) {
+            println(sb, "  " + device + " : " + mInputDevices.get(device));
+        }
+    }
+
     // Constants matching Hal header file bt_hh.h
     // bthh_connection_state_t
     private final static int CONN_STATE_CONNECTED = 0;
diff --git a/src/com/android/bluetooth/map/BluetoothMapContent.java b/src/com/android/bluetooth/map/BluetoothMapContent.java
index 880853e..cb5f38e 100644
--- a/src/com/android/bluetooth/map/BluetoothMapContent.java
+++ b/src/com/android/bluetooth/map/BluetoothMapContent.java
@@ -42,6 +42,7 @@
 import com.android.bluetooth.map.BluetoothMapAppParams;
 
 import java.io.ByteArrayOutputStream;
+import java.io.Closeable;
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.IOException;
@@ -214,148 +215,13 @@
         mBaseEmailUri = emailBaseUri;
     }
 
-
-
-    private void printSms(Cursor c) {
-        String body = c.getString(c.getColumnIndex(Sms.BODY));
-        if (V) Log.v(TAG, "printSms " + BaseColumns._ID + ": " + c.getLong(c.getColumnIndex(BaseColumns._ID)) +
-                "\n " + Sms.THREAD_ID + " : " + c.getLong(c.getColumnIndex(Sms.THREAD_ID)) +
-                "\n " + Sms.ADDRESS + " : " + c.getString(c.getColumnIndex(Sms.ADDRESS)) +
-                "\n " + Sms.BODY + " : " + body.substring(0, Math.min(body.length(), 8)) +
-                "\n " + Sms.DATE + " : " + c.getLong(c.getColumnIndex(Sms.DATE)) +
-                "\n " + Sms.READ + " : " + c.getLong(c.getColumnIndex(Sms.READ)) +
-                "\n " + Sms.TYPE + " : " + c.getInt(c.getColumnIndex(Sms.TYPE)) +
-                "\n " + Sms.STATUS + " : " + c.getInt(c.getColumnIndex(Sms.STATUS)) +
-                "\n " + Sms.LOCKED + " : " + c.getInt(c.getColumnIndex(Sms.LOCKED)) +
-                "\n " + Sms.ERROR_CODE + " : " + c.getInt(c.getColumnIndex(Sms.ERROR_CODE)));
-
-
-    }
-
-    private void printMms(Cursor c) {
-        if (V) Log.v(TAG, "printMms " + BaseColumns._ID + ": " + c.getLong(c.getColumnIndex(BaseColumns._ID)) +
-                "\n   " + Mms.THREAD_ID + " : " + c.getLong(c.getColumnIndex(Mms.THREAD_ID)) +
-                "\n   " + Mms.MESSAGE_ID + " : " + c.getString(c.getColumnIndex(Mms.MESSAGE_ID)) +
-                "\n   " + Mms.SUBJECT + " : " + c.getString(c.getColumnIndex(Mms.SUBJECT)) +
-                "\n   " + Mms.CONTENT_TYPE + " : " + c.getString(c.getColumnIndex(Mms.CONTENT_TYPE)) +
-                "\n   " + Mms.TEXT_ONLY + " : " + c.getInt(c.getColumnIndex(Mms.TEXT_ONLY)) +
-                "\n   " + Mms.DATE + " : " + c.getLong(c.getColumnIndex(Mms.DATE)) +
-                "\n   " + Mms.DATE_SENT + " : " + c.getLong(c.getColumnIndex(Mms.DATE_SENT)) +
-                "\n   " + Mms.READ + " : " + c.getInt(c.getColumnIndex(Mms.READ)) +
-                "\n   " + Mms.MESSAGE_BOX + " : " + c.getInt(c.getColumnIndex(Mms.MESSAGE_BOX)) +
-                "\n   " + Mms.STATUS + " : " + c.getInt(c.getColumnIndex(Mms.STATUS)) +
-                "\n   " + Mms.PRIORITY + " : " + c.getInt(c.getColumnIndex(Mms.PRIORITY)) +
-                "\n   " + Mms.MESSAGE_SIZE + " : " + c.getInt(c.getColumnIndex(Mms.MESSAGE_SIZE)));
-    }
-
-    private String getDateTimeString(long timestamp) {
-        SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd'T'HHmmss");
-        Date date = new Date(timestamp);
-        return format.format(date); // Format to YYYYMMDDTHHMMSS local time
-    }
-    private void printEmail(Cursor c) {
-        if (V) Log.v(TAG, "printEmail " + BaseColumns._ID + ": " + c.getLong(c.getColumnIndex(BaseColumns._ID)) +
-                "\n   " + BluetoothMapContract.MessageColumns.DATE + " : " + getDateTimeString(c.getLong(c.getColumnIndex(BluetoothMapContract.MessageColumns.DATE))) +
-                "\n   " + BluetoothMapContract.MessageColumns.SUBJECT + " : " + c.getString(c.getColumnIndex(BluetoothMapContract.MessageColumns.SUBJECT)) +
-                "\n   " + BluetoothMapContract.MessageColumns.FLAG_READ + " : " + c.getInt(c.getColumnIndex(BluetoothMapContract.MessageColumns.FLAG_READ)) +
-                "\n   " + BluetoothMapContract.MessageColumns.FLAG_HIGH_PRIORITY + " : " + c.getInt(c.getColumnIndex(BluetoothMapContract.MessageColumns.FLAG_HIGH_PRIORITY)) +
-                "\n   " + BluetoothMapContract.MessageColumns.RECEPTION_STATE + " : " + c.getInt(c.getColumnIndex(BluetoothMapContract.MessageColumns.RECEPTION_STATE)) +
-                "\n   " + BluetoothMapContract.MessageColumns.FLAG_ATTACHMENT + " : " + c.getInt(c.getColumnIndex(BluetoothMapContract.MessageColumns.FLAG_ATTACHMENT)) +
-                "\n   " + BluetoothMapContract.MessageColumns.MESSAGE_SIZE + " : " + c.getLong(c.getColumnIndex(BluetoothMapContract.MessageColumns.MESSAGE_SIZE)) +
-                "\n   " + BluetoothMapContract.MessageColumns.FLAG_PROTECTED + " : " + c.getInt(c.getColumnIndex(BluetoothMapContract.MessageColumns.FLAG_PROTECTED)) +
-                "\n   " + BluetoothMapContract.MessageColumns.FROM_LIST + " : " + c.getString(c.getColumnIndex(BluetoothMapContract.MessageColumns.FROM_LIST)) +
-                "\n   " + BluetoothMapContract.MessageColumns.TO_LIST + " : " + c.getString(c.getColumnIndex(BluetoothMapContract.MessageColumns.TO_LIST)) +
-                "\n   " + BluetoothMapContract.MessageColumns.CC_LIST + " : " + c.getString(c.getColumnIndex(BluetoothMapContract.MessageColumns.CC_LIST)) +
-                "\n   " + BluetoothMapContract.MessageColumns.BCC_LIST + " : " + c.getString(c.getColumnIndex(BluetoothMapContract.MessageColumns.BCC_LIST)) +
-                "\n   " + BluetoothMapContract.MessageColumns.REPLY_TO_LIST + " : " + c.getString(c.getColumnIndex(BluetoothMapContract.MessageColumns.REPLY_TO_LIST)) +
-                "\n   " + BluetoothMapContract.MessageColumns.FOLDER_ID + " : " + c.getInt(c.getColumnIndex(BluetoothMapContract.MessageColumns.FOLDER_ID)) +
-                "\n   " + BluetoothMapContract.MessageColumns.ACCOUNT_ID + " : " + c.getInt(c.getColumnIndex(BluetoothMapContract.MessageColumns.ACCOUNT_ID)) );
-    }
-
-    private void printMmsAddr(long id) {
-        final String[] projection = null;
-        String selection = new String("msg_id=" + id);
-        String uriStr = new String(Mms.CONTENT_URI + "/" + id + "/addr");
-        Uri uriAddress = Uri.parse(uriStr);
-        Cursor c = mResolver.query(uriAddress, projection, selection, null, null);
-
-        if (c.moveToFirst()) {
-            do {
-                String add = c.getString(c.getColumnIndex("address"));
-                Integer type = c.getInt(c.getColumnIndex("type"));
-                if (type == MMS_TO) {
-                    if (D) Log.d(TAG, "   recipient: " + add + " (type: " + type + ")");
-                } else if (type == MMS_FROM) {
-                    if (D) Log.d(TAG, "   originator: " + add + " (type: " + type + ")");
-                } else {
-                    if (D) Log.d(TAG, "   address other: " + add + " (type: " + type + ")");
-                }
-
-            } while(c.moveToNext());
-        }
-    }
-
-    private void printMmsPartImage(long partid) {
-        String uriStr = new String(Mms.CONTENT_URI + "/part/" + partid);
-        Uri uriAddress = Uri.parse(uriStr);
-        int ch;
-        StringBuffer sb = new StringBuffer("");
-        InputStream is = null;
-
+    private static void close(Closeable c) {
         try {
-            is = mResolver.openInputStream(uriAddress);
-
-            while ((ch = is.read()) != -1) {
-                sb.append((char)ch);
-            }
-            if (D) Log.d(TAG, sb.toString());
-
+          if (c != null) c.close();
         } catch (IOException e) {
-            // do nothing for now
-            e.printStackTrace();
         }
     }
 
-    private void printMmsParts(long id) {
-        final String[] projection = null;
-        String selection = new String("mid=" + id);
-        String uriStr = new String(Mms.CONTENT_URI + "/" + id + "/part");
-        Uri uriAddress = Uri.parse(uriStr);
-        Cursor c = mResolver.query(uriAddress, projection, selection, null, null);
-
-        if (D) Log.d(TAG, "   parts:");
-        if (c.moveToFirst()) {
-            do {
-                Long partid = c.getLong(c.getColumnIndex(BaseColumns._ID));
-                String ct = c.getString(c.getColumnIndex("ct"));
-                String name = c.getString(c.getColumnIndex("name"));
-                String charset = c.getString(c.getColumnIndex("chset"));
-                String filename = c.getString(c.getColumnIndex("fn"));
-                String text = c.getString(c.getColumnIndex("text"));
-                Integer fd = c.getInt(c.getColumnIndex("_data"));
-                String cid = c.getString(c.getColumnIndex("cid"));
-                String cl = c.getString(c.getColumnIndex("cl"));
-                String cdisp = c.getString(c.getColumnIndex("cd"));
-
-                if (D) Log.d(TAG, "     _id : " + partid +
-                    "\n     ct : " + ct +
-                    "\n     partname : " + name +
-                    "\n     charset : " + charset +
-                    "\n     filename : " + filename +
-                    "\n     text : " + text +
-                    "\n     fd : " + fd +
-                    "\n     cid : " + cid +
-                    "\n     cl : " + cl +
-                    "\n     cdisp : " + cdisp);
-
-                /* if (ct.equals("image/jpeg")) { */
-                /*     printMmsPartImage(partid); */
-                /* } */
-            } while(c.moveToNext());
-        }
-    }
-
-
     private void setProtected(BluetoothMapMessageListingElement e, Cursor c,
             FilterInfo fi, BluetoothMapAppParams ap) {
         if ((ap.getParameterMask() & MASK_PROTECTED) != 0) {
@@ -745,7 +611,6 @@
                 date = c.getLong(fi.mEmailColDate);
             }
             e.setDateTime(date);
-            if (V) Log.v(TAG, "setDateTime: " + e.getDateTimeString());
         }
     }
 
@@ -755,11 +620,10 @@
         String uriStr = new String(Mms.CONTENT_URI + "/" + id + "/part");
         Uri uriAddress = Uri.parse(uriStr);
         // TODO: maybe use a projection with only "ct" and "text"
-        Cursor c = mResolver.query(uriAddress, null, selection,
-            null, null);
 
-        if (c != null && c.moveToFirst()) {
-            do {
+        Cursor c = mResolver.query(uriAddress, null, selection, null, null);
+        try {
+            while(c != null && c.moveToNext()) {
                 String ct = c.getString(c.getColumnIndex("ct"));
                 if (ct.equals("text/plain")) {
                     String part = c.getString(c.getColumnIndex("text"));
@@ -767,10 +631,9 @@
                         text += part;
                     }
                 }
-            } while(c.moveToNext());
-        }
-        if (c != null) {
-            c.close();
+            }
+        } finally {
+            close(c);
         }
         return text;
     }
@@ -842,13 +705,13 @@
         String orderBy = Contacts.DISPLAY_NAME + " ASC";
 
         Cursor c = mResolver.query(uri, projection, selection, null, orderBy);
-
-        if (c != null && c.getCount() >= 1) {
-            c.moveToFirst();
-            name = c.getString(c.getColumnIndex(Contacts.DISPLAY_NAME));
+        try {
+            if (c != null && c.moveToFirst()) {
+                name = c.getString(c.getColumnIndex(Contacts.DISPLAY_NAME));
+            };
+        } finally {
+            close(c);
         }
-
-        c.close();
         return name;
     }
 
@@ -857,17 +720,17 @@
         String uriStr = new String(Mms.CONTENT_URI + "/" + id + "/addr");
         Uri uriAddress = Uri.parse(uriStr);
         String addr = null;
+
         Cursor c = r.query(uriAddress, null, selection, null, null);
-
-        if (c != null && c.moveToFirst()) {
-            addr = c.getString(c.getColumnIndex(Mms.Addr.ADDRESS));
-            if(addr.equals(INSERT_ADDRES_TOKEN))
-                addr  = "";
+        try {
+            if (c != null && c.moveToFirst()) {
+                addr = c.getString(c.getColumnIndex(Mms.Addr.ADDRESS));
+                if (addr.equals(INSERT_ADDRES_TOKEN)) addr  = "";
+            }
+        } finally {
+            close(c);
         }
 
-        if (c != null) {
-            c.close();
-        }
         return addr;
     }
 
@@ -1171,29 +1034,32 @@
             new String[]{str},
             ContactsContract.Contacts.DISPLAY_NAME + " ASC");
 
-        while (c != null && c.moveToNext()) {
-            String contactId = c.getString(c.getColumnIndex(ContactsContract.Contacts._ID));
+        try {
+            while (c != null && c.moveToNext()) {
+                String contactId = c.getString(c.getColumnIndex(ContactsContract.Contacts._ID));
 
-            Cursor p = mResolver.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,
-                ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?",
-                new String[]{contactId},
-                null);
+                Cursor p = mResolver.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,
+                    ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?",
+                    new String[]{contactId},
+                    null);
 
-            while (p != null && p.moveToNext()) {
-                String number = p.getString(
-                    p.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
+                try {
+                    while (p != null && p.moveToNext()) {
+                        String number = p.getString(
+                            p.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
 
-                where += " address = " + "'" + number + "'";
-                if (!p.isLast()) {
-                    where += " OR ";
+                        where += " address = " + "'" + number + "'";
+                        if (!p.isLast()) where += " OR ";
+                    }
+                } finally {
+                    close(p);
                 }
+
+                if (!c.isLast()) where += " OR ";
             }
-            if (!c.isLast()) {
-                where += " OR ";
-            }
-            p.close();
+        } finally {
+            close(c);
         }
-        c.close();
 
         if (str != null && str.length() > 0) {
             if (where.length() > 0) {
@@ -1380,153 +1246,155 @@
         Cursor smsCursor = null;
         Cursor mmsCursor = null;
         Cursor emailCursor = null;
-        String limit = "";
-        int countNum = ap.getMaxListCount();
-        int offsetNum = ap.getStartOffset();
-        if(ap.getMaxListCount()>0){
-            limit=" LIMIT "+ (ap.getMaxListCount()+ap.getStartOffset());
-        }
 
-        if (smsSelected(fi, ap) && folderElement.hasSmsMmsContent()) {
-            if(ap.getFilterMessageType() == (BluetoothMapAppParams.FILTER_NO_EMAIL|
-                                             BluetoothMapAppParams.FILTER_NO_MMS|
-                                             BluetoothMapAppParams.FILTER_NO_SMS_GSM)||
-               ap.getFilterMessageType() == (BluetoothMapAppParams.FILTER_NO_EMAIL|
-                                             BluetoothMapAppParams.FILTER_NO_MMS|
-                                             BluetoothMapAppParams.FILTER_NO_SMS_CDMA)){
-                //set real limit and offset if only this type is used (only if offset/limit is used
-                limit = " LIMIT " + ap.getMaxListCount()+" OFFSET "+ ap.getStartOffset();
-                if(D) Log.d(TAG, "SMS Limit => "+limit);
-                offsetNum = 0;
+        try {
+            String limit = "";
+            int countNum = ap.getMaxListCount();
+            int offsetNum = ap.getStartOffset();
+            if(ap.getMaxListCount()>0){
+                limit=" LIMIT "+ (ap.getMaxListCount()+ap.getStartOffset());
             }
-            fi.mMsgType = FilterInfo.TYPE_SMS;
-            if(ap.getFilterPriority() != 1){ /*SMS cannot have high priority*/
+
+            if (smsSelected(fi, ap) && folderElement.hasSmsMmsContent()) {
+                if(ap.getFilterMessageType() == (BluetoothMapAppParams.FILTER_NO_EMAIL|
+                                                 BluetoothMapAppParams.FILTER_NO_MMS|
+                                                 BluetoothMapAppParams.FILTER_NO_SMS_GSM)||
+                   ap.getFilterMessageType() == (BluetoothMapAppParams.FILTER_NO_EMAIL|
+                                                 BluetoothMapAppParams.FILTER_NO_MMS|
+                                                 BluetoothMapAppParams.FILTER_NO_SMS_CDMA)){
+                    //set real limit and offset if only this type is used (only if offset/limit is used
+                    limit = " LIMIT " + ap.getMaxListCount()+" OFFSET "+ ap.getStartOffset();
+                    if(D) Log.d(TAG, "SMS Limit => "+limit);
+                    offsetNum = 0;
+                }
+                fi.mMsgType = FilterInfo.TYPE_SMS;
+                if(ap.getFilterPriority() != 1){ /*SMS cannot have high priority*/
+                    String where = setWhereFilter(folderElement, fi, ap);
+                    if(!where.isEmpty()) {
+                        if (D) Log.d(TAG, "msgType: " + fi.mMsgType);
+                        smsCursor = mResolver.query(Sms.CONTENT_URI,
+                                SMS_PROJECTION, where, null, Sms.DATE + " DESC" + limit);
+                        if (smsCursor != null) {
+                            BluetoothMapMessageListingElement e = null;
+                            // store column index so we dont have to look them up anymore (optimization)
+                            if(D) Log.d(TAG, "Found " + smsCursor.getCount() + " sms messages.");
+                            fi.setSmsColumns(smsCursor);
+                            while (smsCursor.moveToNext()) {
+                                if (matchAddresses(smsCursor, fi, ap)) {
+                                    e = element(smsCursor, fi, ap);
+                                    bmList.add(e);
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+
+            if (mmsSelected(fi, ap) && folderElement.hasSmsMmsContent()) {
+                if(ap.getFilterMessageType() == (BluetoothMapAppParams.FILTER_NO_EMAIL|
+                                                 BluetoothMapAppParams.FILTER_NO_SMS_CDMA|
+                                                 BluetoothMapAppParams.FILTER_NO_SMS_GSM)){
+                    //set real limit and offset if only this type is used (only if offset/limit is used
+                    limit = " LIMIT " + ap.getMaxListCount()+" OFFSET "+ ap.getStartOffset();
+                    if(D) Log.d(TAG, "MMS Limit => "+limit);
+                    offsetNum = 0;
+                }
+                fi.mMsgType = FilterInfo.TYPE_MMS;
                 String where = setWhereFilter(folderElement, fi, ap);
                 if(!where.isEmpty()) {
                     if (D) Log.d(TAG, "msgType: " + fi.mMsgType);
-                    smsCursor = mResolver.query(Sms.CONTENT_URI,
-                            SMS_PROJECTION, where, null, Sms.DATE + " DESC" + limit);
-                    if (smsCursor != null) {
+                    mmsCursor = mResolver.query(Mms.CONTENT_URI,
+                            MMS_PROJECTION, where, null, Mms.DATE + " DESC" + limit);
+                    if (mmsCursor != null) {
                         BluetoothMapMessageListingElement e = null;
                         // store column index so we dont have to look them up anymore (optimization)
-                        if(D) Log.d(TAG, "Found " + smsCursor.getCount() + " sms messages.");
-                        fi.setSmsColumns(smsCursor);
-                        while (smsCursor.moveToNext()) {
-                            if (matchAddresses(smsCursor, fi, ap)) {
-                                if(V) printSms(smsCursor);
-                                e = element(smsCursor, fi, ap);
+                        fi.setMmsColumns(mmsCursor);
+                        int cnt = 0;
+                        if(D) Log.d(TAG, "Found " + mmsCursor.getCount() + " mms messages.");
+                        while (mmsCursor.moveToNext()) {
+                            if (matchAddresses(mmsCursor, fi, ap)) {
+                                e = element(mmsCursor, fi, ap);
                                 bmList.add(e);
                             }
                         }
                     }
                 }
             }
-        }
 
-        if (mmsSelected(fi, ap) && folderElement.hasSmsMmsContent()) {
-            if(ap.getFilterMessageType() == (BluetoothMapAppParams.FILTER_NO_EMAIL|
-                                             BluetoothMapAppParams.FILTER_NO_SMS_CDMA|
-                                             BluetoothMapAppParams.FILTER_NO_SMS_GSM)){
-                //set real limit and offset if only this type is used (only if offset/limit is used
-                limit = " LIMIT " + ap.getMaxListCount()+" OFFSET "+ ap.getStartOffset();
-                if(D) Log.d(TAG, "MMS Limit => "+limit);
-                offsetNum = 0;
-            }
-            fi.mMsgType = FilterInfo.TYPE_MMS;
-            String where = setWhereFilter(folderElement, fi, ap);
-            if(!where.isEmpty()) {
-                if (D) Log.d(TAG, "msgType: " + fi.mMsgType);
-                mmsCursor = mResolver.query(Mms.CONTENT_URI,
-                        MMS_PROJECTION, where, null, Mms.DATE + " DESC" + limit);
-                if (mmsCursor != null) {
-                    BluetoothMapMessageListingElement e = null;
-                    // store column index so we dont have to look them up anymore (optimization)
-                    fi.setMmsColumns(mmsCursor);
-                    int cnt = 0;
-                    if(D) Log.d(TAG, "Found " + mmsCursor.getCount() + " mms messages.");
-                    while (mmsCursor.moveToNext()) {
-                        if (matchAddresses(mmsCursor, fi, ap)) {
-                            if(V) printMms(mmsCursor);
-                            e = element(mmsCursor, fi, ap);
+            if (emailSelected(fi, ap) && folderElement.getEmailFolderId() != -1) {
+                if(ap.getFilterMessageType() == (BluetoothMapAppParams.FILTER_NO_MMS|
+                                                 BluetoothMapAppParams.FILTER_NO_SMS_CDMA|
+                                                 BluetoothMapAppParams.FILTER_NO_SMS_GSM)){
+                    //set real limit and offset if only this type is used (only if offset/limit is used
+                    limit = " LIMIT " + ap.getMaxListCount()+" OFFSET "+ ap.getStartOffset();
+                    if(D) Log.d(TAG, "Email Limit => "+limit);
+                    offsetNum = 0;
+                }
+                fi.mMsgType = FilterInfo.TYPE_EMAIL;
+                String where = setWhereFilter(folderElement, fi, ap);
+
+                if(!where.isEmpty()) {
+                    if (D) Log.d(TAG, "msgType: " + fi.mMsgType);
+                    Uri contentUri = Uri.parse(mBaseEmailUri + BluetoothMapContract.TABLE_MESSAGE);
+                    emailCursor = mResolver.query(contentUri, BluetoothMapContract.BT_MESSAGE_PROJECTION,
+                            where, null, BluetoothMapContract.MessageColumns.DATE + " DESC" + limit);
+                    if (emailCursor != null) {
+                        BluetoothMapMessageListingElement e = null;
+                        // store column index so we dont have to look them up anymore (optimization)
+                        fi.setEmailColumns(emailCursor);
+                        int cnt = 0;
+                        while (emailCursor.moveToNext()) {
+                            if(D) Log.d(TAG, "Found " + emailCursor.getCount() + " email messages.");
+                            e = element(emailCursor, fi, ap);
                             bmList.add(e);
                         }
+                    //   emailCursor.close();
                     }
                 }
             }
-        }
 
-        if (emailSelected(fi, ap) && folderElement.getEmailFolderId() != -1) {
-            if(ap.getFilterMessageType() == (BluetoothMapAppParams.FILTER_NO_MMS|
-                                             BluetoothMapAppParams.FILTER_NO_SMS_CDMA|
-                                             BluetoothMapAppParams.FILTER_NO_SMS_GSM)){
-                //set real limit and offset if only this type is used (only if offset/limit is used
-                limit = " LIMIT " + ap.getMaxListCount()+" OFFSET "+ ap.getStartOffset();
-                if(D) Log.d(TAG, "Email Limit => "+limit);
-                offsetNum = 0;
-            }
-            fi.mMsgType = FilterInfo.TYPE_EMAIL;
-            String where = setWhereFilter(folderElement, fi, ap);
+            /* Enable this if post sorting and segmenting needed */
+            bmList.sort();
+            bmList.segment(ap.getMaxListCount(), offsetNum);
+            List<BluetoothMapMessageListingElement> list = bmList.getList();
+            int listSize = list.size();
+            Cursor tmpCursor = null;
+            for (int x=0; x<listSize; x++){
+                BluetoothMapMessageListingElement ele = list.get(x);
+                if ((ele.getType().equals(TYPE.SMS_GSM)||ele.getType().equals(TYPE.SMS_CDMA)) && smsCursor != null){
+                    tmpCursor = smsCursor;
+                    fi.mMsgType = FilterInfo.TYPE_SMS;
+                } else if (ele.getType().equals(TYPE.MMS) && mmsCursor != null){
+                    tmpCursor = mmsCursor;
+                    fi.mMsgType = FilterInfo.TYPE_MMS;
+                } else if (ele.getType().equals(TYPE.EMAIL) && emailCursor != null){
+                    tmpCursor = emailCursor;
+                    fi.mMsgType = FilterInfo.TYPE_EMAIL;
+                }
 
-            if(!where.isEmpty()) {
-                if (D) Log.d(TAG, "msgType: " + fi.mMsgType);
-                Uri contentUri = Uri.parse(mBaseEmailUri + BluetoothMapContract.TABLE_MESSAGE);
-                emailCursor = mResolver.query(contentUri, BluetoothMapContract.BT_MESSAGE_PROJECTION,
-                        where, null, BluetoothMapContract.MessageColumns.DATE + " DESC" + limit);
-                if (emailCursor != null) {
-                    BluetoothMapMessageListingElement e = null;
-                    // store column index so we dont have to look them up anymore (optimization)
-                    fi.setEmailColumns(emailCursor);
-                    int cnt = 0;
-                    while (emailCursor.moveToNext()) {
-                        if(V) printEmail(emailCursor);
-                        if(D) Log.d(TAG, "Found " + emailCursor.getCount() + " email messages.");
-                        e = element(emailCursor, fi, ap);
-                        bmList.add(e);
-                    }
-                //   emailCursor.close();
+                if (tmpCursor != null && tmpCursor.moveToPosition(ele.getCursorIndex())) {
+                    setSenderAddressing(ele, tmpCursor, fi, ap);
+                    setSenderName(ele, tmpCursor, fi, ap);
+                    setRecipientAddressing(ele, tmpCursor, fi, ap);
+                    setRecipientName(ele, tmpCursor, fi, ap);
+                    setSubject(ele, tmpCursor, fi, ap);
+                    setSize(ele, tmpCursor, fi, ap);
+                    setReceptionStatus(ele, tmpCursor, fi, ap);
+                    setText(ele, tmpCursor, fi, ap);
+                    setAttachmentSize(ele, tmpCursor, fi, ap);
+                    setPriority(ele, tmpCursor, fi, ap);
+                    setSent(ele, tmpCursor, fi, ap);
+                    setProtected(ele, tmpCursor, fi, ap);
+                    setThreadId(ele, tmpCursor, fi, ap);
                 }
             }
+        } finally {
+            close(emailCursor);
+            close(smsCursor);
+            close(mmsCursor);
         }
 
-        /* Enable this if post sorting and segmenting needed */
-        bmList.sort();
-        bmList.segment(ap.getMaxListCount(), offsetNum);
-        List<BluetoothMapMessageListingElement> list = bmList.getList();
-        int listSize = list.size();
-        Cursor tmpCursor = null;
-        for(int x=0;x<listSize;x++){
-            BluetoothMapMessageListingElement ele = list.get(x);
-            if((ele.getType().equals(TYPE.SMS_GSM)||ele.getType().equals(TYPE.SMS_CDMA)) && smsCursor != null){
-                tmpCursor = smsCursor;
-                fi.mMsgType = FilterInfo.TYPE_SMS;
-            }else if(ele.getType().equals(TYPE.MMS) && mmsCursor != null){
-                tmpCursor = mmsCursor;
-                fi.mMsgType = FilterInfo.TYPE_MMS;
-            }else if(ele.getType().equals(TYPE.EMAIL) && emailCursor != null){
-                tmpCursor = emailCursor;
-                fi.mMsgType = FilterInfo.TYPE_EMAIL;
-            }
-            if(tmpCursor != null){
-                tmpCursor.moveToPosition(ele.getCursorIndex());
-                setSenderAddressing(ele, tmpCursor, fi, ap);
-                setSenderName(ele, tmpCursor, fi, ap);
-                setRecipientAddressing(ele, tmpCursor, fi, ap);
-                setRecipientName(ele, tmpCursor, fi, ap);
-                setSubject(ele, tmpCursor, fi, ap);
-                setSize(ele, tmpCursor, fi, ap);
-                setReceptionStatus(ele, tmpCursor, fi, ap);
-                setText(ele, tmpCursor, fi, ap);
-                setAttachmentSize(ele, tmpCursor, fi, ap);
-                setPriority(ele, tmpCursor, fi, ap);
-                setSent(ele, tmpCursor, fi, ap);
-                setProtected(ele, tmpCursor, fi, ap);
-                setThreadId(ele, tmpCursor, fi, ap);
-            }
-        }
-        if(emailCursor != null)emailCursor.close();
-        if(smsCursor != null)smsCursor.close();
-        if(mmsCursor != null)mmsCursor.close();
-        if(D)Log.d(TAG, "messagelisting end");
+        if (D) Log.d(TAG, "messagelisting end");
         return bmList;
     }
 
@@ -1545,40 +1413,34 @@
         FilterInfo fi = new FilterInfo();
         setFilterInfo(fi);
 
-        if (smsSelected(fi, ap)  && folderElement.hasSmsMmsContent()) {
+        if (smsSelected(fi, ap) && folderElement.hasSmsMmsContent()) {
             fi.mMsgType = FilterInfo.TYPE_SMS;
             String where = setWhereFilter(folderElement, fi, ap);
             Cursor c = mResolver.query(Sms.CONTENT_URI,
                     SMS_PROJECTION, where, null, Sms.DATE + " DESC");
 
-            if (c != null) {
-                cnt = c.getCount();
-                c.close();
-            }
+            if (c != null) cnt = c.getCount();
+            close(c);
         }
 
-        if (mmsSelected(fi, ap)  && folderElement.hasSmsMmsContent()) {
+        if (mmsSelected(fi, ap) && folderElement.hasSmsMmsContent()) {
             fi.mMsgType = FilterInfo.TYPE_MMS;
             String where = setWhereFilter(folderElement, fi, ap);
             Cursor c = mResolver.query(Mms.CONTENT_URI,
                     MMS_PROJECTION, where, null, Mms.DATE + " DESC");
-            if (c != null) {
-                cnt += c.getCount();
-                c.close();
-            }
+            if (c != null) cnt += c.getCount();
+            close(c);
         }
 
         if (emailSelected(fi, ap) && folderElement.getEmailFolderId() != -1) {
             fi.mMsgType = FilterInfo.TYPE_EMAIL;
             String where = setWhereFilter(folderElement, fi, ap);
-            if(!where.isEmpty()) {
+            if (!where.isEmpty()) {
                 Uri contentUri = Uri.parse(mBaseEmailUri + BluetoothMapContract.TABLE_MESSAGE);
                 Cursor c = mResolver.query(contentUri, BluetoothMapContract.BT_MESSAGE_PROJECTION,
                         where, null, BluetoothMapContract.MessageColumns.DATE + " DESC");
-                if (c != null) {
-                    cnt += c.getCount();
-                    c.close();
-                }
+                if (c != null) cnt += c.getCount();
+                close(c);
             }
         }
 
@@ -1609,10 +1471,8 @@
             Cursor c = mResolver.query(Sms.CONTENT_URI,
                 SMS_PROJECTION, where, null, Sms.DATE + " DESC");
 
-            if (c != null) {
-                cnt = c.getCount();
-                c.close();
-            }
+            if (c != null) cnt += c.getCount();
+            close(c);
         }
 
         if (mmsSelected(fi, ap)  && folderElement.hasSmsMmsContent()) {
@@ -1623,10 +1483,8 @@
             Cursor c = mResolver.query(Mms.CONTENT_URI,
                 MMS_PROJECTION, where, null, Sms.DATE + " DESC");
 
-            if (c != null) {
-                cnt += c.getCount();
-                c.close();
-            }
+            if (c != null) cnt += c.getCount();
+            close(c);
         }
 
 
@@ -1639,10 +1497,8 @@
                 Uri contentUri = Uri.parse(mBaseEmailUri + BluetoothMapContract.TABLE_MESSAGE);
                 Cursor c = mResolver.query(contentUri, BluetoothMapContract.BT_MESSAGE_PROJECTION,
                         where, null, BluetoothMapContract.MessageColumns.DATE + " DESC");
-                if (c != null) {
-                    cnt += c.getCount();
-                    c.close();
-                }
+                if (c != null) cnt += c.getCount();
+                close(c);
             }
         }
 
@@ -1699,7 +1555,6 @@
         String contactId = null, contactName = null;
         String[] phoneNumbers = null;
         String[] emailAddresses = null;
-        Cursor p;
 
         Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI,
                 Uri.encode(phone));
@@ -1709,40 +1564,44 @@
         String orderBy = Contacts._ID + " ASC";
 
         // Get the contact _ID and name
-        p = mResolver.query(uri, projection, selection, null, orderBy);
-        if (p != null && p.getCount() >= 1) {
-            p.moveToFirst();
-            contactId = p.getString(p.getColumnIndex(Contacts._ID));
-            contactName = p.getString(p.getColumnIndex(Contacts.DISPLAY_NAME));
-        }
-        p.close();
+        Cursor p = mResolver.query(uri, projection, selection, null, orderBy);
 
-        // Bail out if we are unable to find a contact, based on the phone number
-        if(contactId == null) {
-            phoneNumbers = new String[1];
-            phoneNumbers[0] = phone;
-        } else {
-            // use only actual phone number
-            phoneNumbers = new String[1];
-            phoneNumbers[0] = phone;
-
-            // Fetch contact e-mail addresses
-            p = mResolver.query(ContactsContract.CommonDataKinds.Email.CONTENT_URI, null,
-                    ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?",
-                    new String[]{contactId},
-                    null);
-            if(p != null) {
-                int i = 0;
-                emailAddresses = new String[p.getCount()];
-                while (p != null && p.moveToNext()) {
-                    String emailAddress = p.getString(
-                        p.getColumnIndex(ContactsContract.CommonDataKinds.Email.ADDRESS));
-                    emailAddresses[i++] = emailAddress;
-                }
-                p.close();
+        try {
+            if (p != null && p.moveToFirst()) {
+                contactId = p.getString(p.getColumnIndex(Contacts._ID));
+                contactName = p.getString(p.getColumnIndex(Contacts.DISPLAY_NAME));
             }
+
+            // Bail out if we are unable to find a contact, based on the phone number
+            if(contactId == null) {
+                phoneNumbers = new String[1];
+                phoneNumbers[0] = phone;
+            } else {
+                // use only actual phone number
+                phoneNumbers = new String[1];
+                phoneNumbers[0] = phone;
+
+                // Fetch contact e-mail addresses
+                close (p);
+                p = mResolver.query(ContactsContract.CommonDataKinds.Email.CONTENT_URI, null,
+                        ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?",
+                        new String[]{contactId},
+                        null);
+                if (p != null) {
+                    int i = 0;
+                    emailAddresses = new String[p.getCount()];
+                    while (p != null && p.moveToNext()) {
+                        String emailAddress = p.getString(
+                            p.getColumnIndex(ContactsContract.CommonDataKinds.Email.ADDRESS));
+                        emailAddresses[i++] = emailAddress;
+                    }
+                }
+            }
+        } finally {
+            close(p);
         }
-        if(incoming == true) {
+
+        if (incoming == true) {
             if(V) Log.d(TAG, "Adding originator for phone:" + phone);
             message.addOriginator(contactName, contactName, phoneNumbers, emailAddresses); // Use version 3.0 as we only have a formatted name
         } else {
@@ -1761,10 +1620,13 @@
         String msgBody;
         BluetoothMapbMessageSms message = new BluetoothMapbMessageSms();
         TelephonyManager tm = (TelephonyManager)mContext.getSystemService(Context.TELEPHONY_SERVICE);
-        Cursor c = mResolver.query(Sms.CONTENT_URI, SMS_PROJECTION, "_ID = " + id, null, null);
 
-        if(c != null && c.moveToFirst())
-        {
+        Cursor c = mResolver.query(Sms.CONTENT_URI, SMS_PROJECTION, "_ID = " + id, null, null);
+        if (c == null || !c.moveToFirst()) {
+            throw new IllegalArgumentException("SMS handle not found");
+        }
+
+        try {
             if(V) Log.v(TAG,"c.count: " + c.getCount());
 
             if (tm.getPhoneType() == TelephonyManager.PHONE_TYPE_GSM) {
@@ -1801,12 +1663,11 @@
             } else /*if (charset == MAP_MESSAGE_CHARSET_UTF8)*/ {
                 message.setSmsBody(msgBody);
             }
-
-            c.close();
-
-            return message.encode();
+        } finally {
+            close(c);
         }
-        throw new IllegalArgumentException("SMS handle not found");
+
+        return message.encode();
     }
 
     private void extractMmsAddresses(long id, BluetoothMapbMessageMms message) {
@@ -1815,9 +1676,10 @@
         String uriStr = new String(Mms.CONTENT_URI + "/" + id + "/addr");
         Uri uriAddress = Uri.parse(uriStr);
         String contactName = null;
+
         Cursor c = mResolver.query( uriAddress, projection, selection, null, null);
-        if (c.moveToFirst()) {
-            do {
+        try {
+            while (c != null && c.moveToNext()) {
                 String address = c.getString(c.getColumnIndex(Mms.Addr.ADDRESS));
                 if(address.equals(INSERT_ADDRES_TOKEN))
                     continue;
@@ -1842,7 +1704,9 @@
                 default:
                     break;
                 }
-            } while(c.moveToNext());
+            }
+        } finally {
+            close (c);
         }
     }
 
@@ -1871,11 +1735,8 @@
             // do nothing for now
             Log.w(TAG,"Error reading part data",e);
         } finally {
-            try {
-                os.close();
-                is.close();
-            } catch (IOException e) {
-            }
+            close(os);
+            close(is);
         }
         return retVal;
     }
@@ -1894,14 +1755,10 @@
         String uriStr = new String(Mms.CONTENT_URI + "/"+ id + "/part");
         Uri uriAddress = Uri.parse(uriStr);
         BluetoothMapbMessageMms.MimePart part;
-        Cursor c = mResolver.query(
-            uriAddress,
-            projection,
-            selection,
-            null, null);
+        Cursor c = mResolver.query(uriAddress, projection, selection, null, null);
 
-        if (c.moveToFirst()) {
-            do {
+        try {
+            while(c != null && c.moveToNext()) {
                 Long partId = c.getLong(c.getColumnIndex(BaseColumns._ID));
                 String contentType = c.getString(c.getColumnIndex(Mms.Part.CONTENT_TYPE));
                 String name = c.getString(c.getColumnIndex(Mms.Part.NAME));
@@ -1948,11 +1805,13 @@
                     Log.d(TAG,"extractMmsParts",e);
                     part.mData = null;
                     part.mCharsetName = null;
-                } finally {
                 }
                 part.mFileName = filename;
-            } while(c.moveToNext());
+            }
+        } finally {
+            close(c);
         }
+
         message.updateCharset();
     }
 
@@ -1971,8 +1830,11 @@
 
         BluetoothMapbMessageMms message = new BluetoothMapbMessageMms();
         Cursor c = mResolver.query(Mms.CONTENT_URI, MMS_PROJECTION, "_ID = " + id, null, null);
-        if(c != null && c.moveToFirst())
-        {
+        if (c == null || !c.moveToFirst()) {
+            throw new IllegalArgumentException("MMS handle not found");
+        }
+
+        try {
             message.setType(TYPE.MMS);
 
             // The MMS info:
@@ -1991,23 +1853,14 @@
             message.setDate(c.getLong(c.getColumnIndex(Mms.DATE)) * 1000L);
             message.setTextOnly(c.getInt(c.getColumnIndex(Mms.TEXT_ONLY)) == 0 ? false : true);
             message.setIncludeAttachments(appParams.getAttachment() == 0 ? false : true);
-            // c.getLong(c.getColumnIndex(Mms.DATE_SENT)); - this is never used
-            // c.getInt(c.getColumnIndex(Mms.STATUS)); - don't know what this is
 
-            // The parts
             extractMmsParts(id, message);
-
-            // The addresses
             extractMmsAddresses(id, message);
-
-            c.close();
-
-            return message.encode();
-        } else if(c != null) {
-            c.close();
+        } finally {
+            close(c);
         }
 
-        throw new IllegalArgumentException("MMS handle not found");
+        return message.encode();
     }
 
     /**
@@ -2035,11 +1888,12 @@
        BluetoothMapbMessageEmail message = new BluetoothMapbMessageEmail();
        Uri contentUri = Uri.parse(mBaseEmailUri + BluetoothMapContract.TABLE_MESSAGE);
        Cursor c = mResolver.query(contentUri, BluetoothMapContract.BT_MESSAGE_PROJECTION, "_ID = " + id, null, null);
-       if(c != null && c.moveToFirst())
-       {
+       if (c != null && c.moveToFirst()) {
+           throw new IllegalArgumentException("EMAIL handle not found");
+       }
+
+       try {
            BluetoothMapFolderElement folderElement;
-           FileInputStream is = null;
-           ParcelFileDescriptor fd = null;
 
            // Handle fraction requests
            int fractionRequest = appParams.getFractionRequest();
@@ -2104,7 +1958,6 @@
                    i++;
                }
            }
-           c.close();
 
            // Find out if we get attachments
            String attStr = (appParams.getAttachment() == 0) ?  "/" +  BluetoothMapContract.FILE_MSG_NO_ATTACHMENTS : "";
@@ -2112,6 +1965,9 @@
 
            // Get email message body content
            int count = 0;
+           FileInputStream is = null;
+           ParcelFileDescriptor fd = null;
+
            try {
                fd = mResolver.openFileDescriptor(uri, "r");
                is = new FileInputStream(fd.getFileDescriptor());
@@ -2130,21 +1986,14 @@
                Log.w(TAG, e);
            } catch (IOException e) {
                Log.w(TAG, e);
+           } finally {
+               close(is);
+               close(fd);
            }
-           finally {
-               try {
-                   if(is != null)
-                       is.close();
-               } catch (IOException e) {}
-               try {
-                   if(fd != null)
-                       fd.close();
-               } catch (IOException e) {}
-           }
-           return message.encode();
-       } else if(c != null) {
-           c.close();
+       } finally {
+           close(c);
        }
-       throw new IllegalArgumentException("EMAIL handle not found");
+
+       return message.encode();
    }
 }
diff --git a/src/com/android/bluetooth/map/BluetoothMapContentObserver.java b/src/com/android/bluetooth/map/BluetoothMapContentObserver.java
index 7101f22..dd14c82 100644
--- a/src/com/android/bluetooth/map/BluetoothMapContentObserver.java
+++ b/src/com/android/bluetooth/map/BluetoothMapContentObserver.java
@@ -14,6 +14,7 @@
 */
 package com.android.bluetooth.map;
 
+import java.io.Closeable;
 import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
 import java.io.IOException;
@@ -116,6 +117,13 @@
 
     private TYPE mSmsType;
 
+    private static void close(Closeable c) {
+        try {
+            if (c != null) c.close();
+        } catch (IOException e) {
+        }
+    }
+
     static final String[] SMS_PROJECTION = new String[] {
         Sms._ID,
         Sms.THREAD_ID,
@@ -452,17 +460,19 @@
             Cursor c = mResolver.query(Sms.CONTENT_URI,
                 SMS_PROJECTION_SHORT, null, null, null);
 
-            if (c != null && c.moveToFirst()) {
-                do {
+            try {
+                while (c != null && c.moveToNext()) {
                     long id = c.getLong(c.getColumnIndex(Sms._ID));
                     int type = c.getInt(c.getColumnIndex(Sms.TYPE));
                     int threadId = c.getInt(c.getColumnIndex(Sms.THREAD_ID));
 
                     Msg msg = new Msg(id, type, threadId);
                     msgListSms.put(id, msg);
-                } while (c.moveToNext());
-                c.close();
+                }
+            } finally {
+                close(c);
             }
+
             synchronized(mMsgListSms) {
                 mMsgListSms.clear();
                 mMsgListSms = msgListSms;
@@ -472,17 +482,19 @@
 
             c = mResolver.query(Mms.CONTENT_URI, MMS_PROJECTION_SHORT, null, null, null);
 
-            if (c != null && c.moveToFirst()) {
-                do {
+            try {
+                while (c != null && c.moveToNext()) {
                     long id = c.getLong(c.getColumnIndex(Mms._ID));
                     int type = c.getInt(c.getColumnIndex(Mms.MESSAGE_BOX));
                     int threadId = c.getInt(c.getColumnIndex(Mms.THREAD_ID));
 
                     Msg msg = new Msg(id, type, threadId);
                     msgListMms.put(id, msg);
-                } while (c.moveToNext());
-                c.close();
+                }
+            } finally {
+                close(c);
             }
+
             synchronized(mMsgListMms) {
                 mMsgListMms.clear();
                 mMsgListMms = msgListMms;
@@ -494,16 +506,18 @@
             Uri uri = mMessageUri;
             Cursor c = mProviderClient.query(uri, EMAIL_PROJECTION_SHORT, null, null, null);
 
-            if (c != null && c.moveToFirst()) {
-                do {
+            try {
+                while (c != null && c.moveToNext()) {
                     long id = c.getLong(c.getColumnIndex(MessageColumns._ID));
                     long folderId = c.getInt(c.getColumnIndex(BluetoothMapContract.MessageColumns.FOLDER_ID));
 
                     Msg msg = new Msg(id, folderId);
                     msgListEmail.put(id, msg);
-                } while (c.moveToNext());
-                c.close();
+                }
+            } finally {
+                close(c);
             }
+
             synchronized(mMsgListEmail) {
                 mMsgListEmail.clear();
                 mMsgListEmail = msgListEmail;
@@ -520,8 +534,8 @@
             SMS_PROJECTION_SHORT, null, null, null);
 
         synchronized(mMsgListSms) {
-            if (c != null && c.moveToFirst()) {
-                do {
+            try {
+                while (c != null && c.moveToNext()) {
                     long id = c.getLong(c.getColumnIndex(Sms._ID));
                     int type = c.getInt(c.getColumnIndex(Sms.TYPE));
                     int threadId = c.getInt(c.getColumnIndex(Sms.THREAD_ID));
@@ -570,8 +584,9 @@
                         }
                         msgListSms.put(id, msg);
                     }
-                } while (c.moveToNext());
-                c.close();
+                }
+            } finally {
+                close(c);
             }
 
             for (Msg msg : mMsgListSms.values()) {
@@ -594,8 +609,8 @@
             MMS_PROJECTION_SHORT, null, null, null);
 
         synchronized(mMsgListMms) {
-            if (c != null && c.moveToFirst()) {
-                do {
+            try {
+                while (c != null && c.moveToNext()) {
                     long id = c.getLong(c.getColumnIndex(Mms._ID));
                     int type = c.getInt(c.getColumnIndex(Mms.MESSAGE_BOX));
                     int mtype = c.getInt(c.getColumnIndex(Mms.MESSAGE_TYPE));
@@ -657,8 +672,9 @@
                         }
                         msgListMms.put(id, msg);
                     }
-                } while (c.moveToNext());
-                c.close();
+                }
+            } finally {
+                close(c);
             }
 
             for (Msg msg : mMsgListMms.values()) {
@@ -681,8 +697,8 @@
         Cursor c = mProviderClient.query(mMessageUri, EMAIL_PROJECTION_SHORT, null, null, null);
 
         synchronized(mMsgListEmail) {
-            if (c != null && c.moveToFirst()) {
-                do {
+            try {
+                while (c != null && c.moveToNext()) {
                     long id = c.getLong(c.getColumnIndex(BluetoothMapContract.MessageColumns._ID));
                     int folderId = c.getInt(c.getColumnIndex(
                             BluetoothMapContract.MessageColumns.FOLDER_ID));
@@ -750,8 +766,9 @@
                         }
                         msgListEmail.put(id, msg);
                     }
-                } while (c.moveToNext());
-                c.close();
+                }
+            } finally {
+                close(c);
             }
 
             // For all messages no longer in the database send a delete notification
@@ -893,31 +910,34 @@
         boolean res = false;
         Uri uri = ContentUris.withAppendedId(Mms.CONTENT_URI, handle);
         Cursor c = mResolver.query(uri, null, null, null, null);
-        if (c != null && c.moveToFirst()) {
-            /* Move to deleted folder, or delete if already in deleted folder */
-            int threadId = c.getInt(c.getColumnIndex(Mms.THREAD_ID));
-            if (threadId != DELETED_THREAD_ID) {
-                /* Set deleted thread id */
-                synchronized(mMsgListMms) {
-                    Msg msg = mMsgListMms.get(handle);
-                    if(msg != null) { // This will always be the case
-                        msg.threadId = DELETED_THREAD_ID;
+
+        try {
+            if (c != null && c.moveToFirst()) {
+                /* Move to deleted folder, or delete if already in deleted folder */
+                int threadId = c.getInt(c.getColumnIndex(Mms.THREAD_ID));
+                if (threadId != DELETED_THREAD_ID) {
+                    /* Set deleted thread id */
+                    synchronized(mMsgListMms) {
+                        Msg msg = mMsgListMms.get(handle);
+                        if(msg != null) { // This will always be the case
+                            msg.threadId = DELETED_THREAD_ID;
+                        }
                     }
+                    updateThreadId(uri, Mms.THREAD_ID, DELETED_THREAD_ID);
+                } else {
+                    /* Delete from observer message list to avoid delete notifications */
+                    synchronized(mMsgListMms) {
+                        mMsgListMms.remove(handle);
+                    }
+                    /* Delete message */
+                    mResolver.delete(uri, null, null);
                 }
-                updateThreadId(uri, Mms.THREAD_ID, DELETED_THREAD_ID);
-            } else {
-                /* Delete from observer message list to avoid delete notifications */
-                synchronized(mMsgListMms) {
-                    mMsgListMms.remove(handle);
-                }
-                /* Delete message */
-                mResolver.delete(uri, null, null);
+                res = true;
             }
-            res = true;
+        } finally {
+            close(c);
         }
-        if (c != null) {
-            c.close();
-        }
+
         return res;
     }
 
@@ -926,40 +946,42 @@
         Uri uri = ContentUris.withAppendedId(Mms.CONTENT_URI, handle);
         Cursor c = mResolver.query(uri, null, null, null, null);
 
-        if (c != null && c.moveToFirst()) {
-            int threadId = c.getInt(c.getColumnIndex(Mms.THREAD_ID));
-            if (threadId == DELETED_THREAD_ID) {
-                /* Restore thread id from address, or if no thread for address
-                 * create new thread by insert and remove of fake message */
-                String address;
-                long id = c.getLong(c.getColumnIndex(Mms._ID));
-                int msgBox = c.getInt(c.getColumnIndex(Mms.MESSAGE_BOX));
-                if (msgBox == Mms.MESSAGE_BOX_INBOX) {
-                    address = BluetoothMapContent.getAddressMms(mResolver, id,
-                        BluetoothMapContent.MMS_FROM);
-                } else {
-                    address = BluetoothMapContent.getAddressMms(mResolver, id,
-                        BluetoothMapContent.MMS_TO);
-                }
-                Set<String> recipients = new HashSet<String>();
-                recipients.addAll(Arrays.asList(address));
-                Long oldThreadId = Telephony.Threads.getOrCreateThreadId(mContext, recipients);
-                synchronized(mMsgListMms) {
-                    Msg msg = mMsgListMms.get(handle);
-                    if(msg != null) { // This will always be the case
-                        msg.threadId = oldThreadId.intValue();
+        try {
+            if (c != null && c.moveToFirst()) {
+                int threadId = c.getInt(c.getColumnIndex(Mms.THREAD_ID));
+                if (threadId == DELETED_THREAD_ID) {
+                    /* Restore thread id from address, or if no thread for address
+                    * create new thread by insert and remove of fake message */
+                    String address;
+                    long id = c.getLong(c.getColumnIndex(Mms._ID));
+                    int msgBox = c.getInt(c.getColumnIndex(Mms.MESSAGE_BOX));
+                    if (msgBox == Mms.MESSAGE_BOX_INBOX) {
+                        address = BluetoothMapContent.getAddressMms(mResolver, id,
+                            BluetoothMapContent.MMS_FROM);
+                    } else {
+                        address = BluetoothMapContent.getAddressMms(mResolver, id,
+                            BluetoothMapContent.MMS_TO);
                     }
+                    Set<String> recipients = new HashSet<String>();
+                    recipients.addAll(Arrays.asList(address));
+                    Long oldThreadId = Telephony.Threads.getOrCreateThreadId(mContext, recipients);
+                    synchronized(mMsgListMms) {
+                        Msg msg = mMsgListMms.get(handle);
+                        if(msg != null) { // This will always be the case
+                            msg.threadId = oldThreadId.intValue();
+                        }
+                    }
+                    updateThreadId(uri, Mms.THREAD_ID, oldThreadId);
+                } else {
+                    Log.d(TAG, "Message not in deleted folder: handle " + handle
+                        + " threadId " + threadId);
                 }
-                updateThreadId(uri, Mms.THREAD_ID, oldThreadId);
-            } else {
-                Log.d(TAG, "Message not in deleted folder: handle " + handle
-                    + " threadId " + threadId);
+                res = true;
             }
-            res = true;
+        } finally {
+            close(c);
         }
-        if (c != null) {
-            c.close();
-        }
+
         return res;
     }
 
@@ -968,31 +990,33 @@
         Uri uri = ContentUris.withAppendedId(Sms.CONTENT_URI, handle);
         Cursor c = mResolver.query(uri, null, null, null, null);
 
-        if (c != null && c.moveToFirst()) {
-            /* Move to deleted folder, or delete if already in deleted folder */
-            int threadId = c.getInt(c.getColumnIndex(Sms.THREAD_ID));
-            if (threadId != DELETED_THREAD_ID) {
-                synchronized(mMsgListSms) {
-                    Msg msg = mMsgListSms.get(handle);
-                    if(msg != null) { // This will always be the case
-                        msg.threadId = DELETED_THREAD_ID;
+        try {
+            if (c != null && c.moveToFirst()) {
+                /* Move to deleted folder, or delete if already in deleted folder */
+                int threadId = c.getInt(c.getColumnIndex(Sms.THREAD_ID));
+                if (threadId != DELETED_THREAD_ID) {
+                    synchronized(mMsgListSms) {
+                        Msg msg = mMsgListSms.get(handle);
+                        if(msg != null) { // This will always be the case
+                            msg.threadId = DELETED_THREAD_ID;
+                        }
                     }
+                    /* Set deleted thread id */
+                    updateThreadId(uri, Sms.THREAD_ID, DELETED_THREAD_ID);
+                } else {
+                    /* Delete from observer message list to avoid delete notifications */
+                    synchronized(mMsgListSms) {
+                        mMsgListSms.remove(handle);
+                    }
+                    /* Delete message */
+                    mResolver.delete(uri, null, null);
                 }
-                /* Set deleted thread id */
-                updateThreadId(uri, Sms.THREAD_ID, DELETED_THREAD_ID);
-            } else {
-                /* Delete from observer message list to avoid delete notifications */
-                synchronized(mMsgListSms) {
-                    mMsgListSms.remove(handle);
-                }
-                /* Delete message */
-                mResolver.delete(uri, null, null);
+                res = true;
             }
-            res = true;
+        } finally {
+            close(c);
         }
-        if (c != null) {
-            c.close();
-        }
+
         return res;
     }
 
@@ -1001,29 +1025,31 @@
         Uri uri = ContentUris.withAppendedId(Sms.CONTENT_URI, handle);
         Cursor c = mResolver.query(uri, null, null, null, null);
 
-        if (c != null && c.moveToFirst()) {
-            int threadId = c.getInt(c.getColumnIndex(Sms.THREAD_ID));
-            if (threadId == DELETED_THREAD_ID) {
-                String address = c.getString(c.getColumnIndex(Sms.ADDRESS));
-                Set<String> recipients = new HashSet<String>();
-                recipients.addAll(Arrays.asList(address));
-                Long oldThreadId = Telephony.Threads.getOrCreateThreadId(mContext, recipients);
-                synchronized(mMsgListSms) {
-                    Msg msg = mMsgListSms.get(handle);
-                    if(msg != null) { // This will always be the case
-                        msg.threadId = oldThreadId.intValue(); // The threadId is specified as an int, so it is safe to truncate
+        try {
+            if (c != null && c.moveToFirst()) {
+                int threadId = c.getInt(c.getColumnIndex(Sms.THREAD_ID));
+                if (threadId == DELETED_THREAD_ID) {
+                    String address = c.getString(c.getColumnIndex(Sms.ADDRESS));
+                    Set<String> recipients = new HashSet<String>();
+                    recipients.addAll(Arrays.asList(address));
+                    Long oldThreadId = Telephony.Threads.getOrCreateThreadId(mContext, recipients);
+                    synchronized(mMsgListSms) {
+                        Msg msg = mMsgListSms.get(handle);
+                        if(msg != null) { // This will always be the case
+                            msg.threadId = oldThreadId.intValue(); // The threadId is specified as an int, so it is safe to truncate
+                        }
                     }
+                    updateThreadId(uri, Sms.THREAD_ID, oldThreadId);
+                } else {
+                    Log.d(TAG, "Message not in deleted folder: handle " + handle
+                        + " threadId " + threadId);
                 }
-                updateThreadId(uri, Sms.THREAD_ID, oldThreadId);
-            } else {
-                Log.d(TAG, "Message not in deleted folder: handle " + handle
-                    + " threadId " + threadId);
+                res = true;
             }
-            res = true;
+        } finally {
+            close(c);
         }
-        if (c != null) {
-            c.close();
-        }
+
         return res;
     }
 
@@ -1073,7 +1099,6 @@
 
         if (type == TYPE.SMS_GSM || type == TYPE.SMS_CDMA) {
             Uri uri = Sms.Inbox.CONTENT_URI;//ContentUris.withAppendedId(Sms.CONTENT_URI, handle);
-            Cursor c = mResolver.query(uri, null, null, null, null);
             ContentValues contentValues = new ContentValues();
             contentValues.put(Sms.READ, statusValue);
             contentValues.put(Sms.SEEN, statusValue);
@@ -1082,15 +1107,15 @@
             if (D) Log.d(TAG, " -> SMS Uri: " + uri.toString() + " Where " + where + " values " + values);
             count = mResolver.update(uri, contentValues, where, null);
             if (D) Log.d(TAG, " -> "+count +" rows updated!");
+
         } else if (type == TYPE.MMS) {
             Uri uri = ContentUris.withAppendedId(Mms.CONTENT_URI, handle);
-            Cursor c = mResolver.query(uri, null, null, null, null);
             if (D) Log.d(TAG, " -> MMS Uri: " + uri.toString());
             ContentValues contentValues = new ContentValues();
             contentValues.put(Mms.READ, statusValue);
             count = mResolver.update(uri, contentValues, null, null);
-
             if (D) Log.d(TAG, " -> "+count +" rows updated!");
+
         } if (type == TYPE.EMAIL) {
             Uri uri = mMessageUri;
             ContentValues contentValues = new ContentValues();
@@ -1098,10 +1123,8 @@
             contentValues.put(BluetoothMapContract.MessageColumns._ID, handle);
             count = mProviderClient.update(uri, contentValues, null, null);
         }
-        if(count < 1) {
-            return false;
-        }
-        return true;
+
+        return (count > 0);
     }
 
     private class PushMsgInfo {
@@ -1267,18 +1290,20 @@
                                 return -1;
                             }
                             Cursor c = mResolver.query(uri, SMS_PROJECTION_SHORT, null, null, null);
-
-                            /* Extract the data for the inserted message, and store in local mirror, to
-                             * avoid sending a NewMessage Event. */
-                            if (c != null && c.moveToFirst()) {
-                                long id = c.getLong(c.getColumnIndex(Sms._ID));
-                                int type = c.getInt(c.getColumnIndex(Sms.TYPE));
-                                int threadId = c.getInt(c.getColumnIndex(Sms.THREAD_ID));
-                                Msg newMsg = new Msg(id, type, threadId);
-                                mMsgListSms.put(id, newMsg);
-                                c.close();
-                            } else {
-                                return -1; // This can only happen, if the message is deleted just as it is added
+                            try {
+                                /* Extract the data for the inserted message, and store in local mirror, to
+                                * avoid sending a NewMessage Event. */
+                                if (c != null && c.moveToFirst()) {
+                                    long id = c.getLong(c.getColumnIndex(Sms._ID));
+                                    int type = c.getInt(c.getColumnIndex(Sms.TYPE));
+                                    int threadId = c.getInt(c.getColumnIndex(Sms.THREAD_ID));
+                                    Msg newMsg = new Msg(id, type, threadId);
+                                    mMsgListSms.put(id, newMsg);
+                                } else {
+                                    return -1; // This can only happen, if the message is deleted just as it is added
+                                }
+                            } finally {
+                                close(c);
                             }
 
                             handle = Long.parseLong(uri.getLastPathSegment());
@@ -1335,28 +1360,28 @@
         }
     }
 
-
     private void moveDraftToOutbox(long handle) {
         /*Move message by changing the msg_box value in the content provider database */
-        if (handle != -1) {
-            String whereClause = " _id= " + handle;
-            Uri uri = Mms.CONTENT_URI;
-            Cursor queryResult = mResolver.query(uri, null, whereClause, null, null);
-            if (queryResult != null) {
-                if (queryResult.getCount() > 0) {
-                    queryResult.moveToFirst();
-                    ContentValues data = new ContentValues();
-                    /* set folder to be outbox */
-                    data.put(Mms.MESSAGE_BOX, Mms.MESSAGE_BOX_OUTBOX);
-                    mResolver.update(uri, data, whereClause, null);
-                    if (D) Log.d(TAG, "moved draft MMS to outbox");
-                }
-                queryResult.close();
-            }else {
+        if (handle != -1) return;
+
+        String whereClause = " _id= " + handle;
+        Uri uri = Mms.CONTENT_URI;
+        Cursor queryResult = mResolver.query(uri, null, whereClause, null, null);
+        try {
+            if (queryResult != null && queryResult.moveToFirst()) {
+                ContentValues data = new ContentValues();
+                /* set folder to be outbox */
+                data.put(Mms.MESSAGE_BOX, Mms.MESSAGE_BOX_OUTBOX);
+                mResolver.update(uri, data, whereClause, null);
+                if (D) Log.d(TAG, "Moved draft MMS to outbox");
+            } else {
                 if (D) Log.d(TAG, "Could not move draft to outbox ");
             }
+        } finally {
+            queryResult.close();
         }
     }
+
     private long pushMmsToFolder(int folder, String to_address, BluetoothMapbMessageMms msg) {
         /**
          * strategy:
@@ -1400,7 +1425,6 @@
         Uri uri = Mms.CONTENT_URI;
 
         synchronized (mMsgListMms) {
-
             uri = mResolver.insert(uri, values);
 
             if (uri == null) {
@@ -1412,19 +1436,21 @@
                doing the query ensures we get any changes made by the content provider
                at insert. */
             Cursor c = mResolver.query(uri, MMS_PROJECTION_SHORT, null, null, null);
+            try {
+                if (c != null && c.moveToFirst()) {
+                    long id = c.getLong(c.getColumnIndex(Mms._ID));
+                    int type = c.getInt(c.getColumnIndex(Mms.MESSAGE_BOX));
+                    int threadId = c.getInt(c.getColumnIndex(Mms.THREAD_ID));
 
-            if (c != null && c.moveToFirst()) {
-                long id = c.getLong(c.getColumnIndex(Mms._ID));
-                int type = c.getInt(c.getColumnIndex(Mms.MESSAGE_BOX));
-                int threadId = c.getInt(c.getColumnIndex(Mms.THREAD_ID));
+                    /* We must filter out any actions made by the MCE. Add the new message to
+                     * the list of known messages. */
 
-                /* We must filter out any actions made by the MCE. Add the new message to
-                 * the list of known messages. */
-
-                Msg newMsg = new Msg(id, type, threadId);
-                newMsg.localInitiatedSend = true;
-                mMsgListMms.put(id, newMsg);
-                c.close();
+                    Msg newMsg = new Msg(id, type, threadId);
+                    newMsg.localInitiatedSend = true;
+                    mMsgListMms.put(id, newMsg);
+                }
+            } finally {
+                close(c);
             }
         } // Done adding changes, unlock access to mMsgListMms to allow sending MMS events again
 
@@ -1437,9 +1463,9 @@
                 Log.w(TAG, "No MMS parts present...");
             } else {
                 if(V) Log.v(TAG, "Adding " + msg.getMimeParts().size() + " parts to the data base.");
+                int count = 0;
                 for(MimePart part : msg.getMimeParts()) {
-                    int count = 0;
-                    count++;
+                    ++count;
                     values.clear();
                     if(part.mContentType != null &&  part.mContentType.toUpperCase().contains("TEXT")) {
                         values.put(Mms.Part.CONTENT_TYPE, "text/plain");
@@ -1912,11 +1938,10 @@
     private void resendPendingMessages() {
         /* Send pending messages in outbox */
         String where = "type = " + Sms.MESSAGE_TYPE_OUTBOX;
-        Cursor c = mResolver.query(Sms.CONTENT_URI, SMS_PROJECTION, where, null,
-            null);
+        Cursor c = mResolver.query(Sms.CONTENT_URI, SMS_PROJECTION, where, null, null);
 
-        if (c != null && c.moveToFirst()) {
-            do {
+        try {
+            while (c!= null && c.moveToNext()) {
                 long id = c.getLong(c.getColumnIndex(Sms._ID));
                 String msgBody = c.getString(c.getColumnIndex(Sms.BODY));
                 PushMsgInfo msgInfo = mPushMsgList.get(id);
@@ -1925,19 +1950,20 @@
                 }
                 msgInfo.sendInProgress = true;
                 sendMessage(msgInfo, msgBody);
-            } while (c.moveToNext());
-            c.close();
+            }
+        } finally {
+            close(c);
         }
     }
 
     private void failPendingMessages() {
         /* Move pending messages from outbox to failed */
         String where = "type = " + Sms.MESSAGE_TYPE_OUTBOX;
-        Cursor c = mResolver.query(Sms.CONTENT_URI, SMS_PROJECTION, where, null,
-            null);
+        Cursor c = mResolver.query(Sms.CONTENT_URI, SMS_PROJECTION, where, null, null);
+        if (c == null) return;
 
-        if (c != null && c.moveToFirst()) {
-            do {
+        try {
+            while (c!= null && c.moveToNext()) {
                 long id = c.getLong(c.getColumnIndex(Sms._ID));
                 String msgBody = c.getString(c.getColumnIndex(Sms.BODY));
                 PushMsgInfo msgInfo = mPushMsgList.get(id);
@@ -1946,9 +1972,10 @@
                 }
                 Sms.moveMessageToFolder(mContext, msgInfo.uri,
                     Sms.MESSAGE_TYPE_FAILED, 0);
-            } while (c.moveToNext());
+            }
+        } finally {
+            close(c);
         }
-        if (c != null) c.close();
     }
 
     private void removeDeletedMessages() {
@@ -1989,5 +2016,4 @@
         }
         return false;
     }
-
 }
diff --git a/src/com/android/bluetooth/map/BluetoothMapEmailSettingsLoader.java b/src/com/android/bluetooth/map/BluetoothMapEmailSettingsLoader.java
index d42a808..c6a6ca7 100644
--- a/src/com/android/bluetooth/map/BluetoothMapEmailSettingsLoader.java
+++ b/src/com/android/bluetooth/map/BluetoothMapEmailSettingsLoader.java
@@ -151,28 +151,16 @@
              }
              mProviderClient.setDetectNotResponding(PROVIDER_ANR_TIMEOUT);
 
-
-             Uri uri = Uri.parse(app.mBase_uri_no_account + "/" + BluetoothMapContract.TABLE_ACCOUNT);
-
-             c = mProviderClient.query(uri, BluetoothMapContract.BT_ACCOUNT_PROJECTION, null, null, BluetoothMapContract.AccountColumns._ID+" DESC");
-        } catch (RemoteException e){
-            if(D)Log.d(TAG,"Could not establish ContentProviderClient for "+app.getPackageName()+
-                    " - returning empty account list" );
-            return children;
-        }
-
-        if (c != null) {
-            c.moveToPosition(-1);
-            while (c.moveToNext()) {
-                if(D)Log.d(TAG,"Adding account " +c.getString(c.getColumnIndex(BluetoothMapContract.AccountColumns.ACCOUNT_DISPLAY_NAME))+
-                        " with ID "+String.valueOf((c.getInt(c.getColumnIndex(BluetoothMapContract.AccountColumns._ID)))));
-
+            Uri uri = Uri.parse(app.mBase_uri_no_account + "/" + BluetoothMapContract.TABLE_ACCOUNT);
+            c = mProviderClient.query(uri, BluetoothMapContract.BT_ACCOUNT_PROJECTION, null, null,
+                    BluetoothMapContract.AccountColumns._ID+" DESC");
+            while (c != null && c.moveToNext()) {
                 BluetoothMapEmailSettingsItem child = new BluetoothMapEmailSettingsItem(
-                        /*id*/           String.valueOf((c.getInt(c.getColumnIndex(BluetoothMapContract.AccountColumns._ID)))),
-                        /*name*/         c.getString(c.getColumnIndex(BluetoothMapContract.AccountColumns.ACCOUNT_DISPLAY_NAME)) ,
-                        /*package name*/ app.getPackageName(),
-                        /*providerMeta*/ app.getProviderAuthority(),
-                        /*icon*/         null);
+                    String.valueOf((c.getInt(c.getColumnIndex(BluetoothMapContract.AccountColumns._ID)))),
+                    c.getString(c.getColumnIndex(BluetoothMapContract.AccountColumns.ACCOUNT_DISPLAY_NAME)) ,
+                    app.getPackageName(),
+                    app.getProviderAuthority(),
+                    null);
 
                 child.mIsChecked = (c.getInt(c.getColumnIndex(BluetoothMapContract.AccountColumns.FLAG_EXPOSE))!=0);
                 /*update the account counter so we can make sure that not to many accounts are checked. */
@@ -182,9 +170,11 @@
                 }
                 children.add(child);
             }
-            c.close();
-        } else {
-            if(D)Log.d(TAG, "query failed");
+        } catch (RemoteException e){
+            if(D)Log.d(TAG,"Could not establish ContentProviderClient for "+app.getPackageName()+
+                    " - returning empty account list" );
+        } finally {
+            if (c != null) c.close();
         }
         return children;
     }
@@ -198,5 +188,4 @@
         if(D)Log.d(TAG,"Enabled Accounts count:"+ mAccountsEnabledCount);
         return mAccountsEnabledCount;
     }
-
 }
diff --git a/src/com/android/bluetooth/map/BluetoothMapObexServer.java b/src/com/android/bluetooth/map/BluetoothMapObexServer.java
index fe2207e..7b321d1 100644
--- a/src/com/android/bluetooth/map/BluetoothMapObexServer.java
+++ b/src/com/android/bluetooth/map/BluetoothMapObexServer.java
@@ -212,17 +212,15 @@
                         " = " + parentFolder.getEmailFolderId();
         Cursor c = mProviderClient.query(mEmailFolderUri,
                         BluetoothMapContract.BT_FOLDER_PROJECTION, where, null, null);
-        if (c != null) {
-            c.moveToPosition(-1);
-            while (c.moveToNext()) {
+        try {
+            while (c != null && c.moveToNext()) {
                 String name = c.getString(c.getColumnIndex(BluetoothMapContract.FolderColumns.NAME));
                 long id = c.getLong(c.getColumnIndex(BluetoothMapContract.FolderColumns._ID));
                 newFolder = parentFolder.addEmailFolder(name, id);
                 addEmailFolders(newFolder); // Use recursion to add any sub folders
             }
-            c.close();
-        } else {
-            if (D) Log.d(TAG, "addEmailFolders(): no elements found");
+        } finally {
+            if (c != null) c.close();
         }
     }
 
diff --git a/src/com/android/bluetooth/map/BluetoothMapService.java b/src/com/android/bluetooth/map/BluetoothMapService.java
index f016fb1..12c294b 100755
--- a/src/com/android/bluetooth/map/BluetoothMapService.java
+++ b/src/com/android/bluetooth/map/BluetoothMapService.java
@@ -74,9 +74,9 @@
      * DEBUG log: "setprop log.tag.BluetoothMapService VERBOSE"
      */
 
-    public static final boolean DEBUG = true; //TODO: set to false
+    public static final boolean DEBUG = true;
 
-    public static final boolean VERBOSE = true; //TODO: set to false
+    public static final boolean VERBOSE = false;
 
     /**
      * Intent indicating timeout for user confirmation, which is sent to
@@ -1084,4 +1084,26 @@
             return service.getPriority(device);
         }
     }
+
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+        println(sb, "mRemoteDevice: " + mRemoteDevice);
+        println(sb, "sRemoteDeviceName: " + sRemoteDeviceName);
+        println(sb, "mState: " + mState);
+        println(sb, "mAppObserver: " + mAppObserver);
+        println(sb, "mIsWaitingAuthorization: " + mIsWaitingAuthorization);
+        println(sb, "mRemoveTimeoutMsg: " + mRemoveTimeoutMsg);
+        println(sb, "mPermission: " + mPermission);
+        println(sb, "mAccountChanged: " + mAccountChanged);
+        println(sb, "mBluetoothMnsObexClient: " + mBluetoothMnsObexClient);
+        println(sb, "mMasInstanceMap:");
+        for (BluetoothMapEmailSettingsItem key : mMasInstanceMap.keySet()) {
+            println(sb, "  " + key + " : " + mMasInstanceMap.get(key));
+        }
+        println(sb, "mEnabledAccounts:");
+        for (BluetoothMapEmailSettingsItem account : mEnabledAccounts) {
+            println(sb, "  " + account);
+        }
+    }
 }
diff --git a/src/com/android/bluetooth/opp/BluetoothOppIncomingFileConfirmActivity.java b/src/com/android/bluetooth/opp/BluetoothOppIncomingFileConfirmActivity.java
index 1855bc9..3a39439 100644
--- a/src/com/android/bluetooth/opp/BluetoothOppIncomingFileConfirmActivity.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppIncomingFileConfirmActivity.java
@@ -75,8 +75,6 @@
 
     private ContentValues mUpdateValues;
 
-    private TextView mContentView;
-
     private boolean mTimeout = false;
 
     private BroadcastReceiver mReceiver = new BroadcastReceiver() {
@@ -200,7 +198,7 @@
 
     private void onTimeout() {
         mTimeout = true;
-        mContentView.setText(getString(R.string.incoming_file_confirm_timeout_content,
+        mAlert.setTitle(getString(R.string.incoming_file_confirm_timeout_content,
                 mTransInfo.mDeviceName));
         mAlert.getButton(DialogInterface.BUTTON_NEGATIVE).setVisibility(View.GONE);
         mAlert.getButton(DialogInterface.BUTTON_POSITIVE).setText(
diff --git a/src/com/android/bluetooth/opp/BluetoothOppObexServerSession.java b/src/com/android/bluetooth/opp/BluetoothOppObexServerSession.java
index 5bd54af..bf6a6fa 100644
--- a/src/com/android/bluetooth/opp/BluetoothOppObexServerSession.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppObexServerSession.java
@@ -276,7 +276,7 @@
 
         boolean needConfirm = true;
         /** It's not first put if !serverBlocking, so we auto accept it */
-        if (!mServerBlocking) {
+        if (!mServerBlocking && mAccepted == BluetoothShare.USER_CONFIRMATION_CONFIRMED) {
             values.put(BluetoothShare.USER_CONFIRMATION,
                     BluetoothShare.USER_CONFIRMATION_AUTO_CONFIRMED);
             needConfirm = false;
diff --git a/src/com/android/bluetooth/opp/BluetoothOppService.java b/src/com/android/bluetooth/opp/BluetoothOppService.java
index 4d71584..f952bec 100755
--- a/src/com/android/bluetooth/opp/BluetoothOppService.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppService.java
@@ -704,7 +704,7 @@
         info.mDestination = stringFromCursor(info.mDestination, cursor, BluetoothShare.DESTINATION);
         int newVisibility = cursor.getInt(cursor.getColumnIndexOrThrow(BluetoothShare.VISIBILITY));
 
-        boolean confirmed = false;
+        boolean confirmUpdated = false;
         int newConfirm = cursor.getInt(cursor
                 .getColumnIndexOrThrow(BluetoothShare.USER_CONFIRMATION));
 
@@ -718,7 +718,7 @@
 
         if (info.mConfirm == BluetoothShare.USER_CONFIRMATION_PENDING
                 && newConfirm != BluetoothShare.USER_CONFIRMATION_PENDING) {
-            confirmed = true;
+            confirmUpdated = true;
         }
         info.mConfirm = cursor.getInt(cursor
                 .getColumnIndexOrThrow(BluetoothShare.USER_CONFIRMATION));
@@ -736,14 +736,14 @@
         info.mTimestamp = cursor.getInt(cursor.getColumnIndexOrThrow(BluetoothShare.TIMESTAMP));
         info.mMediaScanned = (cursor.getInt(cursor.getColumnIndexOrThrow(Constants.MEDIA_SCANNED)) != Constants.MEDIA_SCANNED_NOT_SCANNED);
 
-        if (confirmed) {
-            if (V) Log.v(TAG, "Service handle info " + info.mId + " confirmed");
-            /* Inbounds transfer get user confirmation, so we start it */
+        if (confirmUpdated) {
+            if (V) Log.v(TAG, "Service handle info " + info.mId + " confirmation updated");
+            /* Inbounds transfer user confirmation status changed, update the session server */
             int i = findBatchWithTimeStamp(info.mTimestamp);
             if (i != -1) {
                 BluetoothOppBatch batch = mBatchs.get(i);
                 if (mServerTransfer != null && batch.mId == mServerTransfer.getBatchId()) {
-                    mServerTransfer.setConfirmed();
+                    mServerTransfer.confirmStatusChanged();
                 } //TODO need to think about else
             }
         }
@@ -870,7 +870,7 @@
                         mServerTransfer.start();
                         if (nextBatch.getPendingShare().mConfirm ==
                                 BluetoothShare.USER_CONFIRMATION_CONFIRMED) {
-                            mServerTransfer.setConfirmed();
+                            mServerTransfer.confirmStatusChanged();
                         }
                         return;
                     }
diff --git a/src/com/android/bluetooth/opp/BluetoothOppTransfer.java b/src/com/android/bluetooth/opp/BluetoothOppTransfer.java
index 2dbed49..6c883d2 100755
--- a/src/com/android/bluetooth/opp/BluetoothOppTransfer.java
+++ b/src/com/android/bluetooth/opp/BluetoothOppTransfer.java
@@ -462,7 +462,7 @@
         if (V) Log.v(TAG, "processCurrentShare" + mCurrentShare.mId);
         mSession.addShare(mCurrentShare);
         if (mCurrentShare.mConfirm == BluetoothShare.USER_CONFIRMATION_HANDOVER_CONFIRMED) {
-            setConfirmed();
+            confirmStatusChanged();
         }
     }
 
@@ -470,7 +470,7 @@
      * Set transfer confirmed status. It should only be called for inbound
      * transfer
      */
-    public void setConfirmed() {
+    public void confirmStatusChanged() {
         /* unblock server session */
         final Thread notifyThread = new Thread("Server Unblock thread") {
             public void run() {
@@ -480,7 +480,7 @@
                 }
             }
         };
-        if (V) Log.v(TAG, "setConfirmed to unblock mSession" + mSession.toString());
+        if (V) Log.v(TAG, "confirmStatusChanged to unblock mSession" + mSession.toString());
         notifyThread.start();
     }
 
@@ -711,7 +711,7 @@
                 if (V) Log.v(TAG, "Transfer continue session for info " + mCurrentShare.mId +
                         " from batch " + mBatch.mId);
                 processCurrentShare();
-                setConfirmed();
+                confirmStatusChanged();
             }
         }
     }
diff --git a/src/com/android/bluetooth/pan/PanService.java b/src/com/android/bluetooth/pan/PanService.java
index 5d1bc30..23753ed 100755
--- a/src/com/android/bluetooth/pan/PanService.java
+++ b/src/com/android/bluetooth/pan/PanService.java
@@ -50,9 +50,6 @@
 import java.util.List;
 import java.util.Map;
 
-import android.content.SharedPreferences;
-import android.content.SharedPreferences.Editor;
-
 /**
  * Provides Bluetooth Pan Device profile, as a service in
  * the Bluetooth application.
@@ -76,8 +73,6 @@
     private static final int MESSAGE_DISCONNECT = 2;
     private static final int MESSAGE_CONNECT_STATE_CHANGED = 11;
     private boolean mTetherOn = false;
-    private static final String PAN_PREFERENCE_FILE = "PANMGR";
-    private static final String PAN_TETHER_SETTING = "TETHERSTATE";
 
     private BluetoothTetheringNetworkFactory mNetworkFactory;
 
@@ -109,10 +104,6 @@
         mNetworkFactory = new BluetoothTetheringNetworkFactory(getBaseContext(), getMainLooper(),
                 this);
 
-        // Set mTetherOn based on the last saved tethering preference while starting the Pan service
-        SharedPreferences tetherSetting = getSharedPreferences(PAN_PREFERENCE_FILE, 0);
-        mTetherOn = tetherSetting.getBoolean(PAN_TETHER_SETTING, false);
-
         return true;
     }
 
@@ -238,6 +229,7 @@
             return service.isPanUOn();
         }
         public boolean isTetheringOn() {
+            // TODO(BT) have a variable marking the on/off state
             PanService service = getService();
             if (service == null) return false;
             return service.isTetheringOn();
@@ -297,6 +289,7 @@
         return (getPanLocalRoleNative() & BluetoothPan.LOCAL_PANU_ROLE) != 0;
     }
      boolean isTetheringOn() {
+        // TODO(BT) have a variable marking the on/off state
         return mTetherOn;
     }
 
@@ -309,14 +302,6 @@
             throw new SecurityException("DISALLOW_CONFIG_TETHERING is enabled for this user.");
         }
         if(mTetherOn != value) {
-
-            SharedPreferences tetherSetting = getSharedPreferences(PAN_PREFERENCE_FILE, 0);
-            SharedPreferences.Editor editor = tetherSetting.edit();
-
-            editor.putBoolean(PAN_TETHER_SETTING, value);
-
-            // Commit the edit!
-            editor.commit();
             //drop any existing panu or pan-nap connection when changing the tethering state
             mTetherOn = value;
             List<BluetoothDevice> DevList = getConnectedDevices();
@@ -576,6 +561,22 @@
         return panDevice.mState;
     }
 
+    @Override
+    public void dump(StringBuilder sb) {
+        super.dump(sb);
+        println(sb, "mMaxPanDevices: " + mMaxPanDevices);
+        println(sb, "mPanIfName: " + mPanIfName);
+        println(sb, "mTetherOn: " + mTetherOn);
+        println(sb, "mPanDevices:");
+        for (BluetoothDevice device : mPanDevices.keySet()) {
+            println(sb, "  " + device + " : " + mPanDevices.get(device));
+        }
+        println(sb, "mBluetoothIfaceAddresses:");
+        for (String address : mBluetoothIfaceAddresses) {
+            println(sb, "  " + address);
+        }
+    }
+
     private class BluetoothPanDevice {
         private int mState;
         private String mIfaceAddr;
diff --git a/src/com/android/bluetooth/util/NumberUtils.java b/src/com/android/bluetooth/util/NumberUtils.java
new file mode 100644
index 0000000..1d27456
--- /dev/null
+++ b/src/com/android/bluetooth/util/NumberUtils.java
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.bluetooth.util;
+
+/**
+ * Utility for parsing numbers in Bluetooth.
+ */
+public class NumberUtils {
+
+    /**
+     * Convert a byte to unsigned int.
+     */
+    public static int unsignedByteToInt(byte b) {
+        return b & 0xFF;
+    }
+
+    /**
+     * Convert a little endian byte array to integer.
+     */
+    public static int littleEndianByteArrayToInt(byte[] bytes) {
+        int length = bytes.length;
+        if (length == 0) {
+            return 0;
+        }
+        int result = 0;
+        for (int i = length - 1; i >= 0; i--) {
+            int value = unsignedByteToInt(bytes[i]);
+            result += (value << (i * 8));
+        }
+        return result;
+    }
+}
diff --git a/tests/src/com/android/bluetooth/gatt/GattServiceTest.java b/tests/src/com/android/bluetooth/gatt/GattServiceTest.java
new file mode 100644
index 0000000..28c5a10
--- /dev/null
+++ b/tests/src/com/android/bluetooth/gatt/GattServiceTest.java
@@ -0,0 +1,22 @@
+
+package com.android.bluetooth.gatt;
+
+import android.test.AndroidTestCase;
+import android.test.suitebuilder.annotation.SmallTest;
+
+import com.android.bluetooth.gatt.GattService;
+
+/**
+ * Test cases for {@link GattService}.
+ */
+public class GattServiceTest extends AndroidTestCase {
+
+    @SmallTest
+    public void testParseBatchTimestamp() {
+        GattService service = new GattService();
+        long timestampNanos = service.parseTimestampNanos(new byte[] {
+                -54, 7 });
+        assertEquals(99700000000L, timestampNanos);
+    }
+
+}
diff --git a/tests/src/com/android/bluetooth/util/NumberUtilsTest.java b/tests/src/com/android/bluetooth/util/NumberUtilsTest.java
new file mode 100644
index 0000000..a2fa1aa
--- /dev/null
+++ b/tests/src/com/android/bluetooth/util/NumberUtilsTest.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.bluetooth.util;
+
+import android.test.AndroidTestCase;
+import android.test.suitebuilder.annotation.SmallTest;
+
+/**
+ * Tests for {@link NumberUtils}.
+ */
+public class NumberUtilsTest extends AndroidTestCase {
+
+    @SmallTest
+    public static void testUnsignedByteToInt() {
+        assertEquals(0, NumberUtils.unsignedByteToInt((byte) 0));
+        assertEquals(19, NumberUtils.unsignedByteToInt((byte) 19));
+        assertEquals(154, NumberUtils.unsignedByteToInt((byte) 154));
+    }
+
+    @SmallTest
+    public void testLittleEndianByteArrayToInt() {
+        assertEquals(1, NumberUtils.littleEndianByteArrayToInt(new byte[] {
+                1 }));
+        assertEquals(513, NumberUtils.littleEndianByteArrayToInt(new byte[] {
+                1, 2 }));
+        assertEquals(197121, NumberUtils.littleEndianByteArrayToInt(new byte[] {
+                1, 2, 3 }));
+    }
+}