diff --git a/res/layout/bluetooth_pin_confirm.xml b/res/layout/bluetooth_pin_confirm.xml
index 0024ad424131a7f6b2ebdccdedc0eed05a300f6e..663b900f48a4970636c1ed17c251fc6b402429f7 100644
--- a/res/layout/bluetooth_pin_confirm.xml
+++ b/res/layout/bluetooth_pin_confirm.xml
@@ -19,6 +19,7 @@
@@ -30,6 +31,18 @@
android:layout_marginTop="@dimen/bluetooth_dialog_padding_top"
android:orientation="vertical">
+
+
+
+
+
+
-
diff --git a/res/layout/bluetooth_pin_entry.xml b/res/layout/bluetooth_pin_entry.xml
index 0c6861c2c4ec6ed87e2623be282cc9effad566c5..77a434701b8ee98bd069096b8686c3f38e82f53b 100644
--- a/res/layout/bluetooth_pin_entry.xml
+++ b/res/layout/bluetooth_pin_entry.xml
@@ -19,6 +19,7 @@
@@ -87,6 +88,30 @@
android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Body1"
android:textColor="?android:attr/textColorSecondary"/>
+
+
+
+
-
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 3eab9296f6de1695cd84dcf363ac8252415c9183..fc547aa7a1cd7011357e59a2c310cfd5b1a82bf7 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -938,6 +938,8 @@
"Van:<br><b>%1$s</b><br><br>Bind met hierdie toestel saam?""Om saam te bind met:<br><b>%1$s</b><br><br>Voer daarop in:<br><b>%2$s</b>, druk dan Return of Enter.""Laat toegang tot jou kontakte en oproepgeskiedenis toe"
+ "Gaan saambindkodes na"
+ "Kyk of hierdie kode ooreenstem met die een op %1$s.\n\nJy moet hierdie kode om veiligheidsredes nêrens invoer nie.""Kon nie aan %1$s koppel nie.""Soek vir toestelle"
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 16089a8178b51097c1e54ae6f44458980cdc93d2..572cc800a1ec9527178045012c99bc5587a9726f 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -938,6 +938,8 @@
"ከ:<br><b>%1$s</b><br><br>ከዚህ መሣሪያ ጋር ይጣመር?""ከ:<br><b>%1$s</b><br><br> ጋር ለማጣመር ላዩ ላይ ተይብበት:<br><b>%2$s</b> ከዚያም ተመለስ ወይም አስገባ ተጫን::""የእርስዎን የእውቂያዎች እና የጥሪ ታሪክ መዳረሻ ይፍቀዱ"
+ "የማጣመሪያ ኮዶችን በመፈተሽ ላይ"
+ "ይህ ኮድ %1$s ላይ ካለው ጋር እንደሚዛመድ ይፈትሹ።\n\nለእርስዎ ደህንነት ሲባል ይህን ኮድ የትም ቦታ አያስገቡ።""ወደ %1$sማገናኘት አልተቻለም።""መሣሪያዎችን ቃኝ"
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 58ba45220475aff10d849e3f3ca97ed10ddfc3c0..3e1bafaf9b5762d62764605d4ec90ac153d8bb0f 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -1006,6 +1006,8 @@
"من:<br><b>%1$s</b><br><br>الاقتران مع هذا الجهاز؟""للإقران مع:<br><b>%1$s</b><br><br>اكتب عليه:<br><b>%2$s</b>, ثم اضغط على Return أو Enter.""السماح بالوصول إلى جهات الاتصال وسجلّ المكالمات"
+ "التحقُّق من رموز الإقران"
+ "يُرجى التأكُّد من تطابُق هذا الرمز مع الرمز المعروض على \"%1$s\".\n\nللحفاظ على أمانك، يجب عدم إدخال هذا الرمز في أي مكان.""تعذر الاتصال بـ %1$s.""البحث عن أجهزة"
diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml
index b35835b16e7122b113dae589250784ae8663c6a3..2a10338182517f1d6543c3d19a453812ba4860fd 100644
--- a/res/values-as/strings.xml
+++ b/res/values-as/strings.xml
@@ -938,6 +938,8 @@
"ইয়াৰ পৰা:<br><b>%1$s</b><br><br>এইটো ডিভাইচৰ সৈতে পেয়াৰ কৰিবনে?""পেয়াৰ কৰিবলৈ:<br><b>%1$s</b><br><br>তাত টাইপ কৰক:<br><b>%2$s</b>, তাৰ পাছত ৰিটাৰ্ন বা এণ্টাৰত টিপক।""আপোনাৰ সম্পৰ্কসূচী আৰু কলৰ ইতিহাস এক্সেছ কৰিবলৈ অনুমতি দিয়ক"
+ "পেয়াৰ কৰাৰ ক’ড পৰীক্ষা কৰক"
+ "এই ক’ডটো %1$sত থকাটোৰ সৈতে মিলে নেকি পৰীক্ষা কৰক।\n\nআপোনাৰ সুৰক্ষাৰ বাবে এই ক’ডটো ক’তো নিদিব।""%1$sৰ সৈতে সংযোগ কৰিব পৰা নগ\'ল।""ডিভাইচৰ বাবে স্কেন কৰক"
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index 06e188282208cd3271ebd55e7e66688cf9e67c84..b2347c8096f0826d5fb816b35d8cc0a16c9c6ad2 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -938,6 +938,8 @@
"Kimdən:<br><b>%1$s</b><br><br>Cihazınız bu cihazla cütləşsin?""Bunlarla cütlənmək üçün:<br><b>%1$s</b><br><br>Bunu yazın:<br><b>%2$s</b>, sonra Geri və ya Giriş basın.""Kontaktlar və zəng tarixçəsinə giriş icazəsi verin"
+ "Qoşulma kodlarını yoxlayın"
+ "Bu kodun %1$s cihazındakı ilə uyğun olub-olmadığını yoxlayın.\n\nTəhlükəsizliyiniz üçün bu kodu heç bir yerə daxil etməyin.""%1$s cihazına qoşula bilmədi.""Cihaz axtarın"
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index 1974c80f532369be7c626badef1259d93b32f82c..80b2e570b4c53c257db1a3abbb8a2cb738baeaab 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -955,6 +955,8 @@
"Sa uređaja:<br><b>%1$s</b><br><br>Želite li da se uparite sa tim uređajem?""Za uparivanje sa uređajem:<br><b>%1$s</b><br><br>Unesite na njemu:<br><b>%2$s</b>, a zatim pritisnite Return ili Enter.""Dozvoli pristup kontaktima i istoriji poziva"
+ "Proverite kôd za uparivanje"
+ "Proverite da li se ovaj kôd podudara sa onim na uređaju %1$s.\n\nIz bezbednosnih razloga ne unosite nigde ovaj kôd.""Nije moguće povezati se sa uređajem %1$s.""Skeniranje za uređaje"
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index 6f273c79b6546039253ff1f5c7e4d421a3959322..27ea972bbe696e0f8bc704b4002049e86de03a7c 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -972,6 +972,8 @@
"Ад: <br><b>%1$sПадключыцца да гэтай прылады?""Каб падключыцца да прылады <br><b>%1$s</b><br><br>, увядзiце <br><b>%2$s</b>, затым нацiснiце \"Назад\" або Enter""Дазволіць доступ да сваіх кантактаў і гісторыі выклікаў"
+ "Праверце коды спалучэння"
+ "Праверце, ці супадае гэты код з кодам на прыладзе \"%1$s\".\n\nУ мэтах бяспекі нікуды не ўводзьце гэты код.""Не атрымалася падключыцца да прылады %1$s""Шукаць прылады"
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 8a145b16de727c97159779df70f8f49533012ee5..fe2e236ac9767fa32ed0b62fe496999d29bc5a73 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -938,6 +938,8 @@
"От:<br><b>%1$s</b><br><br>Да се сдвои ли с това устройство?""За сдвояване със: <br><b>%1$s</b><br><br> Въведете: <br><b>%2$s</b>, след това натиснете „Return“ или „Enter“.""Разрешаване на достъпа до контактите и историята на обажданията ви"
+ "Проверка на кодовете за сдвояване"
+ "Проверете дали кодът съответства на този на %1$s.\n\nОт съображения за сигурност не въвеждайте кода никъде.""Не можа да се установи връзка със: %1$s.""Сканиране за устройства"
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index 1839d8db7701c821a7dad436e7088aac26bef845..488cccb17ae5dd63618c7db86a1e8be9bcc25732 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -938,6 +938,8 @@
"এর থেকে:<br><b>%1$s</b><br><br>এই ডিভাইসের সঙ্গে যুক্ত করবেন?""এর সঙ্গে যুক্ত করতে:<br><b>%1$s</b><br><br>এটিতে টাইপ করুন:<br><b>%2$s</b>, তারপর Return বা Enter টিপুন।""আপনার পরিচিতি এবং কল ইতিহাস অ্যাক্সেসের অনুমতি দিন"
+ "পেয়ারিং কোড দেখুন"
+ "এই কোড %1$s-এর কোডের সাথে মিলছে কিনা তা দেখুন।\n\nআপনার নিরাপত্তার জন্য, এই কোড কোথাও লিখবেন না।""%1$s এ কানেকশন করতে পারেনি।""ডিভাইসগুলির জন্য স্ক্যান করুন"
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index e6eb11f27380b515140dab38a6be60dd31a6e9b3..6a4e23d44dea8447290536a695f29cfa99e41b72 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -955,6 +955,8 @@
"Od:<br><b>%1$s</b><br><br>Želite izvršiti uparivanje s ovim uređajem?""Da biste izvršili uparivanje s uređajem:<br><b>%1$s</b><br><br>Otkucajte na njemu:<br><b>%2$s</b>, a zatim pritisnite Return ili Enter.""Dozvoli pristup kontaktima i historiji poziva"
+ "Provjerite kôd za uparivanje"
+ "Provjerite podudara li se ovaj kôd s kodom na uređaju %1$s.\n\nRadi sigurnosti nemojte unositi ovaj kôd nigdje.""Nije uspjelo povezivanje sa uređajem %1$s.""Potraži uređaje"
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 7e0365f424c91e2d2f47c87b35ee21fb91167d17..bb3c11e615e5ec086f76aca453f9cd62f95aef96 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -938,6 +938,8 @@
"De:<br><b>%1$s</b><br><br>Vols vincular aquest dispositiu?""Per vincular a <br><b>%1$s</b><br><br>escriu-hi <br><b>%2$s</b> i, a continuació, prem Retorn.""Permet l\'accés als contactes i a l\'historial de trucades"
+ "Comprova els codis de vinculació"
+ "Comprova si aquest codi coincideix amb el de %1$s.\n\nPer a la teva seguretat, no introdueixis aquest codi enlloc.""No s\'ha pogut connectar amb %1$s.""Cerca dispositius"
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index d92590ff15f864a9b1316cbec698ae6f6e8b6d17..6ece2a499e9fc766728923b32a4c8bf8679163b6 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -972,6 +972,8 @@
"Ze zařízení:<br><b>%1$s</b><br><br>Spárovat s tímto zařízením?""Párování se zařízením:<br><b>%1$s</b><br><br>Zadejte:<br><b>%2$s</b> a poté stiskněte klávesu Return nebo Enter.""Povolit přístup ke kontaktům a historii volání"
+ "Zkontrolujte párovací kódy"
+ "Zkontrolujte, jestli se tento kód shoduje s kódem na zařízení %1$s.\n\nKvůli své bezpečnosti ho nikde nezadávejte.""K zařízení %1$s se nelze připojit.""Vyhledat zařízení"
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index d4d10ddefefbb66c4f4b553d2e108cbee5ef565c..8ccb202d9f554f4e12ffe5ff44cb29c495545fa8 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -938,6 +938,8 @@
"Fra:<br><b>%1$s</b><br><br>Par med denne enhed?""Sådan parres med:<br><b>%1$s</b><br><br>Skriv på den:<br><b>%2$s</b>, og tryk derefter på Retur eller Enter.""Giv adgang til dine kontakter og din opkaldshistorik"
+ "Tjek parringskoder"
+ "Tjek, om denne kode stemmer overens med den på %1$s.\n\nAf sikkerhedsmæssige årsager bør du ikke indtaste denne kode andre steder.""Der kunne ikke oprettes forbindelse til %1$s.""Søg efter enheder"
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index f0c7d41d48f3bfd073716f0b3d5c60749d8b4dda..e128f8332e5ee2c1369ed7c99218de3050942cc6 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -939,6 +939,8 @@
"Von:<br><b>%1$s</b><br><br> Mit diesem Gerät koppeln?""Gib zur Kopplung mit <br><b>%1$s</b><br><br><br><b>%2$s</b> ein und drücke anschließend die Eingabetaste.""Zugriff auf meine Kontakte und meine Anrufliste zulassen"
+ "Kopplungscodes prüfen"
+ "Prüfe, ob dieser Code mit dem auf dem Gerät „%1$s“ übereinstimmt.\n\nGib diesen Code aus Sicherheitsgründen nirgendwo ein.""Keine Verbindung zu %1$s möglich""Scan nach Geräten"
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 2f96dbcd463ac7b7e63d447dd66a7cf90404cead..9161f1db2bd51a51dcc3c6eb575ca9aee49ec1cb 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -938,6 +938,8 @@
"Από:<br><b>%1$s</b><br><br>Να γίνει σύζευξη με αυτήν τη συσκευή;""Για σύζευξη με:<br><b>%1$s</b><br><br>Πληκτρολογήστε:<br><b>%2$s</b> και πιέστε το πλήκτρο επιστροφής (Return) ή το πλήκτρο Enter.""Να επιτρέπεται η πρόσβαση στις επαφές σας και στο ιστορικό κλήσεων"
+ "Έλεγχος κωδικών σύζευξης"
+ "Ελέγξτε αν αυτός ο κωδικός αντιστοιχεί με αυτόν στη συσκευή %1$s.\n\nΓια την ασφάλειά σας, μην εισαγάγετε αυτόν τον κωδικό πουθενά.""Δεν ήταν δυνατή η σύνδεση με τη συσκευή %1$s.""Ανίχνευση για συσκευές"
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index 50e0a4ad3c19065d9d7433e59c285335f3489480..ff722e586cd27dd952f2114b7823489b0d278973 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -938,6 +938,8 @@
"From:<br><b>%1$s</b><br><br>Pair with this device?""To pair with:<br><b>%1$s</b><br><br>Type on it:<br><b>%2$s</b>, then press Return or Enter.""Allow access to your contacts and call history"
+ "Check pairing codes"
+ "Check if this code matches the one on %1$s.\n\nFor your security, do not enter this code anywhere.""Couldn\'t connect to %1$s.""Scan for devices"
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index 5ea951f7559a0a5bba550e0f59d6ed961c770e2c..e73c1e2d03216de8348c0964fa83c68646fbbf2e 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -938,6 +938,8 @@
"From:<br><b>%1$s</b><br><br>Pair with this device?""To pair with:<br><b>%1$s</b><br><br>Type on it:<br><b>%2$s</b>, then press Return or Enter.""Allow access to your contacts and call history"
+ "Check pairing codes"
+ "Check if this code matches the one on %1$s.\n\nFor your security, do not enter this code anywhere.""Couldn’t connect to %1$s.""Scan for devices"
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 6cef00d744e9e2c3266e5832b64602889e005846..bfe681e337c50f3c4061c673755905c88ee9e7cd 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -938,6 +938,8 @@
"From:<br><b>%1$s</b><br><br>Pair with this device?""To pair with:<br><b>%1$s</b><br><br>Type on it:<br><b>%2$s</b>, then press Return or Enter.""Allow access to your contacts and call history"
+ "Check pairing codes"
+ "Check if this code matches the one on %1$s.\n\nFor your security, do not enter this code anywhere.""Couldn\'t connect to %1$s.""Scan for devices"
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index a8547e19a8570725c7cd4c194fcfb4c22710e3ff..de45ffd4ea5e3b511469a9129de3880762056c2f 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -938,6 +938,8 @@
"From:<br><b>%1$s</b><br><br>Pair with this device?""To pair with:<br><b>%1$s</b><br><br>Type on it:<br><b>%2$s</b>, then press Return or Enter.""Allow access to your contacts and call history"
+ "Check pairing codes"
+ "Check if this code matches the one on %1$s.\n\nFor your security, do not enter this code anywhere.""Couldn\'t connect to %1$s.""Scan for devices"
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index eaba150840ca7d2b0c71baa048dee20158315d70..b86f8d8d2de46e77c0f5a893bb1d947d97bb11b9 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -938,6 +938,8 @@
"¿Desde: <br><b>%1$s</b><br><br>sincronizas con este dispositivo?""Para vincular con:<br><b>%1$s</b><br><br>Escribe allí:<br><b>%2$s</b> y luego presiona Volver o Enter.""Permitir el acceso a tus contactos y al historial de llamadas"
+ "Verifica los códigos de vinculación"
+ "Verifica si este código coincide con el que aparece en %1$s.\n\nPor tu seguridad, no ingreses este código en ningún lugar.""No se pudo establecer conexión con %1$s.""Buscar dispositivos"
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 2bd47cd0efab1b68d46a93855b7e627073a88f29..5f675585c6fad49b5bac8457fe618a36b0b9513f 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -938,6 +938,8 @@
"De:<br><b>%1$s</b><br><br>¿Emparejar con este dispositivo?""Para emparejar con:<br><b>%1$s</b><br><br>Escribe<br><b>%2$s</b> en el dispositivo y, a continuación, pulsa la tecla Intro o de retorno.""Permitir acceso a tus contactos y al historial de llamadas"
+ "Comprobar códigos de emparejamiento"
+ "Comprueba si este código coincide con el del %1$s.\n\nPor tu seguridad, no introduzcas este código en ningún sitio.""No se ha podido establecer conexión con %1$s.""Buscar dispositivos"
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index d998e31b3a0b9648a48936b61393528f4f411025..7614d3f22fbf3c80abc3af0b23e43e569287018b 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -938,6 +938,8 @@
"Seadmelt: <br><b>%1$s</b><br><br> Kas siduda seadmega?""Siduda seadmega:<br><b>%1$s</b><br><br>Sisestage:<br><b>%2$s</b>, seejärel vajutage naasmis- või sisestusklahvi.""Luba juurdepääs kontaktidele ja kõneajaloole"
+ "Sidumiskoodide kontrollimine"
+ "Kontrollige, kas see kood vastab sellele, mis on seadmes %1$s.\n\nTurvalisuse huvides ärge sisestage seda koodi kuhugi.""Seadmega %1$s ei saanud ühendust.""Otsi seadmeid"
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index 5fbb31ca183863f1664c6e42fccabeabe4e62894..d9c0a4b5d25ae20eab3a9f9842bf3e1cd70d212e 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -938,6 +938,8 @@
"Igorlea:<br><b>%1$s</b><br><br>Gailuarekin parekatu?""Honekin parekatzeko:<br><b>%1$s</b><br><br>Idatzi hau bertan:<br><b>%2$s</b>, eta sakatu Itzuli edo Sartu.""Eman kontaktuak eta deien historia erabiltzeko baimena"
+ "Egiaztatu parekatze-kodeak"
+ "Egiaztatu kode hau bat datorrela %1$s gailuan agertzen denarekin.\n\nZure segurtasuna bermatzeko, ez idatzi kode hau inon ere.""Ezin izan da %1$s gailura konektatu.""Bilatu gailuak"
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 4d3a828c4e6ce9799a2981f452b99999d65dbc61..beb3b974cc3b6ba876e4535c82a5be4e0c4b7830 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -938,6 +938,8 @@
"از::<br><b>%1$s</b><br><br>با این دستگاه مرتبطسازی شود؟""برای مرتبطسازی با:<br><b>%1$s</b><br><br>روی آن تایپ کنید:<br><b>%2$s</b>، سپس Return یا Enter را فشار دهید.""اجازه دسترسی به مخاطبین و سابقه تماس"
+ "بررسی کردن کدهای جفتسازی"
+ "مطمئن شوید که این کد با کد نمایش دادهشده در %1$s مطابقت دارد.\n\nبرای حفظ امنیت، این کد را در هیچجا وارد نکنید.""اتصال به %1$s ممکن نیست.""اسکن برای دستگاهها"
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 1c74f91d1778fb8b119444e48eca9d296f7f5cef..9f3dc66f2b00a21f9bbb8b68ecf99b93fe765e5d 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -938,6 +938,8 @@
"Laitteesta<br><b>%1$s</b><br><br>Muodostetaanko pari tämän laitteen kanssa?""Jos haluat muodostaa laiteparin laitteen <br><b>%1$s</b><br><br> kanssa, kirjoita laitteelle <br><b>%2$s</b> ja paina Rivinvaihto tai Enter.""Anna pääsyoikeus yhteystietoihisi ja puheluhistoriaasi"
+ "Yhdistämiskoodien tarkistaminen"
+ "Tarkista, vastaako tämä koodi laitteen %1$s koodia.\n\nTurvallisuussyistä älä lisää tätä koodia mihinkään.""Yhteyden muodostaminen laitteeseen %1$s epäonnistui.""Etsi laitteita"
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 83e9b978558aa933e1d425a2c34b4a9c94431a20..c10cde9cfeecec2a31e9c6a16344e6257f509a10 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -938,6 +938,8 @@
"De :<br><b>%1$s</b><br><br>Associer à cet appareil?""Pour l\'association à :<br><b>%1$s</b><br><br>Saisissez <br><b>%2$s</b>, puis appuyez sur « Retour » ou sur « Entrée ».""Autoriser l\'accès à vos contacts et à l\'historique des appels"
+ "Vérifier les codes d\'association"
+ "Vérifiez si ce code correspond à celui de %1$s.\n\nPour votre sécurité, n\'entrez ce code nulle part.""Impossible de se connecter à %1$s.""Recherche d\'appareils"
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index d43dd01f5a1212c9de6e8a37e1b7cfecce0fc7d4..c34f4b46818f4c500736d49bea1571823c0da7de 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -938,6 +938,8 @@
"De :<br><b>%1$s</b><br><br>Associer à cet appareil ?""Pour l\'association à :<br><b>%1$s</b><br><br>Saisissez <br><b>%2$s</b>, puis appuyez sur \"Retour\" ou sur \"Entrée\".""Autoriser l\'accès à vos contacts et à l\'historique des appels"
+ "Vérifier les codes d\'association"
+ "Vérifiez si ce code correspond à celui indiqué sur l\'appareil %1$s.\n\nPour des raisons de sécurité, ne saisissez pas ce code ailleurs.""Impossible de se connecter à %1$s.""Rechercher des appareils"
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index 18299a0d81a5b8567177aeb739e5b7bd148832ca..770af5a0e7108d9c1576a6b46614b7cbf8a5b8d5 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -938,6 +938,8 @@
"De:<br><b>%1$s</b><br><br>Vincular con este dispositivo?""Para vincular con:<br><b>%1$s</b><br><br>Escribe nel:<br><b>%2$s</b> e, a continuación, preme Retroceso ou Intro.""Permitir o acceso aos teus contactos e ao historial de chamadas"
+ "Comprobar os códigos de vinculación"
+ "Comproba se este código coincide co do dispositivo %1$s.\n\nPola túa seguranza, non escribas o código en ningún lugar.""Non se puido conectar a %1$s.""Buscar dispositivos"
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index 417ca9b87ecf55a6b323beecd17c5c6df0c8ae1f..8c61c2565a353f749da44fe9143ce7dae8dfa27c 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -938,6 +938,8 @@
"અહીંથી:<br><b>%1$s</b><br><br>આ ઉપકરણ સાથે જોડી કરીએ?""આની સાથે જોડી કરવા:<br><b>%1$s</b><br><br>તેના પર લખો:<br><b>%2$s</b>, પછી Return અથવા Enter દબાવો.""તમારા સંપર્કો અને કૉલ ઇતિહાસના ઍક્સેસની મંજૂરી આપો"
+ "જોડાણ કરવાના કોડ ચેક કરો"
+ "આ કોડ %1$s પરના કોડ સાથે મેળ ખાય છે કે નહીં તે ચેક કરો.\n\nતમારી સુરક્ષા માટે, આ કોડ ક્યાંય પણ દાખલ કરશો નહીં.""%1$s સાથે કનેક્ટ કરી શકાયું નથી.""ઉપકરણો માટે સ્કૅન કરો"
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index ef607413514fce19a2290d06211fc23f54cf9d7e..0bb8fafcf786603be61e491df3f15aaae334e5e9 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -938,6 +938,8 @@
"इससे:<br><b>%1$s</b><br><br>इस डिवाइस से जोड़ें?""इसके साथ युग्मित करने के लिए:<br><b>%1$s</b><br><br>इस पर लिखें:<br><b>%2$s</b>, फिर Return या Enter दबाएं.""अपने संपर्क और कॉल इतिहास देखने की मंज़ूरी दें"
+ "जोड़ने के कोड का मिलान करें"
+ "देखें कि यह कोड, %1$s के कोड से मेल खाता है या नहीं.\n\nसुरक्षा को ध्यान में रखते हुए, इस कोड को कहीं और इस्तेमाल न करें.""%1$s से कनेक्ट नहीं किया जा सका.""डिवाइस के लिए स्कैन"
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 735d07a896d3f6a443bd8b2c4d01a375d830fee8..1a3f4c4ccf7efcce15c10c7b18cdb91b5e9ecaf7 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -955,6 +955,8 @@
"Od:<br><b>%1$s</b><br><br>Upariti se s ovim uređajem?""Za uparivanje s uređajem:<br><b>%1$s</b><br><br>upišite:<br><b>%2$s</b> na tom uređaju pa pritisnite tipke Return ili Enter.""Dopuštam pristup kontaktima i povijesti poziva"
+ "Provjerite kodove za uparivanje"
+ "Provjerite podudara li se ovaj kôd s kodom na uređaju %1$s.\n\nRadi vlastite sigurnosti, kôd nemojte nigdje unositi.""Nije moguće povezati se na %1$s.""Skeniranjem traži uređaje"
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 0735596b4427e57cea042833cca8c325e9365bd1..43bbc1911748ab59144e635995e9a5d0d6a41d6d 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -938,6 +938,8 @@
"Küldő:<br><b>%1$s</b><br><br>Párosítja a készüléket?""A(z) <br><b>%1$s</b><br><br> eszközzel való párosításhoz írja be rajta a következőt: <br><b>%2$s</b>, majd nyomja meg a Return vagy az Enter billentyűt.""Hozzáférést biztosít névjegyeihez és híváslistájához"
+ "Párosítókódok ellenőrzése"
+ "Ellenőrizze, hogy ez a kód egyezik-e a(z) %1$s eszközön lévővel.\n\nA biztonság érdekében ne adja meg ezt a kódot sehol sem.""Nem sikerült csatlakozni a következőhöz: %1$s.""Eszközök keresése"
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
index 6f2b8b18f953dc1fd2f02f0487706453c2394b41..2cd18f7e89d7e72d5c471beb9542df51e9b169db 100644
--- a/res/values-hy/strings.xml
+++ b/res/values-hy/strings.xml
@@ -938,6 +938,8 @@
"Ումից`<br><b>%1$s</b><br><br>Զուգավորվե՞լ այս սարքի հետ:""<br><b>%1$s</b><br><br>-ի հետ զուգավորելու համար մուտքագրեք`<br><b>%2$s</b>, այնուհետև սեղմեք հետդարձ կամ հաստատում:""Թույլատրել կոնտակտների ու զանգերի պատմության հասանելիությունը"
+ "Ստուգեք զուգակցման կոդերը"
+ "Ստուգեք՝ արդյոք այս կոդը համընկնում է %1$s սարքում նշվածի հետ։\n\nԱնվտանգության նկատառումներից ելնելով՝ այս կոդը ոչ մի տեղ մի մուտքագրեք։""Հնարավոր չեղավ միանալ %1$s-ին:""Սկանավորել սարքերի համար"
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index d1e71c20e1c8ffe2f3389604c64d90db499e72fc..9ca44d4ad301ad10ecd0cf77fb7c4fccad77660f 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -938,6 +938,8 @@
"Dari:<br><b>%1$s</b><br><br>Sambungkan dengan perangkat ini?""Untuk menyandingkan dengan:<br><b>%1$s</b><br><br>Ketikkan:<br><b>%2$s</b>, kemudian tekan Kembali atau Enter.""Izinkan akses ke kontak dan histori panggilan Anda"
+ "Periksa kode penyambungan"
+ "Periksa apakah kode ini cocok dengan kode yang ada di %1$s.\n\nDemi keamanan Anda, jangan masukkan kode ini di mana pun.""Tidak dapat terhubung ke %1$s.""Memindai perangkat"
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index 057efce2a2eeff491e28db9beb99916f9c2efcd0..67b15d57f4e1031667aa2b85268ec7ef60e4ccbb 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -938,6 +938,8 @@
"Frá:<br><b>%1$s</b><br><br>Para við þetta tæki?""Til að para við:<br><b>%1$s</b><br><br>Sláðu inn:<br><b>%2$s</b> og ýttu síðan á vendihnappinn eða Enter.""Veita aðgang að tengiliðum þínum og símtalaferli"
+ "Kanna pörunarkóða"
+ "Kannaðu hvort þessi kóði passar við kóðann í %1$s.\n\nÞér til öryggis skaltu ekki slá þennan kóða inn neins staðar.""Ekki tókst að tengjast %1$s.""Leita að tækjum"
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index af4e6790d46b7830fdfe72a22cc90e1aa9468817..5c5c24c215e32b5786775cb2cbba5ad3e49c6715 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -938,6 +938,8 @@
"Da:<br><b>%1$s</b><br><br>Accoppiare con questo dispositivo?""Per eseguire l\'accoppiamento con <br><b>%1$s</b><br><br>, digita sul dispositivo <br><b>%2$s</b>, quindi premi A capo o Invio.""Consenti l\'accesso ai tuoi contatti e alla cronologia chiamate"
+ "Controlla i codici di accoppiamento"
+ "Verifica se questo codice corrisponde a quello su %1$s.\n\nPer motivi di sicurezza, non inserire questo codice da nessuna parte.""Impossibile collegarsi a %1$s.""Cerca dispositivi"
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 8186d5e63c3a92c9fce6fd4df47f63cbe7fe001f..882d25fb156aa37e30cfc3b951578475e205d1c0 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -955,6 +955,8 @@
"מאת:<br><b>%1$s</b><br><br>לבצע התאמה עם מכשיר זה?""כדי להתאים עם:<br><b>%1$s</b><br><br>יש הקלד בו:<br><b>%2$s</b>, ולאחר מכן להקיש על Return או Enter.""אישור גישה אל אנשי הקשר והיסטוריית השיחות"
+ "צריך לבדוק את קודי ההתאמה"
+ "הקוד הזה והקוד במכשיר %1$s חייבים להיות זהים.\n\nמטעמי אבטחה, חשוב לא להזין את הקוד הזה בשום מקום.""לא הייתה אפשרות להתחבר אל %1$s.""חיפוש מכשירים"
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index db4d3ea6a46653e3a170f8c45b5fe6eebba53a9f..0d484e101b96503dc552a077b7f3c3b7764b578e 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -938,6 +938,8 @@
"発信元:<br><b>%1$s</b><br><br>このデバイスをペアに設定しますか?""<br><b>%1$s</b><br><br>をペアに設定するには、「<br><b>%2$s</b>」と入力してから、ReturnキーまたはEnterキーを押します。""連絡先と通話履歴へのアクセスを許可する"
+ "ペア設定コードの確認"
+ "このコードが %1$s のコードと一致していることを確認してください。\n\n安全のため、このコードをどこにも入力しないでください。""%1$sに接続できませんでした。""デバイスのスキャン"
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index 3e8b5e6ff36e07bff570ba0b86fd88f1dd9818a6..478aa18f015cbd433527434e22ec8c7b78ca99c5 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -938,6 +938,8 @@
"<br><b>%1$s</b><br><br>-ისგან. დაწყვილდეს ამ მოწყობილობასთან?""<br><b>%1$s</b><br><br>-თან დასაწყვილებლად დაბეჭდეთ მასზე:<br><b>%2$s</b>, შემდეგ დააწკაპუნეთ ღილაკზე Return ან Enter.""კონტაქტებსა და საუბრის ისტორიაზე წვდომის დაშვება"
+ "დაკავშირების კოდების შემოწმება"
+ "შეამოწმეთ, ემთხვევა თუ არა ეს კოდი %1$s-ისას.\n\nთქვენი უსაფრთხოებისთვის, ეს კოდი არსად არ შეიყვანოთ.""%1$s-თან დაკავშირება ვერ მოხერხდა.""სკანირება მოწყობილობების აღმოსაჩენად"
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index 723ac1b330c24ce1242f731653e77998f1d8b15f..272cb3f800c4764a2c23232ac3a12d0fa38615dc 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/strings.xml
@@ -938,6 +938,8 @@
"Келесі құрылғыдан:<br><b>%1$s</b><br><br>Осы құрылғымен жұпталсын ба?""Жұпталу үшін:<br><b>%1$s</b><br><br>Теріңіз:<br><b>%2$s</b>, одан кейін Оралу немесе Енгізу пәрменін басыңыз.""Контактілер мен қоңыраулар тарихына кіруге рұқсат беру"
+ "Жұптау кодтарын тексеріңіз"
+ "Бұл кодтың %1$s құрылғысындағы кодпен бірдей екенін тексеріңіз.\n\nҚауіпсіздікті сақтау үшін бұл кодты басқа жерде енгізбеңіз.""%1$s құрылғысына жалғану мүмкін болмады.""Құрылғыларды скандау"
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index 364f702a8c51f34be854db382244d3556fa7e74e..1ab4d6e0a7b5b0b86cb8b9d483742241182226f7 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -938,6 +938,8 @@
"ពី៖ <br><b>%1$s</b><br><br>ផ្គូផ្គងជាមួយឧបករណ៍នេះ?""ដើម្បីផ្គូផ្គងជាមួយ៖ <br><b>%1$s</b><br><br>វាយបញ្ចូល៖ <br><b>%2$s</b> បន្ទាប់មកចុច Return ឬ Enter ។""ផ្ដល់សិទ្ធិអនុញ្ញាតចូលប្រើទំនាក់ទំនង និងប្រវត្តិហៅទូរសព្ទរបស់អ្នក"
+ "ពិនិត្យមើលកូដផ្គូផ្គង"
+ "ពិនិត្យមើលថាតើកូដនេះត្រូវគ្នានឹងកូដនៅលើ %1$s។\n\nសម្រាប់សុវត្ថិភាពរបស់អ្នក សូមកុំបញ្ចូលកូដនេះនៅកន្លែងណាមួយឱ្យសោះ។""មិនអាចតភ្ជាប់ទៅ %1$s ។""វិភាគរកឧបករណ៍"
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index c48e2399d37d2dfce6d5d8b810e9003c5397cbad..b9c303aeaa992c22765cbfddb474d83e453990ac 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -938,6 +938,8 @@
"ಇದರಿಂದ:<br><b>%1$s</b><br><br>ಈ ಸಾಧನದೊಂದಿಗೆ ಜೋಡಿಸುವುದೇ?""ಇದರೊಂದಿಗೆ ಜೋಡಿಸಲು:<br><b>%1$s</b><br><br>ಇದರಲ್ಲಿ ಟೈಪ್ ಮಾಡಿ:<br><b>%2$s</b>, ನಂತರ ಹಿಂತಿರುಗು ಅಥವಾ ನಮೂದಿಸು ಒತ್ತಿರಿ.""ನಿಮ್ಮ ಸಂಪರ್ಕಗಳು ಮತ್ತು ಕರೆ ಇತಿಹಾಸಕ್ಕೆ ಪ್ರವೇಶವನ್ನು ಅನುಮತಿಸಿ"
+ "ಪೇರಿಂಗ್ ಕೋಡ್ಗಳನ್ನು ಪರಿಶೀಲಿಸಿ"
+ "ಈ ಕೋಡ್ %1$s ನಲ್ಲಿರುವ ಕೋಡ್ಗೆ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಿ.\n\nನಿಮ್ಮ ಸುರಕ್ಷತೆಗಾಗಿ, ಈ ಕೋಡ್ ಅನ್ನು ಎಲ್ಲಿಯೂ ನಮೂದಿಸಬೇಡಿ.""%1$s ಗೆ ಸಂಪರ್ಕಪಡಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ.""ಸಾಧನಗಳಿಗಾಗಿ ಸ್ಕ್ಯಾನ್ ಮಾಡು"
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 6e89fdffa64582dfcc8c25f30da0e82de877a350..91a606fabc74500f82a1204a1b4d2c0d6eab64da 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -938,6 +938,8 @@
"출처:<br><b>%1$s</b><br><br>이 기기와 페어링하시겠습니까?""<br><b>%1$s</b><br><br>와(과) 페어링하려면 <br><b>%2$s</b>을(를) 입력한 다음 Return 또는 Enter 키를 누르세요.""연락처 및 통화 기록 액세스 허용"
+ "페어링 코드를 확인하세요"
+ "이 코드가 %1$s에 표시된 코드와 일치하는지 확인하세요.\n\n보안을 위해 이 코드를 어디에도 입력하지 마세요.""%1$s에 연결할 수 없습니다.""장치 검색"
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index 32332b3a8c08a612a96cfc66e3ba6d1da3fb39be..93ff1817f2825339b6baab25c30fc4f5badf443a 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -938,6 +938,8 @@
"Жөнөтүүчү:<br><b>%1$s</b><br><br>Бул түзмөк менен туташсынбы?""Кийинки менен туташуу үчүн:<br><b>%1$s</b><br><br>Андан муну терип:<br><b>%2$s</b>, Return же Enter\'ди басыңыз.""Байланыштар менен чалууларды жеткиликтүү кылуу"
+ "Байланыштыруучу коддорду текшериңиз"
+ "Бул код %1$s түзмөгүндөгү кодго дал келерин текшериңиз.\n\nКоопсуздугуңуз үчүн бул кодду эч жерге киргизбеңиз.""%1$s менен байланыша албай жатат.""Түзмөктөрдү издөө"
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index 602f23fc2c976801d9cbb150731045fa57a4f27b..6eff4e3bd08a8a2c0e5b67e59b05dc537bb580b7 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -938,6 +938,8 @@
"ຈາກ:<br><b>%1$s</b><br><br>ຈັບຄູ່ກັບອຸປະກອນນີ້ບໍ່?""ເພື່ອຈັບຄູ່ກັບ:<br><b>%1$s</b><br><br>ໃຫ້ພິມ:<br><b>%2$s</b>, ຈາກນັ້ນກົດ Return ຫຼື Enter.""ອະນຸຍາດໃຫ້ເຂົ້າເຖິງລາຍຊື່ຜູ້ຕິດຕໍ່ ແລະ ປະຫວັດການໂທຂອງທ່ານ"
+ "ກວດເບິ່ງລະຫັດການຈັບຄູ່"
+ "ກວດເບິ່ງວ່າລະຫັດນີ້ກົງກັບອັນທີ່ຢູ່ໃນ %1$s ຫຼືບໍ່.\n\nເພື່ອຄວາມປອດໄພຂອງທ່ານ, ຢ່າປ້ອນລະຫັດນີ້ໃສ່ບ່ອນໃດໆ.""ບໍ່ສາມາດເຊື່ອມຕໍ່ຫາ %1$s ໄດ້.""ສະແກນຫາອຸປະກອນ"
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 9e1e9fc1177f715e1606a665312cb8f97945d49c..fbc4eb2d59398a86ff595b34e39d9b5d4b4c2859 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -972,6 +972,8 @@
"Iš:<br><b>%1$s</b><br><br>Poruoti su šiuo įrenginiu?""Susieti su: <br><b>%1$s</b><br><br> Įveskite: <br><b>%2$s</b>, tada paspauskite „Grįžti“ arba „Enter“.""Leisti pasiekti jūsų kontaktus ir skambučių istoriją"
+ "Patikrinkite susiejimo kodus"
+ "Patikrinkite, ar šis kodas atitinka kodą „%1$s“ įrenginyje.\n\nSaugos sumetimais niekur neįveskite šio kodo.""Nepavyko prisijungti prie „%1$s“.""Nuskaityti ieškant įrenginių"
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index f26531ef14bf8bb1ced58634d6d8a1ad09a31a6b..6d2366428e71c86fcef12e508612c813c6e16c5c 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -955,6 +955,8 @@
"No:<br><b>%1$s</b><br><br>Vai savienot pārī ar šo ierīci?""Lai izveidotu savienojumu pārī ar ierīci <br><b>%1$s</b><br><br>, ierakstiet tajā atslēgu <br><b>%2$s</b> un pēc tam nospiediet ievadīšanas taustiņu.""Atļaut piekļuvi jūsu kontaktpersonām un zvanu vēsturei"
+ "Pārbaudiet kodus savienošanai pārī"
+ "Pārbaudiet, vai šis kods atbilst kodam, kas redzams ierīcē %1$s.\n\nDrošības nolūkos nekur neievadiet šo kodu.""Nevarēja izveidot savienojumu ar ierīci %1$s.""Skenēt ierīces"
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index 45c1c6f4cb9248ceee7fafa4e5b5c1bb143a827a..a1627b2e7b0ae919ce555bdc9350b3b912f3efa0 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -938,6 +938,8 @@
"Од:<br><b>%1$s</b><br><br>Спари се со овој уред?""За да се спари со:<br><b>%1$s</b><br><br>Напишете на него:<br><b>%2$s</b>, потоа притиснете „Врати“ или „Внеси“.""Дозволете пристап до вашите контакти и историјата на повици"
+ "Проверете ги кодовите за спарување"
+ "Проверете дали кодов се совпаѓа со оној на %1$s.\n\nЗа ваша безбедност, не внесувајте го кодов никаде.""Не може да се поврзе со %1$s.""Скенирај за уреди"
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index 99347ca147c1f2aea0b8098db97a245158a7f066..387d84097c8a07742a925cac3996ea2df2d39f83 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -938,6 +938,8 @@
"ഇതിൽ നിന്ന്:<br><b>%1$s</b><br><br>ഈ ഉപകരണവുമായി ജോടിയാക്കണോ?""ഇതുമായി ജോടിയാക്കുക:<br><b>%1$s</b><br><br>ഇതിൽ ടൈപ്പുചെയ്യുക:<br><b>%2$s</b>, തുടർന്ന് മടങ്ങുക അല്ലെങ്കിൽ നൽകുക അമർത്തുക.""കോൺടാക്റ്റുകളിലേക്കും കോൾ ചരിത്രത്തിലേക്കും ആക്സസ് അനുവദിക്കുക"
+ "ജോടിയാക്കൽ കോഡ് പരിശോധിക്കുക"
+ "%1$s എന്നതിലുള്ള കോഡുമായി ഈ കോഡ് പൊരുത്തപ്പെടുന്നുണ്ടോയെന്ന് പരിശോധിക്കുക.\n\nനിങ്ങളുടെ സുരക്ഷയ്ക്കായി, ഈ കോഡ് എവിടെയും നൽകരുത്.""%1$s എന്നതിലേക്ക് കണക്റ്റുചെയ്യാനായില്ല.""ഉപകരണങ്ങൾക്കായി സ്കാൻ ചെയ്യുക"
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index 514a77c440ddf9624f27e099123bcb747b0154d7..9a9b964ffa8bbb9bd26b4e159d6702b1c8db0e65 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -938,6 +938,8 @@
"Юунаас:<br><b>%1$s</b><br><br>Энэ төхөөрөмжтэй хослуулах уу?""<br><b>%1$s</b><br><br>-тай хослуулахын тулд дээр нь <br><b>%2$s</b>-г оруулаанд Буцах буюу Оруулах товчийг дарна уу.""Харилцагч болон дуудлагын түүхийн хандалтыг зөвшөөрөх"
+ "Хослуулах кодуудыг шалгана уу"
+ "Энэ код %1$s дээрх кодтой таарч байгаа эсэхийг шалгана уу.\n\nАюулгүй байдлынхаа үүднээс энэ кодыг хаана ч бүү оруулаарай.""%1$s-д холбогдож чадсангүй.""Төхөөрөмжүүдийг скан хийх"
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index 0e84f7b9d758f6c705ab9a299eabfb342745446a..59e2fd668971eb803ec813df6343ed6028750d5d 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -938,6 +938,8 @@
"यावरून:<br><b>%1$s</b><br><br>हे डिव्हाइस जोडायचे?""यासह जोडण्यासाठी:<br><b>%1$s</b><br><br>यावर टाइप करा:<br><b>%2$s</b>, नंतर Return किंवा एंटर प्रेस करा.""तुमच्या संपर्क आणि कॉल इतिहासातील अॅक्सेसची अनुमती द्या"
+ "पेअरिंग कोड तपासणे"
+ "हा कोड %1$s वर असणाऱ्या कोडशी जुळतो की नाही ते तपासा.\n\nतुमच्या सुरक्षिततेसाठी, हा कोड कुठेही टाकू नका.""%1$s सह कनेक्ट करणे शक्य झाले नाही.""डिव्हाइसेससाठी स्कॅन करा"
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index 53b8d696415034dc67a1fc0028c09b85e072e0d6..139842d91169ba1dc20b4447b21fd9779885a624 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -938,6 +938,8 @@
"Dari:<br><b>%1$s</b><br><br>Jadikan pasangan peranti ini?""Untuk berpasangan dengan:<br><b>%1$s</b><br><br>Taip padanya:<br><b>%2$s</b>, kemudian tekan Kembali atau Enter.""Benarkan akses kepada kenalan dan sejarah panggilan anda"
+ "Semak kod gandingan"
+ "Semak sama ada kod ini sepadan dengan kod pada %1$s atau tidak.\n\nUntuk keselamatan anda, jangan masukkan kod ini di mana-mana tempat lain.""Tidak dapat menyambung ke %1$s.""Imbas untuk mengesan peranti"
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index 36baa601fbc446daf2eb290eb1640b01aed36c46..adebf035ca45e699ad955491fd3c4ec6fd50b38c 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -938,6 +938,8 @@
":<br><b>%1$s</b><br><br>မှ ဤစက်နှင့်တွဲချိတ်မည်လား"":<br><b>%1$s</b><br><br>နှင့်ချိတ်တွဲရန်:<br><b>%2$s</b>ကိုရိုက်ထည့်ကာ, Return သို့မဟုတ် Enterကိုနှိပ်ပါ""သင်၏ အဆက်အသွယ်များနှင့် ယခင်ခေါ်ဆိုမှုမှတ်တမ်းသို့ ဝင်ခွင့်ပြုပါ"
+ "တွဲချိတ်ကုဒ်များကို စစ်ဆေးပါ"
+ "ဤကုဒ်သည် %1$s ရှိ ကုဒ်နှင့် တူမတူ စစ်ကြည့်ပါ။\n\nသင့်လုံခြုံမှုအတွက် ဤကုဒ်ကို မည်သည့်နေရာတွင်မျှ မထည့်ပါနှင့်။""%1$s ကို ချိတ်ဆက်မရပါ။""စက်များကိုရှာဖွေရန် စကင်ပြုလုပ်နေသည်"
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 5053c48d516648df2c8f7274fcafd99fce7706ba..46e3a353728a26d45a1baa8ac6a390c3621cc5dd 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -938,6 +938,8 @@
"Fra:<br><b>%1$s</b><br><br>Vil du koble til denne enheten?""Sånn kobler du til: <br><b>%1$s</b><br><br> Skriv inn følgende: <br><b>%2$s</b>, og trykk deretter på Retur eller Enter.""Gi tilgang til kontaktene dine og anropsloggen din"
+ "Sjekk sammenkoblingskoder"
+ "Sjekk om denne koden samsvarer med koden på %1$s.\n\nAv sikkerhetshensyn må du ikke skrive inn denne koden noe sted.""Kunne ikke koble til %1$s.""Let etter enheter"
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index 250444b427e9a5df11ce241a8f49e098a7740e05..1ad736de4b1b20a50d973250e2818dc1d3d23ee2 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/strings.xml
@@ -938,6 +938,8 @@
"बाट: <br> <b> %1$s </ b> यस उपकरणका साथ जोडा बाँध्ने हो?""<br><b>%1$s</b><br><br>सँग जोडी गर्न यसमा टाइप गर्नुहोस्: <br><b>%2$s</b> अनि रिटर्न वा इन्टर थिच्नुहोस्।""आफ्ना सम्पर्क ठेगाना र फोन सम्पर्कको इतिहास हेर्ने अनुमति दिनुहोस्"
+ "कनेक्सन कोडहरू जाँच्नुहोस्"
+ "यो कोड %1$s मा भएको कोडसँग ठ्याक्कै मिल्छ कि मिल्दैन जाँच्नुहोस्।\n\nतपाईंको सुरक्षाका लागि जुनसुकै ठाउँमा यो कोड नहाल्नुहोस्।""%1$s उपकरणसँग जडान गर्न सकेन।""उपकरणहरूको लागि स्क्यान गर्नुहोस्"
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 7293e7933d1ceaf69583679bc371903e347dfcac..628be768fa2a0f66545ef3cc45210f9a8956032b 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -938,6 +938,8 @@
"Van:<br><b>%1$s</b><br><br>Koppelen met dit apparaat?""Koppelen met:<br><b>%1$s</b><br><br>Typ het volgende:<br><b>%2$s</b> en druk op Enter.""Toegang geven tot je contacten en gespreksgeschiedenis"
+ "Koppelingscodes checken"
+ "Check of deze code overeenkomt met de code op de %1$s.\n\nVoer deze code nergens in.""Kan geen verbinding maken met %1$s.""Zoeken naar apparaten"
diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml
index 0524414bd1aa607a2fc12ad06387e96ea26d5c6d..7c171c7c54faf35107d3bc7529291f7abb64c940 100644
--- a/res/values-or/strings.xml
+++ b/res/values-or/strings.xml
@@ -938,6 +938,8 @@
"ଏହାଙ୍କ ପାଖରୁ:<br><b>%1$s</b><br><br>ଏହି ଡିଭାଇସ୍ ସହ ପେୟାର୍ କରିବେ?""ପେୟାର୍ କରିବା ପାଇଁ:<br><b>%1$s</b><br><br>ଏହା ଉପରେ ଟାଇପ୍ କରନ୍ତୁ:<br><b>%2$s</b>, ତା’ପରେ ରିଟର୍ନ କିମ୍ୱା ଏଣ୍ଟର୍ ଦାବନ୍ତୁ।""ଆପଣଙ୍କ କଣ୍ଟାକ୍ଟ ଓ କଲ ହିଷ୍ଟୋରୀକୁ ଆକ୍ସେସ କରିବାର ଅନୁମତି ଦିଅନ୍ତୁ"
+ "ପେୟାରିଂ କୋଡଗୁଡ଼ିକୁ ଯାଞ୍ଚ କରନ୍ତୁ"
+ "ଏହି କୋଡଟି %1$sରେ ଥିବା କୋଡ ସହ ମେଳ ଖାଉଛି ନା ନାହିଁ ତାହା ଯାଞ୍ଚ କରନ୍ତୁ।\n\nଆପଣଙ୍କ ସୁରକ୍ଷା ପାଇଁ, ଏହି କୋଡକୁ ଯେ କୌଣସି ସ୍ଥାନରେ ଲେଖନ୍ତୁ ନାହିଁ।""%1$s ସହ ସଂଯୋଗ ସ୍ଥାପନା କରିପାରୁନାହିଁ।""ଡିଭାଇସ୍ଗୁଡ଼ିକୁ ଖୋଜ"
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
index 5a815cde33428beec177532adecded6969c83a35..71e88b64fd6988df71029d4d36db60d1f6032387 100644
--- a/res/values-pa/strings.xml
+++ b/res/values-pa/strings.xml
@@ -938,6 +938,8 @@
"ਇਸਤੋਂ:<br><b>%1$s</b><br><br>ਕੀ ਇਸ ਡੀਵਾਈਸ ਨਾਲ ਜੋੜਾਬੱਧ ਕਰਨਾ ਹੈ?""ਇਸ ਨਾਲ ਜੋੜਾਬੱਧ ਕਰਨ ਲਈ:<br><b>%1$s</b><br><br>ਇਸਤੇ ਟਾਈਪ ਕਰੋ:<br><b>%2$s</b>, ਫਿਰ \'ਵਾਪਸ ਜਾਓ\' ਜਾਂ \'ਦਾਖਲ ਕਰੋ\' ਕੁੰਜੀ ਨੂੰ ਦਬਾਓ।""ਆਪਣੇ ਸੰਪਰਕਾਂ ਅਤੇ ਕਾਲ ਇਤਿਹਾਸ \'ਤੇ ਪਹੁੰਚ ਕਰਨ ਦਿਓ"
+ "ਜੋੜਾਬੱਧਕਰਨ ਕੋਡਾਂ ਦੀ ਜਾਂਚ ਕਰੋ"
+ "ਜਾਂਚ ਕਰੋ ਕਿ ਕੀ ਇਹ ਕੋਡ %1$s \'ਤੇ ਮੌਜੂਦ ਕੋਡ ਨਾਲ ਮੇਲ ਖਾਉਂਦਾ ਹੈ ਜਾਂ ਨਹੀਂ।\n\nਆਪਣੀ ਸੁਰੱਖਿਆ ਲਈ, ਇਸ ਕੋਡ ਨੂੰ ਕਿਤੇ ਵੀ ਦਾਖਲ ਨਾ ਕਰੋ।""%1$sਨਾਲ ਕਨੈਕਟ ਨਹੀਂ ਕਰ ਸਕਿਆ।""ਡਿਵਾਈਸਾਂ ਲਈ ਸਕੈਨ ਕਰੋ"
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 11da83256d04bf3469121bb44c1b6c26f9a05f60..772c7ee605b249ff0fc4d5ed2f1042fd3a8ec59b 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -972,6 +972,8 @@
"Od:<br><b>%1$s</b><br><br>Sparować z tym urządzeniem?""Aby sparować z urządzeniem <br><b>%1$s</b><br><br>, wpisz na nim klucz <br><b>%2$s</b>, a następnie naciśnij klawisz zatwierdzania.""Zezwól na dostęp do kontaktów i historii połączeń"
+ "Sprawdź kody parowania"
+ "Sprawdź, czy ten kod jest taki sam, jak na urządzeniu %1$s.\n\nZe względów bezpieczeństwa nie wpisuj nigdzie tego kodu.""Nie udało się nawiązać połączenia z %1$s.""Wyszukaj urządzenia"
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index 7708d55345174746e25fdcf8a7c6fb9a9d92976d..db8c6eed533ebc7ebd68bb099f5d4645eb49f567 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -938,6 +938,8 @@
"De:<br><b>%1$s</b><br><br>Parear com este dispositivo?""Para parear com:<br><b>%1$s</b><br><br>Digite no dispositivo:<br><b>%2$s</b>. Em seguida, pressione Voltar ou Entrar.""Permitir o acesso aos seus contatos e seu histórico de ligações"
+ "Verificar códigos de pareamento"
+ "Verifique se o código é igual ao que aparece no %1$s.\n\nPara sua segurança, não digite esse código em nenhum lugar.""Não foi possível conectar ao %1$s.""Procurar dispositivos"
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 0d029657b7b8d9caa49c3913f665293b79564d50..b00a9ec939a8673d97b88844ab2e3515e1a182b6 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -938,6 +938,8 @@
"De: <br><b>%1$s</b><br><br> Sincronizar com este aparelho?""Para sincronizar com:<br><b>%1$s</b><br><br>Introduza no mesmo:<br><b>%2$s</b> e, em seguida, prima Enter.""Permitir o acesso aos contactos e ao histórico de chamadas"
+ "Verifique os códigos de sincronização"
+ "Verifique se este código corresponde ao que está no dispositivo %1$s.\n\nPara sua segurança, não introduza este código em lado algum.""Não foi possível ligar a %1$s.""Procurar dispositivos"
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 7708d55345174746e25fdcf8a7c6fb9a9d92976d..db8c6eed533ebc7ebd68bb099f5d4645eb49f567 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -938,6 +938,8 @@
"De:<br><b>%1$s</b><br><br>Parear com este dispositivo?""Para parear com:<br><b>%1$s</b><br><br>Digite no dispositivo:<br><b>%2$s</b>. Em seguida, pressione Voltar ou Entrar.""Permitir o acesso aos seus contatos e seu histórico de ligações"
+ "Verificar códigos de pareamento"
+ "Verifique se o código é igual ao que aparece no %1$s.\n\nPara sua segurança, não digite esse código em nenhum lugar.""Não foi possível conectar ao %1$s.""Procurar dispositivos"
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 061664c857d6540b13cd2a03938330f973687c9d..255443f2f610b36f993709af69f032332dd95aa4 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -955,6 +955,8 @@
"De la:<br><b>%1$s</b><br><br>Asociezi cu acest dispozitiv?""Pentru împerecherea cu:<br><b>%1$s</b><br><br>Introdu pe acesta:<br><b>%2$s</b>, apoi apasă tasta Return sau Enter.""Permite accesul la agendă și la istoricul apelurilor"
+ "Verifică codurile de conectare"
+ "Verifică dacă acest cod corespunde cu cel de pe %1$s.\n\nPentru siguranța ta, nu introduce acest cod nicăieri.""Nu s-a putut conecta la %1$s.""Scanează pentru a detecta dispozitive"
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 1d35313548dd72429f38a883686dd31f7103eac5..0f641a03acf7cf980495726aa574eecd8954ab92 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -972,6 +972,8 @@
"Запрос от: <br><b>%1$s</b><br><br>Подключиться к этому устройству?""Для подключения к устройству <br><b>%1$s</b><br><br> введите на нем код <br><b>%2$s</b>, а затем нажмите клавишу Return или Enter.""Разрешить доступ к контактам и журналу звонков"
+ "Сравните коды подключения"
+ "Проверьте, совпадает ли ваш код с кодом на устройстве \"%1$s\".\n\nВ целях безопасности нигде не вводите этот код.""Не удалось подключиться к %1$s.""Поиск устройств"
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index 889eebe3cb53de79c8019a2f7f765021d6515a90..2e3abde60865bfaf9327f6a31598b7c15d0f968e 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -938,6 +938,8 @@
"වෙතින්:<br><b>%1$s</b><br><br>මෙම උපාංගය සමඟ යුගල කරන්නද?""<br><b>%1$s</b><br><br>: සමඟ යුගල කිරීමට එය මත <br><b>%2$s</b>: ටයිප් කරන්න, ඉන්පසු Return හෝ Enter ඔබන්න.""ඔබගේ සම්බන්ධතා සහ ඇමතුම් ඉතිහාසය වෙත ප්රවේශ විමට ඉඩ දෙන්න"
+ "යුගල කිරීමේ කේත පරීක්ෂා කරන්න"
+ "මෙම කේතය %1$s හි ඇති එකට ගැළපෙනවා දැයි පරීක්ෂා කරන්න.\n\nඔබේ ආරක්ෂාව සඳහා, මෙම කේතය කොතැනකවත් ඇතුළු නොකරන්න.""%1$s වෙත සම්බන්ධ වීමට නොහැකි විය.""උපාංග සඳහා පරිලෝකනය කරන්න"
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 8dd857e9e1691325694d3a36300c388ea52e1385..af7c05f3e3b1b72fe8c1b23aa1b294dc48ca1208 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -972,6 +972,8 @@
"Zo zariadenia:<br><b>%1$s</b><br><br>Párovať s týmto zariadením?""Ak chcete svoje zariadenie spárovať so zariadením <br><b>%1$s</b><br><br>, zadajte na ňom kód <br><b>%2$s</b> a stlačte kláves Enter.""Povoliť prístup ku kontaktom a histórii hovorov"
+ "Skontrolujte párovacie kódy"
+ "Skontrolujte, či sa tento kód zhoduje s kódom v zariadení %1$s.\n\nV záujme svojej bezpečnosti tento kód nikde nezadávajte.""Nepodarilo sa pripojiť k zariadeniu %1$s.""Vyhľadať zariadenia"
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 184aee434ffd35ae6fd5436fb4ebb0a1cc3ab395..73b56b0e66463bdc246e77fc9339c78b22813107 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -972,6 +972,8 @@
"Od:<br><b>%1$s</b><br><br>Ali se želite povezati s to napravo?""Če želite vzpostaviti povezavo z napravo:<br><b>%1$s</b><br><br>V njej vnesite:<br><b>%2$s</b> in pritisnite Return ali Enter.""Dovoli dostop do stikov in zgodovine klicev"
+ "Preverjanje kod za seznanjanje"
+ "Preverite, ali se ta koda ujema s kodo v napravi %1$s.\n\nZaradi varnosti te kode ne vnašajte nikjer.""Povezave z napravo %1$s ni bilo mogoče vzpostaviti.""Išči naprave"
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index dea9f81cbab2819dad84974acc9b725408bb274e..b555dce4fca885a9a34bb04453d8ac4d34f55362 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -938,6 +938,8 @@
"Nga:<br><b>%1$s</b><br><br>Të çiftohet me këtë pajisje?""Për ta çiftuar me:<br><b>%1$s</b><br><br>Shkruaj në të:<br><b>%2$s</b> dhe më pas shtyp Kthehu ose Hyr.""Lejo qasjen te kontaktet dhe historiku i telefonatave"
+ "Kontrollo kodet e çiftimit"
+ "Kontrollo nëse ky kod përputhet me kodin në %1$s.\n\nPër sigurinë tënde, mos e fut askund këtë kod.""Nuk mundi të lidhej me %1$s.""Skano për pajisje"
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 5e261c0a31e5184486da2d741da8be23c851b0cb..1bc1a13e16975ff40110cf6903f091fd9df967b4 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -955,6 +955,8 @@
"Са уређаја:<br><b>%1$s</b><br><br>Желите ли да се упарите са тим уређајем?""За упаривање са уређајем:<br><b>%1$s</b><br><br>Унесите на њему:<br><b>%2$s</b>, а затим притисните Return или Enter.""Дозволи приступ контактима и историји позива"
+ "Проверите кôд за упаривање"
+ "Проверите да ли се овај кôд подудара са оним на уређају %1$s.\n\nИз безбедносних разлога не уносите нигде овај кôд.""Није могуће повезати се са уређајем %1$s.""Скенирање за уређаје"
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index f94326fc8388cff796fc2595cd250b3cfcdb143f..40a7830c948e7dcf3b3b41384b8b583e03e97b8d 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -938,6 +938,8 @@
"Från:<br><b>%1$s</b><br><br>Vill du koppla den till enheten?""Koppla till:<br><b>%1$s</b><br><br>Skriv:<br><b>%2$s</b> och tryck sedan på Retur.""Tillåt åtkomst till kontakter och sökhistorik"
+ "Kontrollera kopplingskoder"
+ "Kontrollera att koden stämmer överens med den på %1$s.\n\nAnge inte den här koden någonstans av säkerhetsskäl.""Det gick inte att ansluta till %1$s.""Sök efter enheter"
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 49ee182284cea5aadf89a90c46690f415c613bbe..3d0468268c38a2ba313a6d02f09fe64ec35047e0 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -938,6 +938,8 @@
"From:<br><b>%1$s</b><br><br>Llinganisha na kifaa hiki?""Kulinganisha na: <br><b>%1$s</b><br><br> Andika: <br><b>%2$s</b>, kisha bonyeza Rejea au Ingiza.""Ruhusu ufikiaji wa anwani na historia ya simu ulizopiga"
+ "Angalia misimbo ya kuunganisha"
+ "Angalia kama msimbo huu unalingana na ulio kwenye %1$s.\n\nKwa usalama wako, usiweke msimbo huu popote.""Haikuweza kuunganisha kwa %1$s.""Chunguza vifaa"
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index f70f515ff547b9442c4f350e818eb856c61d1f15..0d3ea6311416558748df93273687de6b9838f307 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -938,6 +938,8 @@
"பின்வருவதில் இருந்து:<br><b>%1$s</b><br><br>இந்தச் சாதனத்தை இணைக்கவா?""இதனுடன் இணைக்க:<br><b>%1$s</b><br><br>இதை உள்ளிடவும்:<br><b>%2$s</b>, Return அல்லது Enter ஐ அழுத்தவும்.""உங்கள் தொடர்புகள் மற்றும் அழைப்புப் பதிவை அணுக அனுமதிக்கவும்"
+ "இணைத்தல் குறியீடுகளைச் சரிபார்த்தல்"
+ "இந்தக் குறியீடு %1$s சாதனத்தில் உள்ள குறியீட்டுடன் பொருந்துகிறதா எனப் பார்க்கவும்.\n\nஉங்கள் பாதுகாப்பிற்காக, இந்தக் குறியீட்டை வேறெங்கும் டைப் செய்ய வேண்டாம்.""%1$s உடன் இணைக்க முடியவில்லை.""சாதனங்களுக்கு ஸ்கேன் செய்"
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index 4e7b52e8122dc1e81931974708835e83059ab72c..3668dab4401574b3df093f9b23ab87dc5612c208 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -938,6 +938,8 @@
"దీని నుండి:<br><b>%1$s</b><br><br>ఈ పరికరంతో జత చేయాలా?""దీనితో జత చేయడానికి:<br><b>%1$s</b><br><br>దీనిలో టైప్ చేయండి:<br><b>%2$s</b>, ఆపై తిరిగి వెళ్లు లేదా Enter నొక్కండి.""మీ కాంటాక్ట్లకు, కాల్ హిస్టరీకి యాక్సెస్ను అనుమతించండి"
+ "పెయిరింగ్ కోడ్లను చెక్ చేయండి"
+ "ఈ కోడ్, %1$sలో ఉన్న దానితో సరిపోతుందో లేదో చెక్ చేయండి.\n\nమీ భద్రతా కారణాల దృష్ట్యా, ఈ కోడ్ను ఎక్కడా ఎంటర్ చేయకండి.""%1$sకి కనెక్ట్ చేయడం సాధ్యపడలేదు.""పరికరాల కోసం స్కాన్ చేయి"
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 2952b42fc1ae5c25c76ca3519ab38e31682ab06d..72d0e7b5db369aa8364ab7cb58b3b67048bbed46 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -938,6 +938,8 @@
"จาก:<br><b>%1$s</b><br><br>จับคู่กับอุปกรณ์นี้หรือไม่""ในการจับคู่กับ: <br><b>%1$s</b><br><br> ให้พิมพ์: <br><b>%2$s</b> แล้วกด Return หรือ Enter""ให้สิทธิ์เข้าถึงรายชื่อติดต่อและประวัติการโทร"
+ "ตรวจสอบรหัสการจับคู่"
+ "ตรวจสอบว่ารหัสนี้ตรงกับรหัสใน %1$s หรือไม่\n\nเพื่อความปลอดภัย โปรดอย่าป้อนรหัสนี้ที่ใดก็ตาม""ไม่สามารถเชื่อมต่อกับ %1$s""สแกนหาอุปกรณ์"
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index bdb43eed0c82a4e3218b10d8704e342316a4a246..d36ef46b87b7764544eb73c4fdc5ecfb6e62ba98 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -938,6 +938,8 @@
"Mula sa:<br><b>%1$s</b><br><br>Makipagpares sa device na ito?""Upang ipares sa:<br><b>%1$s</b><br><br>Mag-type dito:<br><b>%2$s</b>, pagkatapos ay pindutin ang Return o Enter.""Payagan ang access sa iyong mga contact at history ng tawag"
+ "Tingnan ang mga code ng pagpapares"
+ "Tingnan kung tumutugma ang code na ito sa code na nasa %1$s.\n\nPara sa iyong seguridad, huwag ilagay ang code na ito kahit saan.""Hindi makakonekta sa %1$s.""Mag-scan para sa mga device"
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 542abfa6cf8792d7e72eadbfd6c5a45a2a134061..69ea4ab14dfcec14d7d96c96f376940d5fc9fbf5 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -938,6 +938,8 @@
"Kaynak:<br><b>%1$s</b><br><br>Bu cihaz ile eşlensin mi?""<br><b>%1$s</b><br><br> ile eşlemek için cihaz üzerinde <br><b>%2$s</b> yazarak Return veya Enter tuşuna basın.""Kişilerime ve çağrı geçmişime erişime izin ver"
+ "Eşleme kodlarını kontrol edin"
+ "Bu kodun %1$s adlı cihazdaki kodla eşleşip eşleşmediğini kontrol edin.\n\nGüvenliğiniz için bu kodu hiçbir yere girmeyin.""%1$s adlı cihaza bağlanılamadı.""Cihazları tara"
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index 43e991d3b6c831e64fa0352b2f8a5750ddabcdbf..e6db91ca0ef7e74a142a67fd8936434e8a83e7be 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -972,6 +972,8 @@
"Від пристрою:<br><b>%1$s</b><br><br>Створити пару з цим пристроєм?""Щоб створити пару з пристроєм: <br><b>%1$s</b><br><br> Введіть на ньому: <br><b>%2$s</b>, а потім натисніть \"Повернутися\" або \"Ввійти\".""Дозволити доступ до контактів та історії викликів"
+ "Перевірте коди зв’язування"
+ "Перевірте, чи цей код збігається з кодом на пристрої \"%1$s\".\n\nЗ міркувань безпеки ніде не вводьте цей код.""Не вдалося з’єднатися з пристроєм %1$s.""Сканув. пристроїв"
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index eac5b1e9e6f1730cc92da4d07099d810c97eaa17..c2f0dead9e37535b0b121b565eab6bd10aa4cd58 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -938,6 +938,8 @@
"منجانب:<br><b>%1$s</b><br><br>اس آلہ کے ساتھ جوڑا بنائیں؟""اس کے ساتھ جوڑا بنانے کیلئے:<br><b>%1$s</b><br><br>اس پر ٹائپ کریں:<br><b>%2$s</b>, پھر واپس جائیں یا انٹر کریں کو دبائیں۔""اپنے رابطوں اور کال کی سرگزشت تک رسائی کی اجازت دیں"
+ "جوڑا بنانے کے کوڈز چیک کریں"
+ "چیک کریں کہ آیا یہ کوڈ %1$s پر موجود کوڈ سے مماثل ہے۔\n\nاپنی سیکیورٹی کیلئے، یہ کوڈ کسی بھی جگہ درج نہ کریں۔""%1$s سے مربوط نہیں ہو سکا۔""آلات کیلئے اسکین کریں"
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index bf29e0fb25debcd6e230f48b723875a4ed0260d5..9971d90d9b9786bb2f109d54decdc17f020e3c1e 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -938,6 +938,8 @@
"<br><b>%1$sdan so‘rov</b><br><br>Ushbu qurilma bilan biriktirilsinmi?""<br><b>%1$s</b><br><br>bilan biriktirish uchun, uni ekranida:<br><b>%2$s</b> terib, Return yoki Enter tugmalarini bosing.""Kontakt va chaqiruvlar tarixiga ruxsat berish"
+ "Ulanish kodlarini tekshirish"
+ "Bu kod %1$s qurilmasidagi kod bilan mos kelishini tekshiring.\n\nXavfsizligingiz uchun bu kodni hech qayerga kiritmang.""%1$sga o‘zaro bog‘lanmadi.""Qurilmalarni izlash"
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index 4ecf2db867f5b46e74d3eb8700f6a0ea5202964c..faf025b5ba7969ee1b03c2d35e09ccffb2c97921 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -938,6 +938,8 @@
"Từ:<br><b>%1$s</b><br><br>Ghép nối với thiết bị này?""Để ghép nối với:<br><b>%1$s</b><br><br>Hãy nhập trên thiết bị:<br><b>%2$s</b> rồi nhấn Quay lại hoặc Enter.""Cho phép truy cập vào danh bạ và nhật ký cuộc gọi của bạn"
+ "Kiểm tra mã ghép nối"
+ "Kiểm tra xem mã này có khớp với mã trên %1$s hay không.\n\nĐể bảo mật, bạn không nên nhập mã này ở bất cứ đâu.""Không thể kết nối với %1$s.""Dò tìm thiết bị"
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 955a38c050a288d55eeafca0f1d8dd86b1589444..2710794ec68229a6d648e4912fe99d43f4e5ca7f 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -938,6 +938,8 @@
"来自:<br><b>%1$s</b><br><br>要与此设备配对吗?""要与 <br><b>%1$s</b><br><br> 设备配对,请在该设备上键入:<br><b>%2$s</b>,然后按回车键。""允许访问您的通讯录和通话记录"
+ "检查配对码"
+ "请检查此代码是否与“%1$s”上的代码相符。\n\n为安全起见,请勿在任何位置输入此代码。""无法连接到%1$s。""扫描设备"
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 52afd99c5f6e1ab8c112cbbc89cf37740d62b644..e3d0ae6e81080bdaa7ddd84a1a6dc64f38b0f105 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -938,6 +938,8 @@
"來自:<br><b>%1$s</b><br><br>要與這部裝置配對嗎?""如要與 <br><b>%1$s</b><br><br> 配對,請在該裝置上輸入:<br><b>%2$s</b>,然後按 Return 或 Enter 鍵。""允許存取您的聯絡人和通話記錄"
+ "檢查配對碼"
+ "檢查此配對碼是否與「%1$s」上的相符。\n\n為安全起見,請勿在任何地方輸入此配對碼。""無法連接「%1$s」。""掃瞄裝置"
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index a242aa518ab5558047234018b521accfd4037533..7bdd6b962bcbe795dfe5e1748c23d147ebba5470 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -938,6 +938,8 @@
"來自:<br><b>%1$s</b><br><br>要與這個裝置配對嗎?""如要與 <br><b>%1$s</b><br><br> 配對,請輸入:<br><b>%2$s</b>,然後按下 [返回] 或 [輸入]。""允許存取你的聯絡人和通話記錄"
+ "檢查配對碼"
+ "請檢查這組代碼是否與「%1$s」上的代碼相符。\n\n為了安全起見,請勿在任何地方輸入這組代碼。""無法連線至「%1$s」。""掃描裝置"
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 383fee235c48928013efeee6cc16483a8989c9f9..5ef66db73f234879561789b799e0d799aa10e81d 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -938,6 +938,8 @@
"Kusuka ku:<br><b>%1$s</b><br><br>Beka eceleni namanye amadivayisi?""Ukubhangqa ne:<br><b>%1$s</b><br><br>Thayipha kuyona:<br><b>%2$s</b>, bese ucindezela inkinobho uBuyisela noma uNgena.""Vumela ukufinyelela koxhumana nabo nomlando wekholi"
+ "Hlola amakhodi okubhangqa"
+ "Maka uma le khodi iqondana naleyo eku-%1$s.\n\nUkuze uphephe, ungayifaki noma kuphi le khodi.""Ayikwazanga ukuxhuma ku-%1$s.""Skena amadivaysi"
diff --git a/res/values/config.xml b/res/values/config.xml
index 239a91ab4b740ae5444dd932b876d12e5c198c16..7df6c36214a5c4709391d5ff2780f48dd9f2822d 100755
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -179,6 +179,9 @@
+
+
+
true
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 6b1592736222b1ed4a3e3aad9aec53c734ca0196..39642b74a06d709ae4423bbdc47ee343be8d57cf 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -2025,6 +2025,12 @@
Allow access to your contacts and call history
+
+ Check pairing codes
+
+
+ Check if this code matches the one on %1$s.\n\nFor your security, do not enter this code anywhere.
+
diff --git a/src/com/android/settings/bluetooth/BluetoothPairingDialogFragment.java b/src/com/android/settings/bluetooth/BluetoothPairingDialogFragment.java
index bae2471dd9b170d035a2f3c4538bd4dafafe2d62..c94d23c84ca374b4ca09d8c3f8ce01129c4733b0 100644
--- a/src/com/android/settings/bluetooth/BluetoothPairingDialogFragment.java
+++ b/src/com/android/settings/bluetooth/BluetoothPairingDialogFragment.java
@@ -18,8 +18,6 @@ package com.android.settings.bluetooth;
import android.app.Dialog;
import android.app.settings.SettingsEnums;
import android.content.Context;
-import android.content.DialogInterface;
-import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.text.Editable;
import android.text.InputFilter;
@@ -46,7 +44,7 @@ import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
* for the bluetooth device.
*/
public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment implements
- TextWatcher, OnClickListener {
+ TextWatcher {
private static final String TAG = "BTPairingDialogFragment";
@@ -106,22 +104,19 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i
@Override
public void afterTextChanged(Editable s) {
// enable the positive button when we detect potentially valid input
- Button positiveButton = mDialog.getButton(DialogInterface.BUTTON_POSITIVE);
- if (positiveButton != null) {
- positiveButton.setEnabled(mPairingController.isPasskeyValid(s));
- }
+ mDialog.findViewById(R.id.positive_button).setEnabled(mPairingController.isPasskeyValid(s));
// notify the controller about user input
mPairingController.updateUserInput(s.toString());
}
- @Override
- public void onClick(DialogInterface dialog, int which) {
- if (which == DialogInterface.BUTTON_POSITIVE) {
- mPositiveClicked = true;
- mPairingController.onDialogPositiveClick(this);
- } else if (which == DialogInterface.BUTTON_NEGATIVE) {
- mPairingController.onDialogNegativeClick(this);
- }
+ protected void onAcceptButtonClicked() {
+ mPositiveClicked = true;
+ mPairingController.onDialogPositiveClick(this);
+ mPairingDialogActivity.dismiss();
+ }
+
+ protected void onDeclineButtonClicked() {
+ mPairingController.onDialogNegativeClick(this);
mPairingDialogActivity.dismiss();
}
@@ -222,12 +217,10 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i
mBuilder.setTitle(getString(R.string.bluetooth_pairing_request,
mPairingController.getDeviceName()));
mBuilder.setView(createPinEntryView());
- mBuilder.setPositiveButton(getString(android.R.string.ok), this);
- mBuilder.setNegativeButton(getString(android.R.string.cancel), this);
AlertDialog dialog = mBuilder.create();
dialog.setOnShowListener(d -> {
if (TextUtils.isEmpty(getPairingViewText())) {
- mDialog.getButton(Dialog.BUTTON_POSITIVE).setEnabled(false);
+ mDialog.findViewById(R.id.positive_button).setEnabled(false);
}
if (mPairingView != null && mPairingView.requestFocus()) {
InputMethodManager imm = (InputMethodManager)
@@ -291,6 +284,11 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i
pairingView.setFilters(new InputFilter[]{
new LengthFilter(maxLength)});
+ Button negativeButton = view.findViewById(R.id.negative_button);
+ negativeButton.setOnClickListener(v -> onDeclineButtonClicked());
+ Button positiveButton = view.findViewById(R.id.positive_button);
+ positiveButton.setOnClickListener(v -> onAcceptButtonClicked());
+
return view;
}
@@ -298,11 +296,13 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i
* Creates a dialog with UI elements that allow the user to confirm a pairing request.
*/
private AlertDialog createConfirmationDialog() {
- mBuilder.setTitle(getString(R.string.bluetooth_pairing_request,
- mPairingController.getDeviceName()));
+ if (mPairingController.hasPairingContent()) {
+ mBuilder.setTitle(getString(R.string.bluetooth_pairing_confirmation_title));
+ } else {
+ mBuilder.setTitle(getString(R.string.bluetooth_pairing_request,
+ mPairingController.getDeviceName()));
+ }
mBuilder.setView(createView());
- mBuilder.setPositiveButton(getString(R.string.bluetooth_pairing_accept), this);
- mBuilder.setNegativeButton(getString(R.string.bluetooth_pairing_decline), this);
AlertDialog dialog = mBuilder.create();
return dialog;
}
@@ -322,7 +322,6 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i
mBuilder.setTitle(getString(R.string.bluetooth_pairing_request,
mPairingController.getDeviceName()));
mBuilder.setView(createView());
- mBuilder.setNegativeButton(getString(android.R.string.cancel), this);
AlertDialog dialog = mBuilder.create();
// Tell the controller the dialog has been created.
@@ -337,6 +336,8 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i
*/
private View createView() {
View view = getActivity().getLayoutInflater().inflate(R.layout.bluetooth_pin_confirm, null);
+ TextView pairingConfirmationHint =
+ (TextView) view.findViewById(R.id.pairing_confirmation_hint);
TextView pairingViewCaption = (TextView) view.findViewById(R.id.pairing_caption);
TextView pairingViewContent = (TextView) view.findViewById(R.id.pairing_subhead);
TextView messagePairing = (TextView) view.findViewById(R.id.pairing_code_message);
@@ -354,13 +355,31 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i
messagePairing.setVisibility(mPairingController.isDisplayPairingKeyVariant()
? View.VISIBLE : View.GONE);
if (mPairingController.hasPairingContent()) {
- pairingViewCaption.setVisibility(View.VISIBLE);
+ if (mPairingController.isDisplayPairingKeyVariant()) {
+ pairingViewCaption.setVisibility(View.VISIBLE);
+ } else {
+ pairingConfirmationHint.setText(
+ getString(
+ R.string.bluetooth_pairing_confirmation_msg,
+ mPairingController.getDeviceName()));
+ pairingConfirmationHint.setVisibility(View.VISIBLE);
+ }
pairingViewContent.setVisibility(View.VISIBLE);
pairingViewContent.setText(mPairingController.getPairingContent());
}
final TextView messagePairingSet = (TextView) view.findViewById(R.id.pairing_group_message);
messagePairingSet.setVisibility(mPairingController.isCoordinatedSetMemberDevice()
? View.VISIBLE : View.GONE);
+
+ Button negativeButton = view.findViewById(R.id.negative_button);
+ negativeButton.setVisibility(View.VISIBLE);
+ negativeButton.setOnClickListener(v -> onDeclineButtonClicked());
+ if (mPairingController.getDialogType() == BluetoothPairingController.CONFIRMATION_DIALOG) {
+ Button positiveButton = view.findViewById(R.id.positive_button);
+ positiveButton.setVisibility(View.VISIBLE);
+ positiveButton.setOnClickListener(v -> onAcceptButtonClicked());
+ }
+
return view;
}
}
diff --git a/src/com/android/settings/nfc/DefaultPaymentSettings.java b/src/com/android/settings/nfc/DefaultPaymentSettings.java
index 5224d92fb4e717f4688636c222b618617517a454..9243e586e0c86a814f6af02e172ccaa977fc1eb1 100644
--- a/src/com/android/settings/nfc/DefaultPaymentSettings.java
+++ b/src/com/android/settings/nfc/DefaultPaymentSettings.java
@@ -17,7 +17,6 @@
package com.android.settings.nfc;
import android.app.settings.SettingsEnums;
-import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.graphics.drawable.Drawable;
@@ -45,6 +44,9 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
/**
* DefaultPaymentSettings handles the NFC default payment app selection.
@@ -53,7 +55,7 @@ public class DefaultPaymentSettings extends DefaultAppPickerFragment {
public static final String TAG = "DefaultPaymentSettings";
private PaymentBackend mPaymentBackend;
- private List mAppInfos;
+ private Map mAppInfos;
private FooterPreference mFooterPreference;
@Override
@@ -67,22 +69,19 @@ public class DefaultPaymentSettings extends DefaultAppPickerFragment {
}
@Override
+ @SuppressWarnings("NullAway")
protected String getDefaultKey() {
PaymentAppInfo defaultAppInfo = mPaymentBackend.getDefaultApp();
- if (defaultAppInfo != null) {
- return defaultAppInfo.componentName.flattenToString() + " "
- + defaultAppInfo.userHandle.getIdentifier();
- }
- return null;
+ if (defaultAppInfo == null) return null;
+ return defaultAppInfo.getKey();
}
@Override
protected boolean setDefaultKey(String key) {
- String[] keys = key.split(" ");
- if (keys.length >= 2) {
- mPaymentBackend.setDefaultPaymentApp(ComponentName.unflattenFromString(keys[0]),
- Integer.parseInt(keys[1]));
- }
+ PaymentAppInfo appInfo = mAppInfos.get(key);
+ if (appInfo == null) return true;
+ mPaymentBackend.setDefaultPaymentApp(
+ appInfo.componentName, appInfo.userHandle.getIdentifier());
return true;
}
@@ -90,7 +89,9 @@ public class DefaultPaymentSettings extends DefaultAppPickerFragment {
public void onAttach(Context context) {
super.onAttach(context);
mPaymentBackend = new PaymentBackend(getActivity());
- mAppInfos = mPaymentBackend.getPaymentAppInfos();
+ mAppInfos = mPaymentBackend.getPaymentAppInfos()
+ .stream()
+ .collect(Collectors.toMap(PaymentAppInfo::getKey, Function.identity()));
}
@Override
@@ -147,7 +148,7 @@ public class DefaultPaymentSettings extends DefaultAppPickerFragment {
@Override
protected List extends CandidateInfo> getCandidates() {
final List candidates = new ArrayList<>();
- for (PaymentAppInfo appInfo: mAppInfos) {
+ for (PaymentAppInfo appInfo: mAppInfos.values()) {
UserManager um = getContext().createContextAsUser(
appInfo.userHandle, /*flags=*/0).getSystemService(UserManager.class);
boolean isManagedProfile = um.isManagedProfile(appInfo.userHandle.getIdentifier());
diff --git a/src/com/android/settings/nfc/PaymentBackend.java b/src/com/android/settings/nfc/PaymentBackend.java
index 021d673e15263c9bddd7b3eec9eff578d948d1ca..de733081a1da07a30f08889f284daea57ced2964 100644
--- a/src/com/android/settings/nfc/PaymentBackend.java
+++ b/src/com/android/settings/nfc/PaymentBackend.java
@@ -36,6 +36,7 @@ import com.android.internal.content.PackageMonitor;
import java.util.ArrayList;
import java.util.List;
+import java.util.Objects;
public class PaymentBackend {
public static final String TAG = "Settings.PaymentBackend";
@@ -52,6 +53,24 @@ public class PaymentBackend {
public ComponentName settingsComponent;
public UserHandle userHandle;
public Drawable icon;
+
+ public String getKey() {
+ return Integer.toString(hashCode());
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(componentName, userHandle);
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (o == this) return true;
+ if (!(o instanceof PaymentAppInfo)) return false;
+ PaymentAppInfo appInfo = (PaymentAppInfo) o;
+ return componentName.equals(appInfo.componentName)
+ && userHandle.equals(appInfo.userHandle);
+ }
}
/**
diff --git a/src/com/android/settings/notification/history/NotificationStation.java b/src/com/android/settings/notification/history/NotificationStation.java
index 3ed8cdfd9b4df43a17cde321322ae45d257f8ce2..77bb88f2b27ad83476a8261dbcaca61705e65d77 100644
--- a/src/com/android/settings/notification/history/NotificationStation.java
+++ b/src/com/android/settings/notification/history/NotificationStation.java
@@ -18,10 +18,12 @@ package com.android.settings.notification.history;
import static android.provider.Settings.EXTRA_APP_PACKAGE;
import static android.provider.Settings.EXTRA_CHANNEL_ID;
+import static android.provider.Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS;
import android.app.Activity;
import android.app.ActivityManager;
import android.app.INotificationManager;
+import android.app.KeyguardManager;
import android.app.Notification;
import android.app.NotificationChannel;
import android.app.PendingIntent;
@@ -32,6 +34,7 @@ import android.content.Intent;
import android.content.IntentSender;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
+import android.content.pm.UserInfo;
import android.graphics.PorterDuff;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
@@ -40,6 +43,7 @@ import android.os.Parcel;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.UserHandle;
+import android.os.UserManager;
import android.provider.Settings;
import android.service.notification.NotificationListenerService;
import android.service.notification.NotificationListenerService.Ranking;
@@ -60,6 +64,7 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceViewHolder;
import androidx.recyclerview.widget.RecyclerView;
+import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
@@ -117,6 +122,7 @@ public class NotificationStation extends SettingsPreferenceFragment {
private INotificationManager mNoMan;
private RankingMap mRanking;
private LinkedList mNotificationInfos;
+ private ArrayList mContentRestrictedUsers = new ArrayList<>();
private final NotificationListenerService mListener = new NotificationListenerService() {
@Override
@@ -208,6 +214,21 @@ public class NotificationStation extends SettingsPreferenceFragment {
public void onResume() {
logd("onResume()");
super.onResume();
+
+ mContentRestrictedUsers.clear();
+ List users =
+ getSystemService(UserManager.class).getProfiles(mContext.getUserId());
+ for (UserInfo user : users) {
+ if (Settings.Secure.getIntForUser(getContentResolver(),
+ LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, 0, user.id) == 0) {
+ LockPatternUtils lpu = new LockPatternUtils(mContext);
+ KeyguardManager km = getSystemService(KeyguardManager.class);
+ if (lpu.isSecure(user.id) && km.isDeviceLocked(user.id)) {
+ mContentRestrictedUsers.add(user.id);
+ }
+ }
+ }
+
try {
mListener.registerAsSystemService(mContext, new ComponentName(mContext.getPackageName(),
this.getClass().getCanonicalName()), ActivityManager.getCurrentUser());
@@ -229,7 +250,8 @@ public class NotificationStation extends SettingsPreferenceFragment {
getPreferenceScreen().removeAll();
for (int i = 0; i < N; i++) {
getPreferenceScreen().addPreference(new HistoricalNotificationPreference(
- getPrefContext(), mNotificationInfos.get(i), i));
+ getPrefContext(), mNotificationInfos.get(i), i,
+ mContentRestrictedUsers.contains(mNotificationInfos.get(i).user)));
}
}
@@ -243,7 +265,8 @@ public class NotificationStation extends SettingsPreferenceFragment {
if (TextUtils.equals(info.key, sbn.getKey())) {
info.active = false;
((HistoricalNotificationPreference) getPreferenceScreen().findPreference(
- sbn.getKey())).updatePreference(info);
+ sbn.getKey())).updatePreference(
+ info, mContentRestrictedUsers.contains(info.user));
break;
}
}
@@ -264,7 +287,8 @@ public class NotificationStation extends SettingsPreferenceFragment {
info.updateFrom(newInfo);
((HistoricalNotificationPreference) getPreferenceScreen().findPreference(
- sbn.getKey())).updatePreference(info);
+ sbn.getKey())).updatePreference(
+ info, mContentRestrictedUsers.contains(info.user));
needsAdd = false;
break;
}
@@ -273,7 +297,8 @@ public class NotificationStation extends SettingsPreferenceFragment {
mNotificationInfos.addFirst(newInfo);
getPreferenceScreen().addPreference(new HistoricalNotificationPreference(
getPrefContext(), mNotificationInfos.peekFirst(),
- -1 * mNotificationInfos.size()));
+ -1 * mNotificationInfos.size(),
+ mContentRestrictedUsers.contains(newInfo.user)));
}
}
@@ -290,7 +315,7 @@ public class NotificationStation extends SettingsPreferenceFragment {
updateFromRanking(info);
((HistoricalNotificationPreference) getPreferenceScreen().findPreference(
- info.key)).updatePreference(info);
+ info.key)).updatePreference(info, mContentRestrictedUsers.contains(info.user));
}
}
@@ -405,6 +430,7 @@ public class NotificationStation extends SettingsPreferenceFragment {
private HistoricalNotificationInfo createFromSbn(StatusBarNotification sbn, boolean active) {
final Notification n = sbn.getNotification();
final HistoricalNotificationInfo info = new HistoricalNotificationInfo();
+
info.pkg = sbn.getPackageName();
info.user = sbn.getUserId() == UserHandle.USER_ALL
? UserHandle.USER_SYSTEM : sbn.getUserId();
@@ -416,6 +442,7 @@ public class NotificationStation extends SettingsPreferenceFragment {
info.pkgname = loadPackageName(info.pkg);
info.title = getTitleString(n);
info.text = getTextString(sbn.getPackageContext(mContext), n);
+
info.timestamp = sbn.getPostTime();
info.priority = n.priority;
info.key = sbn.getKey();
@@ -673,15 +700,17 @@ public class NotificationStation extends SettingsPreferenceFragment {
private static long sLastExpandedTimestamp; // quick hack to keep things from collapsing
public ViewGroup mItemView; // hack to update prefs fast;
private Context mContext;
+ private boolean mRestrictContent;
public HistoricalNotificationPreference(Context context, HistoricalNotificationInfo info,
- int order) {
+ int order, boolean restrictContent) {
super(context);
setLayoutResource(R.layout.notification_log_row);
setOrder(order);
setKey(info.key);
mInfo = info;
mContext = context;
+ mRestrictContent = restrictContent;
}
@Override
@@ -690,7 +719,7 @@ public class NotificationStation extends SettingsPreferenceFragment {
mItemView = (ViewGroup) row.itemView;
- updatePreference(mInfo);
+ updatePreference(mInfo, mRestrictContent);
row.findViewById(R.id.timestamp).setOnLongClickListener(v -> {
final View extras = row.findViewById(R.id.extra);
@@ -701,7 +730,7 @@ public class NotificationStation extends SettingsPreferenceFragment {
});
}
- public void updatePreference(HistoricalNotificationInfo info) {
+ public void updatePreference(HistoricalNotificationInfo info, boolean restrictContent) {
if (mItemView == null) {
return;
}
@@ -710,17 +739,17 @@ public class NotificationStation extends SettingsPreferenceFragment {
}
((TextView) mItemView.findViewById(R.id.pkgname)).setText(mInfo.pkgname);
((DateTimeView) mItemView.findViewById(R.id.timestamp)).setTime(info.timestamp);
- if (!TextUtils.isEmpty(info.title)) {
+ if (restrictContent || TextUtils.isEmpty(info.title)) {
+ mItemView.findViewById(R.id.title).setVisibility(View.GONE);
+ } else {
((TextView) mItemView.findViewById(R.id.title)).setText(info.title);
mItemView.findViewById(R.id.title).setVisibility(View.VISIBLE);
- } else {
- mItemView.findViewById(R.id.title).setVisibility(View.GONE);
}
- if (!TextUtils.isEmpty(info.text)) {
+ if (restrictContent || TextUtils.isEmpty(info.text)) {
+ mItemView.findViewById(R.id.text).setVisibility(View.GONE);
+ } else {
((TextView) mItemView.findViewById(R.id.text)).setText(info.text);
mItemView.findViewById(R.id.text).setVisibility(View.VISIBLE);
- } else {
- mItemView.findViewById(R.id.text).setVisibility(View.GONE);
}
if (info.icon != null) {
((ImageView) mItemView.findViewById(R.id.icon)).setImageDrawable(info.icon);
@@ -734,10 +763,15 @@ public class NotificationStation extends SettingsPreferenceFragment {
((DateTimeView) mItemView.findViewById(R.id.timestamp)).setTime(mInfo.timestamp);
- ((TextView) mItemView.findViewById(R.id.notification_extra))
- .setText(mInfo.notificationExtra);
- ((TextView) mItemView.findViewById(R.id.ranking_extra))
- .setText(mInfo.rankingExtra);
+ if (restrictContent) {
+ mItemView.findViewById(R.id.notification_extra).setVisibility(View.GONE);
+ mItemView.findViewById(R.id.ranking_extra).setVisibility(View.GONE);
+ } else {
+ ((TextView) mItemView.findViewById(R.id.notification_extra))
+ .setText(mInfo.notificationExtra);
+ ((TextView) mItemView.findViewById(R.id.ranking_extra))
+ .setText(mInfo.rankingExtra);
+ }
mItemView.findViewById(R.id.extra).setVisibility(
mInfo.timestamp == sLastExpandedTimestamp ? View.VISIBLE : View.GONE);
diff --git a/src/com/android/settings/slices/SettingsSliceProvider.java b/src/com/android/settings/slices/SettingsSliceProvider.java
index 7fd9f3d8d3494be4e81ffe82046d2d331e2af428..8d15440d678e9dee1a22f19126810b8bba2b177e 100644
--- a/src/com/android/settings/slices/SettingsSliceProvider.java
+++ b/src/com/android/settings/slices/SettingsSliceProvider.java
@@ -27,6 +27,7 @@ import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Binder;
+import android.os.Build;
import android.os.StrictMode;
import android.provider.Settings;
import android.provider.SettingsSlicesContract;
@@ -361,19 +362,30 @@ public class SettingsSliceProvider extends SliceProvider {
if (descendants == null) {
Log.d(TAG, "No descendants to grant permission with, skipping.");
}
- final String[] allowlistPackages =
+ final List allowlist = new ArrayList<>();
+ final String[] packages =
context.getResources().getStringArray(R.array.slice_allowlist_package_names);
- if (allowlistPackages == null || allowlistPackages.length == 0) {
+ if (packages != null) {
+ allowlist.addAll(Arrays.asList(packages));
+ }
+ if (Build.IS_DEBUGGABLE) {
+ final String[] devPackages = context.getResources().getStringArray(
+ R.array.slice_allowlist_package_names_for_dev);
+ if (devPackages != null) {
+ allowlist.addAll(Arrays.asList(devPackages));
+ }
+ }
+ if (allowlist.size() == 0) {
Log.d(TAG, "No packages to allowlist, skipping.");
return;
} else {
Log.d(TAG, String.format(
"Allowlisting %d uris to %d pkgs.",
- descendants.size(), allowlistPackages.length));
+ descendants.size(), allowlist.size()));
}
final SliceManager sliceManager = context.getSystemService(SliceManager.class);
for (Uri descendant : descendants) {
- for (String toPackage : allowlistPackages) {
+ for (String toPackage : allowlist) {
sliceManager.grantSlicePermission(toPackage, descendant);
}
}
diff --git a/src/com/android/settings/wifi/WifiScanModeActivity.java b/src/com/android/settings/wifi/WifiScanModeActivity.java
index c10ee27fddb7adb8e0fd096f82a386f07abc6c55..e6df2f8de163c9607b0b2aea7c20bea32ce80342 100644
--- a/src/com/android/settings/wifi/WifiScanModeActivity.java
+++ b/src/com/android/settings/wifi/WifiScanModeActivity.java
@@ -92,6 +92,12 @@ public class WifiScanModeActivity extends FragmentActivity {
return;
}
+ if (!isWifiScanModeConfigAllowed(getApplicationContext())) {
+ Log.e(TAG, "This user is not allowed to configure Wi-Fi Scan Mode!");
+ finish();
+ return;
+ }
+
if (mDialog == null) {
mDialog = AlertDialogFragment.newInstance(mApp);
mDialog.show(getSupportFragmentManager(), "dialog");
@@ -189,4 +195,10 @@ public class WifiScanModeActivity extends FragmentActivity {
if (userManager == null) return false;
return userManager.isGuestUser();
}
+
+ private static boolean isWifiScanModeConfigAllowed(Context context) {
+ final UserManager userManager = context.getSystemService(UserManager.class);
+ if (userManager == null) return true;
+ return !userManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_LOCATION);
+ }
}
diff --git a/tests/robotests/res/values-mcc998/config.xml b/tests/robotests/res/values-mcc998/config.xml
index 6572b1485b5c5334d76f97f1ae5587d0422de501..18174983a1f7337995d4ead63e01b16a9edf095f 100644
--- a/tests/robotests/res/values-mcc998/config.xml
+++ b/tests/robotests/res/values-mcc998/config.xml
@@ -17,4 +17,7 @@
+
+
+
diff --git a/tests/robotests/res/values-mcc999/config.xml b/tests/robotests/res/values-mcc999/config.xml
index b1d4be9ea1ca30e1f0fe48b70ecfa8861678a102..fe7412e6440b68e3e22c3e9c61dfb893fd00d228 100644
--- a/tests/robotests/res/values-mcc999/config.xml
+++ b/tests/robotests/res/values-mcc999/config.xml
@@ -86,6 +86,11 @@
com.android.settings.slice_allowlist_package
+
+
+ com.android.settings.slice_allowlist_package_dev
+
+
test@test.test
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothPairingDialogTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothPairingDialogTest.java
index 874ddf0d1584fdf4613c7ba7955cdeaa39b2b7bb..81acb03df53133349241157ce50c3ba74746cdc6 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothPairingDialogTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothPairingDialogTest.java
@@ -27,7 +27,6 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-import android.app.Dialog;
import android.content.Context;
import android.text.SpannableStringBuilder;
import android.text.TextUtils;
@@ -108,7 +107,7 @@ public class BluetoothPairingDialogTest {
// test that the positive button is enabled when passkey is valid
frag.afterTextChanged(new SpannableStringBuilder(FILLER));
- View button = frag.getmDialog().getButton(AlertDialog.BUTTON_POSITIVE);
+ View button = frag.getmDialog().findViewById(R.id.positive_button);
assertThat(button).isNotNull();
assertThat(button.getVisibility()).isEqualTo(View.VISIBLE);
}
@@ -175,7 +174,7 @@ public class BluetoothPairingDialogTest {
// get the relevant views
View messagePairing = frag.getmDialog().findViewById(R.id.pairing_code_message);
TextView pairingViewContent = frag.getmDialog().findViewById(R.id.pairing_subhead);
- View pairingViewCaption = frag.getmDialog().findViewById(R.id.pairing_caption);
+ TextView pairingViewCaption = frag.getmDialog().findViewById(R.id.pairing_caption);
// check that the relevant views are visible and that the passkey is shown
assertThat(messagePairing.getVisibility()).isEqualTo(View.VISIBLE);
@@ -207,7 +206,7 @@ public class BluetoothPairingDialogTest {
BluetoothPairingDialogFragment frag = makeFragment();
// click the button and verify that the controller hook was called
- frag.onClick(frag.getmDialog(), AlertDialog.BUTTON_POSITIVE);
+ frag.onAcceptButtonClicked();
verify(controller, times(1)).onDialogPositiveClick(any());
}
@@ -223,7 +222,7 @@ public class BluetoothPairingDialogTest {
BluetoothPairingDialogFragment frag = makeFragment();
// click the button and verify that the controller hook was called
- frag.onClick(frag.getmDialog(), AlertDialog.BUTTON_NEGATIVE);
+ frag.onDeclineButtonClicked();
verify(controller, times(1)).onDialogNegativeClick(any());
}
@@ -268,7 +267,8 @@ public class BluetoothPairingDialogTest {
// test that the positive button is enabled when passkey is valid
frag.afterTextChanged(new SpannableStringBuilder(FILLER));
- View button = frag.getmDialog().getButton(AlertDialog.BUTTON_POSITIVE);
+ View button = frag.getmDialog().findViewById(R.id.positive_button);
+
assertThat(button).isNotNull();
assertThat(button.isEnabled()).isFalse();
}
@@ -386,7 +386,7 @@ public class BluetoothPairingDialogTest {
BluetoothPairingDialogFragment frag = makeFragment();
// click the button and verify that the controller hook was called
- frag.onClick(frag.getmDialog(), AlertDialog.BUTTON_POSITIVE);
+ frag.onAcceptButtonClicked();
verify(controller, times(1)).onDialogPositiveClick(any());
verify(dialogActivity, times(1)).dismiss();
@@ -404,12 +404,30 @@ public class BluetoothPairingDialogTest {
BluetoothPairingDialogFragment frag = makeFragment();
// click the button and verify that the controller hook was called
- frag.onClick(frag.getmDialog(), AlertDialog.BUTTON_NEGATIVE);
+ frag.onDeclineButtonClicked();
verify(controller, times(1)).onDialogNegativeClick(any());
verify(dialogActivity, times(1)).dismiss();
}
+ @Test
+ public void confirmationDialog_showConfirmationMessage() {
+ when(controller.getDialogType()).thenReturn(BluetoothPairingController.CONFIRMATION_DIALOG);
+ when(controller.getDeviceName()).thenReturn("Device");
+ when(controller.hasPairingContent()).thenReturn(true);
+ when(controller.getPairingContent()).thenReturn(FILLER);
+
+ // build the fragment
+ BluetoothPairingDialogFragment frag = makeFragment();
+
+ TextView pairingConfirmationHint =
+ frag.getmDialog().findViewById(R.id.pairing_confirmation_hint);
+ assertThat(pairingConfirmationHint.getText())
+ .isEqualTo(frag.getString(R.string.bluetooth_pairing_confirmation_msg, "Device"));
+ assertThat(pairingConfirmationHint.getVisibility()).isEqualTo(View.VISIBLE);
+ }
+
+ @Ignore
@Test
public void rotateDialog_nullPinText_okButtonEnabled() {
userEntryDialogExistingTextTest(null);
@@ -469,7 +487,7 @@ public class BluetoothPairingDialogTest {
AlertDialog dialog = ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
boolean expected = !TextUtils.isEmpty(existingText);
- assertThat(dialog.getButton(Dialog.BUTTON_POSITIVE).isEnabled()).isEqualTo(expected);
+ assertThat(dialog.findViewById(R.id.positive_button).isEnabled()).isEqualTo(expected);
}
private void setupFragment(BluetoothPairingDialogFragment frag) {
diff --git a/tests/robotests/src/com/android/settings/slices/SettingsSliceProviderTest.java b/tests/robotests/src/com/android/settings/slices/SettingsSliceProviderTest.java
index df38e7f72a09ecd05c31496d0f5c4fea483aeb83..b6f964e4c8f2fa74438b391540933737c2c4e11a 100644
--- a/tests/robotests/src/com/android/settings/slices/SettingsSliceProviderTest.java
+++ b/tests/robotests/src/com/android/settings/slices/SettingsSliceProviderTest.java
@@ -43,6 +43,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.res.Resources.Theme;
import android.net.Uri;
+import android.os.Build;
import android.os.StrictMode;
import android.provider.Settings;
import android.provider.SettingsSlicesContract;
@@ -83,6 +84,7 @@ import org.robolectric.shadow.api.Shadow;
import org.robolectric.shadows.ShadowAccessibilityManager;
import org.robolectric.shadows.ShadowBinder;
import org.robolectric.shadows.ShadowPackageManager;
+import org.robolectric.util.ReflectionHelpers;
import java.util.ArrayList;
import java.util.Arrays;
@@ -662,6 +664,7 @@ public class SettingsSliceProviderTest {
@Test
@Config(qualifiers = "mcc999")
public void grantAllowlistedPackagePermissions_hasPackageAllowlist_shouldGrant() {
+ ReflectionHelpers.setStaticField(Build.class, "IS_DEBUGGABLE", false);
final List uris = new ArrayList<>();
uris.add(Uri.parse("content://settings/slice"));
@@ -669,6 +672,23 @@ public class SettingsSliceProviderTest {
verify(mManager)
.grantSlicePermission("com.android.settings.slice_allowlist_package", uris.get(0));
+ verify(mManager, never())
+ .grantSlicePermission("com.android.settings.slice_allowlist_package_dev",
+ uris.get(0));
+ }
+
+ @Test
+ @Config(qualifiers = "mcc999")
+ public void grantAllowlistedPackagePermissions_hasPackageAllowlistAndDebuggable_shouldGrant() {
+ ReflectionHelpers.setStaticField(Build.class, "IS_DEBUGGABLE", true);
+ final List uris = new ArrayList<>();
+ uris.add(Uri.parse("content://settings/slice"));
+
+ SettingsSliceProvider.grantAllowlistedPackagePermissions(mContext, uris);
+
+ verify(mManager)
+ .grantSlicePermission("com.android.settings.slice_allowlist_package_dev",
+ uris.get(0));
}
@Test