diff --git a/Android.bp b/Android.bp
index dce25d7..3cf1034 100644
--- a/Android.bp
+++ b/Android.bp
@@ -64,6 +64,7 @@
         "androidx.lifecycle_lifecycle-extensions",
         "guava",
         "jsr305",
+        "net-utils-framework-common",
         "settings-contextual-card-protos-lite",
         "settings-log-bridge-protos-lite",
         "contextualcards",
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 020bfaf..b49bfa9 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Interne berging"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Herbereken tans grootte…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Vee programdata uit?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Alle data van hierdie program sal permanent uitgevee word. Dit sluit alle lêers, instellings, rekeninge, databasisse ens. in."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Hierdie program se data sal permanent uitgevee word. Dit sluit lêers, instellings, databasisse en ander programdata in."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Kanselleer"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 6cd852c..31996e2 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"የውስጥ ማከማቻ"</string>
     <string name="recompute_size" msgid="1098091228370999128">"መጠን ድጋሚ በማስላት ላይ..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"መተግበሪያ ውሂብ ሰርዝ?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"የዚህ መተግበሪያ ውሂቦች ሁሉ በቋሚነት ይሰረዛሉ።እነዚህም ፋይሎችን፣ ቅንብሮችን፣ መለያዎችን፣ የውሂብ ጎታዎች እና የመሳሰሉትን ያካትታሉ።"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"የዚህ መተግበሪያ ውሂብ እስከመጨረሻው ይሰረዛል። ይህ ፋይሎችን፣ ቅንብሮችን፣ የውሂብ ጎታን እና ሌላ የመተግበሪያ ውሂብን ያካትታል።"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"እሺ"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"ይቅር"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index df56d51..42a3334 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -2118,7 +2118,7 @@
     <string name="internal_storage" msgid="999496851424448809">"وحدة التخزين الداخلية"</string>
     <string name="recompute_size" msgid="1098091228370999128">"جارٍ إعادة حساب الحجم..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"هل تريد حذف بيانات التطبيق؟"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"سيتم حذف جميع بيانات هذا التطبيق نهائيًا. ويشمل ذلك جميع الملفات والإعدادات والحسابات وقواعد البيانات وما إلى ذلك."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"سيتم حذف بيانات هذا التطبيق نهائيًا، بما في ذلك الملفات والإعدادات وقواعد البيانات وبيانات التطبيق الأخرى."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"حسنًا"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"إلغاء"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index cd19a82..c342c6b 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -2022,7 +2022,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Daxili yaddaş"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Ölçünü yenidən hesablayır..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Tətbiq məlumatları silinsin?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Bu tətbiq datası həmişəlik silinəcək. Buraya bütün fayllar, ayarlar, hesablar, verilənlər bazası və sairləri aiddir."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Bu tətbiq datası həmişəlik silinəcək. Buraya fayllar, ayarlar, data bazaları və digər tətbiq datası daxildir."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Ləğv edin"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index ce0fc44..72d84a1 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -2038,7 +2038,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Interno skladište"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Ponovno izračunavanje veličine..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Želite li da izbrišete podatke o aplikaciji?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Svi podaci ove aplikacije biće trajno izbrisani. To obuhvata sve datoteke, podešavanja, naloge, baze podataka itd."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Podaci ove aplikacije će se trajno izbrisati. To obuhvata fajlove, podešavanja, baze podataka i druge podatke aplikacija."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Potvrdi"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Otkaži"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index d32ca5c..b7f101b 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -2062,7 +2062,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Унутраная памяць"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Пераразлік памеру..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Выдаліць даныя праграмы?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Усе даныя гэтай праграмы будуць назаўсёды выдалены. Гэта датычыцца ўсiх файлаў, налад, уліковых запісаў, баз даных і г. д."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Даныя гэтай праграмы (файлы, налады, базы даных і г. д.) будуць выдалены назаўсёды."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ОК"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Скасаваць"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 08cc590..dd3e8e6 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Вътр. хранилище"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Размерът се преизчислява..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Да се изтрият ли данните от приложенията?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Всички данни на това приложение ще бъдат изтрити за постоянно. Това включва всички файлове, настройки, профили и т.н."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Данните на приложението ще бъдат изтрити за постоянно. Това включва файловете, настройките, базите от данни и други данни от приложението."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Отказ"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index 68f95f1..4c659fd 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -2023,7 +2023,7 @@
     <string name="internal_storage" msgid="999496851424448809">"ইন্টারনাল স্টোরেজ"</string>
     <string name="recompute_size" msgid="1098091228370999128">"আকার আবার গণনা করা হচ্ছে..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"অ্যাপ ডেটা মুছবেন?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"এই অ্যাপের সমস্ত ডেটা স্থায়ীভাবে মুছে যাবে। সমস্ত ফাইল, সেটিংস, অ্যাকাউন্ট, ডেটাবেস ইত্যাদি সবই।"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"এই অ্যাপের ডেটা স্থায়ীভাবে মুছে ফেলা হবে। এর মধ্যে ফাইল, সেটিংস, ডেটাবেস এবং অন্য অ্যাপ ডেটা আছে।"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ঠিক আছে"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"বাতিল"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index fa37939..6972035 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -2038,7 +2038,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Unutrašnja pohrana"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Ponovno izračunavanje veličine…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Izbrisati podatke aplikacija?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Svi podaci ove aplikacije će biti trajno izbrisani. To uključuje sve fajlove, postavke, račune, baze podataka itd."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Ovi podaci aplikacije će se trajno izbrisati. To obuhvata fajlove, postavke, baze podataka i ostale podatke aplikacije."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Uredu"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Otkaži"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 8253db5..4f4b1e2 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Emmagatzematge intern"</string>
     <string name="recompute_size" msgid="1098091228370999128">"S\'està tornant a calcular la mida..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Vols suprimir les dades de l\'aplicació?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Se suprimiran totes les dades d\'aquesta aplicació permanentment. Això inclou tots els fitxers, les opcions de configuració, els comptes, les bases de dades, etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Les dades d'aquesta aplicació se suprimiran permanentment. Això inclou fitxers, opcions de configuració, bases de dades i altres dades de l'aplicació."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"D\'acord"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancel·la"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 4208ec3..d68a258 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Intern lagerplads"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Beregner størrelse igen..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Vil du slette appdata?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Alle data i denne app slettes permanent. Det omfatter alle filer, indstillinger, konti, databaser osv."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Denne apps data slettes permanent. Det omfatter filer, indstillinger, databaser og andre appdata."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Annuller"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index aba8189..da532fa 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -2024,7 +2024,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Interner Speicher"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Größe wird neu berechnet..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"App-Daten löschen?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Alle Daten dieser App werden endgültig gelöscht. Dazu zählen alle Dateien, Einstellungen, Konten, Datenbanken usw."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Die Daten dieser App werden endgültig gelöscht. Dazu gehören Dateien, Einstellungen, Datenbanken und sonstige App-Daten."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Ok"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Abbrechen"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 3a9aa57..9797289 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Εσ. αποθ. χώρος"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Εκ νέου υπολογισμός μεγέθους..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Διαγραφή δεδομένων εφαρμογής;"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Όλα τα δεδομένα της εφαρμογής θα διαγραφούν μόνιμα. Αυτό περιλαμβάνει όλα τα αρχεία, τις ρυθμίσεις, τους λογαριασμούς, τις βάσεις δεδομένων κ.λπ."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Τα δεδομένα αυτής της εφαρμογής θα διαγραφούν οριστικά. Σε αυτά περιλαμβάνονται αρχεία, ρυθμίσεις, βάσεις δεδομένων και άλλα δεδομένα εφαρμογών."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Ακύρωση"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index 3ff1745..4ee703d 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Internal storage"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Recomputing size…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Delete app data?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"All of this app\'s data will be deleted permanently. This includes all files, settings, accounts, databases, etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"This app’s data will be permanently deleted. This includes files, settings, databases and other app data."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancel"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index 474cdc0..a7cfcee 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Internal storage"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Recomputing size…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Delete app data?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"All of this app\'s data will be deleted permanently. This includes all files, settings, accounts, databases, etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"This app’s data will be permanently deleted. This includes files, settings, databases and other app data."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancel"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index d60bc9f..e37ecf5 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Internal storage"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Recomputing size…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Delete app data?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"All of this app\'s data will be deleted permanently. This includes all files, settings, accounts, databases, etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"This app’s data will be permanently deleted. This includes files, settings, databases and other app data."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancel"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 5747173..3748bbd 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Internal storage"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Recomputing size…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Delete app data?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"All of this app\'s data will be deleted permanently. This includes all files, settings, accounts, databases, etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"This app’s data will be permanently deleted. This includes files, settings, databases and other app data."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancel"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml
index c873371..b4e025b 100644
--- a/res/values-en-rXC/strings.xml
+++ b/res/values-en-rXC/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‏‎‏‏‏‎‏‏‏‏‎‏‏‏‎‏‏‎‏‎‎‎‏‎‏‏‏‎‎‏‏‏‏‏‏‎‏‎‎‎‏‏‎‏‎‎‏‎‎‎‏‎‎‏‎‏‎‎‏‎Internal storage‎‏‎‎‏‎"</string>
     <string name="recompute_size" msgid="1098091228370999128">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‏‏‏‎‎‏‏‏‏‎‏‎‎‏‏‎‏‎‎‎‎‏‎‎‏‏‏‎‏‏‏‏‏‏‎‎‎‎‎‎‏‏‎‏‎‎‏‎‏‏‏‎‏‎‏‏‎‎‎‎Recomputing size…‎‏‎‎‏‎"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‎‏‎‏‎‎‎‎‎‎‏‎‎‎‏‎‎‏‏‏‎‎‎‏‏‏‏‏‎‏‎‎‏‎‏‎‎‏‎‏‎‎‏‎‏‎‏‏‎‏‎‏‎‏‏‏‎‏‎‎Delete app data?‎‏‎‎‏‎"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‏‎‏‎‎‏‏‏‎‏‎‎‏‏‎‏‏‎‏‏‎‏‏‏‎‏‎‏‏‎‏‏‏‎‏‎‎‎‏‎‎‏‎‏‎‎‏‎‏‎‏‎‏‎‏‏‏‎‎‎All this app’s data will be deleted permanently. This includes all files, settings, accounts, databases, etc.‎‏‎‎‏‎"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‏‏‏‎‏‎‏‏‏‏‏‎‎‎‎‎‏‏‎‎‏‎‎‏‏‎‎‏‏‎‏‎‎‎‎‎‎‏‏‏‏‎‏‎‏‏‎‏‏‎‎‏‏‎‏‏‏‏‎‎This app’s data will be permanently deleted. This includes files, settings, databases, and other app data.‎‏‎‎‏‎"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‎‏‏‏‎‏‏‏‎‎‏‏‎‏‎‎‏‏‎‏‎‏‎‎‎‎‏‎‎‎‎‎‎‎‏‏‎‎‎‏‎‏‏‎‏‏‎‏‎‎‎‎‎‏‎‎‏‎‏‎OK‎‏‎‎‏‎"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‏‏‏‏‎‏‎‏‏‎‎‏‎‏‏‎‏‏‏‏‏‏‎‎‎‏‏‏‏‎‎‎‎‏‎‎‎‏‏‎‏‎‎‎‎‏‎‏‏‎‏‎‏‏‏‎‎‏‏‎Cancel‎‏‎‎‏‎"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 0d32571..c8a164b 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -2022,7 +2022,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Almacenamiento interno"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Recalculando el tamaño…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"¿Borrar los datos de la app?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Se eliminarán de forma permanente todos los datos de esta aplicación, incluidos archivos, ajustes, cuentas, bases de datos, etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Se borrarán de forma permanente los datos de esta app. Se incluyen archivos, parámetros de configuración, bases de datos y otros datos de app."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Aceptar"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancelar"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index d55c3a7..b7e95f7 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Almacenamiento interno"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Recalculando tamaño…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"¿Eliminar datos de la aplicación?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Todos los datos de esta aplicación se eliminarán de forma permanente. Esto incluye todos los archivos, ajustes, cuentas, bases de datos, etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Los datos de esta aplicación se eliminarán de forma permanente, incluidos los archivos, ajustes, bases de datos y otros datos relacionados con ella."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Aceptar"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancelar"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index 80960ea..6c959d3 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Sisemälu"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Suuruse ümberarvutamine ..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Kas kustutada rakenduse andmed?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Rakenduse kõik andmed kustutatakse lõplikult. See hõlmab kõiki faile, seadeid, kontosid, andmebaase jne."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Selle rakenduse andmed kustutatakse jäädavalt. See hõlmab faile, seadeid, andmebaase ja muid rakenduse andmeid."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Tühista"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index ace1ada..49af276 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"فضای ذخیره‌سازی داخلی"</string>
     <string name="recompute_size" msgid="1098091228370999128">"محاسبه مجدد اندازه…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"داده‌های برنامه حذف شود؟"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"همه داده‌های این برنامه به صورت دائمی حذف می‌شود. این شامل تمام فایل‌ها، تنظیمات، حساب‌ها، پایگاه‌های داده و دیگر موارد می‌شود."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"داده‌های این برنامه به‌طور دائم حذف خواهد شد. این شامل فایل‌ها، تنظیمات، پایگاه‌های داده، و دیگر داده‌های برنامه می‌شود."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"تأیید"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"لغو"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index c3af6b9..7adc00b 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Sisäinen tallennustila"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Lasketaan kokoa uudelleen..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Poistetaanko sovelluksen tiedot?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Kaikki tämän sovelluksen tiedot poistetaan pysyvästi. Tähän sisältyvät kaikki tiedostot, asetukset, tilit, tietokannat jne."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Sovelluksen data poistetaan pysyvästi. Tämä koskee tiedostoja, asetuksia, tietokantoja ja muuta sovellusdataa."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Peru"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 08010fa..2634a8b 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Mémoire de stockage interne"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Calcul de la taille..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Supprimer les données de l\'application?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Toutes les données de cette application seront supprimées définitivement, y compris tous les fichiers, les paramètres, les comptes, les bases de données, etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Les données de cette application seront définitivement supprimées. Cela inclut les fichiers, les paramètres, les bases de données et d'autres données de l'application."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Annuler"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 327cc0c..00a8b55 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -2023,7 +2023,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Stockage interne"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Calcul de la taille..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Supprimer les données de l\'application ?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Toutes les données de cette application (fichiers, paramètres, comptes, bases de données, etc.) seront définitivement supprimées."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Les données de cette application (fichiers, paramètres, comptes, bases de données, etc.) seront définitivement supprimées."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Annuler"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index a8e1a77..d3e77ce 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Almacenamento interno"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Recalculando o tamaño…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Eliminar os datos da aplicación?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Eliminaranse todos os datos desta aplicación permanentemente. Entre estes inclúense todos os ficheiros, opcións de configuracións, contas, bases de datos etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Os datos desta aplicación (como os ficheiros, a configuración e as bases de datos) eliminaranse de forma permanente."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Aceptar"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancelar"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index 3a367d5..210c9b9 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -2023,7 +2023,7 @@
     <string name="internal_storage" msgid="999496851424448809">"આંતરિક સ્ટોરેજ"</string>
     <string name="recompute_size" msgid="1098091228370999128">"કદની ફરીથી ગણના કરી રહ્યું છે…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"ઍપનો ડેટા ડિલીટ કરીએ?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"આ તમામ ઍપનો ડેટા કાયમી રીતે ડિલીટ કરવામાં આવશે. આમાં તમામ ફાઇલો, સેટિંગ, એકાઉન્ટ, ડેટાબેઝ વગેરે શામેલ છે."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"આ ઍપના ડેટાને કાયમી રીતે કાઢી નાખવામાં આવશે. આમાં ફાઇલો, સેટિંગ, ડેટાબેઝ અને અન્ય ઍપ ડેટા પણ શામેલ હોય છે."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ઓકે"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"રદ કરો"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 85bc113..3cbcef5 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -2038,7 +2038,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Unutarnja pohrana"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Ponovni izračun veličine…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Izbrisati podatke aplikacije?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Svi podaci ove aplikacije trajno će se izbrisati. To obuhvaća sve datoteke, postavke, račune, baze podataka itd."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Podaci aplikacije trajno će se izbrisati. To uključuje datoteke, postavke, baze podataka i druge podatke aplikacije."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"U redu"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Odustani"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index fec260c..6649c16 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Belső tárhely"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Méret újraszámítása..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Törli az alkalmazás adatait?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Az alkalmazás minden adatát véglegesen törölni fogja. Ez magában foglalja az összes fájlt, beállítást, fiókot, adatbázist stb."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Az alkalmazás adatai véglegesen törlődnek. Így törlődni fognak a fájlok, a beállítások, az adatbázisok és az egyéb alkalmazásadatok is."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Mégse"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
index 7da262c..5c24b3c 100644
--- a/res/values-hy/strings.xml
+++ b/res/values-hy/strings.xml
@@ -2022,7 +2022,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Ներքին պահոց"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Չափի վերահաշվարկում…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Ջնջե՞լ հավելվածի տվյալները"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Այս հավելվածի բոլոր տվյալներն ընդմիշտ կջնջվեն: Այն կներառի բոլոր ֆայլերը, կարգավորումները, հաշիվները, տվյալների շտեմարանները և այլն:"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Այս հավելվածի տվյալներն ընդմիշտ կջնջվեն։Դա վերաբերում է ֆայլերին, կարգավորումներին, տվյալների շտեմարաններին և հավելվածի այլ տվյալներին։"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Հաստատել"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Չեղարկել"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index 6f9e561..93025f7 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Innbyggð geymsla"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Endurreiknar stærð…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Eyða forritsgögnum?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Öllum gögnum þessa forrits verður eytt fyrir fullt og allt. Í þessu felast allar skrár, stillingar, reikningar, gagnagrunnar o.s.frv."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Gögnum þessa forrits verður eytt fyrir fullt og allt. Þetta á við um skrár, stillingar, gagnagrunna og önnur forritsgögn."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Í lagi"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Hætta við"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 93b7668..996840f 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Memoria interna"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Ricalcolo dimensioni…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Eliminare i dati dell\'app?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Tutti i dati dell\'app verranno eliminati definitivamente, inclusi tutti i file, le impostazioni, gli account, i database e così via."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"I dati di questa app verranno eliminati definitivamente, inclusi file, impostazioni, database e altri dati dell'app."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Annulla"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 43749df..7e19a56 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"内部ストレージ"</string>
     <string name="recompute_size" msgid="1098091228370999128">"サイズを再計算中..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"アプリのデータを削除しますか？"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"このアプリのすべてのデータ（ファイル、設定、アカウント、データベースを含む）が完全に削除されます。"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"このアプリのデータが完全に削除されます。ファイル、設定、データベース、その他のアプリデータが対象になります。"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"キャンセル"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index 547f0dc..129ec85 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"შიდა მეხსიერება"</string>
     <string name="recompute_size" msgid="1098091228370999128">"ზომის გადათვლა…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"წაიშალოს აპის მონაცემები?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"აპის მონაცემები, მათ შორის ყველა ფაილი, პარამეტრი, ანგარიში, მონაცემთა ბაზა და ა.შ. სამუდამოდ წაიშლება."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"ამ აპის მონაცემები სამუდამოდ წაიშლება. ეს ეხება ფაილებს, პარამეტრებს, მონაცემთა ბაზებსა და აპის სხვა მონაცემებს."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"კარგი"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"გაუქმება"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index f4be1bb..2958fb77 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"ឧបករណ៍​ខាង​ក្នុង"</string>
     <string name="recompute_size" msgid="1098091228370999128">"កំពុង​គណនា​ទំហំ​ឡើងវិញ…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"លុប​ទិន្នន័យ​កម្មវិធី?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"ទិន្នន័យ​របស់​កម្មវិធី​នេះ​ទាំងអស់​នឹង​ត្រូវ​បាន​លុប​ជា​អចិន្ត្រៃយ៍។ ទិន្នន័យទាំងនេះរួមមាន ឯកសារ​ទាំងអស់ ការ​កំណត់ គណនី មូលដ្ឋាន​ទិន្នន័យ ។ល។"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"ទិន្នន័យ​របស់កម្មវិធីនេះ​នឹងត្រូវបានលុប​ជាអចិន្ត្រៃយ៍។ ទិន្នន័យនេះ​រួមមាន​ឯកសារ ការកំណត់ មូលដ្ឋាន​ទិន្នន័យ និង​ទិន្នន័យកម្មវិធី​ផ្សេងទៀត។"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"យល់​ព្រម​"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"បោះ​បង់​"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 99d4b7c..d4a52f8 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"내부 저장소"</string>
     <string name="recompute_size" msgid="1098091228370999128">"크기 다시 계산 중..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"앱 데이터를 삭제하시겠습니까?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"앱의 전체 데이터가 영구적으로 삭제됩니다. 여기에는 모든 파일, 설정, 계정, 데이터베이스 등이 포함됩니다."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"이 앱 데이터가 영구적으로 삭제됩니다. 삭제 대상에는 파일, 설정, 데이터베이스, 기타 앱 데이터가 포함됩니다."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"확인"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"취소"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index 7b6ca81..57893d5 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -2022,7 +2022,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Ички эстутум"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Өлчөмү кайра эсептелүүдө…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Колдонмодогу нерселерди өчүрөсүзбү?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Бул колдонмодогу файлдар, жөндөөлөр, аккаунттар жана маалымат базасы сыяктуу бардык нерселер биротоло өчүрүлөт."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Бул колдонмодогу маалымат биротоло жок кылынат. Ага файлдар, жөндөөлөр, дайындар базалары жана колдонмонун башка дайындары кирет."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Жарайт"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Жок"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index b3fe163..da5eff7 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"ພື້ນທີ່ຈັດເກັບຂໍ້ມູນພາຍໃນ"</string>
     <string name="recompute_size" msgid="1098091228370999128">"ກຳລັງຄຳນວນຂະໜາດຄືນໃໝ່..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"ລຶບຂໍ້ມູນແອັບບໍ່?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"ຂໍ້ມູນທັງໝົດຂອງແອັບນີ້ຈະຖືກລຶບອອກຖາວອນ ເຊິ່ງຮວມເຖິງໄຟລ໌, ການຕັ້ງຄ່າ, ບັນຊີ, ຖານຂໍ້ມູນ ແລະ ອື່ນໆທັງໝົດນຳ."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"ຂໍ້ມູນຂອງແອັບນີ້ຈະຖືກລຶບອອກຖາວອນ. ນີ້ຮວມເຖິງໄຟລ໌, ການຕັ້ງຄ່າ, ຖານຂໍ້ມູນ ແລະ ຂໍ້ມູນແອັບອື່ນໆນຳ"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ຕົກລົງ"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"ຍົກເລີກ"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 6a22036..3392032 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -2062,7 +2062,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Vidinė atmint."</string>
     <string name="recompute_size" msgid="1098091228370999128">"Iš naujo apskaičiuojamas dydis..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Ištrinti programos duomenis?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Visi šios programos duomenys bus visam laikui ištrinti. Tai taikoma visiems failams, nustatymams, paskyroms, duomenims ir kt."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Šios programos duomenys bus visam laikui ištrinti. Įtraukiami failai, nustatymai, duomenų bazės ir kiti programos duomenys."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Gerai"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Atšaukti"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 40c3d62..95ce985 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -2038,7 +2038,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Iekšējā krātuve"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Notiek izmēra pārrēķināšana..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Vai dzēst lietotnes datus?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Tiks neatgriezeniski dzēsti visi šīs lietotnes dati, tostarp visi faili, iestatījumi, konti, datu bāzes un citi vienumi."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Tiks neatgriezeniski dzēsti šīs lietotnes dati, tostarp faili, iestatījumi, datu bāzes un citi lietotnes dati."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Labi"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Atcelt"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index c9cbca9..0032bc2 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Внатрешен капацитет"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Повторно пресметување големина..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Да се избришат податоците на апликацијата?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Сите податоци на оваа апликација ќе бидат трајно избришани. Ова ги опфаќа сите датотеки, поставки, сметки, бази на податоци итн."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Податоците од апликацијава трајно ќе се избришат. Ова вклучува датотеки, поставки, бази на податоци и други податоци од апликацијата."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Во ред"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Откажи"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index 9367f5d..1ca7af7 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -2022,7 +2022,7 @@
     <string name="internal_storage" msgid="999496851424448809">"ആന്തരിക സ്റ്റോറേജ്"</string>
     <string name="recompute_size" msgid="1098091228370999128">"വലുപ്പം വീണ്ടും കണക്കാക്കുന്നു..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"ആപ്പ് ഡാറ്റ ഇല്ലാതാക്കണോ?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"ഈ ആപ്പിന്‍റെ എല്ലാ ഡാറ്റയും ശാശ്വതമായി ഇല്ലാതാക്കും. ഫയലുകൾ, ക്രമീകരണങ്ങൾ, അക്കൗണ്ടുകൾ, ഡാറ്റാബേസുകൾ തുടങ്ങിയവയെല്ലാം ഇതിൽ ഉൾപ്പെടും."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"ഈ ആപ്പിന്റെ ഡാറ്റ ശാശ്വതമായി ഇല്ലാതാക്കും. ഇതിൽ ഫയലുകളും ക്രമീകരണവും ഡാറ്റാബേസുകളും മറ്റ് ആപ്പ് ഡാറ്റയും ഉൾപ്പെടുന്നു."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ശരി"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"റദ്ദാക്കുക"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index 4f9ac77..455209c 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Дотоод сан"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Хэмжээг дахин тооцоолж байна…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Апп өгөгдлийг устгах уу?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Энэ апп-н бүх өгөгдөл бүрмөсөн устах болно. Үүнд бүх файл, тохиргоо, бүртгэл, өгөгдөл гэх мэт орно."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Энэ аппын өгөгдлийг бүрмөсөн устгана. Үүнд файл, тохиргоо, өгөгдлийн бааз болон бусад аппын өгөгдөл багтана."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Цуцлах"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index 5ffb2fb..0c9980e 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -2017,7 +2017,7 @@
     <string name="internal_storage" msgid="999496851424448809">"अंतर्गत स्टोरेज"</string>
     <string name="recompute_size" msgid="1098091228370999128">"आकाराचे पुनर्संगणन करत आहे…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"अ‍ॅप डेटा हटवायचा?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"या अ‍ॅपचा सर्व डेटा कायमचा हटवला जाईल. यात सर्व फाइल, सेटिंग्ज, खाती, डेटाबेस इ. समाविष्ट असेल."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"या ॲपचा डेटा कायमचा हटवला जाईल. यामध्ये फाइल, सेटिंग्ज, डेटाबेस आणि इतर अ‍ॅप डेटा यांचा समावेश आहे."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ठीक"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"रद्द करा"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index ff1dae7..655088d 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Storan dalaman"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Mengira semula saiz..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Padamkan data aplikasi?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Semua data aplikasi ini akan dipadamkan secara kekal. Ini termasuk semua fail, tetapan, akaun, pangkalan data, dll."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Data apl ini akan dipadamkan secara kekal. Kandungan ini termasuk fail, tetapan, pangkalan data dan data apl yang lain."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Batal"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index e17edf1..1b272d6 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"စက်တွင်း သိုလှောင်ထားမှု"</string>
     <string name="recompute_size" msgid="1098091228370999128">"အရွယ်အစားကို ပြန်လည်တွက်ချက်နေသည်"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"အက်ပ်ဒေတာ ဖျက်မလား။"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"ဤအက်ပ်၏ ဒေတာအားလုံးကို အပြီးဖျက်ပါမည်။ ဖိုင်၊ ဆက်တင်၊ အကောင့်၊ ဒေတာဘေ့စ်စသည်တို့ အားလုံးပါဝင်သည်။"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"ဤအက်ပ်၏ ဒေတာကို အပြီးဖျက်ပါမည်။ ၎င်းတွင် ဖိုင်၊ ဆက်တင်၊ ဒေတာဘေ့စ်နှင့် အခြားအက်ပ် ဒေတာများ ပါဝင်သည်။"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"မလုပ်တော့"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 7c311d3..00b18b5 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Intern lagring"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Beregner størrelse på nytt…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Vil du slette appdataene?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Alle data i appen slettes permanent. Dette omfatter alle filer, innstillinger, kontoer, databaser osv."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Dataene i denne appen slettes permanent. Dette inkluderer filer, innstillinger, databaser og andre appdata."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Avbryt"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index 15cea29..f70f983 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/strings.xml
@@ -2024,7 +2024,7 @@
     <string name="internal_storage" msgid="999496851424448809">"आन्तरिक भण्डारण"</string>
     <string name="recompute_size" msgid="1098091228370999128">"आकार पुनःगणना गर्दै ..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"एपको डेटा मेटाउन चाहनुहुन्छ?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"यस एपका सम्पूर्ण डेटाहरू स्थायी रूपमा मेटाइने छ। यसमा सम्पूर्ण फाइल, सेटिङ, खाताहरू, डेटाबेस आदि पर्दछन्।"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"यो एपका डेटा सदाका लागि मेटाइने छ। यसमा फाइल, सेटिङ, डेटाबेस र एपका अन्य डेटा पर्छन्।"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ठिक छ"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"रद्द गर्नुहोस्"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index ddde5ed..d4536d7 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Interne opslag"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Grootte opnieuw berekenen..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Gegevens van app verwijderen?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Alle gegevens van deze app worden permanent verwijderd. Dit omvat alle bestanden, instellingen, accounts, databases, enzovoort."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"De gegevens van deze app worden definitief verwijderd. Dit omvat bestanden, instellingen, databases en andere app-gegevens."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Annuleren"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml
index a4d63fc..b9d446a 100644
--- a/res/values-or/strings.xml
+++ b/res/values-or/strings.xml
@@ -2023,7 +2023,7 @@
     <string name="internal_storage" msgid="999496851424448809">"ଇଣ୍ଟର୍ନଲ୍‌ ଷ୍ଟୋରେଜ୍‌"</string>
     <string name="recompute_size" msgid="1098091228370999128">"ଆକାରକୁ ପୁଣି ଗଣୁଛି…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"ଆପ୍‌ର ଡାଟା ଡିଲିଟ୍‌ କରିବେ?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"ଏହି ଆପ୍‌ର ସମସ୍ତ ଡାଟା ସ୍ଥାୟୀ ଭାବେ ଡିଲିଟ୍‌ ହୋଇଯିବ। ଏଥିରେ ରହିଛି, ସମସ୍ତ ଫାଇଲ୍‌, ସେଟିଙ୍ଗ, ଆକାଉଣ୍ଟ, ଡାଟାବେସ୍‌ ଆଦି"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"ଏହି ଆପର ଡାଟା ସ୍ଥାୟୀ ଭାବେ ଡିଲିଟ ହୋଇଯିବ। ଏଥିରେ ଫାଇଲ, ସେଟିଂସ, ଡାଟାବେସ ଏବଂ ଅନ୍ୟ ଆପ ଡାଟା ଅନ୍ତର୍ଭୁକ୍ତ।"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ଠିକ୍‌ ଅଛି"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"ବାତିଲ କରନ୍ତୁ"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index ee09dcb..fb49435 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -2062,7 +2062,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Pamięć wewnętrzna"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Przeliczanie rozmiaru..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Usunąć dane aplikacji?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Wszystkie dane tej aplikacji zostaną trwale usunięte. Dotyczy to wszystkich plików, ustawień, kont, baz danych itd."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Dane tej aplikacji zostaną trwale usunięte. Dotyczy to plików, ustawień, baz danych i innych danych aplikacji."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Anuluj"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index 1d2ee79..9cfe126 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Espaço interno"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Recalculando o tamanho…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Excluir os dados do app?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Todos os dados deste app serão excluídos permanentemente. Isso inclui todos os arquivos, configurações, contas, bancos de dados e outros."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Os dados do app serão excluídos permanentemente, incluindo arquivos, configurações, bancos de dados, entre outros."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancelar"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 51a985e..29e00b2 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Armaz. interno"</string>
     <string name="recompute_size" msgid="1098091228370999128">"A recalcular tamanho..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Eliminar dados da app?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Todos os dados desta aplicação serão eliminados permanentemente. Isto inclui todos os ficheiros, definições, contas, bases de dados, etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Os dados desta app serão permanentemente eliminados. Estão incluídos ficheiros, definições, bases de dados e outros dados de apps."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancelar"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 1d2ee79..9cfe126 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Espaço interno"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Recalculando o tamanho…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Excluir os dados do app?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Todos os dados deste app serão excluídos permanentemente. Isso inclui todos os arquivos, configurações, contas, bancos de dados e outros."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Os dados do app serão excluídos permanentemente, incluindo arquivos, configurações, bancos de dados, entre outros."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancelar"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index e55779d..a29ceed 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -2038,7 +2038,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Stocare internă"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Se recalculează dimensiunea..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Ștergeți datele aplicației?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Toate datele acestei aplicații vor fi șterse definitiv. Aici sunt incluse toate fișierele, setările, conturile, bazele de date etc."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Datele acestei aplicații vor fi șterse definitiv. Aici sunt incluse fișierele, setările, bazele de date și alte date ale aplicației."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Anulați"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 253bc16..acc9729 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -2062,7 +2062,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Внутр. накопитель"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Повторное вычисление размера..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Удалить данные приложения?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Все данные этого приложения (включая файлы, базы данных, настройки, аккаунты и т. д.) будут удалены без возможности восстановления."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Данные этого приложения (включая файлы, базы данных, настройки и т. д.) будут удалены без возможности восстановления."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ОК"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Отмена"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index 6d77b21..ebedc00 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"අභ්‍යන්තර ආචයනය"</string>
     <string name="recompute_size" msgid="1098091228370999128">"විශාලත්වය නැවත ගණනය කරමින්…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"යෙදුම් දත්ත මකන්නද?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"මෙම යෙදුමේ සියලු දත්ත ස්ථිරව මකා දමනු ඇත. මෙයට සියලු ගොනු, සැකසීම්, ගිණුම්, දත්ත සමූහ සහ තවත් අඩංගුය."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"මෙම යෙදුමේ දත්ත ස්ථිරවම මකනු ඇත. මෙයට ගොනු, සැකසීම්, දත්ත සමුදායන් සහ වෙනත් යෙදුම් දත්ත ඇතුළත් වේ."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"හරි"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"අවලංගු කරන්න"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 77d6309..0d213f9 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -2062,7 +2062,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Interný ukl. priestor"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Prebieha prepočítanie veľkosti..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Odstrániť dáta aplikácie?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Všetky dáta tejto aplikácie vrátane súborov, nastavení, účtov, databáz atď. budú navždy odstránené."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Dáta tejto aplikácie budú natrvalo odstránené. Zahrnujú súbory, nastavenia, databázy a ďalšie dáta aplikácie."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Zrušiť"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 08560c2..cea4c91 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -2062,7 +2062,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Notranja shramba"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Preračunavanje velikosti ..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Želite izbrisati podatke aplikacije?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Vsi podatki te aplikacije bodo trajno izbrisani. To med drugim vključuje vse datoteke, nastavitve, račune in podatkovne zbirke."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Podatki te aplikacije bodo trajno izbrisani. To vključuje datoteke, nastavitve, zbirke podatkov in druge podatke aplikacije."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"V redu"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Prekliči"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index d0b406a..e1c6e23 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -2023,7 +2023,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Hapësira e brendshme ruajtëse"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Po llogarit përsëri madhësinë…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Të fshihen të dhënat e aplikacionit?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Të gjitha të dhënat e këtij aplikacioni do të fshihen përgjithmonë. Kjo përfshin të gjithë skedarët, cilësimet, llogaritë, bazat e të dhënave etj."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Të dhënat e këtij aplikacioni do të fshihen përgjithmonë. Këtu përfshihen skedarët, cilësimet, bazat e të dhënave dhe të dhëna të tjera të aplikacionit."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Në rregull"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Anulo"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 8e5c554..1bd41b8 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -2038,7 +2038,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Интерно складиште"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Поновно израчунавање величине..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Желите ли да избришете податке о апликацији?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Сви подаци ове апликације биће трајно избрисани. То обухвата све датотеке, подешавања, налоге, базе података итд."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Подаци ове апликације ће се трајно избрисати. То обухвата фајлове, подешавања, базе података и друге податке апликација."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Потврди"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Откажи"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index aa93efb..956da5d 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Intern lagring"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Räknar om storlek…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Vill du ta bort appdata?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Appens samtliga data tas bort permanent. Det inkluderar alla filer, inställningar, konton, databaser och så vidare."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Appens data raderas permanent. Detta omfattar filer, inställningar, databaser och annan appdata."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Avbryt"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 744ee15..88c0edf 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Hifadhi ya ndani"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Kiwango cha kukadiria upya"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Ungependa kufuta data ya programu?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Data yote ya programu hii itafutwa kabisa. Hii inajumuisha faili, mipangilio, akaunti, hifadhidata zote na mengineyo."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Data iliyo kwenye programu hii itafutwa kabisa. Hii ni pamoja na faili, mipangilio, hifadhidata na data nyingine ya programu."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Sawa"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Ghairi"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index dd95a0c..321cff8 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -2022,7 +2022,7 @@
     <string name="internal_storage" msgid="999496851424448809">"அகச் சேமிப்பிடம்"</string>
     <string name="recompute_size" msgid="1098091228370999128">"அளவை மீண்டும் கணக்கிடுகிறது…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"ஆப்ஸ் டேட்டாவை நீக்கவா?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"ஆப்ஸின் எல்லா தகவலும் நிரந்தரமாக நீக்கப்படும். இதில் எல்லா ஃபைல்களும், அமைப்புகளும், கணக்குகளும், தரவுத்தளங்களும், மேலும் பலவும் அடங்கும்."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"இந்த ஆப்ஸின் தரவு நிரந்தரமாக நீக்கப்படும். ஃபைல்கள், அமைப்புகள், தரவுத்தளங்கள், பிற ஆப்ஸ் தரவு ஆகியவை இதிலடங்கும்."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"சரி"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"ரத்துசெய்"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 5ad173c..cf4e456 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Panloob na storage"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Muling kino-compute ang laki…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"I-delete ang data ng app?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Permanenteng made-delete ang lahat ng data ng app na ito. Kabilang dito ang lahat ng file, setting, account, database, atbp."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Permanenteng made-delete ang data ng app na ito. Kasama rito ang mga file, setting, database, at iba pang data ng app."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Kanselahin"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 5504f1a..8dfc083 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Dahili Bellek"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Boyut yeniden hesaplanıyor…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Uygulama verileri silinsin mi?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Bu uygulamanın tüm verileri kalıcı olarak silinecek. Bu veriler arasında tüm dosyalar, ayarlar, hesaplar, veritabanları vb. yer alıyor."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Bu uygulamanın verileri kalıcı olarak silinecek. Buna dosyalar, ayarlar, veritabanları ve diğer uygulama verileri de dahildir."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Tamam"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"İptal"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index d1ddf2e..f47f525 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -2062,7 +2062,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Внутр. пам\'ять"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Повт. обчисл. розм…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Видалити дані додатка?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Усі дані цього додатка буде видалено назавжди: файли, налаштування, облікові записи, бази даних тощо."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Дані цього додатка буде назавжди видалено. До них належать файли, налаштування, бази даних тощо."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Скасувати"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index 25e01bc..9a2498a 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -2023,7 +2023,7 @@
     <string name="internal_storage" msgid="999496851424448809">"داخلی اسٹوریج"</string>
     <string name="recompute_size" msgid="1098091228370999128">"سائز کو دوبارہ شمار کر رہا ہے…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"ایپ کا ڈیٹا حذف کریں؟"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"اس ایپ کا سبھی ڈیٹا مستقل طور پر حذف ہو جائے گا۔ اس میں سبھی فائلیں، ترتیبات، اکاؤنٹس، ڈیٹا بیسز وغیرہ شامل ہیں۔"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"اس ایپ کا ڈیٹا مستقل طور پر حذف کر دیا جائے گا۔ اس میں فائلز، ترتیبات، ڈیٹا بیس اور دیگر ایپ کا ڈیٹا شامل ہے۔"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"ٹھیک ہے"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"منسوخ کریں"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 3ed6368..650a203 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -2015,7 +2015,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Ichki xotira"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Xajm qayta hisoblanmoqda…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Bu ilova maʼlumotlari oʻchirilsinmi?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Ushbu ilovaning barcha ma’lumotlari, jumladan, fayllar, ma’lumotlar bazalari, sozlamalar, hisoblar va boshqa narsalar o‘chirib tashlanadi. Keyin ularni qayta tiklab bo‘lmaydi."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Bu ilova maʼlumotlari butunlay oʻchirib tashlanadi. Unga fayllar, sozlamalar, ma’lumotlar bazalari va boshqa ilovaga tegishli maʼlumotlar kiradi"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Bekor qilish"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index e3b54b2..e19fbf8 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Bộ nhớ trong"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Đang tính toán lại kích thước…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Xóa dữ liệu ứng dụng?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Tất cả dữ liệu của ứng dụng này sẽ bị xóa vĩnh viễn, bao gồm tất cả các tệp, các tùy chọn cài đặt, tài khoản, cơ sở dữ liệu, v.v."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Dữ liệu của ứng dụng này sẽ bị xóa vĩnh viễn. Dữ liệu này bao gồm các tệp, chế độ cài đặt, cơ sở dữ liệu và dữ liệu ứng dụng khác."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"OK"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Hủy"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index a0deb27..cb1e22d 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -2023,7 +2023,7 @@
     <string name="internal_storage" msgid="999496851424448809">"内部存储空间"</string>
     <string name="recompute_size" msgid="1098091228370999128">"正在重新计算大小..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"要删除应用数据吗？"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"系统会永久删除此应用的所有数据。删除的内容包括所有文件、设置、帐号、数据库等。"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"系统将永久删除此应用的数据，其中包括文件、设置、数据库和其他应用数据。"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"确定"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"取消"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index b3a0c03..605d083 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -2015,7 +2015,7 @@
     <string name="internal_storage" msgid="999496851424448809">"內部儲存空間"</string>
     <string name="recompute_size" msgid="1098091228370999128">"正在重新計算大小..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"您要刪除應用程式資料嗎？"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"這個應用程式的所有資料都將被永久刪除，包含所有檔案、設定、帳戶、資料庫等。"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"系統會永久刪除此應用程式的資料，包括檔案、設定、資料庫和其他應用程式資料。"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"確定"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"取消"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index e2717c0..8b426bc 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -2014,7 +2014,7 @@
     <string name="internal_storage" msgid="999496851424448809">"內部儲存空間"</string>
     <string name="recompute_size" msgid="1098091228370999128">"重新計算大小…"</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"你要刪除應用程式資料嗎？"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"系統會永久刪除這個應用程式的所有資料，包含所有檔案、設定、帳戶、資料庫等。"</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"系統將永久刪除這個應用程式的資料，包括檔案、設定、資料庫和應用程式的其他資料。"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"確定"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"取消"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 1aa3a45..0ac680a 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -2017,7 +2017,7 @@
     <string name="internal_storage" msgid="999496851424448809">"Isitoreji sangaphakathi"</string>
     <string name="recompute_size" msgid="1098091228370999128">"Ilungisa kabusha usayizi..."</string>
     <string name="clear_data_dlg_title" msgid="180446967743732410">"Ngabe ususa yonke imininingo yohlelo lokusebenza?"</string>
-    <string name="clear_data_dlg_text" msgid="7870723948123690332">"Yonke le datha yohlelo lokusebenza izosuswa ngokuphelele. Lokhu kuhlanganisa wonke amafayela, izilungiselelo, ama-akhawunti, izizinda zemininingwane nokunye."</string>
+    <string name="clear_data_dlg_text" msgid="1107610960337399006">"Idatha yale app izosuswa unomphela. Lokhu kuhlanganisa amafayela, amasethingi, isizindalwazi, nenye idatha ye-app."</string>
     <string name="dlg_ok" msgid="1421350367857960997">"KULUNGILE"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Khansela"</string>
     <string name="app_not_found_dlg_title" msgid="7122106240981109930"></string>
diff --git a/src/com/android/settings/TetherSettings.java b/src/com/android/settings/TetherSettings.java
index 1a21b55..e485d1e 100644
--- a/src/com/android/settings/TetherSettings.java
+++ b/src/com/android/settings/TetherSettings.java
@@ -39,7 +39,6 @@
 import android.os.Bundle;
 import android.os.Environment;
 import android.os.Handler;
-import android.os.HandlerExecutor;
 import android.os.UserHandle;
 import android.os.UserManager;
 import android.provider.SearchIndexableResource;
@@ -324,14 +323,14 @@
 
         mStartTetheringCallback = new OnStartTetheringCallback(this);
         mTetheringEventCallback = new TetheringEventCallback();
-        mTm.registerTetheringEventCallback(new HandlerExecutor(mHandler), mTetheringEventCallback);
+        mTm.registerTetheringEventCallback(r -> mHandler.post(r), mTetheringEventCallback);
 
         mMassStorageActive = Environment.MEDIA_SHARED.equals(Environment.getExternalStorageState());
         registerReceiver();
 
         mEthernetListener = new EthernetListener();
         if (mEm != null)
-            mEm.addListener(mEthernetListener);
+            mEm.addListener(mEthernetListener, r -> mHandler.post(r));
 
         updateUsbState();
         updateBluetoothAndEthernetState();
diff --git a/src/com/android/settings/applications/appinfo/OWNERS b/src/com/android/settings/applications/appinfo/OWNERS
new file mode 100644
index 0000000..cd6abb8
--- /dev/null
+++ b/src/com/android/settings/applications/appinfo/OWNERS
@@ -0,0 +1,5 @@
+# just for per-app locale settings review
+allenwtsu@google.com
+danielwbhuang@google.com
+goldmanj@google.com
+tomhsu@google.com
diff --git a/src/com/android/settings/datausage/BillingCyclePreferenceController.java b/src/com/android/settings/datausage/BillingCyclePreferenceController.java
index 2f144cb..9592c5e 100644
--- a/src/com/android/settings/datausage/BillingCyclePreferenceController.java
+++ b/src/com/android/settings/datausage/BillingCyclePreferenceController.java
@@ -17,7 +17,6 @@
 package com.android.settings.datausage;
 
 import android.content.Context;
-import android.net.INetworkStatsService;
 import android.net.NetworkPolicyManager;
 import android.net.NetworkTemplate;
 import android.os.INetworkManagementService;
@@ -51,8 +50,6 @@
         TemplatePreference.NetworkServices services = new TemplatePreference.NetworkServices();
         services.mNetworkService = INetworkManagementService.Stub.asInterface(
                 ServiceManager.getService(Context.NETWORKMANAGEMENT_SERVICE));
-        services.mStatsService = INetworkStatsService.Stub.asInterface(
-                ServiceManager.getService(Context.NETWORK_STATS_SERVICE));
         services.mPolicyManager = mContext.getSystemService(NetworkPolicyManager.class);
         services.mPolicyEditor = new NetworkPolicyEditor(services.mPolicyManager);
         services.mTelephonyManager = mContext.getSystemService(TelephonyManager.class);
diff --git a/src/com/android/settings/datausage/ChartDataUsagePreference.java b/src/com/android/settings/datausage/ChartDataUsagePreference.java
index 0577e9c..12fb03b 100644
--- a/src/com/android/settings/datausage/ChartDataUsagePreference.java
+++ b/src/com/android/settings/datausage/ChartDataUsagePreference.java
@@ -17,13 +17,13 @@
 import android.content.Context;
 import android.content.res.Resources;
 import android.net.NetworkPolicy;
-import android.net.TrafficStats;
 import android.text.SpannableStringBuilder;
 import android.text.TextUtils;
 import android.text.format.DateUtils;
 import android.text.format.Formatter;
 import android.text.style.ForegroundColorSpan;
 import android.util.AttributeSet;
+import android.util.DataUnit;
 import android.util.SparseIntArray;
 
 import androidx.annotation.VisibleForTesting;
@@ -46,7 +46,7 @@
 
     // The resolution we show on the graph so that we can squash things down to ints.
     // Set to half a meg for now.
-    private static final long RESOLUTION = TrafficStats.MB_IN_BYTES / 2;
+    private static final long RESOLUTION = DataUnit.MEBIBYTES.toBytes(1) / 2;
 
     private final int mWarningColor;
     private final int mLimitColor;
diff --git a/src/com/android/settings/datausage/CycleAdapter.java b/src/com/android/settings/datausage/CycleAdapter.java
index 74d27be..1292d00 100644
--- a/src/com/android/settings/datausage/CycleAdapter.java
+++ b/src/com/android/settings/datausage/CycleAdapter.java
@@ -13,14 +13,17 @@
  */
 package com.android.settings.datausage;
 
+import android.annotation.NonNull;
+import android.app.usage.NetworkStats;
 import android.content.Context;
 import android.net.NetworkPolicy;
 import android.net.NetworkPolicyManager;
-import android.net.NetworkStatsHistory;
 import android.text.format.DateUtils;
 import android.util.Pair;
+import android.util.Range;
 import android.widget.AdapterView;
 
+import com.android.net.module.util.NetworkStatsUtils;
 import com.android.settings.Utils;
 import com.android.settingslib.net.ChartData;
 import com.android.settingslib.net.NetworkCycleData;
@@ -62,9 +65,43 @@
         return 0;
     }
 
+    protected static long getTotalBytesForTimeRange(List<NetworkStats.Bucket> stats,
+            Range<Long> range) {
+        long bytes = 0L;
+        for (NetworkStats.Bucket bucket : stats) {
+            final Range<Long> bucketSpan = new Range<>(
+                    bucket.getStartTimeStamp(), bucket.getEndTimeStamp());
+            // Only record bytes that overlapped with the given time range. For partially
+            // overlapped bucket, record rational bytes assuming the traffic is uniform
+            // distributed within the bucket.
+            try {
+                final Range<Long> overlapped = range.intersect(bucketSpan);
+                final long totalOfBucket = bucket.getRxBytes() + bucket.getTxBytes();
+                bytes += NetworkStatsUtils.multiplySafeByRational(totalOfBucket,
+                        overlapped.getUpper() - overlapped.getLower(),
+                        bucketSpan.getUpper() - bucketSpan.getLower());
+            } catch (IllegalArgumentException e) {
+                // Range disjoint, ignore.
+                continue;
+            }
+        }
+        return bytes;
+    }
+
+    @NonNull
+    private Range getTimeRangeOf(@NonNull List<NetworkStats.Bucket> stats) {
+        long start = Long.MAX_VALUE;
+        long end = Long.MIN_VALUE;
+        for (NetworkStats.Bucket bucket : stats) {
+            start = Math.min(start, bucket.getStartTimeStamp());
+            end = Math.max(end, bucket.getEndTimeStamp());
+        }
+        return new Range(start, end);
+    }
+
     /**
      * Rebuild list based on {@link NetworkPolicy} and available
-     * {@link NetworkStatsHistory} data. Always selects the newest item,
+     * {@link List<NetworkStats.Bucket>} data. Always selects the newest item,
      * updating the inspection range on chartData.
      */
     @Deprecated
@@ -75,19 +112,20 @@
         clear();
 
         final Context context = getContext();
-        NetworkStatsHistory.Entry entry = null;
 
-        long historyStart = Long.MAX_VALUE;
-        long historyEnd = Long.MIN_VALUE;
-        if (chartData != null) {
-            historyStart = chartData.network.getStart();
-            historyEnd = chartData.network.getEnd();
+        long historyStart;
+        long historyEnd;
+        try {
+            final Range<Long> historyTimeRange = getTimeRangeOf(chartData.network);
+            historyStart = historyTimeRange.getLower();
+            historyEnd = historyTimeRange.getUpper();
+        } catch (IllegalArgumentException e) {
+            // Empty history.
+            final long now = System.currentTimeMillis();
+            historyStart = now;
+            historyEnd = now + 1;
         }
 
-        final long now = System.currentTimeMillis();
-        if (historyStart == Long.MAX_VALUE) historyStart = now;
-        if (historyEnd == Long.MIN_VALUE) historyEnd = now + 1;
-
         boolean hasCycles = false;
         if (policy != null) {
             final Iterator<Pair<ZonedDateTime, ZonedDateTime>> it = NetworkPolicyManager
@@ -99,8 +137,9 @@
 
                 final boolean includeCycle;
                 if (chartData != null) {
-                    entry = chartData.network.getValues(cycleStart, cycleEnd, entry);
-                    includeCycle = (entry.rxBytes + entry.txBytes) > 0;
+                    final long bytesInCycle = getTotalBytesForTimeRange(chartData.network,
+                            new Range<>(cycleStart, cycleEnd));
+                    includeCycle = bytesInCycle > 0;
                 } else {
                     includeCycle = true;
                 }
@@ -120,8 +159,9 @@
 
                 final boolean includeCycle;
                 if (chartData != null) {
-                    entry = chartData.network.getValues(cycleStart, cycleEnd, entry);
-                    includeCycle = (entry.rxBytes + entry.txBytes) > 0;
+                    final long bytesInCycle = getTotalBytesForTimeRange(chartData.network,
+                            new Range<>(cycleStart, cycleEnd));
+                    includeCycle = bytesInCycle > 0;
                 } else {
                     includeCycle = true;
                 }
diff --git a/src/com/android/settings/datausage/DataUsageBaseFragment.java b/src/com/android/settings/datausage/DataUsageBaseFragment.java
index 299ce43..eee3228 100644
--- a/src/com/android/settings/datausage/DataUsageBaseFragment.java
+++ b/src/com/android/settings/datausage/DataUsageBaseFragment.java
@@ -15,7 +15,6 @@
 package com.android.settings.datausage;
 
 import android.content.Context;
-import android.net.INetworkStatsService;
 import android.net.NetworkPolicy;
 import android.net.NetworkPolicyManager;
 import android.os.Bundle;
@@ -44,8 +43,6 @@
 
         services.mNetworkService = INetworkManagementService.Stub.asInterface(
                 ServiceManager.getService(Context.NETWORKMANAGEMENT_SERVICE));
-        services.mStatsService = INetworkStatsService.Stub.asInterface(
-                ServiceManager.getService(Context.NETWORK_STATS_SERVICE));
         services.mPolicyManager = (NetworkPolicyManager) context
                 .getSystemService(Context.NETWORK_POLICY_SERVICE);
 
diff --git a/src/com/android/settings/datausage/DataUsageList.java b/src/com/android/settings/datausage/DataUsageList.java
index cd033e3..6beb3d8 100644
--- a/src/com/android/settings/datausage/DataUsageList.java
+++ b/src/com/android/settings/datausage/DataUsageList.java
@@ -14,11 +14,9 @@
 
 package com.android.settings.datausage;
 
+import static android.app.usage.NetworkStats.Bucket.UID_REMOVED;
+import static android.app.usage.NetworkStats.Bucket.UID_TETHERING;
 import static android.net.NetworkPolicyManager.POLICY_REJECT_METERED_BACKGROUND;
-import static android.net.NetworkStatsHistory.FIELD_RX_BYTES;
-import static android.net.NetworkStatsHistory.FIELD_TX_BYTES;
-import static android.net.TrafficStats.UID_REMOVED;
-import static android.net.TrafficStats.UID_TETHERING;
 
 import android.app.Activity;
 import android.app.ActivityManager;
@@ -91,7 +89,6 @@
     private static final String KEY_APPS_GROUP = "apps_group";
     private static final String KEY_TEMPLATE = "template";
     private static final String KEY_APP = "app";
-    private static final String KEY_FIELDS = "fields";
 
     @VisibleForTesting
     static final int LOADER_CHART_DATA = 2;
@@ -299,7 +296,6 @@
         final Bundle args = new Bundle();
         args.putParcelable(KEY_TEMPLATE, template);
         args.putParcelable(KEY_APP, null);
-        args.putInt(KEY_FIELDS, FIELD_RX_BYTES | FIELD_TX_BYTES);
         return args;
     }
 
diff --git a/src/com/android/settings/datausage/DataUsagePreference.java b/src/com/android/settings/datausage/DataUsagePreference.java
index 644ea9b..0ed0ad3 100644
--- a/src/com/android/settings/datausage/DataUsagePreference.java
+++ b/src/com/android/settings/datausage/DataUsagePreference.java
@@ -53,7 +53,7 @@
         mTemplate = template;
         mSubId = subId;
         final DataUsageController controller = getDataUsageController();
-        if (mTemplate.isMatchRuleMobile()) {
+        if (mTemplate.getMatchRule() == NetworkTemplate.MATCH_MOBILE) {
             setTitle(R.string.app_cellular_data_usage);
         } else {
             final DataUsageController.DataUsageInfo usageInfo =
@@ -78,13 +78,14 @@
         final SubSettingLauncher launcher;
         args.putParcelable(DataUsageList.EXTRA_NETWORK_TEMPLATE, mTemplate);
         args.putInt(DataUsageList.EXTRA_SUB_ID, mSubId);
-        args.putInt(DataUsageList.EXTRA_NETWORK_TYPE, mTemplate.isMatchRuleMobile()
-            ? ConnectivityManager.TYPE_MOBILE : ConnectivityManager.TYPE_WIFI);
+        args.putInt(DataUsageList.EXTRA_NETWORK_TYPE, mTemplate.getMatchRule()
+                == NetworkTemplate.MATCH_MOBILE
+                ? ConnectivityManager.TYPE_MOBILE : ConnectivityManager.TYPE_WIFI);
         launcher = new SubSettingLauncher(getContext())
             .setArguments(args)
             .setDestination(DataUsageList.class.getName())
             .setSourceMetricsCategory(SettingsEnums.PAGE_UNKNOWN);
-        if (mTemplate.isMatchRuleMobile()) {
+        if (mTemplate.getMatchRule() == NetworkTemplate.MATCH_MOBILE) {
             launcher.setTitleRes(R.string.app_cellular_data_usage);
         } else {
             launcher.setTitleRes(mTitleRes);
diff --git a/src/com/android/settings/datausage/TemplatePreference.java b/src/com/android/settings/datausage/TemplatePreference.java
index 158c3b6..43dda0a 100644
--- a/src/com/android/settings/datausage/TemplatePreference.java
+++ b/src/com/android/settings/datausage/TemplatePreference.java
@@ -14,7 +14,6 @@
 
 package com.android.settings.datausage;
 
-import android.net.INetworkStatsService;
 import android.net.NetworkPolicyManager;
 import android.net.NetworkTemplate;
 import android.os.INetworkManagementService;
@@ -30,7 +29,6 @@
 
     class NetworkServices {
         INetworkManagementService mNetworkService;
-        INetworkStatsService mStatsService;
         NetworkPolicyManager mPolicyManager;
         TelephonyManager mTelephonyManager;
         SubscriptionManager mSubscriptionManager;
diff --git a/src/com/android/settings/datausage/lib/DataUsageLib.java b/src/com/android/settings/datausage/lib/DataUsageLib.java
index 9f4c78f..1ca5eff 100644
--- a/src/com/android/settings/datausage/lib/DataUsageLib.java
+++ b/src/com/android/settings/datausage/lib/DataUsageLib.java
@@ -24,6 +24,8 @@
 import android.telephony.TelephonyManager;
 import android.util.Log;
 
+import androidx.annotation.NonNull;
+
 import com.android.internal.util.ArrayUtils;
 
 import java.util.List;
@@ -70,7 +72,24 @@
             return mobileTemplate;
         }
 
-        return NetworkTemplate.normalize(mobileTemplate, mergedSubscriberIds);
+        return normalizeMobileTemplate(mobileTemplate, mergedSubscriberIds);
+    }
+
+    private static NetworkTemplate normalizeMobileTemplate(
+            @NonNull NetworkTemplate template, @NonNull String[] mergedSet) {
+        if (template.getSubscriberIds().isEmpty()) return template;
+        // The input template should have at most 1 subscriberId.
+        final String subscriberId = template.getSubscriberIds().iterator().next();
+
+        if (Set.of(mergedSet).contains(subscriberId)) {
+            // Requested template subscriber is part of the merge group; return
+            // a template that matches all merged subscribers.
+            return new NetworkTemplate.Builder(template.getMatchRule())
+                    .setSubscriberIds(Set.of(mergedSet))
+                    .setMeteredness(template.getMeteredness()).build();
+        }
+
+        return template;
     }
 
     public static NetworkTemplate getMobileTemplateForSubId(
diff --git a/src/com/android/settings/development/AbstractBluetoothA2dpPreferenceController.java b/src/com/android/settings/development/AbstractBluetoothA2dpPreferenceController.java
index 88dda29..7514577 100644
--- a/src/com/android/settings/development/AbstractBluetoothA2dpPreferenceController.java
+++ b/src/com/android/settings/development/AbstractBluetoothA2dpPreferenceController.java
@@ -17,9 +17,12 @@
 package com.android.settings.development;
 
 import android.bluetooth.BluetoothA2dp;
+import android.bluetooth.BluetoothAdapter;
 import android.bluetooth.BluetoothCodecConfig;
 import android.bluetooth.BluetoothCodecStatus;
 import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothManager;
+import android.bluetooth.BluetoothProfile;
 import android.content.Context;
 
 import androidx.annotation.VisibleForTesting;
@@ -34,6 +37,8 @@
 import com.android.settingslib.core.lifecycle.events.OnDestroy;
 import com.android.settingslib.development.DeveloperOptionsPreferenceController;
 
+import java.util.List;
+
 public abstract class AbstractBluetoothA2dpPreferenceController extends
         DeveloperOptionsPreferenceController implements Preference.OnPreferenceChangeListener,
         PreferenceControllerMixin, BluetoothServiceConnectionListener, LifecycleObserver,
@@ -48,11 +53,15 @@
     private final String[] mListValues;
     private final String[] mListSummaries;
 
+    @VisibleForTesting
+    BluetoothAdapter mBluetoothAdapter;
+
     public AbstractBluetoothA2dpPreferenceController(Context context, Lifecycle lifecycle,
             BluetoothA2dpConfigStore store) {
         super(context);
 
         mBluetoothA2dpConfigStore = store;
+        mBluetoothAdapter = context.getSystemService(BluetoothManager.class).getAdapter();
         mListValues = getListValues();
         mListSummaries = getListSummaries();
 
@@ -82,13 +91,11 @@
 
         final BluetoothCodecConfig codecConfig = mBluetoothA2dpConfigStore.createCodecConfig();
         synchronized (mBluetoothA2dpConfigStore) {
-            if (mBluetoothA2dp != null) {
-                BluetoothDevice activeDevice = mBluetoothA2dp.getActiveDevice();
-                if (activeDevice == null) {
-                    return false;
-                }
-                setCodecConfigPreference(activeDevice, codecConfig);
+            BluetoothDevice activeDevice = getA2dpActiveDevice();
+            if (activeDevice == null) {
+                return false;
             }
+            setCodecConfigPreference(activeDevice, codecConfig);
         }
         // Because the setting is not persisted into permanent storage, we cannot call update state
         // here to update the preference.
@@ -106,7 +113,7 @@
 
     @Override
     public void updateState(Preference preference) {
-        BluetoothDevice activeDevice = mBluetoothA2dp.getActiveDevice();
+        BluetoothDevice activeDevice = getA2dpActiveDevice();
         if (activeDevice == null || getCodecConfig(activeDevice) == null || mPreference == null) {
             return;
         }
@@ -184,7 +191,7 @@
     void setCodecConfigPreference(BluetoothDevice device,
             BluetoothCodecConfig config) {
         BluetoothDevice bluetoothDevice =
-                (device != null) ? device : mBluetoothA2dp.getActiveDevice();
+                (device != null) ? device : getA2dpActiveDevice();
         if (bluetoothDevice == null) {
             return;
         }
@@ -195,7 +202,7 @@
     BluetoothCodecConfig getCodecConfig(BluetoothDevice device) {
         if (mBluetoothA2dp != null) {
             BluetoothDevice bluetoothDevice =
-                    (device != null) ? device : mBluetoothA2dp.getActiveDevice();
+                    (device != null) ? device : getA2dpActiveDevice();
             if (bluetoothDevice == null) {
                 return null;
             }
@@ -206,4 +213,13 @@
         }
         return null;
     }
+
+    private BluetoothDevice getA2dpActiveDevice() {
+        if (mBluetoothAdapter == null) {
+            return null;
+        }
+        List<BluetoothDevice> activeDevices =
+                mBluetoothAdapter.getActiveDevices(BluetoothProfile.A2DP);
+        return (activeDevices.size() > 0) ? activeDevices.get(0) : null;
+    }
 }
diff --git a/src/com/android/settings/development/BluetoothMaxConnectedAudioDevicesPreferenceController.java b/src/com/android/settings/development/BluetoothMaxConnectedAudioDevicesPreferenceController.java
index ee6af1c..bd8169a 100644
--- a/src/com/android/settings/development/BluetoothMaxConnectedAudioDevicesPreferenceController.java
+++ b/src/com/android/settings/development/BluetoothMaxConnectedAudioDevicesPreferenceController.java
@@ -17,6 +17,8 @@
 package com.android.settings.development;
 
 import android.content.Context;
+import android.content.pm.PackageManager;
+import android.content.res.Resources;
 import android.os.SystemProperties;
 
 import androidx.annotation.VisibleForTesting;
@@ -38,12 +40,20 @@
     static final String MAX_CONNECTED_AUDIO_DEVICES_PROPERTY =
             "persist.bluetooth.maxconnectedaudiodevices";
 
-    private final int mDefaultMaxConnectedAudioDevices;
+    private int mDefaultMaxConnectedAudioDevices = 0;
 
     public BluetoothMaxConnectedAudioDevicesPreferenceController(Context context) {
         super(context);
-        mDefaultMaxConnectedAudioDevices = mContext.getResources().getInteger(
-                com.android.internal.R.integer.config_bluetooth_max_connected_audio_devices);
+
+        try {
+            Resources res = context.getPackageManager().getResourcesForApplication(
+                    "com.android.bluetooth");
+            mDefaultMaxConnectedAudioDevices = res.getInteger(res.getIdentifier(
+                    "config_bluetooth_max_connected_audio_devices",
+                    "integer", "com.android.bluetooth"));
+        } catch (PackageManager.NameNotFoundException e) {
+            e.printStackTrace();
+        }
     }
 
     @Override
diff --git a/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java b/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
index 1af6e96..62bcffb 100644
--- a/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
@@ -84,7 +84,7 @@
         }
         writeConfigurationValues(index);
         final BluetoothCodecConfig codecConfig = mBluetoothA2dpConfigStore.createCodecConfig();
-        BluetoothDevice activeDevice = mBluetoothA2dp.getActiveDevice();
+        BluetoothDevice activeDevice = getA2dpActiveDevice();
         if (activeDevice != null) {
             bluetoothA2dp.setCodecConfigPreference(activeDevice, codecConfig);
         }
@@ -153,7 +153,7 @@
         if (bluetoothA2dp == null) {
             return null;
         }
-        BluetoothDevice activeDevice = bluetoothA2dp.getActiveDevice();
+        BluetoothDevice activeDevice = getA2dpActiveDevice();
         if (activeDevice == null) {
             Log.d(TAG, "Unable to get current codec config. No active device.");
             return null;
@@ -178,7 +178,7 @@
             return null;
         }
         BluetoothDevice bluetoothDevice =
-                (device != null) ? device : bluetoothA2dp.getActiveDevice();
+                (device != null) ? device : getA2dpActiveDevice();
         if (bluetoothDevice == null) {
             return null;
         }
@@ -195,7 +195,7 @@
      * @return {@link BluetoothCodecConfig}.
      */
     protected BluetoothCodecConfig getSelectableByCodecType(int codecTypeValue) {
-        BluetoothDevice activeDevice = mBluetoothA2dp.getActiveDevice();
+        BluetoothDevice activeDevice = getA2dpActiveDevice();
         if (activeDevice == null) {
             Log.d(TAG, "Unable to get selectable config. No active device.");
             return null;
diff --git a/src/com/android/settings/development/bluetooth/AbstractBluetoothPreferenceController.java b/src/com/android/settings/development/bluetooth/AbstractBluetoothPreferenceController.java
index 6735115..d3fab67 100644
--- a/src/com/android/settings/development/bluetooth/AbstractBluetoothPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/AbstractBluetoothPreferenceController.java
@@ -17,8 +17,14 @@
 package com.android.settings.development.bluetooth;
 
 import android.bluetooth.BluetoothA2dp;
+import android.bluetooth.BluetoothAdapter;
+import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothManager;
+import android.bluetooth.BluetoothProfile;
 import android.content.Context;
 
+import androidx.annotation.VisibleForTesting;
+
 import com.android.settings.core.PreferenceControllerMixin;
 import com.android.settings.development.BluetoothA2dpConfigStore;
 import com.android.settings.development.BluetoothServiceConnectionListener;
@@ -27,6 +33,8 @@
 import com.android.settingslib.core.lifecycle.events.OnDestroy;
 import com.android.settingslib.development.DeveloperOptionsPreferenceController;
 
+import java.util.List;
+
 /**
  * Abstract class for Bluetooth A2DP config controller in developer option.
  */
@@ -36,12 +44,16 @@
 
     protected volatile BluetoothA2dp mBluetoothA2dp;
 
+    @VisibleForTesting
+    BluetoothAdapter mBluetoothAdapter;
+
     public AbstractBluetoothPreferenceController(Context context, Lifecycle lifecycle,
                                                  BluetoothA2dpConfigStore store) {
         super(context);
         if (lifecycle != null) {
             lifecycle.addObserver(this);
         }
+        mBluetoothAdapter = context.getSystemService(BluetoothManager.class).getAdapter();
     }
 
     @Override
@@ -82,4 +94,13 @@
          */
         void onBluetoothHDAudioEnabled(boolean enabled);
     }
+
+    protected BluetoothDevice getA2dpActiveDevice() {
+        if (mBluetoothAdapter == null) {
+            return null;
+        }
+        List<BluetoothDevice> activeDevices =
+                mBluetoothAdapter.getActiveDevices(BluetoothProfile.A2DP);
+        return (activeDevices.size() > 0) ? activeDevices.get(0) : null;
+    }
 }
diff --git a/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java b/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java
index 5f916f3..a65a1ba 100644
--- a/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java
@@ -69,7 +69,7 @@
         if (bluetoothA2dp == null) {
             return index;
         }
-        final BluetoothDevice activeDevice = bluetoothA2dp.getActiveDevice();
+        final BluetoothDevice activeDevice = getA2dpActiveDevice();
         if (activeDevice == null) {
             Log.d(TAG, "Unable to get selectable index. No Active Bluetooth device");
             return index;
@@ -93,7 +93,7 @@
         int codecPriorityValue = BluetoothCodecConfig.CODEC_PRIORITY_DEFAULT;
         switch (index) {
             case 0:
-                final BluetoothDevice activeDevice = mBluetoothA2dp.getActiveDevice();
+                final BluetoothDevice activeDevice = getA2dpActiveDevice();
                 codecTypeValue = getHighestCodec(mBluetoothA2dp, activeDevice,
                         getSelectableConfigs(activeDevice));
                 codecPriorityValue = BluetoothCodecConfig.CODEC_PRIORITY_HIGHEST;
diff --git a/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceController.java b/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceController.java
index d4ca4e5..8092194 100644
--- a/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceController.java
@@ -52,7 +52,7 @@
             mPreference.setEnabled(false);
             return;
         }
-        final BluetoothDevice activeDevice = bluetoothA2dp.getActiveDevice();
+        final BluetoothDevice activeDevice = getA2dpActiveDevice();
         if (activeDevice == null) {
             Log.e(TAG, "Active device is null. To disable HD audio button");
             mPreference.setEnabled(false);
@@ -84,7 +84,7 @@
         final int prefValue = enabled
                 ? BluetoothA2dp.OPTIONAL_CODECS_PREF_ENABLED
                 : BluetoothA2dp.OPTIONAL_CODECS_PREF_DISABLED;
-        BluetoothDevice activeDevice = bluetoothA2dp.getActiveDevice();
+        BluetoothDevice activeDevice = getA2dpActiveDevice();
         if (activeDevice == null) {
             mPreference.setEnabled(false);
             return true;
diff --git a/src/com/android/settings/deviceinfo/MigrateEstimateTask.java b/src/com/android/settings/deviceinfo/MigrateEstimateTask.java
index 03e2b04..4b22412 100644
--- a/src/com/android/settings/deviceinfo/MigrateEstimateTask.java
+++ b/src/com/android/settings/deviceinfo/MigrateEstimateTask.java
@@ -21,7 +21,6 @@
 import android.content.Context;
 import android.content.Intent;
 import android.content.pm.UserInfo;
-import android.net.TrafficStats;
 import android.os.AsyncTask;
 import android.os.UserHandle;
 import android.os.UserManager;
@@ -29,6 +28,7 @@
 import android.os.storage.VolumeInfo;
 import android.text.format.DateUtils;
 import android.text.format.Formatter;
+import android.util.DataUnit;
 import android.util.Log;
 
 import java.io.IOException;
@@ -42,7 +42,7 @@
     /**
      * Assume roughly a Class 10 card.
      */
-    private static final long SPEED_ESTIMATE_BPS = 10 * TrafficStats.MB_IN_BYTES;
+    private static final long SPEED_ESTIMATE_BPS = DataUnit.MEBIBYTES.toBytes(10);
 
     private final Context mContext;
 
diff --git a/src/com/android/settings/deviceinfo/storage/StorageItemPreferenceController.java b/src/com/android/settings/deviceinfo/storage/StorageItemPreferenceController.java
index fd9ae8c..ee0c9e7 100644
--- a/src/com/android/settings/deviceinfo/storage/StorageItemPreferenceController.java
+++ b/src/com/android/settings/deviceinfo/storage/StorageItemPreferenceController.java
@@ -24,12 +24,12 @@
 import android.content.pm.PackageManager;
 import android.content.res.TypedArray;
 import android.graphics.drawable.Drawable;
-import android.net.TrafficStats;
 import android.net.Uri;
 import android.os.Bundle;
 import android.os.UserHandle;
 import android.os.UserManager;
 import android.os.storage.VolumeInfo;
+import android.util.DataUnit;
 import android.util.Log;
 import android.util.SparseArray;
 import android.widget.Toast;
@@ -389,7 +389,8 @@
                 attributedSize -= otherData.duplicateCodeSize;
             }
 
-            final long systemSize = Math.max(TrafficStats.GB_IN_BYTES, mUsedBytes - attributedSize);
+            final long systemSize = Math.max(DataUnit.GIBIBYTES.toBytes(1),
+                    mUsedBytes - attributedSize);
             mSystemPreference.setStorageSize(systemSize, mTotalSize);
         }
 
diff --git a/src/com/android/settings/network/EthernetTetherPreferenceController.java b/src/com/android/settings/network/EthernetTetherPreferenceController.java
index 06cd6a7..5b2cab7 100644
--- a/src/com/android/settings/network/EthernetTetherPreferenceController.java
+++ b/src/com/android/settings/network/EthernetTetherPreferenceController.java
@@ -48,13 +48,12 @@
 
     @OnLifecycleEvent(Lifecycle.Event.ON_START)
     public void onStart() {
-        mEthernetListener = new EthernetManager.Listener() {
-            @Override
-            public void onAvailabilityChanged(String iface, boolean isAvailable) {
-                new Handler(Looper.getMainLooper()).post(() -> updateState(mPreference));
-            }
-        };
-        mEthernetManager.addListener(mEthernetListener);
+        mEthernetListener = (iface, isAvailable) -> updateState(mPreference);
+        final Handler handler = new Handler(Looper.getMainLooper());
+        // Executor will execute to post the updateState event to a new handler which is created
+        // from the main looper when the {@link EthernetManager.Listener.onAvailabilityChanged}
+        // is triggerd.
+        mEthernetManager.addListener(mEthernetListener, r -> handler.post(r));
     }
 
     @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
diff --git a/src/com/android/settings/notification/OWNERS b/src/com/android/settings/notification/OWNERS
index edf266e..a2ae9ce 100644
--- a/src/com/android/settings/notification/OWNERS
+++ b/src/com/android/settings/notification/OWNERS
@@ -1,4 +1,5 @@
 # Default reviewers for this and subdirectories.
-asc@google.com
+beverlyt@google.com
 dsandler@android.com
-juliacr@google.com
\ No newline at end of file
+juliacr@google.com
+yurilin@google.com
\ No newline at end of file
diff --git a/tests/robotests/src/com/android/settings/datausage/AppDataUsageTest.java b/tests/robotests/src/com/android/settings/datausage/AppDataUsageTest.java
index c0cdb01..09c5734 100644
--- a/tests/robotests/src/com/android/settings/datausage/AppDataUsageTest.java
+++ b/tests/robotests/src/com/android/settings/datausage/AppDataUsageTest.java
@@ -18,7 +18,7 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
-import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.anyBoolean;
 import static org.mockito.ArgumentMatchers.anyInt;
@@ -438,8 +438,7 @@
 
         assertThat(mFragment.mTemplate.getMatchRule())
                 .isEqualTo(NetworkTemplate.MATCH_WIFI);
-        assertNull(mFragment.mTemplate.getSubscriberId());
-        assertThat(mFragment.mTemplate.getNetworkId())
-                .isEqualTo(NetworkTemplate.WIFI_NETWORKID_ALL);
+        assertTrue(mFragment.mTemplate.getSubscriberIds().isEmpty());
+        assertTrue(mFragment.mTemplate.getWifiNetworkKeys().isEmpty());
     }
 }
diff --git a/tests/robotests/src/com/android/settings/datausage/lib/DataUsageLibTest.java b/tests/robotests/src/com/android/settings/datausage/lib/DataUsageLibTest.java
index 8d994d0..70a1a38 100644
--- a/tests/robotests/src/com/android/settings/datausage/lib/DataUsageLibTest.java
+++ b/tests/robotests/src/com/android/settings/datausage/lib/DataUsageLibTest.java
@@ -81,8 +81,8 @@
         when(mSubscriptionManager.isActiveSubscriptionId(SUB_ID)).thenReturn(false);
 
         final NetworkTemplate networkTemplate = DataUsageLib.getMobileTemplate(mContext, SUB_ID);
-        assertThat(networkTemplate.matchesSubscriberId(SUBSCRIBER_ID)).isTrue();
-        assertThat(networkTemplate.matchesSubscriberId(SUBSCRIBER_ID_2)).isFalse();
+        assertThat(networkTemplate.getSubscriberIds().contains(SUBSCRIBER_ID)).isTrue();
+        assertThat(networkTemplate.getSubscriberIds().contains(SUBSCRIBER_ID_2)).isFalse();
     }
 
     @Test
@@ -94,8 +94,8 @@
                 .thenReturn(new String[] {SUBSCRIBER_ID});
 
         final NetworkTemplate networkTemplate = DataUsageLib.getMobileTemplate(mContext, SUB_ID);
-        assertThat(networkTemplate.matchesSubscriberId(SUBSCRIBER_ID)).isTrue();
-        assertThat(networkTemplate.matchesSubscriberId(SUBSCRIBER_ID_2)).isFalse();
+        assertThat(networkTemplate.getSubscriberIds().contains(SUBSCRIBER_ID)).isTrue();
+        assertThat(networkTemplate.getSubscriberIds().contains(SUBSCRIBER_ID_2)).isFalse();
     }
 
     @Test
@@ -107,7 +107,7 @@
                 .thenReturn(new String[] {SUBSCRIBER_ID, SUBSCRIBER_ID_2});
 
         final NetworkTemplate networkTemplate = DataUsageLib.getMobileTemplate(mContext, SUB_ID);
-        assertThat(networkTemplate.matchesSubscriberId(SUBSCRIBER_ID)).isTrue();
-        assertThat(networkTemplate.matchesSubscriberId(SUBSCRIBER_ID_2)).isTrue();
+        assertThat(networkTemplate.getSubscriberIds().contains(SUBSCRIBER_ID)).isTrue();
+        assertThat(networkTemplate.getSubscriberIds().contains(SUBSCRIBER_ID_2)).isTrue();
     }
 }
diff --git a/tests/robotests/src/com/android/settings/development/AbstractBluetoothA2dpPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/AbstractBluetoothA2dpPreferenceControllerTest.java
index 4276407..783c2ed 100644
--- a/tests/robotests/src/com/android/settings/development/AbstractBluetoothA2dpPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/AbstractBluetoothA2dpPreferenceControllerTest.java
@@ -73,6 +73,7 @@
         mLifecycle = new Lifecycle(mLifecycleOwner);
         mController = spy(new AbstractBluetoothA2dpPreferenceControllerImpl(mContext, mLifecycle,
                 mBluetoothA2dpConfigStore));
+        mController.mBluetoothAdapter = null;
         doReturn(mBluetoothCodecConfig).when(mController).getCodecConfig(null);
         doNothing().when(mController).setCodecConfigPreference(any(), any());
         when(mBluetoothA2dpConfigStore.createCodecConfig()).thenReturn(mBluetoothCodecConfig);
diff --git a/tests/robotests/src/com/android/settings/development/BluetoothMaxConnectedAudioDevicesPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/BluetoothMaxConnectedAudioDevicesPreferenceControllerTest.java
index 98dc656..72477b9 100644
--- a/tests/robotests/src/com/android/settings/development/BluetoothMaxConnectedAudioDevicesPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/BluetoothMaxConnectedAudioDevicesPreferenceControllerTest.java
@@ -25,7 +25,9 @@
 import static org.mockito.Mockito.when;
 
 import android.content.Context;
+import android.content.pm.PackageManager;
 import android.content.res.Resources;
+
 import android.os.SystemProperties;
 
 import androidx.preference.ListPreference;
@@ -45,14 +47,12 @@
 @RunWith(RobolectricTestRunner.class)
 public class BluetoothMaxConnectedAudioDevicesPreferenceControllerTest {
 
-  private static final int TEST_MAX_CONNECTED_AUDIO_DEVICES = 3;
+  private static int TEST_MAX_CONNECTED_AUDIO_DEVICES = 5;
 
   @Mock
   private PreferenceScreen mPreferenceScreen;
   @Spy
   private Context mSpyContext = RuntimeEnvironment.application;
-  @Spy
-  private Resources mSpyResources = RuntimeEnvironment.application.getResources();
 
   private ListPreference mPreference;
   private BluetoothMaxConnectedAudioDevicesPreferenceController mController;
@@ -63,15 +63,19 @@
   @Before
   public void setup() {
     MockitoAnnotations.initMocks(this);
-    doReturn(mSpyResources).when(mSpyContext).getResources();
     // Get XML values without mock
     // Setup test list preference using XML values
     mPreference = new ListPreference(mSpyContext);
     mPreference.setEntries(R.array.bluetooth_max_connected_audio_devices);
     mPreference.setEntryValues(R.array.bluetooth_max_connected_audio_devices_values);
-    // Stub default max connected audio devices to a test controlled value
-    doReturn(TEST_MAX_CONNECTED_AUDIO_DEVICES).when(mSpyResources).getInteger(
-        com.android.internal.R.integer.config_bluetooth_max_connected_audio_devices);
+    // Retrieve default max connected audio devices to a test controlled value
+    try {
+      Resources res = mSpyContext.getPackageManager().getResourcesForApplication("com.android.bluetooth");
+      TEST_MAX_CONNECTED_AUDIO_DEVICES = res.getInteger(res.getIdentifier("config_bluetooth_max_connected_audio_devices", "integer", "com.android.bluetooth"));
+    } catch (PackageManager.NameNotFoundException e) {
+      e.printStackTrace();
+    }
+
     // Init the actual controller
     mController = new BluetoothMaxConnectedAudioDevicesPreferenceController(mSpyContext);
     // Construct preference in the controller via a mocked preference screen object
diff --git a/tests/robotests/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceControllerTest.java
index c1648bf..d16a507 100644
--- a/tests/robotests/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceControllerTest.java
@@ -20,6 +20,7 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.eq;
 import static org.mockito.Mockito.never;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
@@ -30,6 +31,7 @@
 import android.bluetooth.BluetoothCodecConfig;
 import android.bluetooth.BluetoothCodecStatus;
 import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothProfile;
 import android.content.Context;
 
 import androidx.lifecycle.LifecycleOwner;
@@ -59,6 +61,8 @@
     @Mock
     private BluetoothA2dp mBluetoothA2dp;
     @Mock
+    private BluetoothAdapter mBluetoothAdapter;
+    @Mock
     private PreferenceScreen mScreen;
 
     private AbstractBluetoothDialogPreferenceController mController;
@@ -84,6 +88,7 @@
         mActiveDevice = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(DEVICE_ADDRESS);
         mController = spy(new AbstractBluetoothDialogPreferenceControllerImpl(mContext, mLifecycle,
                 mBluetoothA2dpConfigStore));
+        mController.mBluetoothAdapter = mBluetoothAdapter;
         mPreference = spy(new BaseBluetoothDialogPreferenceImpl(mContext));
 
         mCodecConfigAAC = new BluetoothCodecConfig.Builder()
@@ -99,7 +104,8 @@
         mController.displayPreference(mScreen);
         mCurrentConfig = mController.getCurrentConfigIndex();
         when(mPreference.generateSummary(mCurrentConfig)).thenReturn(SUMMARY);
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothBitPerSampleDialogPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothBitPerSampleDialogPreferenceControllerTest.java
index a042ebe..5a24c8e 100644
--- a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothBitPerSampleDialogPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothBitPerSampleDialogPreferenceControllerTest.java
@@ -18,6 +18,7 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.eq;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
@@ -27,6 +28,7 @@
 import android.bluetooth.BluetoothCodecConfig;
 import android.bluetooth.BluetoothCodecStatus;
 import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothProfile;
 import android.content.Context;
 
 import androidx.lifecycle.LifecycleOwner;
@@ -55,6 +57,8 @@
     @Mock
     private BluetoothA2dp mBluetoothA2dp;
     @Mock
+    private BluetoothAdapter mBluetoothAdapter;
+    @Mock
     private PreferenceScreen mScreen;
 
     private BluetoothBitPerSampleDialogPreferenceController mController;
@@ -81,6 +85,7 @@
         mPreference = new BluetoothBitPerSampleDialogPreference(mContext);
         when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
         mController.displayPreference(mScreen);
+        mController.mBluetoothAdapter = mBluetoothAdapter;
         mCodecConfigAAC = new BluetoothCodecConfig.Builder()
                 .setCodecType(BluetoothCodecConfig.SOURCE_CODEC_TYPE_AAC)
                 .setBitsPerSample(BluetoothCodecConfig.BITS_PER_SAMPLE_16
@@ -90,7 +95,8 @@
                 .setCodecType(BluetoothCodecConfig.SOURCE_CODEC_TYPE_SBC)
                 .setBitsPerSample(BluetoothCodecConfig.BITS_PER_SAMPLE_24)
                 .build();
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothChannelModeDialogPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothChannelModeDialogPreferenceControllerTest.java
index 75d8fc4..3d94e2a 100644
--- a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothChannelModeDialogPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothChannelModeDialogPreferenceControllerTest.java
@@ -18,6 +18,7 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.eq;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
@@ -27,6 +28,7 @@
 import android.bluetooth.BluetoothCodecConfig;
 import android.bluetooth.BluetoothCodecStatus;
 import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothProfile;
 import android.content.Context;
 
 import androidx.lifecycle.LifecycleOwner;
@@ -55,6 +57,8 @@
     @Mock
     private BluetoothA2dp mBluetoothA2dp;
     @Mock
+    private BluetoothAdapter mBluetoothAdapter;
+    @Mock
     private PreferenceScreen mScreen;
 
     private BluetoothChannelModeDialogPreferenceController mController;
@@ -78,6 +82,7 @@
         mActiveDevice = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(DEVICE_ADDRESS);
         mController = new BluetoothChannelModeDialogPreferenceController(mContext, mLifecycle,
                 mBluetoothA2dpConfigStore);
+        mController.mBluetoothAdapter = mBluetoothAdapter;
         mPreference = new BluetoothChannelModeDialogPreference(mContext);
         when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
         mController.displayPreference(mScreen);
@@ -90,7 +95,8 @@
                 .setChannelMode(BluetoothCodecConfig.CHANNEL_MODE_MONO
                             | BluetoothCodecConfig.CHANNEL_MODE_STEREO)
                 .build();
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceControllerTest.java
index 3a34aa0..21111cd 100644
--- a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceControllerTest.java
@@ -29,6 +29,7 @@
 import android.bluetooth.BluetoothCodecConfig;
 import android.bluetooth.BluetoothCodecStatus;
 import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothProfile;
 import android.content.Context;
 
 import androidx.lifecycle.LifecycleOwner;
@@ -56,6 +57,8 @@
     @Mock
     private BluetoothA2dp mBluetoothA2dp;
     @Mock
+    private BluetoothAdapter mBluetoothAdapter;
+    @Mock
     private PreferenceScreen mScreen;
     @Mock
     private AbstractBluetoothPreferenceController.Callback mCallback;
@@ -85,6 +88,7 @@
         mActiveDevice = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(DEVICE_ADDRESS);
         mController = new BluetoothCodecDialogPreferenceController(mContext, mLifecycle,
                 mBluetoothA2dpConfigStore, mCallback);
+        mController.mBluetoothAdapter = mBluetoothAdapter;
         mPreference = new BluetoothCodecDialogPreference(mContext);
         when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
         mController.displayPreference(mScreen);
@@ -115,7 +119,8 @@
         mCodecConfigLDAC = new BluetoothCodecConfig.Builder()
                 .setCodecType(BluetoothCodecConfig.SOURCE_CODEC_TYPE_LDAC)
                 .build();
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceControllerTest.java
index 60476de..72ceddf 100644
--- a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothHDAudioPreferenceControllerTest.java
@@ -18,12 +18,15 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.eq;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
 import android.bluetooth.BluetoothA2dp;
+import android.bluetooth.BluetoothAdapter;
 import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothProfile;
 import android.content.Context;
 
 import androidx.lifecycle.LifecycleOwner;
@@ -43,6 +46,9 @@
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowBluetoothDevice;
 
+import java.util.Arrays;
+import java.util.Collections;
+
 @RunWith(RobolectricTestRunner.class)
 @Config(shadows = {ShadowBluetoothDevice.class})
 public class BluetoothHDAudioPreferenceControllerTest {
@@ -52,6 +58,8 @@
     @Mock
     private BluetoothA2dp mBluetoothA2dp;
     @Mock
+    private BluetoothAdapter mBluetoothAdapter;
+    @Mock
     private PreferenceScreen mScreen;
     @Mock
     private AbstractBluetoothPreferenceController.Callback mCallback;
@@ -73,6 +81,7 @@
         mBluetoothA2dpConfigStore = spy(new BluetoothA2dpConfigStore());
         mController = new BluetoothHDAudioPreferenceController(mContext, mLifecycle,
                 mBluetoothA2dpConfigStore, mCallback);
+        mController.mBluetoothAdapter = mBluetoothAdapter;
         mPreference = new SwitchPreference(mContext);
         when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
         mController.displayPreference(mScreen);
@@ -81,7 +90,8 @@
 
     @Test
     public void updateState_noActiveDevice_setDisable() {
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(null);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Collections.emptyList());
         mController.onBluetoothServiceConnected(mBluetoothA2dp);
         mController.updateState(mPreference);
 
@@ -90,7 +100,8 @@
 
     @Test
     public void updateState_codecSupported_setEnable() {
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
         when(mBluetoothA2dp.isOptionalCodecsSupported(mActiveDevice)).thenReturn(
                 mBluetoothA2dp.OPTIONAL_CODECS_SUPPORTED);
         mController.onBluetoothServiceConnected(mBluetoothA2dp);
@@ -101,7 +112,8 @@
 
     @Test
     public void updateState_codecNotSupported_setDisable() {
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
         when(mBluetoothA2dp.isOptionalCodecsSupported(mActiveDevice)).thenReturn(
                 mBluetoothA2dp.OPTIONAL_CODECS_NOT_SUPPORTED);
         mController.onBluetoothServiceConnected(mBluetoothA2dp);
@@ -112,7 +124,8 @@
 
     @Test
     public void updateState_codecSupportedAndEnabled_checked() {
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
         when(mBluetoothA2dp.isOptionalCodecsSupported(mActiveDevice)).thenReturn(
                 mBluetoothA2dp.OPTIONAL_CODECS_SUPPORTED);
         when(mBluetoothA2dp.isOptionalCodecsEnabled(mActiveDevice)).thenReturn(
@@ -125,7 +138,8 @@
 
     @Test
     public void updateState_codecSupportedAndDisabled_notChecked() {
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
         when(mBluetoothA2dp.isOptionalCodecsSupported(mActiveDevice)).thenReturn(
                 mBluetoothA2dp.OPTIONAL_CODECS_SUPPORTED);
         when(mBluetoothA2dp.isOptionalCodecsEnabled(mActiveDevice)).thenReturn(
@@ -138,7 +152,8 @@
 
     @Test
     public void onPreferenceChange_disable_verifyFlow() {
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
         mController.onBluetoothServiceConnected(mBluetoothA2dp);
         final boolean enabled = false;
         mController.onPreferenceChange(mPreference, enabled);
@@ -151,7 +166,8 @@
 
     @Test
     public void onPreferenceChange_enable_verifyFlow() {
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
         mController.onBluetoothServiceConnected(mBluetoothA2dp);
         final boolean enabled = true;
         mController.onPreferenceChange(mPreference, enabled);
diff --git a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothQualityDialogPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothQualityDialogPreferenceControllerTest.java
index e50b716..1bd83f7 100644
--- a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothQualityDialogPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothQualityDialogPreferenceControllerTest.java
@@ -18,6 +18,7 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.eq;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
@@ -27,6 +28,7 @@
 import android.bluetooth.BluetoothCodecConfig;
 import android.bluetooth.BluetoothCodecStatus;
 import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothProfile;
 import android.content.Context;
 
 import androidx.lifecycle.LifecycleOwner;
@@ -53,6 +55,8 @@
     @Mock
     private BluetoothA2dp mBluetoothA2dp;
     @Mock
+    private BluetoothAdapter mBluetoothAdapter;
+    @Mock
     private PreferenceScreen mScreen;
 
     private BluetoothQualityDialogPreferenceController mController;
@@ -76,6 +80,7 @@
         mActiveDevice = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(DEVICE_ADDRESS);
         mController = new BluetoothQualityDialogPreferenceController(mContext, mLifecycle,
                 mBluetoothA2dpConfigStore);
+        mController.mBluetoothAdapter = mBluetoothAdapter;
         mPreference = new BluetoothQualityDialogPreference(mContext);
         when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
         mController.displayPreference(mScreen);
@@ -89,7 +94,8 @@
                 .setSampleRate(BluetoothCodecConfig.SAMPLE_RATE_96000)
                 .setCodecSpecific1(1001)
                 .build();
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothSampleRateDialogPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothSampleRateDialogPreferenceControllerTest.java
index fca154d..f7d010c 100644
--- a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothSampleRateDialogPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothSampleRateDialogPreferenceControllerTest.java
@@ -18,6 +18,7 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.eq;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
@@ -27,6 +28,7 @@
 import android.bluetooth.BluetoothCodecConfig;
 import android.bluetooth.BluetoothCodecStatus;
 import android.bluetooth.BluetoothDevice;
+import android.bluetooth.BluetoothProfile;
 import android.content.Context;
 
 import androidx.lifecycle.LifecycleOwner;
@@ -55,6 +57,8 @@
     @Mock
     private BluetoothA2dp mBluetoothA2dp;
     @Mock
+    private BluetoothAdapter mBluetoothAdapter;
+    @Mock
     private PreferenceScreen mScreen;
 
     private BluetoothSampleRateDialogPreferenceController mController;
@@ -79,6 +83,7 @@
         mActiveDevice = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(DEVICE_ADDRESS);
         mController = spy(new BluetoothSampleRateDialogPreferenceController(mContext, mLifecycle,
                 mBluetoothA2dpConfigStore));
+        mController.mBluetoothAdapter = mBluetoothAdapter;
         mPreference = new BluetoothSampleRateDialogPreference(mContext);
         when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
         mController.displayPreference(mScreen);
@@ -91,7 +96,8 @@
                 .setCodecType(BluetoothCodecConfig.SOURCE_CODEC_TYPE_SBC)
                 .setSampleRate(BluetoothCodecConfig.SAMPLE_RATE_96000)
                 .build();
-        when(mBluetoothA2dp.getActiveDevice()).thenReturn(mActiveDevice);
+        when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
+                .thenReturn(Arrays.asList(mActiveDevice));
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/network/telephony/DataUsagePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/network/telephony/DataUsagePreferenceControllerTest.java
index 43bda4e3..a3be60d 100644
--- a/tests/robotests/src/com/android/settings/network/telephony/DataUsagePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/network/telephony/DataUsagePreferenceControllerTest.java
@@ -26,10 +26,10 @@
 import android.app.usage.NetworkStatsManager;
 import android.content.Context;
 import android.content.Intent;
-import android.net.TrafficStats;
 import android.provider.Settings;
 import android.telephony.SubscriptionManager;
 import android.telephony.TelephonyManager;
+import android.util.DataUnit;
 
 import androidx.preference.SwitchPreference;
 
@@ -128,7 +128,7 @@
     public void updateState_shouldUseIECUnit() {
         final DataUsageController.DataUsageInfo usageInfo =
                 new DataUsageController.DataUsageInfo();
-        usageInfo.usageLevel = TrafficStats.MB_IN_BYTES;
+        usageInfo.usageLevel = DataUnit.MEBIBYTES.toBytes(1);
         doReturn(usageInfo).when(mController).getDataUsageInfo(any());
 
         mController.updateState(mPreference);
diff --git a/tests/unit/OWNERS b/tests/unit/OWNERS
index 4123742..8a7a27e 100644
--- a/tests/unit/OWNERS
+++ b/tests/unit/OWNERS
@@ -1,2 +1,2 @@
-# Additional reviewers for this and subdirectories.
-goldmanj@google.com
+# We do not guard tests - everyone is welcomed to contribute to tests.
+per-file *.java=*
\ No newline at end of file
diff --git a/tests/unit/src/com/android/settings/deviceinfo/storage/StorageAsyncLoaderTest.java b/tests/unit/src/com/android/settings/deviceinfo/storage/StorageAsyncLoaderTest.java
index 671da95..cad68e1 100644
--- a/tests/unit/src/com/android/settings/deviceinfo/storage/StorageAsyncLoaderTest.java
+++ b/tests/unit/src/com/android/settings/deviceinfo/storage/StorageAsyncLoaderTest.java
@@ -33,9 +33,9 @@
 import android.content.pm.PackageManager.NameNotFoundException;
 import android.content.pm.UserInfo;
 import android.content.res.Resources;
-import android.net.TrafficStats;
 import android.os.UserHandle;
 import android.os.UserManager;
+import android.util.DataUnit;
 import android.util.SparseArray;
 
 import androidx.test.core.app.ApplicationProvider;
@@ -62,7 +62,7 @@
     private static final String PACKAGE_NAME_1 = "com.blah.test";
     private static final String PACKAGE_NAME_2 = "com.blah.test2";
     private static final String PACKAGE_NAME_3 = "com.blah.test3";
-    private static final long DEFAULT_QUOTA = 64 * TrafficStats.MB_IN_BYTES;
+    private static final long DEFAULT_QUOTA = DataUnit.MEBIBYTES.toBytes(64);
 
     @Mock
     private StorageStatsSource mSource;
diff --git a/tests/unit/src/com/android/settings/notification/OWNERS b/tests/unit/src/com/android/settings/notification/OWNERS
new file mode 100644
index 0000000..a2ae9ce
--- /dev/null
+++ b/tests/unit/src/com/android/settings/notification/OWNERS
@@ -0,0 +1,5 @@
+# Default reviewers for this and subdirectories.
+beverlyt@google.com
+dsandler@android.com
+juliacr@google.com
+yurilin@google.com
\ No newline at end of file
