Merge "Pass voicemail: URIs directly to Telephony. Rename handle -> number" into lmp-dev
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 158c252..3b13384 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Vra elke keer"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Moenie Wi-Fi vir oproepe gebruik nie"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Hierdie gebruiker word nie toegelaat om nienood-foonoproepe te maak nie"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Oproep nie gestuur nie; geen geldige nommer is ingevoer nie."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Vermiste stemboodskapnommer"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Geen stemboodskapnommer is op die SIM-kaart gestoor nie."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Voeg nommer by"</string>
</resources>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 53a608c..9933742 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"ሁልጊዜ ጊዜ ጠይቅ"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"የWi-Fi ጥሪ አይጠቀሙ"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"ይህ ተጠቃሚ የአስቸኳይ አደጋ ያልሆኑ ስልክ ጥሪዎችን እንዲያደርጉ አልተፈቀደላቸውም"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"ጥሪ አልተላከም፣ ትክክለኛ ቁጥር አልገባም።"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"የድምፅመልዕክት ቁጥርአመለጠ"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"በSIM ካርዱ ላይምንም የድምፅመልዕክት ቁጥር አልከተቀመጠም።"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"ቁጥር አክል"</string>
</resources>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 0943943..70f222c 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"الطلب في كل مرة"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"عدم استخدام الاتصال عبر Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"هذا المستخدم غير مسموح له بإجراء مكالمات هاتفية بخلاف مكالمات الطوارئ"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"لم يتم إرسال الاتصال، لم يتم إدخال رقم صالح."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"رقم البريد الصوتي مفقود"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"لم يتم تخزين رقم بريد صوتي على بطاقة SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"إضافة رقم"</string>
</resources>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index b9ffa44..98ed67c 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Извеждане на запитване всеки път"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Без използване на обаждане през Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"На този потребител е разрешено да провежда само спешни обаждания"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Обаждането не е изпратено, не е въведен валиден номер."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Липсващ номер на гласова поща"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"На SIM картата няма съхранен номер за гласова поща."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Добавяне на номер"</string>
</resources>
diff --git a/res/values-bn-rBD/strings.xml b/res/values-bn-rBD/strings.xml
index 9fc3317..20a58ad 100644
--- a/res/values-bn-rBD/strings.xml
+++ b/res/values-bn-rBD/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"প্রতিবার জিজ্ঞাসা করুন"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi কলিং ব্যবহার করবেন না"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"জরুরী নয় এমন ফোন কল করার জন্য ব্যবহারকারী অনুমতি পাননি"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"কল করা যায়নি, কোনো বৈধ নম্বর লেখা হয়নি।"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"ভয়েসমেল নম্বর অনুপস্থিত"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM কার্ডটিতে কোনো ভয়েসমেল নম্বর সংরক্ষিত নেই৷"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"একটি নম্বর যোগ করুন"</string>
</resources>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 9f9fdbf..3ea01f0 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Pregunta sempre"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"No facis servir les trucades mitjançant Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Aquest usuari no pot fer trucades que no siguin d\'emergència."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"No s\'ha enviat la trucada perquè no s\'ha introduït cap número vàlid."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Falta el número de correu de veu"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"No hi ha cap número de correu de veu emmagatzemat a la targeta SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Afegeix número"</string>
</resources>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index ee20fc4..996f241 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Vždy se dotázat"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Nepoužívat volání pomocí Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Uživatel smí uskutečňovat pouze tísňová volání."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Hovor nelze spojit, nebylo zadáno platné číslo."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Chybí číslo hlasové schránky"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Na SIM kartě není uloženo žádné číslo hlasové schránky."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Přidat číslo"</string>
</resources>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 7179b2f..d329ec3 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Spørg hver gang"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Brug ikke Wi-Fi-opkald"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Denne bruger har kun tilladelse til at foretage nødopkald"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Opkaldet kunne ikke sendes. Der blev ikke indtastet et gyldigt nummer."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Telefonsvarernummer mangler"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Der er ikke gemt noget telefonsvarernummer på SIM-kortet."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Tilføj nummer"</string>
</resources>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 92ef8a6..f31124d 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Jedes Mal fragen"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Keine WLAN-Anrufe nutzen"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Dieser Nutzer darf abgesehen von Notrufen keine Anrufe tätigen."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Anruf nicht verbunden; keine gültige Nummer eingegeben."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Fehlende Mailbox-Nummer"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Auf der SIM-Karte ist keine Mailbox-Nummer gespeichert."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Nummer hinzufügen"</string>
</resources>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 0072977..6283f37 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Ερώτηση κάθε φορά"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Να μη χρησιμοποιείται η κλήση μέσω Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Δεν επιτρέπεται σε αυτόν το χρήστη να πραγματοποιεί τηλεφωνικές κλήσεις οι οποίες δεν είναι εκτάκτου ανάγκης"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Η κλήση δεν πραγματοποιήθηκε, δεν έγινε εισαγωγή έγκυρου αριθμού."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Λείπει ο αριθμός αυτόματου τηλεφωνητή"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Δεν έχει αποθηκευτεί αριθμός για τον αυτόματο τηλεφωνητή στην κάρτα SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Προσθήκη αριθμού"</string>
</resources>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index a4f625b..8ecf761 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Ask every time"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Do not use Wi-Fi calling"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"This user is not allowed to make non-emergency phone calls"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Call not sent. No valid number entered."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Missing voicemail number"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"No voicemail number is stored on the SIM card."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Add number"</string>
</resources>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index a4f625b..8ecf761 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Ask every time"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Do not use Wi-Fi calling"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"This user is not allowed to make non-emergency phone calls"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Call not sent. No valid number entered."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Missing voicemail number"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"No voicemail number is stored on the SIM card."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Add number"</string>
</resources>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 2c4f49c..e31d1a2 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Preguntar siempre"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"No utilizar llamadas por Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Este usuario solo tiene permisos para hacer llamadas de emergencia."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Llamada no enviada. No se ingresó un número válido."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Falta el número de correo de voz"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"No hay un número de correo de voz almacenado en la tarjeta SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Agregar número"</string>
</resources>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 67440a3..c17fdf2 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Preguntar siempre"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"No usar llamadas Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Este usuario solo puede realizar llamadas de emergencia"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"No se ha enviado la llamada; el número introducido no es válido."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Falta el número del buzón de voz."</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"No se ha almacenado ningún número de buzón de voz en la tarjeta SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Añadir número"</string>
</resources>
diff --git a/res/values-et-rEE/strings.xml b/res/values-et-rEE/strings.xml
index 06736fd..20e1aaa 100644
--- a/res/values-et-rEE/strings.xml
+++ b/res/values-et-rEE/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Küsi iga kord"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ära kasuta WiFi-kõnesid"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"See kasutaja võib teha ainult hädaabikõnesid"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Kõnet ei tehtud, sisestati kehtetu number."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Puudub kõnepostinumber"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM-kaardile pole salvestatud ühtegi kõnepostinumbrit."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Lisa number"</string>
</resources>
diff --git a/res/values-eu-rES/strings.xml b/res/values-eu-rES/strings.xml
index b194e6e..0a44223 100644
--- a/res/values-eu-rES/strings.xml
+++ b/res/values-eu-rES/strings.xml
@@ -36,10 +36,14 @@
<string name="respond_via_sms_edittext_dialog_title" msgid="20379890418289778">"Erantzun bizkorra"</string>
<string name="respond_via_sms_menu_reset_default_activity" msgid="1461742052902053466">"Berrezarri aplik. lehenetsia"</string>
<string name="respond_via_sms_confirmation_format" msgid="7229149977515784269">"Mezua bidali da <xliff:g id="PHONE_NUMBER">%s</xliff:g> zenbakira."</string>
- <string name="phone_account_preferences_title" msgid="5042332049625236956">"Telefonoaren kontuaren ezarpenak"</string>
+ <string name="phone_account_preferences_title" msgid="5042332049625236956">"Telefonoko kontuaren ezarpenak"</string>
<string name="default_outgoing_account_title" msgid="8261079649574578970">"Irteerako kontu lehenetsia"</string>
<string name="sim_call_manager_account" msgid="2559930293628077755">"Wi-Fi bidezko deiak egiteko kontua"</string>
<string name="account_ask_every_time" msgid="944077828070287407">"Galdetu beti"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ez erabili Wi-Fi bidezko deiak"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Erabiltzaile honek ez du larrialdietakoak ez diren telefono-deiak egiteko baimenik"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Ez da deia egin ez delako baliozko zenbakirik idatzi."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Erantzungailuaren zenbakia falta da"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Ez da erantzungailuaren zenbakirik gorde SIM txartelean."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Gehitu zenbakia"</string>
</resources>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index ccbf993..8078fa4 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"هر بار پرسیده شود"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"از تماس تلفنی با Wi-Fi استفاده نشود"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"این کاربر اجازه برقراری تماسهای تلفنی غیر اضطراری ندارد."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"تماس ارسال نشد، هیچ شماره معتبری وارد نشده است."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"عدم وجود شماره پست صوتی"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"شماره پست صوتی در سیم کارت ذخیره نشده است."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"افزودن شماره"</string>
</resources>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index b7344f9..b7713bb 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Kysy aina"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Älä käytä puheluihin Wi-Fiä"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Tämä käyttäjä saa soittaa vain hätäpuheluita"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Puhelua ei soitettu, et antanut kelvollista numeroa."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Puhelinvastaajan numero puuttuu"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM-kortille ei ole tallennettu puhelinvastaajan numeroa."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Lisää numero"</string>
</resources>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index f0b2319..f7935d6 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Toujours demander"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ne pas utiliser les appels par Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Cet utilisateur n\'est pas autorisé à faire des appels téléphoniques non urgents"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"L\'appel n\'a pas été effectué, car le numéro entré n\'est pas valide."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Numéro de messagerie vocale manquant"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Aucun numéro de messagerie vocale n\'est enregistré sur la carte SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Ajouter un numéro"</string>
</resources>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index f58d6cb..9bea305 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Toujours demander"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ne pas utiliser les appels Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Cet utilisateur n\'est autorisé à effectuer que des appels d\'urgence."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"L\'appel n\'a pas été effectué. Aucun numéro valide n\'a été saisi."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Numéro de messagerie vocale manquant"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Aucun numéro de messagerie vocale n\'est enregistré sur la carte SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Ajouter un numéro"</string>
</resources>
diff --git a/res/values-gl-rES/strings.xml b/res/values-gl-rES/strings.xml
index f75da28..66f4ac4 100644
--- a/res/values-gl-rES/strings.xml
+++ b/res/values-gl-rES/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Preguntar sempre"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Non utilizar as chamadas wifi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Este usuario non ten permiso para facer chamadas telefónicas que non sexan de emerxencia"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Chamada non enviada; o número introducido non é válido."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Falta o número de correo de voz"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Non hai ningún número de correo de voz almacenado na tarxeta SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Engadir número"</string>
</resources>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 5d71149..ee242e3 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"हर बार पूछें"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"वाई-फ़ाई कॉलिंग का उपयोग न करें"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"इस उपयोगकर्ता को गैर-आपातकालीन फ़ोन कॉल करने की अनुमति नहीं है"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"कॉल नहीं भेजा गया, कोई मान्य नंबर नहीं डाला गया था."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"गुम ध्वनिमेल नंबर"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"सिम कार्ड पर कोई ध्वनिमेल नंबर संग्रहीत नहीं है."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"नंबर जोड़ें"</string>
</resources>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 9aec86a..adf4033 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Pitaj svaki put"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ne upotrebljavaj Wi-Fi pozive"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Ovaj korisnik smije uspostavljati samo hitne pozive"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Poziv nije uspostavljen, nije unesen važeći broj."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Nedostaje broj govorne pošte"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Na SIM kartici nije spremljen broj govorne pošte."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Dodaj broj"</string>
</resources>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 5291f45..136bb7e 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Mindig rákérdez"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ne használja a Wi-Fi-hívást"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Ez a felhasználó csak vészhelyzeti telefonhívásokat kezdeményezhet"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"A hívás indítása érvénytelen szám beírása miatt nem történt meg."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Hiányzik a hangposta száma"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Nincs hangpostaszám a SIM kártyán."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Szám hozzáadása"</string>
</resources>
diff --git a/res/values-hy-rAM/strings.xml b/res/values-hy-rAM/strings.xml
index 9113650..68eb9c4 100644
--- a/res/values-hy-rAM/strings.xml
+++ b/res/values-hy-rAM/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Հարցնել ամեն անգամ"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Չօգտագործել Wi-Fi զանգերը"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Այս օգտվողին չի թույլատրվում կատարել ոչ արտակարգ զանգեր"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Զանգը չի կատարվել, անվավեր համար է մուտքագրված:"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Բացակայում է ձայնային փոստի համարը"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM քարտում ձայնային փոստի ոչ մի համար գրանցված չէ:"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Ավելացնել համար"</string>
</resources>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 45a3ec4..6f35ca1 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Tanyakan setiap kali"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Jangan gunakan panggilan Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Pengguna ini tidak diizinkan untuk membuat panggilan telepon non-darurat"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Panggilan tidak terkirim, tidak ada nomor valid yang dimasukkan."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Nomor kotak pesan hilang"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Tidak ada nomor kotak pesan tersimpan pada kartu SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Tambahkan nomor"</string>
</resources>
diff --git a/res/values-is-rIS/strings.xml b/res/values-is-rIS/strings.xml
index 8c37bd3..7346c6f 100644
--- a/res/values-is-rIS/strings.xml
+++ b/res/values-is-rIS/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Spyrja í hvert skipti"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ekki nota Wi-Fi símtöl"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Þessi notandi hefur ekki leyfi til að hringja símtöl önnur en neyðarsímtöl"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Símtalið var ekki sent. Ekki var slegið inn gilt símanúmer."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Talhólfsnúmer vantar"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Ekkert talhólfsnúmer er vistað á SIM-kortinu."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Bæta númeri við"</string>
</resources>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 450f17d..045fc49 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Chiedi ogni volta"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Non utilizzare chiamate Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Questo utente non è autorizzato a fare telefonate diverse da quelle di emergenza"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Chiamata non inviata. Nessun numero valido inserito."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Numero segreteria mancante"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Nessun numero di segreteria presente nella SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Aggiungi numero"</string>
</resources>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 13ebe2f..508a337 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"שאל בכל פעם"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"אל תשתמש בשיחות ב-Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"משתמש זה אינו רשאי לבצע שיחות טלפון שאינן שיחות חירום"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"השיחה לא נשלחה. לא הוזן מספר חוקי."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"חסר מספר של דואר קולי"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"בכרטיס ה-SIM לא מאוחסן מספר של דואר קולי."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"הוסף מספר"</string>
</resources>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 4e8f2ef..a014577 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"その都度確認"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi発信を使用しない"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"このユーザーは緊急通報以外の通話は発信できません"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"発信できません。有効な番号が入力されていません。"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"ボイスメール番号がありません"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIMカードにボイスメールの番号がありません。"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"番号を追加"</string>
</resources>
diff --git a/res/values-ka-rGE/strings.xml b/res/values-ka-rGE/strings.xml
index a5b7315..fe21816 100644
--- a/res/values-ka-rGE/strings.xml
+++ b/res/values-ka-rGE/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"მკითხე ყოველ ჯერზე"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi დარეკვა არ გამოიყენო"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"ამ მომხმარებელს არ აქვს უფლება, განახორციელოს არასაგანგებო სატელეფონო ზარები."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"ვერ გაიგზავნა, ტელეფონის ნომერი სწორად არ იქნა შეყვანილი."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"ხმოვანი ფოსტის ნომერი არ არის"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM ბარათზე ხმოვანი ფოსტის ნომერი შენახული არ არის."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"ნომრის დამატება"</string>
</resources>
diff --git a/res/values-kk-rKZ/strings.xml b/res/values-kk-rKZ/strings.xml
index 921c40c..6f4547a 100644
--- a/res/values-kk-rKZ/strings.xml
+++ b/res/values-kk-rKZ/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Әр қоңырау үшін сұрау"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi қоңырауларын пайдаланбау"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Бұл пайдаланушыға жедел емес қоңырауларды шалуға рұқсат етілмеген"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Қоңырау жіберілмеді, енгізілген нөмір жарамсыз."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Дауыс хабарының нөмірі жоқ"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM картасында ешқандай дауыс хабарының нөмірі сақталмаған."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Нөмір қосу"</string>
</resources>
diff --git a/res/values-km-rKH/strings.xml b/res/values-km-rKH/strings.xml
index 9d4c9e9..d442256 100644
--- a/res/values-km-rKH/strings.xml
+++ b/res/values-km-rKH/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"សួរជានិច្ច"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"កុំប្រើការហៅតាមវ៉ាយហ្វាយ"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"អ្នកប្រើម្នាក់នេះមិនត្រូវបានអនុញ្ញាតឲ្យបង្កើតការហៅទូរស័ព្ទពេលមិនអាសន្ន"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"មិនបានផ្ញើការហៅ បានបញ្ចូលលេខមិនត្រឹមត្រូវ។"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"បាត់ចំនួនសារជាសំឡេង"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"គ្មានចំនួនសារជាសំឡេងត្រូវបានរក្សាទុកនៅលើស៊ីមកាតទេ។"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"បន្ថែមលេខ"</string>
</resources>
diff --git a/res/values-kn-rIN/strings.xml b/res/values-kn-rIN/strings.xml
index 5109406..f3c577f 100644
--- a/res/values-kn-rIN/strings.xml
+++ b/res/values-kn-rIN/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"ಪ್ರತಿ ಬಾರಿ ಕೇಳಿ"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi ಕರೆ ಮಾಡುವಿಕೆಯನ್ನು ಬಳಸಬೇಡಿ"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"ತುರ್ತುಸ್ಥಿತಿಯಲ್ಲದ ಫೋನ್ ಕರೆಗಳನ್ನು ಮಾಡಲು ಈ ಬಳಕೆದಾರರನ್ನು ಅನುಮತಿಸಲಾಗುವುದಿಲ್ಲ"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"ಕರೆ ಮಾಡಲಾಗಿಲ್ಲ, ಯಾವುದೇ ಮಾನ್ಯವಾದ ಸಂಖ್ಯೆಯನ್ನು ನಮೂದಿಸಿಲ್ಲ."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"ಧ್ವನಿಮೇಲ್ ಸಂಖ್ಯೆಯು ಕಾಣೆಯಾಗಿದೆ"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM ಕಾರ್ಡ್ನಲ್ಲಿ ಯಾವುದೇ ಧ್ವನಿಮೇಲ್ ಸಂಖ್ಯೆಯನ್ನು ಸಂಗ್ರಹಿಸಿಲ್ಲ."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"ಸಂಖ್ಯೆಯನ್ನು ಸೇರಿಸಿ"</string>
</resources>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 3061ca6..4ffb4d4 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"항상 확인"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi 통화 사용 안함"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"일반 전화를 걸 수 없는 사용자입니다."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"잘못된 번호를 입력했으므로 전화를 걸지 못했습니다."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"음성사서함 번호 없음"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM 카드에 저장된 음성사서함 번호가 없습니다."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"번호 추가"</string>
</resources>
diff --git a/res/values-ky-rKG/strings.xml b/res/values-ky-rKG/strings.xml
index 064a0d1..2155c8c 100644
--- a/res/values-ky-rKG/strings.xml
+++ b/res/values-ky-rKG/strings.xml
@@ -51,4 +51,11 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Чалган сайын сурасын"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi чалуу колдонулбасын"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Бул колдонуучу шашылыш эмес чалууларды аткара албайт"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Чалуу жөнөтүлгөн жок, жарактуу номер киргизилген жок."</string>
+ <!-- no translation found for no_vm_number (4164780423805688336) -->
+ <skip />
+ <!-- no translation found for no_vm_number_msg (1300729501030053828) -->
+ <skip />
+ <!-- no translation found for add_vm_number_str (4676479471644687453) -->
+ <skip />
</resources>
diff --git a/res/values-lo-rLA/strings.xml b/res/values-lo-rLA/strings.xml
index ef91c84..6ff0fe5 100644
--- a/res/values-lo-rLA/strings.xml
+++ b/res/values-lo-rLA/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"ຖາມທຸກເທື່ອ"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"ບໍ່ໃຊ້ການໂທດ້ວຍ Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"ຜູ່ໃຊ້ນີ້ບໍ່ໄດ້ຮັບອະນຸຍາດໃຫ້ໂທສຸກເສີນໄດ້"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"ບໍ່ໄດ້ໂທເທື່ອ, ເບີໂທທີ່ລະບຸບໍ່ຖືກຕ້ອງ."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"ບໍ່ມີເບີຂໍ້ຄວາມສຽງ"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"ບໍ່ມີເບີຂໍ້ຄວາມສຽງຖືກບັນທຶກໃນ SIM card."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"ເພີ່ມໝາຍເລກ"</string>
</resources>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 8772dcf..8e5b7f4 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Klausti kaskart"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Nenaudoti „Wi-Fi“ skambinimo"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Šiam naudotojui leidžiama vykdyti tik skambučius pagalbos numeriais"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Skambutis neatliktas; įvestas netinkamas numeris."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Trūksta balso pašto numerio"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM kortelėje nėra išsaugoto balso pašto numerio."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Pridėti numerį"</string>
</resources>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index e0f37aa..70d3566 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Jautāt katru reizi"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Neizmantot Wi-Fi zvanus"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Šim lietotājam nav atļauts veikt ārkārtas tālruņa zvanus."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Zvans nav nosūtīts; nav ievadīts derīgs numurs."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Trūkst balss pasta numura"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM kartē neviens balss pasta numurs nav saglabāts."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Pievienot numuru"</string>
</resources>
diff --git a/res/values-mk-rMK/strings.xml b/res/values-mk-rMK/strings.xml
index 52df23f..717266d 100644
--- a/res/values-mk-rMK/strings.xml
+++ b/res/values-mk-rMK/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Секогаш прашај"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Не користи повикување преку Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Корисникот нема дозвола да прави телефонски повици ако не е итно"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Повикот не се поврза, внесен е неважечки број."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Недостасува број на говорна пошта"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Нема мемориран број на говорна пошта на СИМ картичката."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Додај број"</string>
</resources>
diff --git a/res/values-ml-rIN/strings.xml b/res/values-ml-rIN/strings.xml
index 3e8d420..1f5a0dc 100644
--- a/res/values-ml-rIN/strings.xml
+++ b/res/values-ml-rIN/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"ഓരോ തവണയും ചോദിക്കുക"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi കോൾ ചെയ്യൽ ഉപയോഗിക്കരുത്"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"അത്യാവശ്യമല്ലാത്ത ഫോൺ കോളുകൾ ചെയ്യാൻ ഈ ഉപയോക്താവിനെ അനുവദിക്കുന്നില്ല"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"കോൾ ചെയ്യാനായില്ല, സാധുവായ നമ്പറൊന്നും നൽകിയിട്ടില്ല."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"വോയ്സ്മെയിൽ നമ്പർ കാണുന്നില്ല"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM കാർഡിൽ വോയ്സ്മെയിൽ നമ്പറൊന്നും സംഭരിച്ചിട്ടില്ല."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"നമ്പർ ചേർക്കുക"</string>
</resources>
diff --git a/res/values-mn-rMN/strings.xml b/res/values-mn-rMN/strings.xml
index 18fc55e..59a5130 100644
--- a/res/values-mn-rMN/strings.xml
+++ b/res/values-mn-rMN/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Тухай бүрт асуух"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi дуудлага бүү ашиглана уу"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Энэ хэрэглэгч нь яаралтай бус утасны дуудлага хийх эрхгүй"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Дуудлага илгээгдсэнгүй, зөв дугаар оруулаагүй байна."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Дуут шуудангийн дугаар байхгүй"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM карт дээр дуут шуудангийн дугаар хадгалагдаагүй байна."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Дугаар нэмэх"</string>
</resources>
diff --git a/res/values-mr-rIN/strings.xml b/res/values-mr-rIN/strings.xml
index c04c823..332a379 100644
--- a/res/values-mr-rIN/strings.xml
+++ b/res/values-mr-rIN/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"प्रत्येक वेळी विचारा"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi कॉल करणे वापरू नका"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"या वापरकर्त्यास आणीबाणी-नसलेले फोन कॉल करण्याची अनुमती नाही"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"कॉल पाठविला नाही, वैध नंबर प्रविेष्ट केला नाही."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"व्हॉइसमेल नंबर गहाळ"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"सिम कार्डवर कोणताही व्हॉइसमेल नंबर संचयित केला नाही."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"नंबर जोडा"</string>
</resources>
diff --git a/res/values-ms-rMY/strings.xml b/res/values-ms-rMY/strings.xml
index a3c49cc..eb24231 100644
--- a/res/values-ms-rMY/strings.xml
+++ b/res/values-ms-rMY/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Tanya setiap kali"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Jangan gunakan panggilan Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Pengguna ini tidak dibenarkan membuat panggilan telefon bukan kecemasan"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Panggilan tidak dihantar, tiada nombor yang sah dimasukkan."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Nombor mel suara tiada"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Tidak ada nombor mel suara disimpan pada kad SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Tambah nombor"</string>
</resources>
diff --git a/res/values-my-rMM/strings.xml b/res/values-my-rMM/strings.xml
index 3742912..61fe870 100644
--- a/res/values-my-rMM/strings.xml
+++ b/res/values-my-rMM/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"အကြိမ်တိုင်းမှာ မေးရန်"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"ကြိုးမဲ့ ခေါ်ဆိုမှုကို မသုံးပါနှင့်"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"ဒီအသုံးပြုသူအား အရေးပေါ် မဟုတ်သည့် ဖုန်း ခေါ်ဆိုမှုများ လုပ်ခွင့် မပြုပါ"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"ခေါ်ဆို မရခဲ့ပါ၊ ထည့်သွင်းခဲ့သည့် နံပါတ် မမှန်ပါ"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"အသံစာပို့စနစ် နံပါတ် ပျောက်နေပါသည်"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"ဆင်းမ်ကဒ်ပေါ်တွင် အသံစာပို့စနစ် နံပါတ် သိမ်းဆည်ထားခြင်း မရှိပါ"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"နံပါတ်ထပ်ထည့်ရန်"</string>
</resources>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 17e6c8f..40ac0b9 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Spør hver gang"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ikke bruk Wi-Fi-anrop"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Denne brukeren har bare tillatelse til å ringe nødnumre"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Kunne ikke ringe. Du har ikke angitt et gyldig nummer."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Mangler nummer til telefonsvarer"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Det er ikke lagret noe telefonsvarernummer på SIM-kortet."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Legg til nummer"</string>
</resources>
diff --git a/res/values-ne-rNP/strings.xml b/res/values-ne-rNP/strings.xml
index 0fe8775..7e0e52f 100644
--- a/res/values-ne-rNP/strings.xml
+++ b/res/values-ne-rNP/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"प्रत्येक चोटि सोध्नुहोस्"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"वाइफाइ कल प्रयोग नगर्नुहोस्"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"यो प्रयोगकर्तालाई गैर-आकस्मिक फोन कल गर्न अनुमति छैन"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"कल पठाइएन, सही नम्बर प्रविष्टि गरिएको छैन।"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"भ्वाइसमेल नम्बर हराइरहेको छ"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM कार्डमा कुनै पनि भ्वाइसमेल नम्बर भण्डारण भएको छैन।"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"नम्बर थप्नुहोस्"</string>
</resources>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index d1d579b..c189cd6 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Altijd vragen"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Bellen via wifi niet gebruiken"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Het is deze gebruiker niet toegestaan niet-noodoproepen te plaatsen"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Oproep niet verzonden, geen geldig nummer ingevoerd."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Voicemailnummer ontbreekt"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Er is geen voicemailnummer op de SIM-kaart opgeslagen."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Nummer toevoegen"</string>
</resources>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 6cacaca..325bdeb 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Zawsze pytaj"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Nie używaj połączeń Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Ten użytkownik nie ma uprawnień do połączeń innych niż alarmowe"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Połączenie niezrealizowane. Nie podano poprawnego numeru."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Brakuje numeru poczty głosowej"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Na karcie SIM nie ma zapisanego numeru poczty głosowej."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Dodaj numer"</string>
</resources>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index a2151ad..be1e1e2 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Perguntar sempre"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Não utilizar chamadas de Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Este utilizador não está autorizado a fazer chamadas telefónicas que não sejam de emergência"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"A chamada não foi efetuada. Não foi introduzido um número válido."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Número do correio de voz em falta"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Não existe um número de correio de voz armazenado no cartão SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Adicionar número"</string>
</resources>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 4f21e13..498f6e8 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Perguntar sempre"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Não usar chamadas por Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Este usuário não tem permissão para fazer chamadas não emergenciais pelo smartphone"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Chamada não enviada: nenhum número válido foi inserido."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Número correio de voz ausente"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Não há um número correio de voz armazenado no cartão SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Adicionar número"</string>
</resources>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 9b338ca..89e539a 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Întreabă de fiecare dată"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Nu utilizați apelurile Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Acest utilizator nu are permisiunea de a efectua apeluri telefonice către alte numere în afară de cele de urgență"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Apelul nu s-a trimis; niciun număr valid introdus."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Lipseşte numărul mesageriei vocale"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Niciun număr de mesagerie vocală nu este stocat pe cardul SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Adăugaţi numărul"</string>
</resources>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 8c7095d..1136ce9 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Всегда спрашивать"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Не использовать Wi-Fi для звонков"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Этот пользователь может звонить только в службы экстренной помощи"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Для вызова укажите действительный номер телефона."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Не указан номер голосовой почты"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"На SIM-карте нет ни одного номера голосовой почты."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Добавить номер"</string>
</resources>
diff --git a/res/values-si-rLK/strings.xml b/res/values-si-rLK/strings.xml
index 91f9f29..0336368 100644
--- a/res/values-si-rLK/strings.xml
+++ b/res/values-si-rLK/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"සෑම වේලාවේම අසන්න"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi ඇමතුම භාවිතා කරන්න එපා"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"හදිසි-නැති දුරකථන ඇමතුම් සිදුකිරීමට මෙම පරිශීලකයාට අවසර නොමැත"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"ඇමතුම නොයැවිණි, වලංගු අංකයක් ඇතුලත් කර නැත."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"හඬ තැපැල් අංකය නැත"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM කාඩ් පතෙහි හඬ තැපැල් අංකයක් ආචිත වී නැත."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"අංකයක් එක් කරන්න"</string>
</resources>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index a9eae5f..a898af6 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Vždy sa opýtať"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Nepoužívať volanie prostredníctvom siete Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Tento používateľ smie uskutočňovať iba tiesňové hovory."</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Hovor sa nepodarilo spojiť, nebolo zadané platné číslo."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Chýba číslo hlasovej schránky"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Na karte SIM nie je uložené žiadne číslo hlasovej schránky."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Pridať číslo"</string>
</resources>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 2456650..54991b7 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Vedno vprašaj"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ne uporabljaj klicanja prek povezave Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Temu uporabniku ni dovoljeno telefoniranje, razen klicev v sili"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Klic ni bil poslan, veljavna številka ni vnesena."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Manjkajoča številka glasovne pošte"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Na kartici SIM ni shranjena številka glasovne pošte."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Dodaj številko"</string>
</resources>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 873b85e..a43e987 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Питај сваки пут"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Не користи Wi-Fi позивање"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Овом кориснику није дозвољено да упућује телефонске позиве који нису хитни"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Позив није послат, није унет важећи број."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Недостаје број за говорну пошту"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Није ускладиштен ниједан број говорне поште на SIM картици."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Додај број"</string>
</resources>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 683411d..219bffd 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Fråga varje gång"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Använd inte Wi-Fi-samtal"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Denna användare har inte tillåtelse att ringa icke-akuta samtal"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Samtalet har inte skickats. Du måste ange ett giltigt nummer."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Nummer till röstbrevlåda saknas"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Det finns inget nummer till röstbrevlådan sparat på SIM-kortet."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Lägg till nummer"</string>
</resources>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 18b09cd..de4e530 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Uliza kila wakati"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Usitumie upigaji simu wa Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Mtumiaji huyu haruhusiwi kupiga simu zisizo za dharura"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Simu haijatumwa, hakuna nambari sahihi iliyowekwa."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Nambari ya sauti inayokosekana"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Hakuna nambari ya ujumbe wa sauti iliyohifadhiwa katika SIM kadi."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Ongeza nambari"</string>
</resources>
diff --git a/res/values-ta-rIN/strings.xml b/res/values-ta-rIN/strings.xml
index 5c50ffb..df9fbac 100644
--- a/res/values-ta-rIN/strings.xml
+++ b/res/values-ta-rIN/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"ஒவ்வொரு முறையும் கேள்"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"வைஃபை அழைப்பைப் பயன்படுத்தாதே"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"அவசரமற்ற ஃபோன் அழைப்புகளைச் செய்ய இவருக்கு அனுமதியில்லை"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"அழைக்க முடியவில்லை, சரியான எண் உள்ளிடப்படவில்லை."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"குரலஞ்சல் எண் இல்லை"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"சிம் கார்டில் குரலஞ்சலுக்கான எண் எதுவும் சேமிக்கப்படவில்லை."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"எண்ணைச் சேர்"</string>
</resources>
diff --git a/res/values-te-rIN/strings.xml b/res/values-te-rIN/strings.xml
index 627ed4a..bc1af17 100644
--- a/res/values-te-rIN/strings.xml
+++ b/res/values-te-rIN/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"ప్రతిసారి అడుగు"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi కాలింగ్ను ఉపయోగించవద్దు"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"ఈ వినియోగదారుకి అత్యవసరం కాని ఫోన్ కాల్లు చేయడానికి అనుమతి లేదు"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"కాల్ చేయలేరు, చెల్లుబాటు అయ్యే నంబర్ నమోదు చేయలేదు."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"వాయిస్ మెయిల్ నంబర్ లేదు"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM కార్డులో వాయిస్ మెయిల్ నంబర్ ఏదీ నిల్వ చేయబడలేదు."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"నంబర్ను జోడించు"</string>
</resources>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index a610398..968a955 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"ถามทุกครั้ง"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"ไม่ใช้การโทรผ่าน Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"ไม่อนุญาตให้ผู้ใช้รายนี้ดำเนินการโทรที่ไม่ฉุกเฉิน"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"ไม่ได้โทรออก ไม่ได้ป้อนหมายเลขที่ถูกต้อง"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"ไม่มีหมายเลขข้อความเสียง"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"ไม่มีหมายเลขข้อความเสียงจัดเก็บอยู่ในซิมการ์ด"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"เพิ่มหมายเลข"</string>
</resources>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index c90db8b..a61453b 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Magtanong palagi"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Huwag gumamit ng pagtawag sa pamamagitan ng Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Hindi pinapahintulutan ang user na ito na gumawa ng mga hindi pang-emergency na tawag sa telepono"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Hindi naipadala ang tawag, walang inilagay na wastong numero."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Nawawala ang numero ng voicemail"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Walang nakaimbak na numero ng voicemail sa SIM card."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Magdagdag ng numero"</string>
</resources>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 1d32d9b..6a4427d 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Her zaman sor"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Kablosuz çağrıyı kullanma"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Bu kullanıcının acil olmayan telefon çağrıları yapmasına izin verilmiyor"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Çağrı gönderilmedi, geçerli bir numara girilmedi."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Eksik sesli mesaj numarası"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM kartta depolanan sesli mesaj numarası yok."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Numara ekle"</string>
</resources>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index a027a9f..76e8f19 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Запитувати щоразу"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Не використовувати дзвінки через Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Цьому користувачу не дозволено здійснювати звичайні телефонні дзвінки"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Дзвінок не відбувся, введіть дійсний номер."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Відстун. номер голос. пошти"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"На SIM-карті немає збереж. номерів голос. пошти."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Додати номер"</string>
</resources>
diff --git a/res/values-ur-rPK/strings.xml b/res/values-ur-rPK/strings.xml
index 16b8bac..3d98a9c 100644
--- a/res/values-ur-rPK/strings.xml
+++ b/res/values-ur-rPK/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"ہر بار پوچھیں"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi کالنگ کا استعمال نہ کریں"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"اس صارف کو غیر ہنگامی فون کالیں کرنے کی اجازت نہیں ہے"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"کال نہیں بھیجی گئی، کوئی درست نمبر درج نہیں کیا گیا۔"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"صوتی میل نمبر درج نہیں ہے"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM کارڈ پر کوئی بھی صوتی میل نمبر اسٹور نہیں ہے۔"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"نمبر شامل کریں"</string>
</resources>
diff --git a/res/values-uz-rUZ/strings.xml b/res/values-uz-rUZ/strings.xml
index 6d259b3..876a783 100644
--- a/res/values-uz-rUZ/strings.xml
+++ b/res/values-uz-rUZ/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Har safar so‘ralsin"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Wi-Fi qo‘ng‘iroqlardan foydalanilmasin"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Ushbu foydalanuvchiga favqulodda qo‘ng‘iroqlardan boshqa telefon qo‘ng‘iroqlarini amalga oshirish uchun ruxsat berilmagan"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Qo‘ng‘iroq amalga oshmadi, chunki raqam noto‘g‘ri kiritildi"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Javobsiz ovozli xabar raqami"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM kartada birorta ham ovozli xabar saqlanmagan."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Raqam qo‘shish"</string>
</resources>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index d53148e..ea5aa9e 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Luôn hỏi"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Không sử dụng tính năng gọi qua Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Người dùng này không được phép thực hiện cuộc gọi điện thoại không khẩn cấp"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Không gọi được, bạn đã nhập số không hợp lệ."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Thiếu số thư thoại"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Không có số thư thoại nào được lưu trữ trên thẻ SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Thêm số điện thoại"</string>
</resources>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 4a5ad27..bcfa47b 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"每次都询问"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"不使用WLAN通话功能"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"此用户无权拨打非紧急呼救电话"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"拨号失败,因为输入的号码无效。"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"缺少语音信箱号码"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM卡上未存储语音信箱号码。"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"添加号码"</string>
</resources>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 26516e4..2b1ed21 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"每次都詢問"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"不要使用 Wi-Fi 通話功能"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"這位使用者只可撥打緊急電話"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"無法傳送,輸入的號碼無效。"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"未填留言信箱號碼"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM 卡中沒有儲存任何留言信箱號碼。"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"新增電話號碼"</string>
</resources>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 33dd66f..bd1299e 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"每次都詢問"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"不使用 Wi-Fi 通話功能"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"這位使用者只能撥打緊急電話"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"輸入的號碼無效,無法撥出。"</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"遺失語音信箱號碼"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"SIM 卡中未儲存語音信箱號碼。"</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"新增號碼"</string>
</resources>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 087e92c..e6f7ad6 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -42,4 +42,8 @@
<string name="account_ask_every_time" msgid="944077828070287407">"Buza ngaso sonke isikhathi"</string>
<string name="do_not_use_sim_call_manager" msgid="5519252524007323694">"Ungasebenzisi ukushaya nge-Wi-Fi"</string>
<string name="outgoing_call_not_allowed" msgid="1434784869685645427">"Lo msebenzisi akavunyelwe ukwenza amakholi wefoni okungewona wesimo esiphuthumayo"</string>
+ <string name="outgoing_call_error_no_phone_number_supplied" msgid="4987143284589568716">"Ikholi ayithunyelwe, ayikho inombolo evumelekile efakiwe."</string>
+ <string name="no_vm_number" msgid="4164780423805688336">"Inombolo engekho yomyalezo wezwi"</string>
+ <string name="no_vm_number_msg" msgid="1300729501030053828">"Ayikho inombolo yomlayezo wezwi egcinwe ekhadini le-SIM."</string>
+ <string name="add_vm_number_str" msgid="4676479471644687453">"Engeza inombolo"</string>
</resources>
diff --git a/src/com/android/telecomm/Call.java b/src/com/android/telecomm/Call.java
index dc3fa07..b8e2e19 100644
--- a/src/com/android/telecomm/Call.java
+++ b/src/com/android/telecomm/Call.java
@@ -17,11 +17,13 @@
package com.android.telecomm;
import android.app.PendingIntent;
+import android.content.ContentUris;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
+import android.provider.ContactsContract.Contacts;
import android.telecomm.Connection;
import android.telecomm.PhoneCapabilities;
import android.telecomm.PropertyPresentation;
@@ -43,6 +45,7 @@
import com.android.internal.telephony.CallerInfoAsyncQuery.OnQueryCompleteListener;
import com.android.internal.telephony.SmsApplication;
import com.android.telecomm.ContactsAsyncHelper.OnImageLoadCompleteListener;
+
import com.google.common.base.Preconditions;
import java.util.ArrayList;
@@ -81,7 +84,6 @@
void onHandleChanged(Call call);
void onCallerDisplayNameChanged(Call call);
void onVideoStateChanged(Call call);
- void onStartActivityFromInCall(Call call, PendingIntent intent);
void onTargetPhoneAccountChanged(Call call);
void onConnectionManagerPhoneAccountChanged(Call call);
void onPhoneAccountChanged(Call call);
@@ -124,8 +126,6 @@
@Override
public void onVideoStateChanged(Call call) {}
@Override
- public void onStartActivityFromInCall(Call call, PendingIntent intent) {}
- @Override
public void onTargetPhoneAccountChanged(Call call) {}
@Override
public void onConnectionManagerPhoneAccountChanged(Call call) {}
@@ -331,8 +331,8 @@
component = mConnectionService.getComponentName().flattenToShortString();
}
- return String.format(Locale.US, "[%s, %s, %s, %d]", mState, component,
- Log.piiHandle(mHandle), getVideoState());
+ return String.format(Locale.US, "[%s, %s, %s, %s, %d]", System.identityHashCode(this),
+ mState, component, Log.piiHandle(mHandle), getVideoState());
}
int getState() {
@@ -813,6 +813,16 @@
mExtras = extras;
}
+ /**
+ * @return the uri of the contact associated with this call.
+ */
+ Uri getContactUri() {
+ if (mCallerInfo == null || !mCallerInfo.contactExists) {
+ return null;
+ }
+ return Contacts.getLookupUri(mCallerInfo.contactIdOrZero, mCallerInfo.lookupKey);
+ }
+
Uri getRingtone() {
return mCallerInfo == null ? null : mCallerInfo.contactRingtoneUri;
}
@@ -1182,16 +1192,6 @@
}
}
- public void startActivityFromInCall(PendingIntent intent) {
- if (intent.isActivity()) {
- for (Listener l : mListeners) {
- l.onStartActivityFromInCall(this, intent);
- }
- } else {
- Log.w(this, "startActivityFromInCall, activity intent required");
- }
- }
-
static int getStateFromConnectionState(int state) {
switch (state) {
case Connection.STATE_INITIALIZING:
diff --git a/src/com/android/telecomm/CallActivity.java b/src/com/android/telecomm/CallActivity.java
index 0d36c8a..6d3b98f 100644
--- a/src/com/android/telecomm/CallActivity.java
+++ b/src/com/android/telecomm/CallActivity.java
@@ -149,15 +149,19 @@
// Send to CallsManager to ensure the InCallUI gets kicked off before the broadcast returns
Call call = mCallsManager.startOutgoingCall(handle, phoneAccountHandle, clientExtras);
- NewOutgoingCallIntentBroadcaster broadcaster = new NewOutgoingCallIntentBroadcaster(
- mCallsManager, call, intent, isDefaultDialer());
- final int result = broadcaster.processIntent();
- final boolean success = result == DisconnectCause.NOT_DISCONNECTED;
+ if (call == null) {
+ setResult(RESULT_CANCELED);
+ } else {
+ NewOutgoingCallIntentBroadcaster broadcaster = new NewOutgoingCallIntentBroadcaster(
+ mCallsManager, call, intent, isDefaultDialer());
+ final int result = broadcaster.processIntent();
+ final boolean success = result == DisconnectCause.NOT_DISCONNECTED;
- if (!success && call != null) {
- disconnectCallAndShowErrorDialog(call, result);
+ if (!success && call != null) {
+ disconnectCallAndShowErrorDialog(call, result);
+ }
+ setResult(success ? RESULT_OK : RESULT_CANCELED);
}
- setResult(success ? RESULT_OK : RESULT_CANCELED);
}
/**
diff --git a/src/com/android/telecomm/CallsManager.java b/src/com/android/telecomm/CallsManager.java
index 40e97f4..116cf95 100644
--- a/src/com/android/telecomm/CallsManager.java
+++ b/src/com/android/telecomm/CallsManager.java
@@ -284,7 +284,8 @@
Call startOutgoingCall(Uri handle, PhoneAccountHandle phoneAccountHandle, Bundle extras) {
// We only allow a single outgoing call at any given time. Before placing a call, make sure
// there doesn't already exist another outgoing call.
- Call call = getFirstCallWithState(CallState.NEW, CallState.DIALING);
+ Call call = getFirstCallWithState(CallState.NEW, CallState.DIALING,
+ CallState.CONNECTING, CallState.PRE_DIAL_WAIT);
if (call != null) {
Log.i(this, "Canceling simultaneous outgoing call.");
@@ -304,9 +305,11 @@
}
if (phoneAccountHandle == null) {
- // No preset account, check if default exists
+ // No preset account, check if default exists that supports the URI scheme for the
+ // handle.
PhoneAccountHandle defaultAccountHandle =
- app.getPhoneAccountRegistrar().getDefaultOutgoingPhoneAccount();
+ app.getPhoneAccountRegistrar().getDefaultOutgoingPhoneAccount(
+ handle.getScheme());
if (defaultAccountHandle != null) {
phoneAccountHandle = defaultAccountHandle;
}
diff --git a/src/com/android/telecomm/ConnectionServiceWrapper.java b/src/com/android/telecomm/ConnectionServiceWrapper.java
index 5fcb9bd..787fbd0 100644
--- a/src/com/android/telecomm/ConnectionServiceWrapper.java
+++ b/src/com/android/telecomm/ConnectionServiceWrapper.java
@@ -35,6 +35,7 @@
import android.telecomm.PhoneAccount;
import android.telecomm.PhoneAccountHandle;
import android.telecomm.StatusHints;
+import android.telecomm.VideoProfile;
import android.telephony.DisconnectCause;
import com.android.internal.os.SomeArgs;
@@ -79,7 +80,6 @@
private static final int MSG_SET_CALLER_DISPLAY_NAME = 18;
private static final int MSG_SET_VIDEO_STATE = 19;
private static final int MSG_SET_CONFERENCEABLE_CONNECTIONS = 20;
- private static final int MSG_START_ACTIVITY_FROM_IN_CALL = 21;
private final Handler mHandler = new Handler() {
@Override
@@ -337,18 +337,6 @@
}
break;
}
- case MSG_START_ACTIVITY_FROM_IN_CALL: {
- SomeArgs args = (SomeArgs) msg.obj;
- try {
- call = mCallIdMapper.getCall(args.arg1);
- if (call != null) {
- call.startActivityFromInCall((PendingIntent) args.arg2);
- }
- } finally {
- args.recycle();
- }
- break;
- }
}
}
};
@@ -558,17 +546,6 @@
mHandler.obtainMessage(MSG_SET_CONFERENCEABLE_CONNECTIONS, args).sendToTarget();
}
}
-
- @Override
- public void startActivityFromInCall(String callId, PendingIntent intent) {
- logIncoming("startActivityFromInCall %s %s", callId, intent);
- if (mCallIdMapper.isValidCallId(callId)) {
- SomeArgs args = SomeArgs.obtain();
- args.arg1 = callId;
- args.arg2 = intent;
- mHandler.obtainMessage(MSG_START_ACTIVITY_FROM_IN_CALL, args).sendToTarget();
- }
- }
}
private final Adapter mAdapter = new Adapter();
@@ -740,7 +717,11 @@
if (callId != null && isServiceValid("answer")) {
try {
logOutgoing("answer %s %d", callId, videoState);
- mServiceInterface.answer(callId, videoState);
+ if (videoState == VideoProfile.VideoState.AUDIO_ONLY) {
+ mServiceInterface.answer(callId);
+ } else {
+ mServiceInterface.answerVideo(callId, videoState);
+ }
} catch (RemoteException e) {
}
}
diff --git a/src/com/android/telecomm/CreateConnectionProcessor.java b/src/com/android/telecomm/CreateConnectionProcessor.java
index cc2e8c0..fcf94cc 100644
--- a/src/com/android/telecomm/CreateConnectionProcessor.java
+++ b/src/com/android/telecomm/CreateConnectionProcessor.java
@@ -254,7 +254,7 @@
.getPhoneAccountRegistrar().getSimCallManager();
CallAttemptRecord callAttemptRecord = new CallAttemptRecord(callManager,
TelecommApp.getInstance().getPhoneAccountRegistrar().
- getDefaultOutgoingPhoneAccount());
+ getDefaultOutgoingPhoneAccount(mCall.getHandle().getScheme()));
if (callManager != null && !mAttemptRecords.contains(callAttemptRecord)) {
Log.i(this, "Will try Connection Manager account %s for emergency",
diff --git a/src/com/android/telecomm/InCallController.java b/src/com/android/telecomm/InCallController.java
index 21581f5..f132934 100644
--- a/src/com/android/telecomm/InCallController.java
+++ b/src/com/android/telecomm/InCallController.java
@@ -61,11 +61,13 @@
private class InCallServiceConnection implements ServiceConnection {
/** {@inheritDoc} */
@Override public void onServiceConnected(ComponentName name, IBinder service) {
+ Log.d(this, "onServiceConnected: %s", name);
onConnected(name, service);
}
/** {@inheritDoc} */
@Override public void onServiceDisconnected(ComponentName name) {
+ Log.d(this, "onDisconnected: %s", name);
onDisconnected(name);
}
}
@@ -107,19 +109,6 @@
}
@Override
- public void onStartActivityFromInCall(Call call, PendingIntent intent) {
- if (!mInCallServices.isEmpty()) {
- Log.i(this, "Calling startActivity, intent: %s", intent);
- for (IInCallService inCallService : mInCallServices.values()) {
- try {
- inCallService.startActivity(mCallIdMapper.getCallId(call), intent);
- } catch (RemoteException ignored) {
- }
- }
- }
- }
-
- @Override
public void onTargetPhoneAccountChanged(Call call) {
updateCall(call);
}
@@ -161,7 +150,7 @@
if (mInCallServices.isEmpty()) {
bind();
} else {
- Log.i(this, "Adding call: %s", call);
+ Log.i(this, "onCallAdded: %s", call);
// Track the call if we don't already know about it.
addCall(call);
@@ -181,6 +170,7 @@
@Override
public void onCallRemoved(Call call) {
+ Log.i(this, "onCallRemoved: %s", call);
if (CallsManager.getInstance().getCalls().isEmpty()) {
// TODO: Wait for all messages to be delivered to the service before unbinding.
unbind();
@@ -322,6 +312,8 @@
private void onConnected(ComponentName componentName, IBinder service) {
ThreadUtil.checkOnMainThread();
+ Log.i(this, "onConnected to %s", componentName);
+
IInCallService inCallService = IInCallService.Stub.asInterface(service);
try {
@@ -336,9 +328,12 @@
// Upon successful connection, send the state of the world to the service.
ImmutableCollection<Call> calls = CallsManager.getInstance().getCalls();
if (!calls.isEmpty()) {
+ Log.i(this, "Adding %s calls to InCallService after onConnected: %s", calls.size(),
+ componentName);
for (Call call : calls) {
try {
// Track the call if we don't already know about it.
+ Log.i(this, "addCall after binding: %s", call);
addCall(call);
inCallService.addCall(toParcelableCall(call,
@@ -358,6 +353,7 @@
* @param disconnectedComponent The {@link ComponentName} of the service which disconnected.
*/
private void onDisconnected(ComponentName disconnectedComponent) {
+ Log.i(this, "onDisconnected from %s", disconnectedComponent);
ThreadUtil.checkOnMainThread();
if (mInCallServices.containsKey(disconnectedComponent)) {
mInCallServices.remove(disconnectedComponent);
diff --git a/src/com/android/telecomm/MissedCallNotifier.java b/src/com/android/telecomm/MissedCallNotifier.java
index eede65c..c3f162a 100644
--- a/src/com/android/telecomm/MissedCallNotifier.java
+++ b/src/com/android/telecomm/MissedCallNotifier.java
@@ -270,36 +270,42 @@
AsyncQueryHandler queryHandler = new AsyncQueryHandler(mContext.getContentResolver()) {
@Override
protected void onQueryComplete(int token, Object cookie, Cursor cursor) {
+ Log.d(MissedCallNotifier.this, "onQueryComplete()...");
if (cursor != null) {
- while (cursor.moveToNext()) {
- // Get data about the missed call from the cursor
- Uri handle = Uri.parse(cursor.getString(
- cursor.getColumnIndexOrThrow(Calls.NUMBER)));
- int presentation = cursor.getInt(cursor.getColumnIndexOrThrow(
- Calls.NUMBER_PRESENTATION));
+ try {
+ while (cursor.moveToNext()) {
+ // Get data about the missed call from the cursor
+ Uri handle = Uri.parse(cursor.getString(
+ cursor.getColumnIndexOrThrow(Calls.NUMBER)));
+ int presentation = cursor.getInt(cursor.getColumnIndexOrThrow(
+ Calls.NUMBER_PRESENTATION));
- if (presentation != Calls.PRESENTATION_ALLOWED) {
- handle = null;
- }
-
- // Convert the data to a call object
- Call call = new Call(null, null, null, null, null, true, false);
- call.setDisconnectCause(DisconnectCause.INCOMING_MISSED, "");
- call.setState(CallState.DISCONNECTED);
-
- // Listen for the update to the caller information before posting the
- // notification so that we have the contact info and photo.
- call.addListener(new Call.ListenerBase() {
- @Override
- public void onCallerInfoChanged(Call call) {
- call.removeListener(this); // No longer need to listen to call
- // changes after the contact info
- // is retrieved.
- showMissedCallNotification(call);
+ if (presentation != Calls.PRESENTATION_ALLOWED) {
+ handle = null;
}
- });
- // Set the handle here because that is what triggers the contact info query.
- call.setHandle(handle, presentation);
+
+ // Convert the data to a call object
+ Call call = new Call(null, null, null, null, null, true, false);
+ call.setDisconnectCause(DisconnectCause.INCOMING_MISSED, "");
+ call.setState(CallState.DISCONNECTED);
+
+ // Listen for the update to the caller information before posting the
+ // notification so that we have the contact info and photo.
+ call.addListener(new Call.ListenerBase() {
+ @Override
+ public void onCallerInfoChanged(Call call) {
+ call.removeListener(this); // No longer need to listen to call
+ // changes after the contact info
+ // is retrieved.
+ showMissedCallNotification(call);
+ }
+ });
+ // Set the handle here because that is what triggers the contact info
+ // query.
+ call.setHandle(handle, presentation);
+ }
+ } finally {
+ cursor.close();
}
}
}
diff --git a/src/com/android/telecomm/PhoneAccountRegistrar.java b/src/com/android/telecomm/PhoneAccountRegistrar.java
index f7cce27..f7652d7 100644
--- a/src/com/android/telecomm/PhoneAccountRegistrar.java
+++ b/src/com/android/telecomm/PhoneAccountRegistrar.java
@@ -21,6 +21,7 @@
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.pm.ServiceInfo;
+import android.provider.Settings;
import android.telecomm.ConnectionService;
import android.telecomm.PhoneAccount;
import android.telecomm.PhoneAccountHandle;
@@ -47,6 +48,7 @@
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.lang.Integer;
import java.lang.SecurityException;
import java.lang.String;
import java.util.ArrayList;
@@ -75,6 +77,11 @@
}
private static final String FILE_NAME = "phone-account-registrar-state.xml";
+ @VisibleForTesting
+ public static final int EXPECTED_STATE_VERSION = 2;
+
+ /** Keep in sync with the same in SipSettings.java */
+ private static final String SIP_SHARED_PREFERENCES = "SIP_PREFERENCES";
private final List<Listener> mListeners = new CopyOnWriteArrayList<>();
private final AtomicFile mAtomicFile;
@@ -94,13 +101,24 @@
read();
}
- public PhoneAccountHandle getDefaultOutgoingPhoneAccount() {
+ /**
+ * Retrieves the default outgoing phone account supporting the specified uriScheme.
+ * @param uriScheme The URI scheme for the outgoing call.
+ * @return The {@link PhoneAccountHandle} to use.
+ */
+ public PhoneAccountHandle getDefaultOutgoingPhoneAccount(String uriScheme) {
final PhoneAccountHandle userSelected = getUserSelectedOutgoingPhoneAccount();
+
if (userSelected != null) {
- return userSelected;
+ // If there is a default PhoneAccount, ensure it supports calls to handles with the
+ // specified uriScheme.
+ final PhoneAccount userSelectedAccount = getPhoneAccount(userSelected);
+ if (userSelectedAccount.supportsUriScheme(uriScheme)) {
+ return userSelected;
+ }
}
- List<PhoneAccountHandle> outgoing = getOutgoingPhoneAccounts();
+ List<PhoneAccountHandle> outgoing = getOutgoingPhoneAccounts(uriScheme);
switch (outgoing.size()) {
case 0:
// There are no accounts, so there can be no default
@@ -249,6 +267,10 @@
return getPhoneAccountHandles(PhoneAccount.CAPABILITY_CALL_PROVIDER);
}
+ public List<PhoneAccountHandle> getOutgoingPhoneAccounts(String uriScheme) {
+ return getPhoneAccountHandles(PhoneAccount.CAPABILITY_CALL_PROVIDER, uriScheme);
+ }
+
public List<PhoneAccountHandle> getAllConnectionManagerPhoneAccounts() {
if (isEnabledConnectionManager()) {
return getPhoneAccountHandles(PhoneAccount.CAPABILITY_CONNECTION_MANAGER);
@@ -392,11 +414,25 @@
/**
* Returns a list of phone account handles with the specified flag.
+ *
+ * @param flags Flags which the {@code PhoneAccount} must have.
*/
private List<PhoneAccountHandle> getPhoneAccountHandles(int flags) {
+ return getPhoneAccountHandles(flags, null);
+ }
+
+ /**
+ * Returns a list of phone account handles with the specified flag, supporting the specified
+ * URI scheme.
+ *
+ * @param flags Flags which the {@code PhoneAccount} must have.
+ * @param uriScheme URI schemes the PhoneAccount must handle. {@code Null} bypasses the
+ * URI scheme check.
+ */
+ private List<PhoneAccountHandle> getPhoneAccountHandles(int flags, String uriScheme) {
List<PhoneAccountHandle> accountHandles = new ArrayList<>();
for (PhoneAccount m : mState.accounts) {
- if (has(m, flags)) {
+ if (has(m, flags) && (uriScheme == null || m.supportsUriScheme(uriScheme))) {
accountHandles.add(m.getAccountHandle());
}
}
@@ -424,6 +460,11 @@
* The complete list of {@code PhoneAccount}s known to the Telecomm subsystem.
*/
public final List<PhoneAccount> accounts = new ArrayList<>();
+
+ /**
+ * The version number of the State data.
+ */
+ public int versionNumber;
}
////////////////////////////////////////////////////////////////////////////////////////////////
@@ -462,12 +503,16 @@
return;
}
+ boolean versionChanged = false;
+
XmlPullParser parser;
try {
parser = Xml.newPullParser();
parser.setInput(new BufferedInputStream(is), null);
parser.nextTag();
- mState = readFromXml(parser);
+ mState = readFromXml(parser, mContext);
+ versionChanged = mState.versionNumber < EXPECTED_STATE_VERSION;
+
} catch (IOException | XmlPullParserException e) {
Log.e(this, e, "Reading state from XML file");
mState = new State();
@@ -478,6 +523,11 @@
Log.e(this, e, "Closing InputStream");
}
}
+
+ // If an upgrade occurred, write out the changed data.
+ if (versionChanged) {
+ write();
+ }
}
private static void writeToXml(State state, XmlSerializer serializer)
@@ -485,9 +535,9 @@
sStateXml.writeToXml(state, serializer);
}
- private static State readFromXml(XmlPullParser parser)
+ private static State readFromXml(XmlPullParser parser, Context context)
throws IOException, XmlPullParserException {
- State s = sStateXml.readFromXml(parser);
+ State s = sStateXml.readFromXml(parser, 0, context);
return s != null ? s : new State();
}
@@ -498,6 +548,9 @@
@VisibleForTesting
public abstract static class XmlSerialization<T> {
+ private static final String LENGTH_ATTRIBUTE = "length";
+ private static final String VALUE_TAG = "value";
+
/**
* Write the supplied object to XML
*/
@@ -511,7 +564,7 @@
* object's writeToXml(). This object tries to fail early without modifying
* 'parser' if it does not recognize the data it sees.
*/
- public abstract T readFromXml(XmlPullParser parser)
+ public abstract T readFromXml(XmlPullParser parser, int version, Context context)
throws IOException, XmlPullParserException;
protected void writeTextSafely(String tagName, Object value, XmlSerializer serializer)
@@ -522,6 +575,66 @@
serializer.endTag(null, tagName);
}
}
+
+ /**
+ * Serializes a string array.
+ *
+ * @param tagName The tag name for the string array.
+ * @param values The string values to serialize.
+ * @param serializer The serializer.
+ * @throws IOException
+ */
+ protected void writeStringList(String tagName, List<String> values,
+ XmlSerializer serializer)
+ throws IOException {
+
+ serializer.startTag(null, tagName);
+ if (values != null) {
+ serializer.attribute(null, LENGTH_ATTRIBUTE, Objects.toString(values.size()));
+ for (String toSerialize : values) {
+ serializer.startTag(null, VALUE_TAG);
+ if (toSerialize != null ){
+ serializer.text(toSerialize);
+ }
+
+ serializer.endTag(null, VALUE_TAG);
+ }
+ } else {
+ serializer.attribute(null, LENGTH_ATTRIBUTE, "0");
+ }
+ serializer.endTag(null, tagName);
+
+ }
+
+ /**
+ * Reads a string array from the XML parser.
+ *
+ * @param parser The XML parser.
+ * @return String array containing the parsed values.
+ * @throws IOException Exception related to IO.
+ * @throws XmlPullParserException Exception related to parsing.
+ */
+ protected List<String> readStringList(XmlPullParser parser)
+ throws IOException, XmlPullParserException {
+
+ int length = Integer.parseInt(parser.getAttributeValue(null, LENGTH_ATTRIBUTE));
+ List<String> arrayEntries = new ArrayList<String>(length);
+ String value = null;
+
+ if (length == 0) {
+ return arrayEntries;
+ }
+
+ int outerDepth = parser.getDepth();
+ while (XmlUtils.nextElementWithin(parser, outerDepth)) {
+ if (parser.getName().equals(VALUE_TAG)) {
+ value = parser.getText();
+ arrayEntries.add(value);
+ }
+ }
+
+ return arrayEntries;
+ }
}
@VisibleForTesting
@@ -531,12 +644,14 @@
private static final String DEFAULT_OUTGOING = "default_outgoing";
private static final String SIM_CALL_MANAGER = "sim_call_manager";
private static final String ACCOUNTS = "accounts";
+ private static final String VERSION = "version";
@Override
public void writeToXml(State o, XmlSerializer serializer)
throws IOException {
if (o != null) {
serializer.startTag(null, CLASS_STATE);
+ serializer.attribute(null, VERSION, Objects.toString(EXPECTED_STATE_VERSION));
if (o.defaultOutgoing != null) {
serializer.startTag(null, DEFAULT_OUTGOING);
@@ -561,23 +676,32 @@
}
@Override
- public State readFromXml(XmlPullParser parser)
+ public State readFromXml(XmlPullParser parser, int version, Context context)
throws IOException, XmlPullParserException {
if (parser.getName().equals(CLASS_STATE)) {
State s = new State();
+
+ String rawVersion = parser.getAttributeValue(null, VERSION);
+ s.versionNumber = TextUtils.isEmpty(rawVersion) ? 1 :
+ Integer.parseInt(rawVersion);
+
int outerDepth = parser.getDepth();
while (XmlUtils.nextElementWithin(parser, outerDepth)) {
if (parser.getName().equals(DEFAULT_OUTGOING)) {
parser.nextTag();
- s.defaultOutgoing = sPhoneAccountHandleXml.readFromXml(parser);
+ s.defaultOutgoing = sPhoneAccountHandleXml.readFromXml(parser,
+ s.versionNumber, context);
} else if (parser.getName().equals(SIM_CALL_MANAGER)) {
parser.nextTag();
- s.simCallManager = sPhoneAccountHandleXml.readFromXml(parser);
+ s.simCallManager = sPhoneAccountHandleXml.readFromXml(parser,
+ s.versionNumber, context);
} else if (parser.getName().equals(ACCOUNTS)) {
int accountsDepth = parser.getDepth();
while (XmlUtils.nextElementWithin(parser, accountsDepth)) {
- PhoneAccount account = sPhoneAccountXml.readFromXml(parser);
- if (account != null) {
+ PhoneAccount account = sPhoneAccountXml.readFromXml(parser,
+ s.versionNumber, context);
+
+ if (account != null && s.accounts != null) {
s.accounts.add(account);
}
}
@@ -600,6 +724,7 @@
private static final String ICON_RES_ID = "icon_res_id";
private static final String LABEL = "label";
private static final String SHORT_DESCRIPTION = "short_description";
+ private static final String SUPPORTED_URI_SCHEMES = "supported_uri_schemes";
@Override
public void writeToXml(PhoneAccount o, XmlSerializer serializer)
@@ -619,13 +744,13 @@
writeTextSafely(ICON_RES_ID, Integer.toString(o.getIconResId()), serializer);
writeTextSafely(LABEL, o.getLabel(), serializer);
writeTextSafely(SHORT_DESCRIPTION, o.getShortDescription(), serializer);
+ writeStringList(SUPPORTED_URI_SCHEMES, o.getSupportedUriSchemes(), serializer);
serializer.endTag(null, CLASS_PHONE_ACCOUNT);
}
}
- @Override
- public PhoneAccount readFromXml(XmlPullParser parser)
+ public PhoneAccount readFromXml(XmlPullParser parser, int version, Context context)
throws IOException, XmlPullParserException {
if (parser.getName().equals(CLASS_PHONE_ACCOUNT)) {
int outerDepth = parser.getDepth();
@@ -636,11 +761,13 @@
int iconResId = 0;
String label = null;
String shortDescription = null;
+ List<String> supportedUriSchemes = null;
while (XmlUtils.nextElementWithin(parser, outerDepth)) {
if (parser.getName().equals(ACCOUNT_HANDLE)) {
parser.nextTag();
- accountHandle = sPhoneAccountHandleXml.readFromXml(parser);
+ accountHandle = sPhoneAccountHandleXml.readFromXml(parser, version,
+ context);
} else if (parser.getName().equals(HANDLE)) {
parser.next();
handle = Uri.parse(parser.getText());
@@ -659,8 +786,32 @@
} else if (parser.getName().equals(SHORT_DESCRIPTION)) {
parser.next();
shortDescription = parser.getText();
+ } else if (parser.getName().equals(SUPPORTED_URI_SCHEMES)) {
+ supportedUriSchemes = readStringList(parser);
}
}
+
+ // Upgrade older phone accounts to specify the supported URI schemes.
+ if (version < 2) {
+ ComponentName sipComponentName = new ComponentName("com.android.phone",
+ "com.android.services.telephony.sip.SipConnectionService");
+
+ supportedUriSchemes = new ArrayList<>();
+
+ // Handle the SIP connection service.
+ // Check the system settings to see if it also should handle "tel" calls.
+ if (accountHandle.getComponentName().equals(sipComponentName)) {
+ boolean useSipForPstn = useSipForPstnCalls(context);
+ supportedUriSchemes.add(PhoneAccount.SCHEME_SIP);
+ if (useSipForPstn) {
+ supportedUriSchemes.add(PhoneAccount.SCHEME_TEL);
+ }
+ } else {
+ supportedUriSchemes.add(PhoneAccount.SCHEME_TEL);
+ supportedUriSchemes.add(PhoneAccount.SCHEME_VOICEMAIL);
+ }
+ }
+
return PhoneAccount.builder()
.withAccountHandle(accountHandle)
.withHandle(handle)
@@ -669,10 +820,24 @@
.withIconResId(iconResId)
.withLabel(label)
.withShortDescription(shortDescription)
+ .withSupportedUriSchemes(supportedUriSchemes)
.build();
}
return null;
}
+
+ /**
+ * Determines if the SIP call settings specify to use SIP for all calls, including PSTN calls.
+ *
+ * @param context The context.
+ * @return {@code True} if SIP should be used for all calls.
+ */
+ private boolean useSipForPstnCalls(Context context) {
+ String option = Settings.System.getString(context.getContentResolver(),
+ Settings.System.SIP_CALL_OPTIONS);
+ option = (option != null) ? option : Settings.System.SIP_ADDRESS_ONLY;
+ return option.equals(Settings.System.SIP_ALWAYS);
+ }
};
@VisibleForTesting
@@ -700,7 +865,7 @@
}
@Override
- public PhoneAccountHandle readFromXml(XmlPullParser parser)
+ public PhoneAccountHandle readFromXml(XmlPullParser parser, int version, Context context)
throws IOException, XmlPullParserException {
if (parser.getName().equals(CLASS_PHONE_ACCOUNT_HANDLE)) {
String componentNameString = null;
diff --git a/src/com/android/telecomm/ProximitySensorManager.java b/src/com/android/telecomm/ProximitySensorManager.java
index 287c6d4..7b8773d 100644
--- a/src/com/android/telecomm/ProximitySensorManager.java
+++ b/src/com/android/telecomm/ProximitySensorManager.java
@@ -52,6 +52,11 @@
* Turn the proximity sensor on.
*/
void turnOn() {
+ if (CallsManager.getInstance().getCalls().isEmpty()) {
+ Log.w(this, "Asking to turn on prox sensor without a call? I don't think so.");
+ return;
+ }
+
if (mProximityWakeLock == null) {
return;
}
diff --git a/src/com/android/telecomm/QuickResponseUtils.java b/src/com/android/telecomm/QuickResponseUtils.java
new file mode 100644
index 0000000..ead9105
--- /dev/null
+++ b/src/com/android/telecomm/QuickResponseUtils.java
@@ -0,0 +1,116 @@
+/*
+ * 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.telecomm;
+
+import android.content.Context;
+import android.content.SharedPreferences;
+import android.content.pm.PackageManager;
+import android.content.res.Resources;
+
+
+/**
+ * Utils class that exposes some helper routines to used to manage the QuickResponses
+ */
+public class QuickResponseUtils {
+ public static final String LOG_TAG = "QuickResponseUtils";
+
+ // SharedPreferences file name for our persistent settings.
+ public static final String SHARED_PREFERENCES_NAME = "respond_via_sms_prefs";
+ private static final String PACKAGE_NAME_TELEPHONY = "com.android.phone";
+
+ // Preference keys for the 4 "canned responses"; see RespondViaSmsManager$Settings.
+ // Since (for now at least) the number of messages is fixed at 4, and since
+ // SharedPreferences can't deal with arrays anyway, just store the messages
+ // as 4 separate strings.
+ public static final int NUM_CANNED_RESPONSES = 4;
+ public static final String KEY_CANNED_RESPONSE_PREF_1 = "canned_response_pref_1";
+ public static final String KEY_CANNED_RESPONSE_PREF_2 = "canned_response_pref_2";
+ public static final String KEY_CANNED_RESPONSE_PREF_3 = "canned_response_pref_3";
+ public static final String KEY_CANNED_RESPONSE_PREF_4 = "canned_response_pref_4";
+
+ /**
+ * As of L, QuickResponses were moved from Telephony to Telecomm. Because of
+ * this, we need to make sure that we migrate any old QuickResponses to our
+ * current SharedPreferences. This is a lazy migration as it happens only when
+ * the QuickResponse settings are viewed or if they are queried via RespondViaSmsManager.
+ */
+ public static void maybeMigrateLegacyQuickResponses() {
+ // The algorithm will go as such:
+ // If Telecomm QuickResponses exist, we will skip migration because this implies
+ // that a user has already specified their desired QuickResponses and have abandoned any
+ // older QuickResponses.
+ // Then, if Telephony QuickResponses exist, we will move those to Telecomm.
+ // If neither exist, we'll populate Telecomm with the default QuickResponses.
+ // This guarantees the caller that QuickResponses exist in SharedPreferences after this
+ // function is called.
+
+ Log.d(LOG_TAG, "maybeMigrateLegacyQuickResponses() - Starting");
+
+ final Context telecommContext = TelecommApp.getInstance();
+ final SharedPreferences prefs = telecommContext.getSharedPreferences(
+ SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE);
+ final Resources res = telecommContext.getResources();
+
+ final boolean responsesExist = prefs.contains(KEY_CANNED_RESPONSE_PREF_1);
+ if (responsesExist) {
+ // If one QuickResponse exists, they all exist.
+ Log.d(LOG_TAG, "maybeMigrateLegacyQuickResponses() - Telecomm QuickResponses exist");
+ return;
+ }
+
+ // Grab the all the default QuickResponses from our resources.
+ String cannedResponse1 = res.getString(R.string.respond_via_sms_canned_response_1);
+ String cannedResponse2 = res.getString(R.string.respond_via_sms_canned_response_2);
+ String cannedResponse3 = res.getString(R.string.respond_via_sms_canned_response_3);
+ String cannedResponse4 = res.getString(R.string.respond_via_sms_canned_response_4);
+
+ Log.d(LOG_TAG, "maybeMigrateLegacyQuickResponses() - No local QuickResponses");
+
+ // We don't have local QuickResponses, let's see if they live in
+ // the Telephony package and we'll fall back on using our default values.
+ Context telephonyContext = null;
+ try {
+ telephonyContext = telecommContext.createPackageContext(PACKAGE_NAME_TELEPHONY, 0);
+ } catch (PackageManager.NameNotFoundException e) {
+ Log.e(LOG_TAG, e, "maybeMigrateLegacyQuickResponses() - Can't find Telephony package.");
+ }
+
+ // Read the old canned responses from the Telephony SharedPreference if possible.
+ if (telephonyContext != null) {
+ // Note that if any one QuickResponse does not exist, we'll use the default
+ // value to populate it.
+ Log.d(LOG_TAG, "maybeMigrateLegacyQuickResponses() - Using Telephony QuickResponses.");
+ final SharedPreferences oldPrefs = telephonyContext.getSharedPreferences(
+ SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE);
+ cannedResponse1 = oldPrefs.getString(KEY_CANNED_RESPONSE_PREF_1, cannedResponse1);
+ cannedResponse2 = oldPrefs.getString(KEY_CANNED_RESPONSE_PREF_2, cannedResponse2);
+ cannedResponse3 = oldPrefs.getString(KEY_CANNED_RESPONSE_PREF_3, cannedResponse3);
+ cannedResponse4 = oldPrefs.getString(KEY_CANNED_RESPONSE_PREF_4, cannedResponse4);
+ }
+
+ // Either way, write them back into Telecomm SharedPreferences.
+ final SharedPreferences.Editor editor = prefs.edit();
+ editor.putString(KEY_CANNED_RESPONSE_PREF_1, cannedResponse1);
+ editor.putString(KEY_CANNED_RESPONSE_PREF_2, cannedResponse2);
+ editor.putString(KEY_CANNED_RESPONSE_PREF_3, cannedResponse3);
+ editor.putString(KEY_CANNED_RESPONSE_PREF_4, cannedResponse4);
+ editor.commit();
+
+ Log.d(LOG_TAG, "maybeMigrateLegacyQuickResponses() - Done.");
+ return;
+ }
+}
diff --git a/src/com/android/telecomm/RespondViaSmsManager.java b/src/com/android/telecomm/RespondViaSmsManager.java
index 8618af0..f1e6033 100644
--- a/src/com/android/telecomm/RespondViaSmsManager.java
+++ b/src/com/android/telecomm/RespondViaSmsManager.java
@@ -40,19 +40,6 @@
public class RespondViaSmsManager extends CallsManagerListenerBase {
private static final String SCHEME_SMSTO = "smsto";
- /** SharedPreferences file name for our persistent settings. */
- private static final String SHARED_PREFERENCES_NAME = "respond_via_sms_prefs";
-
- // Preference keys for the 4 "canned responses"; see RespondViaSmsManager$Settings.
- // Since (for now at least) the number of messages is fixed at 4, and since
- // SharedPreferences can't deal with arrays anyway, just store the messages
- // as 4 separate strings.
- private static final int NUM_CANNED_RESPONSES = 4;
- private static final String KEY_CANNED_RESPONSE_PREF_1 = "canned_response_pref_1";
- private static final String KEY_CANNED_RESPONSE_PREF_2 = "canned_response_pref_2";
- private static final String KEY_CANNED_RESPONSE_PREF_3 = "canned_response_pref_3";
- private static final String KEY_CANNED_RESPONSE_PREF_4 = "canned_response_pref_4";
-
private static final int MSG_CANNED_TEXT_MESSAGES_READY = 1;
private static final int MSG_SHOW_SENT_TOAST = 2;
@@ -104,22 +91,28 @@
@Override
public void run() {
Log.d(RespondViaSmsManager.this, "loadCannedResponses() starting");
+
+ // This function guarantees that QuickResponses will be in our
+ // SharedPreferences with the proper values considering there may be
+ // old QuickResponses in Telephony pre L.
+ QuickResponseUtils.maybeMigrateLegacyQuickResponses();
+
final SharedPreferences prefs = TelecommApp.getInstance().getSharedPreferences(
- SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE);
+ QuickResponseUtils.SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE);
final Resources res = TelecommApp.getInstance().getInstance().getResources();
- final ArrayList<String> textMessages = new ArrayList<>(NUM_CANNED_RESPONSES);
+ final ArrayList<String> textMessages = new ArrayList<>(
+ QuickResponseUtils.NUM_CANNED_RESPONSES);
// Note the default values here must agree with the corresponding
// android:defaultValue attributes in respond_via_sms_settings.xml.
-
- textMessages.add(0, prefs.getString(KEY_CANNED_RESPONSE_PREF_1,
+ textMessages.add(0, prefs.getString(QuickResponseUtils.KEY_CANNED_RESPONSE_PREF_1,
res.getString(R.string.respond_via_sms_canned_response_1)));
- textMessages.add(1, prefs.getString(KEY_CANNED_RESPONSE_PREF_2,
+ textMessages.add(1, prefs.getString(QuickResponseUtils.KEY_CANNED_RESPONSE_PREF_2,
res.getString(R.string.respond_via_sms_canned_response_2)));
- textMessages.add(2, prefs.getString(KEY_CANNED_RESPONSE_PREF_3,
+ textMessages.add(2, prefs.getString(QuickResponseUtils.KEY_CANNED_RESPONSE_PREF_3,
res.getString(R.string.respond_via_sms_canned_response_3)));
- textMessages.add(3, prefs.getString(KEY_CANNED_RESPONSE_PREF_4,
+ textMessages.add(3, prefs.getString(QuickResponseUtils.KEY_CANNED_RESPONSE_PREF_4,
res.getString(R.string.respond_via_sms_canned_response_4)));
Log.d(RespondViaSmsManager.this,
diff --git a/src/com/android/telecomm/RespondViaSmsSettings.java b/src/com/android/telecomm/RespondViaSmsSettings.java
index 231dbaa..ecca39c 100644
--- a/src/com/android/telecomm/RespondViaSmsSettings.java
+++ b/src/com/android/telecomm/RespondViaSmsSettings.java
@@ -19,9 +19,7 @@
import android.app.ActionBar;
import android.app.Activity;
import android.content.Context;
-import android.content.Intent;
import android.content.SharedPreferences;
-import android.content.pm.PackageManager;
import android.os.Bundle;
import android.preference.EditTextPreference;
import android.preference.Preference;
@@ -33,18 +31,6 @@
* Helper class to manage the "Respond via SMS Message" feature for incoming calls.
*/
public class RespondViaSmsSettings {
- /** SharedPreferences file name for our persistent settings. */
- private static final String SHARED_PREFERENCES_NAME = "respond_via_sms_prefs";
-
- // Preference keys for the 4 "canned responses"; see RespondViaSmsManager$Settings.
- // Since (for now at least) the number of messages is fixed at 4, and since
- // SharedPreferences can't deal with arrays anyway, just store the messages
- // as 4 separate strings.
- private static final int NUM_CANNED_RESPONSES = 4;
- private static final String KEY_CANNED_RESPONSE_PREF_1 = "canned_response_pref_1";
- private static final String KEY_CANNED_RESPONSE_PREF_2 = "canned_response_pref_2";
- private static final String KEY_CANNED_RESPONSE_PREF_3 = "canned_response_pref_3";
- private static final String KEY_CANNED_RESPONSE_PREF_4 = "canned_response_pref_4";
private static final String KEY_PREFERRED_PACKAGE = "preferred_package_pref";
private static final String KEY_INSTANT_TEXT_DEFAULT_COMPONENT = "instant_text_def_component";
@@ -63,7 +49,13 @@
super.onCreate(icicle);
Log.d(this, "Settings: onCreate()...");
- getPreferenceManager().setSharedPreferencesName(SHARED_PREFERENCES_NAME);
+ // This function guarantees that QuickResponses will be in our
+ // SharedPreferences with the proper values considering there may be
+ // old QuickResponses in Telephony pre L.
+ QuickResponseUtils.maybeMigrateLegacyQuickResponses();
+
+ getPreferenceManager().setSharedPreferencesName(
+ QuickResponseUtils.SHARED_PREFERENCES_NAME);
// This preference screen is ultra-simple; it's just 4 plain
// <EditTextPreference>s, one for each of the 4 "canned responses".
@@ -79,19 +71,23 @@
addPreferencesFromResource(R.xml.respond_via_sms_settings);
EditTextPreference pref;
- pref = (EditTextPreference) findPreference(KEY_CANNED_RESPONSE_PREF_1);
+ pref = (EditTextPreference) findPreference(
+ QuickResponseUtils.KEY_CANNED_RESPONSE_PREF_1);
pref.setTitle(pref.getText());
pref.setOnPreferenceChangeListener(this);
- pref = (EditTextPreference) findPreference(KEY_CANNED_RESPONSE_PREF_2);
+ pref = (EditTextPreference) findPreference(
+ QuickResponseUtils.KEY_CANNED_RESPONSE_PREF_2);
pref.setTitle(pref.getText());
pref.setOnPreferenceChangeListener(this);
- pref = (EditTextPreference) findPreference(KEY_CANNED_RESPONSE_PREF_3);
+ pref = (EditTextPreference) findPreference(
+ QuickResponseUtils.KEY_CANNED_RESPONSE_PREF_3);
pref.setTitle(pref.getText());
pref.setOnPreferenceChangeListener(this);
- pref = (EditTextPreference) findPreference(KEY_CANNED_RESPONSE_PREF_4);
+ pref = (EditTextPreference) findPreference(
+ QuickResponseUtils.KEY_CANNED_RESPONSE_PREF_4);
pref.setTitle(pref.getText());
pref.setOnPreferenceChangeListener(this);
@@ -130,7 +126,7 @@
case R.id.respond_via_message_reset:
// Reset the preferences settings
SharedPreferences prefs = getSharedPreferences(
- SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE);
+ QuickResponseUtils.SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.remove(KEY_INSTANT_TEXT_DEFAULT_COMPONENT);
editor.apply();
diff --git a/src/com/android/telecomm/Ringer.java b/src/com/android/telecomm/Ringer.java
index 7741eab..9c554ce 100644
--- a/src/com/android/telecomm/Ringer.java
+++ b/src/com/android/telecomm/Ringer.java
@@ -16,9 +16,13 @@
package com.android.telecomm;
+import android.app.Notification;
+import android.app.NotificationManager;
import android.content.Context;
import android.media.AudioAttributes;
import android.media.AudioManager;
+import android.net.Uri;
+import android.os.Bundle;
import android.os.SystemVibrator;
import android.os.Vibrator;
import android.provider.Settings;
@@ -174,6 +178,10 @@
// The foreground call is one of incoming calls so play the ringer out loud.
stopCallWaiting();
+ if (!shouldRingForContact(foregroundCall.getContactUri())) {
+ return;
+ }
+
AudioManager audioManager =
(AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
if (audioManager.getStreamVolume(AudioManager.STREAM_RING) > 0) {
@@ -208,6 +216,16 @@
}
}
+ private boolean shouldRingForContact(Uri contactUri) {
+ final NotificationManager manager =
+ (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
+ final Bundle extras = new Bundle();
+ if (contactUri != null) {
+ extras.putStringArray(Notification.EXTRA_PEOPLE, new String[] {contactUri.toString()});
+ }
+ return manager.matchesCallFilter(extras);
+ }
+
private void stopRinging() {
Log.v(this, "stopRinging");
diff --git a/src/com/android/telecomm/TelecommServiceImpl.java b/src/com/android/telecomm/TelecommServiceImpl.java
index 05f0e0a..ef26085 100644
--- a/src/com/android/telecomm/TelecommServiceImpl.java
+++ b/src/com/android/telecomm/TelecommServiceImpl.java
@@ -160,9 +160,9 @@
//
@Override
- public PhoneAccountHandle getDefaultOutgoingPhoneAccount() {
+ public PhoneAccountHandle getDefaultOutgoingPhoneAccount(String uriScheme) {
try {
- return mPhoneAccountRegistrar.getDefaultOutgoingPhoneAccount();
+ return mPhoneAccountRegistrar.getDefaultOutgoingPhoneAccount(uriScheme);
} catch (Exception e) {
Log.e(this, e, "getDefaultOutgoingPhoneAccount");
throw e;
@@ -170,6 +170,18 @@
}
@Override
+ public void setDefaultOutgoingPhoneAccount(PhoneAccountHandle accountHandle) {
+ enforceModifyPermission();
+
+ try {
+ mPhoneAccountRegistrar.setDefaultOutgoingPhoneAccount(accountHandle);
+ } catch (Exception e) {
+ Log.e(this, e, "setDefaultOutgoingPhoneAccount");
+ throw e;
+ }
+ }
+
+ @Override
public List<PhoneAccountHandle> getOutgoingPhoneAccounts() {
try {
return mPhoneAccountRegistrar.getOutgoingPhoneAccounts();
@@ -180,6 +192,16 @@
}
@Override
+ public List<PhoneAccountHandle> getPhoneAccountsSupportingScheme(String uriScheme) {
+ try {
+ return mPhoneAccountRegistrar.getOutgoingPhoneAccounts(uriScheme);
+ } catch (Exception e) {
+ Log.e(this, e, "getPhoneAccountsSupportingScheme");
+ throw e;
+ }
+ }
+
+ @Override
public PhoneAccount getPhoneAccount(PhoneAccountHandle accountHandle) {
try {
return mPhoneAccountRegistrar.getPhoneAccount(accountHandle);
@@ -190,6 +212,38 @@
}
@Override
+ public PhoneAccountHandle getSimCallManager() {
+ try {
+ return mPhoneAccountRegistrar.getSimCallManager();
+ } catch (Exception e) {
+ Log.e(this, e, "getSimCallManager");
+ throw e;
+ }
+ }
+
+ @Override
+ public void setSimCallManager(PhoneAccountHandle accountHandle) {
+ enforceModifyPermission();
+
+ try {
+ mPhoneAccountRegistrar.setSimCallManager(accountHandle);
+ } catch (Exception e) {
+ Log.e(this, e, "setSimCallManager");
+ throw e;
+ }
+ }
+
+ @Override
+ public List<PhoneAccountHandle> getSimCallManagers() {
+ try {
+ return mPhoneAccountRegistrar.getAllConnectionManagerPhoneAccounts();
+ } catch (Exception e) {
+ Log.e(this, e, "getSimCallManagers");
+ throw e;
+ }
+ }
+
+ @Override
public void registerPhoneAccount(PhoneAccount account) {
try {
enforceModifyPermissionOrCallingPackage(
diff --git a/tests/AndroidManifest.xml b/tests/AndroidManifest.xml
index d8877fb..8ae47d2 100644
--- a/tests/AndroidManifest.xml
+++ b/tests/AndroidManifest.xml
@@ -16,7 +16,8 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
coreApp="true"
- package="com.android.telecomm.tests">
+ package="com.android.telecomm.tests"
+ android:debuggable="true">
<!-- Test connection service outgoing video preview. -->
<uses-permission android:name="android.permission.CAMERA" />
@@ -24,7 +25,8 @@
android:name="com.android.telecomm.permission.REGISTER_PROVIDER_OR_SUBSCRIPTION" />
<uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE" />
- <application android:label="@string/app_name">
+ <application android:label="@string/app_name"
+ android:debuggable="true">
<uses-library android:name="android.test.runner" />
<!-- Miscellaneous telecomm app-related test activities. -->
@@ -116,5 +118,6 @@
-->
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.android.telecomm"
- android:label="Telecomm application tests." />
+ android:label="Telecomm application tests."
+ android:debuggable="true"/>
</manifest>
diff --git a/tests/src/com/android/telecomm/testapps/CallServiceNotifier.java b/tests/src/com/android/telecomm/testapps/CallServiceNotifier.java
index 5fd75e5..e8aa19f 100644
--- a/tests/src/com/android/telecomm/testapps/CallServiceNotifier.java
+++ b/tests/src/com/android/telecomm/testapps/CallServiceNotifier.java
@@ -109,6 +109,7 @@
.withIconResId(R.drawable.stat_sys_phone_call)
.withLabel("TelecommTestApp Call Provider")
.withShortDescription("a short description for the call provider")
+ .withSupportedUriScheme("tel")
.build());
telecommManager.registerPhoneAccount(PhoneAccount.builder()
diff --git a/tests/src/com/android/telecomm/testapps/TestConnectionManager.java b/tests/src/com/android/telecomm/testapps/TestConnectionManager.java
index 95f0718..78c148d 100644
--- a/tests/src/com/android/telecomm/testapps/TestConnectionManager.java
+++ b/tests/src/com/android/telecomm/testapps/TestConnectionManager.java
@@ -95,12 +95,6 @@
}
@Override
- public void onStartActivityFromInCall(
- RemoteConnection connection, PendingIntent intent) {
- startActivityFromInCall(intent);
- }
-
- @Override
public void onDestroyed(RemoteConnection connection) {
destroy();
mManagedConnectionByRemote.remove(mRemote);
diff --git a/tests/src/com/android/telecomm/tests/unit/PhoneAccountRegistrarTest.java b/tests/src/com/android/telecomm/tests/unit/PhoneAccountRegistrarTest.java
index 9daa026..3522153 100644
--- a/tests/src/com/android/telecomm/tests/unit/PhoneAccountRegistrarTest.java
+++ b/tests/src/com/android/telecomm/tests/unit/PhoneAccountRegistrarTest.java
@@ -24,6 +24,7 @@
import org.xmlpull.v1.XmlSerializer;
import android.content.ComponentName;
+import android.content.Context;
import android.net.Uri;
import android.telecomm.PhoneAccount;
import android.telecomm.PhoneAccountHandle;
@@ -35,6 +36,7 @@
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
+import java.util.Arrays;
public class PhoneAccountRegistrarTest extends AndroidTestCase {
@@ -61,7 +63,8 @@
.withSubscriptionNumber("555-1212")
.withCapabilities(
PhoneAccount.CAPABILITY_CALL_PROVIDER
- | PhoneAccount.CAPABILITY_SIM_SUBSCRIPTION)
+ | PhoneAccount.CAPABILITY_SIM_SUBSCRIPTION
+ )
.withIconResId(0)
.withLabel("label1")
.withShortDescription("desc1")
@@ -86,6 +89,17 @@
.withLabel("label2")
.withShortDescription("desc2")
.build());
+ mRegistrar.registerPhoneAccount(PhoneAccount.builder()
+ .withAccountHandle(
+ new PhoneAccountHandle(new ComponentName("sippkg", "sipcls"), "id4"))
+ .withHandle(Uri.parse("sip:test@sip.com"))
+ .withSubscriptionNumber("test")
+ .withCapabilities(PhoneAccount.CAPABILITY_CALL_PROVIDER)
+ .withIconResId(0)
+ .withLabel("label2")
+ .withShortDescription("desc2")
+ .withSupportedUriScheme("tel")
+ .build());
}
@Override
@@ -97,7 +111,8 @@
private static <T> T roundTrip(
Object self,
T input,
- PhoneAccountRegistrar.XmlSerialization<T> xml)
+ PhoneAccountRegistrar.XmlSerialization<T> xml,
+ Context context)
throws Exception {
Log.d(self, "Input = %s", input);
@@ -118,7 +133,7 @@
XmlPullParser parser = Xml.newPullParser();
parser.setInput(new BufferedInputStream(new ByteArrayInputStream(data)), null);
parser.nextTag();
- result = xml.readFromXml(parser);
+ result = xml.readFromXml(parser, 0, context);
}
Log.d(self, "result = " + result);
@@ -140,7 +155,8 @@
public void testPhoneAccountHandle() throws Exception {
PhoneAccountHandle input = new PhoneAccountHandle(new ComponentName("pkg0", "cls0"), "id0");
- PhoneAccountHandle result = roundTrip(this, input, PhoneAccountRegistrar.sPhoneAccountHandleXml);
+ PhoneAccountHandle result = roundTrip(this, input,
+ PhoneAccountRegistrar.sPhoneAccountHandleXml, mContext);
assertPhoneAccountHandleEquals(input, result);
PhoneAccountHandle inputN =
new PhoneAccountHandle(
@@ -148,7 +164,8 @@
"pkg0", // ctor does not allow null
"cls0"), // ctor does not allow null
null);
- PhoneAccountHandle resultN = roundTrip(this, inputN, PhoneAccountRegistrar.sPhoneAccountHandleXml);
+ PhoneAccountHandle resultN = roundTrip(this, inputN,
+ PhoneAccountRegistrar.sPhoneAccountHandleXml, mContext);
Log.i(this, "inputN = %s, resultN = %s", inputN, resultN);
assertPhoneAccountHandleEquals(inputN, resultN);
}
@@ -162,15 +179,18 @@
assertEquals(a.getIconResId(), b.getIconResId());
assertEquals(a.getLabel(), b.getLabel());
assertEquals(a.getShortDescription(), b.getShortDescription());
+ assertEquals(a.getSupportedUriSchemes(), b.getSupportedUriSchemes());
}
}
public void testPhoneAccount() throws Exception {
PhoneAccount input = makeQuickAccount("pkg0", "cls0", "id0", 0);
- PhoneAccount result = roundTrip(this, input, PhoneAccountRegistrar.sPhoneAccountXml);
+ PhoneAccount result = roundTrip(this, input, PhoneAccountRegistrar.sPhoneAccountXml,
+ mContext);
assertPhoneAccountEquals(input, result);
PhoneAccount inputN = PhoneAccount.builder().build();
- PhoneAccount resultN = roundTrip(this, inputN, PhoneAccountRegistrar.sPhoneAccountXml);
+ PhoneAccount resultN = roundTrip(this, inputN, PhoneAccountRegistrar.sPhoneAccountXml,
+ mContext);
assertPhoneAccountEquals(inputN, resultN);
}
@@ -185,7 +205,8 @@
public void testState() throws Exception {
PhoneAccountRegistrar.State input = makeQuickState();
- PhoneAccountRegistrar.State result = roundTrip(this, input, PhoneAccountRegistrar.sStateXml);
+ PhoneAccountRegistrar.State result = roundTrip(this, input, PhoneAccountRegistrar.sStateXml,
+ mContext);
assertStateEquals(input, result);
}
@@ -193,7 +214,7 @@
assertEquals(4, mRegistrar.getAllPhoneAccountHandles().size());
assertEquals(3, mRegistrar.getOutgoingPhoneAccounts().size());
assertEquals(null, mRegistrar.getSimCallManager());
- assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount());
+ assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount("tel"));
}
public void testSimCallManager() throws Exception {
@@ -219,23 +240,23 @@
public void testDefaultOutgoing() {
// Establish initial conditions
- assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount());
+ assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount("tel"));
PhoneAccountHandle h = new PhoneAccountHandle(new ComponentName("pkg0", "cls0"), "id1");
mRegistrar.setDefaultOutgoingPhoneAccount(h);
- assertPhoneAccountHandleEquals(h, mRegistrar.getDefaultOutgoingPhoneAccount());
+ assertPhoneAccountHandleEquals(h, mRegistrar.getDefaultOutgoingPhoneAccount("tel"));
// If account is un-registered, querying returns null
mRegistrar.unregisterPhoneAccount(h);
- assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount());
+ assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount("tel"));
// But if account is re-registered, setting comes back
mRegistrar.registerPhoneAccount(makeQuickAccount("pkg0", "cls0", "id1", 99));
- assertPhoneAccountHandleEquals(h, mRegistrar.getDefaultOutgoingPhoneAccount());
+ assertPhoneAccountHandleEquals(h, mRegistrar.getDefaultOutgoingPhoneAccount("tel"));
// De-register by setting to null
mRegistrar.setDefaultOutgoingPhoneAccount(null);
- assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount());
+ assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount("tel"));
// If argument not have CALL_PROVIDER capability, this is a no-op
mRegistrar.setDefaultOutgoingPhoneAccount(
new PhoneAccountHandle(new ComponentName("pkg0", "cls0"), "id0"));
- assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount());
+ assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount("tel"));
// If only have one account, it is the default
mRegistrar.unregisterPhoneAccount(
new PhoneAccountHandle(new ComponentName("pkg0", "cls0"), "id0"));
@@ -245,7 +266,7 @@
new PhoneAccountHandle(new ComponentName("pkg1", "cls1"), "id2"));
assertPhoneAccountHandleEquals(
new PhoneAccountHandle(new ComponentName("pkg1", "cls1"), "id3"),
- mRegistrar.getDefaultOutgoingPhoneAccount());
+ mRegistrar.getDefaultOutgoingPhoneAccount("tel"));
// If have one account but not suitable, default returns null
mRegistrar.unregisterPhoneAccount(
new PhoneAccountHandle(new ComponentName("pkg1", "cls1"), "id3"));
@@ -258,7 +279,7 @@
.withLabel("label0")
.withShortDescription("desc0")
.build());
- assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount());
+ assertEquals(null, mRegistrar.getDefaultOutgoingPhoneAccount("tel"));
}
private static PhoneAccount makeQuickAccount(String pkg, String cls, String id, int idx) {