diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml
index 851f311..4868bfe 100644
--- a/res/values-as/strings.xml
+++ b/res/values-as/strings.xml
@@ -1122,8 +1122,8 @@
     <string name="wifi_forget_dialog_title" msgid="4363829200968563164">"নেটৱৰ্কটো পাহৰেনে?"</string>
     <string name="wifi_forget_dialog_message" msgid="8419499588321940243">"এই নেটৱৰ্কৰ আটাইবোৰ পাছৱৰ্ড মচি পেলোৱা হ\'ব"</string>
     <plurals name="wifi_saved_access_points_summary" formatted="false" msgid="2802436466732147888">
-      <item quantity="one">%d নেটৱৰ্ক</item>
-      <item quantity="other">%d নেটৱৰ্ক</item>
+      <item quantity="one">%d টা নেটৱৰ্ক</item>
+      <item quantity="other">%d টা নেটৱৰ্ক</item>
     </plurals>
     <plurals name="wifi_saved_passpoint_access_points_summary" formatted="false" msgid="5802057518058840450">
       <item quantity="one">%d গ্ৰাহকভুক্তি</item>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index 6c7c103..79bf54e 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -5740,7 +5740,7 @@
     <string name="app_pinning_main_switch_title" msgid="5465506660064032876">"Koristi kačenje aplikacija"</string>
     <string name="developer_options_main_switch_title" msgid="1720074589554152501">"Koristi opcije za programere"</string>
     <string name="default_print_service_main_switch_title" msgid="4697133737128324036">"Koristite uslugu štampanja"</string>
-    <string name="multiple_users_main_switch_title" msgid="6686858308083037810">"Dozvolite više korisnika"</string>
+    <string name="multiple_users_main_switch_title" msgid="6686858308083037810">"Dozvoli više korisnika"</string>
     <string name="wireless_debugging_main_switch_title" msgid="8463499572781441719">"Koristi bežično otklanjanje grešaka"</string>
     <string name="graphics_driver_main_switch_title" msgid="6125172901855813790">"Koristi podešavanja upravljačkog programa za grafiku"</string>
     <string name="battery_saver_main_switch_title" msgid="5072135547489779352">"Koristi uštedu baterije"</string>
diff --git a/res/values-cs/arrays.xml b/res/values-cs/arrays.xml
index c17a264..483ef13 100644
--- a/res/values-cs/arrays.xml
+++ b/res/values-cs/arrays.xml
@@ -180,8 +180,8 @@
   </string-array>
   <string-array name="wifi_proxy_settings">
     <item msgid="4669222334822978847">"Žádný"</item>
-    <item msgid="6242198071587397280">"Ručně"</item>
-    <item msgid="464383874780058242">"Automatická konfigurace proxy"</item>
+    <item msgid="6242198071587397280">"Ruční konfigurace"</item>
+    <item msgid="464383874780058242">"Automatická konfigurace"</item>
   </string-array>
   <string-array name="apn_auth_entries">
     <item msgid="2900892411844440682">"Žádné"</item>
@@ -509,8 +509,8 @@
     <item msgid="2047166446768045816">"Považovat za neměřenou síť"</item>
   </string-array>
   <string-array name="wifi_privacy_entries">
-    <item msgid="3485945604919292489">"Použít náhodnou MAC (výchozí)"</item>
-    <item msgid="741680937828608749">"Použít adresu MAC zařízení"</item>
+    <item msgid="3485945604919292489">"Používat náhodnou MAC (výchozí)"</item>
+    <item msgid="741680937828608749">"Používat adresu MAC zařízení"</item>
   </string-array>
   <string-array name="wifi_hidden_entries">
     <item msgid="342232116597649254">"Ne"</item>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 25ff006..5ada383 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -1910,7 +1910,7 @@
     <string name="location_high_battery_use" msgid="4277318891200626524">"Vysoké využívání baterie"</string>
     <string name="location_low_battery_use" msgid="5218950289737996431">"Nízké využívání baterie"</string>
     <string name="location_scanning_wifi_always_scanning_title" msgid="5004781272733434794">"Vyhledávání Wi‑Fi"</string>
-    <string name="location_scanning_wifi_always_scanning_description" msgid="6236055656376931306">"Povolit aplikacím a službám vyhledávat sítě Wi‑Fi, i když je připojení k sítím Wi‑Fi vypnuté. Tuto funkci lze využít například ke zlepšení funkcí a služeb založených na poloze."</string>
+    <string name="location_scanning_wifi_always_scanning_description" msgid="6236055656376931306">"Povolte aplikacím a službám vyhledávat sítě Wi‑Fi, i když je připojení k sítím Wi‑Fi vypnuté. Tuto funkci lze využít například ke zlepšení funkcí a služeb založených na poloze."</string>
     <string name="location_scanning_bluetooth_always_scanning_title" msgid="1809309545730215891">"Vyhledávání Bluetooth"</string>
     <string name="location_scanning_bluetooth_always_scanning_description" msgid="5362988856388462841">"Povolte aplikacím a službám vyhledávat zařízení v okolí, i když je rozhraní Bluetooth vypnuté. Tuto funkci lze využít například ke zlepšení funkcí a služeb založených na poloze."</string>
     <string name="location_services_preference_title" msgid="604317859531782159">"Služby určování polohy"</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 4bdcde9..2485440 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -101,7 +101,7 @@
     <string name="progress_scanning" msgid="2564746192843011826">"Buscando"</string>
     <string name="bluetooth_no_devices_found" msgid="7704539337219953182">"No hay dispositivos Bluetooth cercanos."</string>
     <string name="bluetooth_notif_ticker" msgid="209515545257862858">"Solicitud de emparejamiento por Bluetooth"</string>
-    <string name="bluetooth_notif_title" msgid="1196532269131348647">"Solicitud de vinculación"</string>
+    <string name="bluetooth_notif_title" msgid="1196532269131348647">"Solicitud de emparejamiento"</string>
     <string name="bluetooth_notif_message" msgid="5584717784198086653">"Toca para emparejar con <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string>
     <string name="bluetooth_show_received_files" msgid="685424727760622632">"Archivos recibidos"</string>
     <string name="bluetooth_devices_card_off_title" msgid="1320149821945129127">"El Bluetooth está desactivado"</string>
@@ -159,8 +159,8 @@
     <string name="connected_device_saved_title" msgid="5607274378851905959">"Dispositivos guardados"</string>
     <string name="connected_device_add_device_summary" msgid="8671009879957120802">"El Bluetooth se activará para emparejar"</string>
     <string name="connected_device_connections_title" msgid="4164120115341579170">"Preferencias de conexión"</string>
-    <string name="connected_device_previously_connected_title" msgid="605808252622814415">"Dispositivos emparejados anteriormente"</string>
-    <string name="connected_device_previously_connected_screen_title" msgid="8823331744788100605">"Conectados anteriormente"</string>
+    <string name="connected_device_previously_connected_title" msgid="605808252622814415">"Dispositivos conectados anteriormente"</string>
+    <string name="connected_device_previously_connected_screen_title" msgid="8823331744788100605">"Conectado anteriormente"</string>
     <string name="connected_device_bluetooth_turned_on_toast" msgid="144664089794199928">"Bluetooth activado"</string>
     <string name="previous_connected_see_all" msgid="7759413145713251328">"Ver todo"</string>
     <string name="date_and_time" msgid="1788358029823431692">"Fecha y hora"</string>
@@ -225,8 +225,7 @@
     <string name="suggested_app_locales_title" msgid="8898358282377369405">"Idiomas recomendados"</string>
     <string name="all_supported_app_locales_title" msgid="5479289964316009026">"Todos los idiomas"</string>
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"Idioma del sistema"</string>
-    <!-- no translation found for preference_of_system_locale_summary (5612241394431188535) -->
-    <skip />
+    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"Predeterminado del sistema"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"La selección de idioma para esta aplicación no está disponible en Ajustes."</string>
     <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
     <skip />
@@ -861,7 +860,7 @@
     <string name="bluetooth_unpair_dialog_title" msgid="6943633443716052995">"¿Olvidar dispositivo?"</string>
     <string name="remove_association_button" msgid="5004208145998061135">"Deshacer asociación"</string>
     <string name="bluetooth_companion_app_remove_association_dialog_title" msgid="1344518601377991897">"¿Desconectar aplicación?"</string>
-    <string name="bluetooth_unpair_dialog_body" product="default" msgid="4730377171981539265">"Tu teléfono se desvinculará de <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
+    <string name="bluetooth_unpair_dialog_body" product="default" msgid="4730377171981539265">"Tu teléfono ya no estará emparejado con <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
     <string name="bluetooth_unpair_dialog_body" product="tablet" msgid="3428463407231980054">"Tu tablet se desvinculará de <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
     <string name="bluetooth_unpair_dialog_body" product="device" msgid="5117397433721336918">"Tu dispositivo se desvinculará de <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
     <string name="bluetooth_companion_app_body" msgid="8442643629075687761">"La aplicación <xliff:g id="APP_NAME">%1$s</xliff:g> ya no se conectará a tu <xliff:g id="DEVICE_NAME">%2$s</xliff:g>"</string>
@@ -894,7 +893,7 @@
     <string name="wifi_display_settings_title" msgid="6451625615274960175">"Enviar"</string>
     <string name="keywords_wifi_display_settings" msgid="5753883229564422679">"proyectar"</string>
     <string name="wifi_display_enable_menu_item" msgid="7391841780777318134">"Habilitar pantalla inalámbrica"</string>
-    <string name="wifi_display_no_devices_found" msgid="7904877793677102805">"No hay dispositivos cercanos."</string>
+    <string name="wifi_display_no_devices_found" msgid="7904877793677102805">"No se han encontrado dispositivos cercanos."</string>
     <string name="wifi_display_status_connecting" msgid="530880182560077334">"Conectando"</string>
     <string name="wifi_display_status_connected" msgid="2189925211258519539">"Conectado"</string>
     <string name="wifi_display_status_in_use" msgid="5904009697167947449">"En uso"</string>
@@ -926,7 +925,7 @@
     <string name="nfc_quick_toggle_summary" product="default" msgid="1460871052409162980">"Permitir el intercambio de datos cuando el teléfono toque un dispositivo NFC"</string>
     <string name="nfc_disclaimer_title" msgid="3696580694485048039">"Activar NFC"</string>
     <string name="nfc_disclaimer_content" msgid="8256675597551036207">"La tecnología NFC permite intercambiar datos entre este dispositivo y otros dispositivos u objetivos cercanos, como terminales de pago, lectores de acceso y etiquetas o anuncios interactivos."</string>
-    <string name="nfc_secure_settings_title" msgid="4906958426927741485">"Usar NFC solo si el dispositivo está desbloqueado"</string>
+    <string name="nfc_secure_settings_title" msgid="4906958426927741485">"Requerir que el dispositivo esté desbloqueado para usar NFC"</string>
     <string name="nfc_secure_toggle_summary" product="default" msgid="407654335737959071">"Permite usar el NFC solo si la pantalla está desbloqueada"</string>
     <string name="android_beam_settings_title" msgid="2797963824490671295">"Android Beam"</string>
     <string name="android_beam_on_summary" msgid="6067720758437490896">"Hecho para compartir contenido de aplicaciones por NFC"</string>
@@ -1006,7 +1005,7 @@
     <string name="wifi_ssid_hint" msgid="1940577553241083524">"Introduce el SSID"</string>
     <string name="wifi_security" msgid="9095934643631406913">"Seguridad"</string>
     <string name="wifi_hidden_network" msgid="6466834025375485596">"Red oculta"</string>
-    <string name="wifi_hidden_network_warning" msgid="3937433813754746158">"Si tu router no emite ningún ID de red, pero quieres conectarte a él más adelante, puedes configurar la red como oculta.\n\nEsto puede suponer un riesgo para la seguridad, ya que el teléfono emitirá la señal de forma habitual para buscar la red.\n\nConfigurar la red como oculta no cambiará la configuración del router."</string>
+    <string name="wifi_hidden_network_warning" msgid="3937433813754746158">"Si tu router no emite ningún ID de red, pero quieres conectarte a la red más adelante, puedes configurarla como oculta.\n\nEsto puede suponer un riesgo para la seguridad, ya que el teléfono emitirá la señal periódicamente para buscar la red.\n\nConfigurar la red como oculta no cambiará la configuración del router."</string>
     <string name="wifi_signal" msgid="4442182285304271424">"Intensidad de la señal"</string>
     <string name="wifi_status" msgid="5349199188871002778">"Estado"</string>
     <string name="tx_wifi_speed" msgid="2368986629172050673">"Velocidad de enlace de transmisión"</string>
@@ -1083,7 +1082,7 @@
     <string name="wifi_use_system_certs" msgid="5587866698144996931">"Usar certificados del sistema"</string>
     <string name="wifi_do_not_provide_eap_user_cert" msgid="6336636553673065145">"No proporcionar"</string>
     <string name="wifi_do_not_validate_eap_server" msgid="4673867078988209732">"No validar"</string>
-    <string name="wifi_trust_on_first_use" msgid="7488431582505858774">"Confiar desde el primer uso"</string>
+    <string name="wifi_trust_on_first_use" msgid="7488431582505858774">"Confiar en el primer uso"</string>
     <string name="wifi_ssid_too_long" msgid="5961719058705013875">"El nombre de la red es demasiado largo."</string>
     <string name="wifi_no_domain_warning" msgid="1452133316532366772">"Se debe especificar un dominio."</string>
     <string name="wifi_no_user_cert_warning" msgid="8466376918835248956">"Se necesita un certificado."</string>
@@ -1208,7 +1207,7 @@
     <string name="wifi_add_app_single_network_summary" product="default" msgid="6881712878537666626">"<xliff:g id="APPNAME">%1$s</xliff:g> quiere guardar una red en tu teléfono"</string>
     <string name="wifi_add_app_single_network_summary" product="tablet" msgid="8455616967601552440">"<xliff:g id="APPNAME">%1$s</xliff:g> quiere guardar una red en tu tablet"</string>
     <string name="wifi_add_app_single_network_saving_summary" msgid="7366337245410388895">"Guardando…"</string>
-    <string name="wifi_add_app_single_network_saved_summary" msgid="7135016314713158289">"Red guardada"</string>
+    <string name="wifi_add_app_single_network_saved_summary" msgid="7135016314713158289">"Guardado"</string>
     <string name="wifi_add_app_network_save_failed_summary" msgid="7223817782309294652">"No se ha podido guardar. Inténtalo de nuevo."</string>
     <string name="wifi_add_app_networks_title" msgid="4384594865433042851">"¿Guardar estas redes?"</string>
     <string name="wifi_add_app_networks_summary" product="default" msgid="2670215712788515167">"<xliff:g id="APPNAME">%1$s</xliff:g> quiere guardar estas redes en tu teléfono"</string>
@@ -2097,7 +2096,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="3440011276559762619">"Los datos de esta aplicación, incluidos los archivos y ajustes, se eliminarán definitivamente de este dispositivo"</string>
+    <string name="clear_data_dlg_text" msgid="3440011276559762619">"Los datos de esta aplicación, incluidos los archivos y ajustes, se eliminarán permanentemente de este dispositivo"</string>
     <string name="dlg_ok" msgid="1421350367857960997">"Aceptar"</string>
     <string name="dlg_cancel" msgid="5164705061530774899">"Cancelar"</string>
     <string name="dlg_delete" msgid="1790919205039397659">"Eliminar"</string>
@@ -2325,7 +2324,7 @@
     <string name="accessibility_magnification_service_settings_title" msgid="3531350704632316017">"Ajustes de ampliación"</string>
     <string name="accessibility_screen_magnification_gestures_title" msgid="3121714118381882167">"Ampliar con tres toques"</string>
     <string name="accessibility_screen_magnification_navbar_title" msgid="480853328665484528">"Ampliación con acceso directo"</string>
-    <string name="accessibility_screen_magnification_state_navbar_gesture" msgid="8067042663897802231">"Amplía con una combinación de teclas y tres toques"</string>
+    <string name="accessibility_screen_magnification_state_navbar_gesture" msgid="8067042663897802231">"Amplía con un acceso directo y tres toques"</string>
     <string name="accessibility_introduction_title" msgid="8834950581512452348">"Información de <xliff:g id="SERVICE">%1$s</xliff:g>"</string>
     <string name="accessibility_text_reading_options_title" msgid="3224648909213325563">"Tamaño y texto de la pantalla"</string>
     <string name="accessibility_text_reading_options_suggestion_title" msgid="2492155642665312733">"Cambiar cómo se muestra el texto"</string>
@@ -2630,7 +2629,7 @@
     <string name="keywords_rtt" msgid="2429130928152514402">"deficiencia auditiva, pérdida de audición, subtítulos, teletipo"</string>
     <string name="keywords_voice_access" msgid="7807335263195876454"></string>
     <string name="fast_pair_settings" msgid="3308819519080016185">"Emparejamiento rápido"</string>
-    <string name="fast_pair_settings_summary" msgid="1786567691058982987">"Detección de dispositivos con Emparejamiento rápido"</string>
+    <string name="fast_pair_settings_summary" msgid="1786567691058982987">"Detección de dispositivos Bluetooth con Emparejamiento rápido"</string>
     <string name="fast_pair_main_switch_title" msgid="1439039801201425194">"Buscar dispositivos cercanos"</string>
     <string name="fast_pair_saved_devices_title" msgid="3799803309073333082">"Dispositivos guardados"</string>
     <string name="print_settings" msgid="8519810615863882491">"Impresión"</string>
@@ -3370,7 +3369,7 @@
     <string name="user_settings_title" msgid="6550866465409807877">"Varios usuarios"</string>
     <string name="user_settings_footer_text" product="device" msgid="7523914344521302179">"Comparte tu dispositivo añadiendo usuarios. Cada uno tiene su propio espacio personal en el dispositivo con opciones de configuración, aplicaciones, cuentas y pantallas de inicio personalizadas, entre otras cosas."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="3730074318510244552">"Comparte tu tablet añadiendo usuarios. Cada uno tiene su propio espacio personal en el tablet con opciones de configuración, aplicaciones, cuentas y pantallas de inicio personalizadas, entre otras cosas."</string>
-    <string name="user_settings_footer_text" product="default" msgid="4420915712050349125">"Comparte tu teléfono añadiendo usuarios. Cada uno tiene su propio espacio personal en el teléfono con opciones de configuración, aplicaciones, cuentas y pantallas de inicio personalizadas, entre otras cosas."</string>
+    <string name="user_settings_footer_text" product="default" msgid="4420915712050349125">"Comparte tu teléfono añadiendo usuarios. Cada uno tiene su propio espacio personal en el teléfono para pantallas de inicio personalizadas, cuentas, aplicaciones, ajustes y más."</string>
     <string name="user_list_title" msgid="1387379079186123404">"Usuarios y perfiles"</string>
     <string name="user_add_user_or_profile_menu" msgid="305851380425838287">"Añadir usuario o perfil"</string>
     <string name="user_summary_restricted_profile" msgid="451650609582185813">"Perfil restringido"</string>
@@ -3419,7 +3418,7 @@
     <string name="user_copy_apps_menu_title" msgid="5354300105759670300">"Instalar aplicaciones disponibles"</string>
     <string name="nfc_payment_settings_title" msgid="2043139180030485500">"Pagos contactless"</string>
     <string name="nfc_default_payment_settings_title" msgid="2150504446774382261">"Aplicación para pagos predeterminada"</string>
-    <string name="nfc_default_payment_footer" msgid="978535088340021360">"Para pagar con una app de pagos, acerca la parte posterior del dispositivo a un terminal de pago"</string>
+    <string name="nfc_default_payment_footer" msgid="978535088340021360">"Para pagar con una aplicación de pagos, acerca la parte posterior del dispositivo a un terminal de pago"</string>
     <string name="nfc_more_details" msgid="1700713533074275233">"Más información"</string>
     <string name="nfc_default_payment_workapp_confirmation_title" msgid="746921251872504687">"¿Establecer aplicación de trabajo como aplicación para pagos predeterminada?"</string>
     <string name="nfc_default_payment_workapp_confirmation_message_title" msgid="1533022606333010329">"Para pagar con una aplicación de trabajo:"</string>
@@ -3920,7 +3919,7 @@
     <string name="lock_screen_notifs_redact_summary" msgid="1395483766035470612">"Mostrar contenido sensible en la pantalla de bloqueo"</string>
     <string name="lock_screen_notifs_redact_work" msgid="3833920196569208430">"Notificaciones sensibles del perfil de trabajo"</string>
     <string name="lock_screen_notifs_redact_work_summary" msgid="3238238380405430156">"Mostrar contenido sensible del perfil de trabajo en la pantalla de bloqueo"</string>
-    <string name="lock_screen_notifications_summary_show" msgid="6540443483088311328">"Muestra todo el contenido de las notificaciones"</string>
+    <string name="lock_screen_notifications_summary_show" msgid="6540443483088311328">"Mostrar todo el contenido de las notificaciones"</string>
     <string name="lock_screen_notifications_summary_hide" msgid="7837303171531166789">"Mostrar contenido sensible solo al desbloquear"</string>
     <string name="lock_screen_notifications_summary_disable" msgid="3388290397947365744">"No mostrar ninguna notificación"</string>
     <string name="lock_screen_notifications_interstitial_message" msgid="4688399629301178487">"¿Cómo quieres que se muestren las notificaciones en la pantalla de bloqueo?"</string>
@@ -4520,7 +4519,7 @@
     <string name="usb_use_tethering" msgid="2897063414491670531">"Compartir conexión por USB"</string>
     <string name="usb_use_MIDI" msgid="8621338227628859789">"MIDI"</string>
     <string name="usb_use_MIDI_desc" msgid="6464135515868405143">"Utilizar este dispositivo como MIDI"</string>
-    <string name="usb_use" msgid="6783183432648438528">"Utilizar USB para"</string>
+    <string name="usb_use" msgid="6783183432648438528">"Usar USB para"</string>
     <string name="usb_default_label" msgid="3372838450371060750">"Configuración de USB predeterminada"</string>
     <string name="usb_default_info" msgid="167172599497085266">"Estos ajustes se aplicarán cuando otro dispositivo esté conectado y tu teléfono esté desbloqueado. Conecta únicamente dispositivos de confianza."</string>
     <string name="usb_power_title" msgid="5602112548385798646">"Opciones de encendido"</string>
@@ -5528,7 +5527,7 @@
     <string name="cards_passes_lower" msgid="2429722007109957877">"tarjetas y pases"</string>
     <string name="power_menu_setting_name" msgid="7291642927216934159">"Mantener pulsado el botón de encendido"</string>
     <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Mantén pulsado el botón de encendido para activar el Asistente"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Mantener pulsado para abrir el menú de encendido"</string>
+    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Mantenlo pulsado para abrir el menú de encendido"</string>
     <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Mantener pulsado está inhabilitado"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para usar esta opción, primero tienes que configurar un bloqueo de pantalla"</string>
     <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Mantener pulsado para hablar con el Asistente"</string>
@@ -5651,7 +5650,7 @@
     <string name="use_wifi_hotsopt_main_switch_title" msgid="3909731167290690539">"Usar Compartir Internet"</string>
     <string name="app_pinning_main_switch_title" msgid="5465506660064032876">"Usar Fijar aplicaciones"</string>
     <string name="developer_options_main_switch_title" msgid="1720074589554152501">"Usar opciones para desarrolladores"</string>
-    <string name="default_print_service_main_switch_title" msgid="4697133737128324036">"Usa el servicio de impresión"</string>
+    <string name="default_print_service_main_switch_title" msgid="4697133737128324036">"Usa servicio de impresión"</string>
     <string name="multiple_users_main_switch_title" msgid="6686858308083037810">"Permitir varios usuarios"</string>
     <string name="wireless_debugging_main_switch_title" msgid="8463499572781441719">"Usar depuración inalámbrica"</string>
     <string name="graphics_driver_main_switch_title" msgid="6125172901855813790">"Usar preferencias del controlador de gráficos"</string>
@@ -5691,7 +5690,7 @@
     <string name="mic_toggle_title" msgid="265145278323852547">"Acceso al micrófono"</string>
     <string name="location_toggle_title" msgid="5229867700421750868">"Acceso a la ubicación"</string>
     <string name="perm_toggle_description" msgid="5754629581767319022">"Para aplicaciones y servicios"</string>
-    <string name="mic_toggle_description" msgid="484139688645092237">"Para aplicaciones y servicios. Si este ajuste está desactivado, puede que los datos del micrófono se compartan cuando llames a un número de emergencia."</string>
+    <string name="mic_toggle_description" msgid="484139688645092237">"Para aplicaciones y servicios. Si este ajuste está desactivado, puede que aun así los datos del micrófono se compartan cuando llames a un número de emergencia."</string>
     <string name="previous_page_content_description" msgid="6438292457923282991">"Anterior"</string>
     <string name="next_page_content_description" msgid="1641835099813416294">"Siguiente"</string>
     <string name="colors_viewpager_content_description" msgid="2591751086138259565">"Vista previa de color"</string>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index c11c196..b13f96d 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -225,8 +225,7 @@
     <string name="suggested_app_locales_title" msgid="8898358282377369405">"Soovitatud keeled"</string>
     <string name="all_supported_app_locales_title" msgid="5479289964316009026">"Kõik keeled"</string>
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"Süsteemi keel"</string>
-    <!-- no translation found for preference_of_system_locale_summary (5612241394431188535) -->
-    <skip />
+    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"Süsteemi vaikeseade"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"Selle rakenduse jaoks pole seadetes keele valimine saadaval."</string>
     <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
     <skip />
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index 8e4d47e..561cd6f 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -343,8 +343,7 @@
     <string name="security_status_title" msgid="6958004275337618656">"સુરક્ષાની સ્થિતિ"</string>
     <string name="security_dashboard_summary" msgid="7571035662779425918">"સ્ક્રીન લૉક, Find My Device, ઍપ સુરક્ષા"</string>
     <string name="safety_center_title" msgid="7732397372178774777">"સુરક્ષા અને પ્રાઇવસી"</string>
-    <!-- no translation found for safety_center_summary (3554867379951053869) -->
-    <skip />
+    <string name="safety_center_summary" msgid="3554867379951053869">"ઍપની સુરક્ષા, ડિવાઇસ લૉક, પરવાનગીઓ"</string>
     <string name="security_settings_face_preference_summary" msgid="6675126437396914838">"ચહેરો ઉમેર્યો"</string>
     <string name="security_settings_face_preference_summary_none" msgid="5952752252122581846">"ફેસ અનલૉક સુવિધાનું સેટઅપ કરવા ટૅપ કરો"</string>
     <string name="security_settings_face_preference_title" msgid="2126625155005348417">"ફેસ અનલૉક"</string>
@@ -588,14 +587,10 @@
     <string name="security_settings_fingerprint_enroll_disclaimer_lockscreen_disabled" msgid="4260983700868889294">" સ્ક્રીન લૉક વિકલ્પ અક્ષમ કરેલ છે. વધુ જાણવા માટે, તમારી સંસ્થાના વ્યવસ્થાપકનો સંપર્ક કરો. "<annotation id="admin_details">"વધુ વિગતો"</annotation>\n\n"તમે ખરીદીઓ અને ઍપ્લિકેશનની ઍક્સેસ અધિકૃત કરવા માટે હજુ પણ તમારી ફિંગરપ્રિન્ટનો ઉપયોગ કરી શકો છો. "<annotation id="url">"વધુ જાણો"</annotation></string>
     <string name="security_settings_fingerprint_enroll_lift_touch_again" msgid="2590665137265458789">"આંગળીને ઉંચકો, પછી ફરીથી સેન્સરને સ્પર્શ કરો"</string>
     <string name="security_settings_fingerprint_bad_calibration" msgid="598502302101068608">"ફિંગરપ્રિન્ટ સેન્સરનો ઉપયોગ કરી શકાતો નથી. રિપેર કરવાની સેવા આપતા પ્રદાતાની મુલાકાત લો"</string>
-    <!-- no translation found for security_advanced_settings (6260756619837834042) -->
-    <skip />
-    <!-- no translation found for security_advanced_settings_work_profile_settings_summary (7295451997961973175) -->
-    <skip />
-    <!-- no translation found for security_advanced_settings_no_work_profile_settings_summary (345336447137417638) -->
-    <skip />
-    <!-- no translation found for security_advanced_settings_keywords (5294945170370974974) -->
-    <skip />
+    <string name="security_advanced_settings" msgid="6260756619837834042">"સુરક્ષાના વધુ સેટિંગ"</string>
+    <string name="security_advanced_settings_work_profile_settings_summary" msgid="7295451997961973175">"ઑફિસની પ્રોફાઇલનું લૉક, એન્ક્રિપ્શન અને બીજું ઘણું"</string>
+    <string name="security_advanced_settings_no_work_profile_settings_summary" msgid="345336447137417638">"એન્ક્રિપ્શન, લૉગ ઇન વિગતો અને બીજું ઘણું"</string>
+    <string name="security_advanced_settings_keywords" msgid="5294945170370974974">"સુરક્ષા, સુરક્ષાના વધુ સેટિંગ, વધુ સેટિંગ, સુરક્ષાના વિગતવાર સેટિંગ"</string>
     <string name="fingerprint_add_max" msgid="8639321019299347447">"તમે <xliff:g id="COUNT">%d</xliff:g> જેટલી ફિંગરપ્રિન્ટ્સ ઉમેરી શકો છો"</string>
     <string name="fingerprint_intro_error_max" msgid="4431784409732135610">"તમે મહત્તમ ફિંગરપ્રિન્ટ્સ ઉમેર્યા છે"</string>
     <string name="fingerprint_intro_error_unknown" msgid="877005321503793963">"વધુ ફિંગરપ્રિન્ટ્સ ઉમેરી શકતાં નથી"</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index f1144e8..9233d41 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -814,7 +814,7 @@
     <string name="bluetooth_settings" msgid="2967239493428695171">"ब्लूटूथ"</string>
     <string name="bluetooth_settings_title" msgid="2642029095769509647">"ब्लूटूथ"</string>
     <string name="bluetooth_settings_summary" msgid="6805458703566046784">"कनेक्‍शन प्रबंधित करें, डिवाइस का नाम सेट करें और उसे खोजने लायक बनाएं"</string>
-    <string name="bluetooth_pairing_request" msgid="7762990650683525640">"क्या आप <xliff:g id="DEVICE_NAME">%1$s</xliff:g> से जोड़ना चाहते हैं?"</string>
+    <string name="bluetooth_pairing_request" msgid="7762990650683525640">"क्या आपको <xliff:g id="DEVICE_NAME">%1$s</xliff:g> से जोड़ना है?"</string>
     <string name="bluetooth_pairing_key_msg" msgid="1329835708475701761">"ब्‍लूटूथ से जोड़ने के लिए कोड"</string>
     <string name="bluetooth_enter_passkey_msg" msgid="5806420933599368592">"दूसरे डिवाइस से जोड़ना वाला कोड लिखें और फिर Return या Enter दबाएं"</string>
     <string name="bluetooth_enable_alphanumeric_pin" msgid="7256286571636950635">"पिन में अक्षर या प्रतीक शामिल होते हैं"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 51bca72..17f1d27 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -926,7 +926,7 @@
     <string name="nfc_disclaimer_title" msgid="3696580694485048039">"Aktifkan NFC"</string>
     <string name="nfc_disclaimer_content" msgid="8256675597551036207">"NFC mempertukarkan data antara perangkat ini dan perangkat atau target lain di sekitar, seperti terminal pembayaran, pembaca akses, dan iklan atau tag interaktif."</string>
     <string name="nfc_secure_settings_title" msgid="4906958426927741485">"Buka kunci perangkat untuk NFC"</string>
-    <string name="nfc_secure_toggle_summary" product="default" msgid="407654335737959071">"Mengizinkan penggunaan NFC hanya jika layar terbuka kuncinya"</string>
+    <string name="nfc_secure_toggle_summary" product="default" msgid="407654335737959071">"Mengizinkan penggunaan NFC hanya saat kunci layar dibuka"</string>
     <string name="android_beam_settings_title" msgid="2797963824490671295">"Android Beam"</string>
     <string name="android_beam_on_summary" msgid="6067720758437490896">"Siap mentransmisikan konten apl melalui NFC"</string>
     <string name="android_beam_off_summary" msgid="5693961375631325042">"Mati"</string>
@@ -1762,7 +1762,7 @@
     <string name="main_clear_short_title" msgid="4752094765533020696">"Reset ke setelan pabrik"</string>
     <string name="main_clear_desc" product="tablet" msgid="1651178880680056849">"Tindakan ini akan menghapus semua data dari "<b>"penyimpanan internal"</b>" tablet Anda, termasuk:\n\n"<li>"Akun Google Anda"</li>\n<li>"Data sistem dan aplikasi serta setelan"</li>\n<li>"Aplikasi yang didownload"</li></string>
     <string name="main_clear_desc" product="default" msgid="6984348811887162647">"Tindakan ini akan menghapus semua data dari "<b>"penyimpanan internal"</b>" ponsel Anda, termasuk:\n\n"<li>"Akun Google Anda"</li>\n<li>"Data sistem dan aplikasi serta setelan"</li>\n<li>"Aplikasi yang didownload"</li></string>
-    <string name="main_clear_accounts" product="default" msgid="7675859115108318537">\n\n"Saat ini Anda telah login ke akun berikut:\n"</string>
+    <string name="main_clear_accounts" product="default" msgid="7675859115108318537">\n\n"Saat ini Anda login ke akun berikut:\n"</string>
     <string name="main_clear_other_users_present" product="default" msgid="2672976674798019077">\n\n"Ada pengguna lain yang aktif di perangkat ini.\n"</string>
     <string name="main_clear_desc_also_erases_external" msgid="3687911419628956693"><li>"Musik"</li>\n<li>"Foto"</li>\n<li>"Data pengguna lainnya"</li></string>
     <string name="main_clear_desc_also_erases_esim" msgid="4553469876411831729"><li>"eSIM"</li></string>
@@ -3369,7 +3369,7 @@
     <string name="user_settings_title" msgid="6550866465409807877">"Beberapa pengguna"</string>
     <string name="user_settings_footer_text" product="device" msgid="7523914344521302179">"Gunakan perangkat bersama orang lain dengan menambahkan pengguna baru. Setiap pengguna memiliki ruang pribadi di perangkat Anda untuk akun, aplikasi, setelan, Layar utama kustom, dan lainnya."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="3730074318510244552">"Gunakan tablet bersama orang lain dengan menambahkan pengguna baru. Setiap pengguna memiliki ruang pribadi di perangkat Anda untuk akun, aplikasi, setelan, Layar utama kustom, dan lainnya."</string>
-    <string name="user_settings_footer_text" product="default" msgid="4420915712050349125">"Gunakan ponsel bersama orang lain dengan menambahkan pengguna baru. Setiap pengguna memiliki ruang pribadi di perangkat Anda untuk akun, aplikasi, setelan, Layar utama kustom, dan lainnya."</string>
+    <string name="user_settings_footer_text" product="default" msgid="4420915712050349125">"Gunakan ponsel bersama orang lain dengan menambahkan pengguna baru. Setiap pengguna memiliki ruang pribadi di ponsel Anda untuk akun, aplikasi, setelan, Layar utama kustom, dan lainnya."</string>
     <string name="user_list_title" msgid="1387379079186123404">"Pengguna &amp; profil"</string>
     <string name="user_add_user_or_profile_menu" msgid="305851380425838287">"Tambahkan pengguna atau profil"</string>
     <string name="user_summary_restricted_profile" msgid="451650609582185813">"Profil dibatasi"</string>
@@ -3398,7 +3398,7 @@
     <string name="user_adding_new_user" msgid="7439602720177181412">"Menambahkan pengguna baru..."</string>
     <string name="user_delete_user_description" msgid="7764153465503821011">"Hapus pengguna"</string>
     <string name="user_delete_button" msgid="3833498650182594653">"Hapus"</string>
-    <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Semua aplikasi dan data di sesi ini akan dihapus."</string>
+    <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Semua aplikasi dan data dalam sesi ini akan dihapus."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Hapus"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Aktifkan panggilan telepon"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Aktifkan panggilan telepon &amp; SMS"</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 8053e53..21a045e 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -1802,11 +1802,11 @@
     <string name="reset_network_complete_toast" msgid="1367872474130621115">"הגדרות הרשת אופסו"</string>
     <string name="reset_esim_error_title" msgid="4670073610967959597">"‏לא ניתן למחוק כרטיסי SIM"</string>
     <string name="reset_esim_error_msg" msgid="4441504470684307370">"‏עקב שגיאה, לא ניתן למחוק כרטיסי SIM שהורדת.\n\nצריך להפעיל מחדש את המכשיר ולנסות שוב."</string>
-    <string name="main_clear_title" msgid="277664302144837723">"מחיקת כל הנתונים (איפוס להגדרות המקוריות)"</string>
-    <string name="main_clear_short_title" msgid="4752094765533020696">"מחיקת כל הנתונים (איפוס להגדרות המקוריות)"</string>
+    <string name="main_clear_title" msgid="277664302144837723">"מחיקת כל הנתונים (איפוס לנתוני היצרן)"</string>
+    <string name="main_clear_short_title" msgid="4752094765533020696">"מחיקת כל הנתונים (איפוס לנתוני היצרן)"</string>
     <string name="main_clear_desc" product="tablet" msgid="1651178880680056849">"‏פעולה זו תמחק את כל הנתונים מ"<b>"האחסון הפנימי"</b>" של הטאבלט, כולל:\n\n"<li>"חשבון Google שלך"</li>\n<li>"הנתונים וההגדרות של המערכת והאפליקציות"</li>\n<li>"האפליקציות שהורדת"</li></string>
     <string name="main_clear_desc" product="default" msgid="6984348811887162647">"‏הפעולה הזו תמחק את כל הנתונים מ"<b>"האחסון הפנימי"</b>" של הטלפון, כולל:\n\n"<li>"חשבון Google שלך"</li>\n<li>"הנתונים וההגדרות של המערכת והאפליקציות"</li>\n<li>"אפליקציות שהורדת"</li></string>
-    <string name="main_clear_accounts" product="default" msgid="7675859115108318537">\n\n"החשבונות הבאים שלך פעילים כעת:\n"</string>
+    <string name="main_clear_accounts" product="default" msgid="7675859115108318537">\n\n"החשבונות הבאים פעילים כרגע:\n"</string>
     <string name="main_clear_other_users_present" product="default" msgid="2672976674798019077">\n\n"קיימים משתמשים אחרים במכשיר זה.\n"</string>
     <string name="main_clear_desc_also_erases_external" msgid="3687911419628956693"><li>"מוזיקה"</li>\n<li>"תמונות"</li>\n<li>"נתוני משתמשים אחרים"</li></string>
     <string name="main_clear_desc_also_erases_esim" msgid="4553469876411831729">"‏"<li>"כרטיסי eSIM"</li></string>
@@ -3488,7 +3488,7 @@
     <string name="user_adding_new_user" msgid="7439602720177181412">"מוסיף משתמשים חדשים…"</string>
     <string name="user_delete_user_description" msgid="7764153465503821011">"מחיקת משתמש"</string>
     <string name="user_delete_button" msgid="3833498650182594653">"מחיקה"</string>
-    <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"כל האפליקציות והנתונים בפעילות זו באתר יימחקו."</string>
+    <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"כל האפליקציות והנתונים בסשן הזה יימחקו."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"הסרה"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"הפעלת שיחות טלפון"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"‏הפעלת שיחות טלפון ו-SMS"</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 6779e73..0203b0b 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -225,8 +225,7 @@
     <string name="suggested_app_locales_title" msgid="8898358282377369405">"言語の候補"</string>
     <string name="all_supported_app_locales_title" msgid="5479289964316009026">"すべての言語"</string>
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"システムの言語"</string>
-    <!-- no translation found for preference_of_system_locale_summary (5612241394431188535) -->
-    <skip />
+    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"システムのデフォルト"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"このアプリの言語は [設定] から選択できません。"</string>
     <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
     <skip />
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index 8d2313f..96b09bf 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -227,8 +227,7 @@
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"სისტემის ენა"</string>
     <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"სისტემის ნაგულისხმევი"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"ამ აპისთვის ენის არჩევა პარამეტრებიდან მიუწვდომელია."</string>
-    <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
-    <skip />
+    <string name="desc_app_locale_disclaimer" msgid="5295933110644789052">"ენა, შესაძლოა, განსხვავდებოდეს აპში ხელმისაწვდომი ენებისგან. ზოგიერთ აპს, შესაძლოა, არ ჰქონდეს ამ პარამეტრის მხარდაჭერა."</string>
     <plurals name="dlg_remove_locales_title" formatted="false" msgid="2845515796732609837">
       <item quantity="other">გსურთ არჩეული ენების ამოშლა?</item>
       <item quantity="one">გსურთ არჩეული ენის ამოშლა?</item>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index 655085b..0cbbab6 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/strings.xml
@@ -225,8 +225,7 @@
     <string name="suggested_app_locales_title" msgid="8898358282377369405">"Ұсынылған тілдер"</string>
     <string name="all_supported_app_locales_title" msgid="5479289964316009026">"Барлық тіл"</string>
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"Жүйе тілі"</string>
-    <!-- no translation found for preference_of_system_locale_summary (5612241394431188535) -->
-    <skip />
+    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"Жүйенің әдепкі параметрі"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"Бұл қолданба үшін \"Параметрлер\" бөлімінен тіл таңдау мүмкіндігі қолжетімсіз."</string>
     <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
     <skip />
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index c83f989..99d9d39 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -225,8 +225,7 @@
     <string name="suggested_app_locales_title" msgid="8898358282377369405">"ភាសា​ដែល​បាន​ណែ​នាំ"</string>
     <string name="all_supported_app_locales_title" msgid="5479289964316009026">"ភាសាទាំងអស់"</string>
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"ភាសាប្រព័ន្ធ"</string>
-    <!-- no translation found for preference_of_system_locale_summary (5612241394431188535) -->
-    <skip />
+    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"លំនាំ​ដើម​ប្រព័ន្ធ"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"មិនអាចជ្រើសរើសភាសាសម្រាប់កម្មវិធីនេះពីការកំណត់បានទេ។"</string>
     <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
     <skip />
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 859c94b..0d52526 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -225,8 +225,7 @@
     <string name="suggested_app_locales_title" msgid="8898358282377369405">"추천 언어"</string>
     <string name="all_supported_app_locales_title" msgid="5479289964316009026">"모든 언어"</string>
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"시스템 언어"</string>
-    <!-- no translation found for preference_of_system_locale_summary (5612241394431188535) -->
-    <skip />
+    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"시스템 기본값"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"설정에서 이 앱의 언어를 선택할 수 없습니다."</string>
     <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
     <skip />
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index d126a13..b7c519c 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -978,7 +978,7 @@
     <string name="use_open_wifi_automatically_summary" msgid="6663890845558591023">"Automātiski izveidot savienojumu ar augstas kvalitātes publiskajiem tīkliem"</string>
     <string name="use_open_wifi_automatically_summary_scoring_disabled" msgid="2299284032301667622">"Lai izmantotu šo funkciju, atlasiet tīkla vērtējuma sniedzēju."</string>
     <string name="use_open_wifi_automatically_summary_scorer_unsupported_disabled" msgid="1780306481499369913">"Lai izmantotu šo funkciju, atlasiet saderīgu tīkla vērtējuma sniedzēju."</string>
-    <string name="wifi_install_credentials" msgid="5192903644606839972">"Sertifikātu instalēšana"</string>
+    <string name="wifi_install_credentials" msgid="5192903644606839972">"Instalēt sertifikātu"</string>
     <string name="wifi_scan_notify_text" msgid="7163137260385995873">"Lai precīzāk noteiktu atrašanās vietu, lietotnes un pakalpojumi varēs meklēs Wi-Fi tīklus, pat ja Wi-Fi būs izslēgts. Šo iestatījumu var izmantot, piemēram, lai uzlabotu ar atrašanās vietu saistītas funkcijas un pakalpojumus. Varat to mainīt <xliff:g id="LINK_BEGIN_0">LINK_BEGIN</xliff:g>Wi-Fi meklēšanas iestatījumos<xliff:g id="LINK_END_1">LINK_END</xliff:g>."</string>
     <string name="wifi_scan_notify_text_scanning_off" msgid="7439201783168213149">"Lai uzlabotu atrašanās vietas noteikšanas precizitāti, <xliff:g id="LINK_BEGIN_0">LINK_BEGIN</xliff:g>Wi-Fi meklēšanas iestatījumos<xliff:g id="LINK_END_1">LINK_END</xliff:g> ieslēdziet Wi-Fi meklēšanu."</string>
     <string name="wifi_scan_notify_remember_choice" msgid="8436897497968907701">"Vairs nerādīt"</string>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index c0c33ce..a8147de 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -102,7 +102,7 @@
     <string name="bluetooth_no_devices_found" msgid="7704539337219953182">"जवळपास ब्लूटूथ डिव्हाइस आढळली नाहीत."</string>
     <string name="bluetooth_notif_ticker" msgid="209515545257862858">"ब्लूटूथ पेअरिंग विनंती"</string>
     <string name="bluetooth_notif_title" msgid="1196532269131348647">"पेअरिंग विनंती"</string>
-    <string name="bluetooth_notif_message" msgid="5584717784198086653">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> सह जोडण्यासाठी टॅप करा."</string>
+    <string name="bluetooth_notif_message" msgid="5584717784198086653">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> सह पेअर करण्यासाठी टॅप करा."</string>
     <string name="bluetooth_show_received_files" msgid="685424727760622632">"मिळालेल्या फाइल"</string>
     <string name="bluetooth_devices_card_off_title" msgid="1320149821945129127">"ब्लूटूथ बंद आहे"</string>
     <string name="bluetooth_devices_card_off_summary" msgid="2276527382891105858">"सुरू करण्यासाठी टॅप करा"</string>
@@ -1080,7 +1080,7 @@
     <string name="wifi_unchanged" msgid="8026045290856150191">"(अजून तेच आहे)"</string>
     <string name="wifi_unspecified" msgid="4561964943472312208">"कृपया निवडा"</string>
     <string name="wifi_multiple_cert_added" msgid="2151019652853383776">"(एकाधिक प्रमाणपत्रे जोडली)"</string>
-    <string name="wifi_use_system_certs" msgid="5587866698144996931">"सिस्टम प्रमाणपत्रे वापरा"</string>
+    <string name="wifi_use_system_certs" msgid="5587866698144996931">"सिस्टीम प्रमाणपत्रे वापरा"</string>
     <string name="wifi_do_not_provide_eap_user_cert" msgid="6336636553673065145">"प्रदान करू नका"</string>
     <string name="wifi_do_not_validate_eap_server" msgid="4673867078988209732">"प्रमाणित करू नका"</string>
     <string name="wifi_trust_on_first_use" msgid="7488431582505858774">"Trust on First Use"</string>
@@ -1747,7 +1747,7 @@
     <string name="reset_dashboard_summary" msgid="4390780188264852956">"नेटवर्क, अ‍ॅप्स आणि डिव्हाइस रीसेट केले जाऊ शकतात"</string>
     <string name="reset_dashboard_summary_onlyApps" msgid="3304252260039419584">"ॲप्स रीसेट केली जाऊ शकतात"</string>
     <string name="reset_network_title" msgid="1395494440355807616">"वाय-फाय, मोबाइल आणि ब्लूटूथ रीसेट करा"</string>
-    <string name="reset_network_desc" msgid="1112523764899788246">"हे यांसह सर्व नेटवर्क सेटिंग्‍ज रीसेट करेल:\n\n"<li>"वाय‑फाय"</li>\n<li>"मोबाइल डेटा"</li>\n<li>"ब्लूटुथ"</li></string>
+    <string name="reset_network_desc" msgid="1112523764899788246">"हे यांसह सर्व नेटवर्क सेटिंग्‍ज रीसेट करेल:\n\n"<li>"वाय‑फाय"</li>\n<li>"मोबाइल डेटा"</li>\n<li>"ब्लूटूथ"</li></string>
     <string name="erase_euicc_data_button" msgid="728078969563311737">"मिटवा"</string>
     <string name="reset_esim_title" msgid="6152167073280852849">"डाउनलोड केलेली सिम मिटवा"</string>
     <string name="reset_esim_desc" msgid="3662444090563399131">"यामुळे कोणतेही मोबाइल सेवा प्लॅन रद्द होणार नाहीत. बदललेले SIM डाउनलोड करण्यासाठी तुमच्या वाहकाशी संपर्क साधा."</string>
@@ -1763,7 +1763,7 @@
     <string name="main_clear_title" msgid="277664302144837723">"सर्व डेटा मिटवा (फॅक्टरी रीसेट)"</string>
     <string name="main_clear_short_title" msgid="4752094765533020696">"सर्व डेटा मिटवा (फॅक्टरी रीसेट)"</string>
     <string name="main_clear_desc" product="tablet" msgid="1651178880680056849">"हे तुमच्या टॅबलेटच्या "<b>"अंतर्गत स्टोरेज"</b>" वरील सर्व डेटा मिटवेल, पुढील गोष्टींच्या समावेशासह:\n\n"<li>"तुमचे Google खाते"</li>\n<li>"सिस्टम आणि अ‍ॅप डेटा आणि सेटिंग्ज"</li>\n<li>"डाउनलोड केलेली अ‍ॅप्स"</li></string>
-    <string name="main_clear_desc" product="default" msgid="6984348811887162647">"हे तुमच्या फोनच्या "<b>"अंतर्गत स्टोरेज"</b>" वरील सर्व डेटा मिटवेल, पुढील गोष्टींच्या समावेशासह:\n\n"<li>"तुमचे Google खाते"</li>\n<li>"सिस्टम आणि अ‍ॅप डेटा सेटिंग्ज"</li>\n<li>"डाउनलोड केलेली अ‍ॅप्स"</li></string>
+    <string name="main_clear_desc" product="default" msgid="6984348811887162647">"हे तुमच्या फोनच्या "<b>"अंतर्गत स्टोरेज"</b>" वरील सर्व डेटा मिटवेल, पुढील गोष्टींच्या समावेशासह:\n\n"<li>"तुमचे Google खाते"</li>\n<li>"सिस्टीम आणि अ‍ॅप डेटा सेटिंग्ज"</li>\n<li>"डाउनलोड केलेली अ‍ॅप्स"</li></string>
     <string name="main_clear_accounts" product="default" msgid="7675859115108318537">\n\n"तुम्ही सध्या खालील खात्यांमध्ये साइन इन केले आहे:\n"</string>
     <string name="main_clear_other_users_present" product="default" msgid="2672976674798019077">\n\n"या डिव्‍हाइसवर इतर वापरकर्ते उपस्‍थित आहेत.\n"</string>
     <string name="main_clear_desc_also_erases_external" msgid="3687911419628956693"><li>"संगीत"</li>\n<li>"फोटो"</li>\n<li>"इतर वापरकर्ता डेटा"</li></string>
@@ -5493,7 +5493,7 @@
     <string name="forget_passpoint_dialog_message" msgid="2433875063907365760">"तुम्ही कोणत्याही शिल्लक वेळेचा किंवा डेटाचा अ‍ॅक्सेस गमावू शकता. काढण्याआधी तुमच्या पुरवठादाराकडे चौकशी करा."</string>
     <string name="keywords_content_capture" msgid="7802155522681936956">"आशय कॅप्चर, अ्ॅपचा आशय"</string>
     <string name="content_capture" msgid="868372905432812238">"ॲपचा आशय"</string>
-    <string name="content_capture_summary" msgid="49720773699715531">"Android सिस्टमवर आशय पाठवण्यासाठी अ‍ॅप्सना अनुमती द्या"</string>
+    <string name="content_capture_summary" msgid="49720773699715531">"Android सिस्टीमवर आशय पाठवण्यासाठी अ‍ॅप्सना अनुमती द्या"</string>
     <string name="capture_system_heap_dump_title" msgid="9210974110606886455">"सिस्टीम हीप डंप कॅप्चर करा"</string>
     <string name="reboot_with_mte_title" msgid="9167242803901899693">"MTE वापरून रीबूट करा"</string>
     <string name="reboot_with_mte_message" msgid="7675836625682561153">"सिस्टीम रीबूट होईल आणि मेमरी टॅगिंग एक्स्टेंशन (MTE) सह प्रयोगास अनुमती देईल. MTE हे सिस्टीम परफॉर्मन्स आणि स्थिरतेवर नकारात्मकपणे परिणाम करू शकते. पुढील रीबूटवर रीसेट केले जाईल."</string>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index 4c1129a..b6758be 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -160,7 +160,7 @@
     <string name="connected_device_add_device_summary" msgid="8671009879957120802">"တွဲချိတ်ရန် \'ဘလူးတုသ်\' ကို ဖွင့်ပါမည်"</string>
     <string name="connected_device_connections_title" msgid="4164120115341579170">"ချိတ်ဆက်မှု ဦးစားပေးများ"</string>
     <string name="connected_device_previously_connected_title" msgid="605808252622814415">"ယခင်က ချိတ်ဆက်ထားသော စက်များ"</string>
-    <string name="connected_device_previously_connected_screen_title" msgid="8823331744788100605">"ယခင် ချိတ်ဆက်ထားသော"</string>
+    <string name="connected_device_previously_connected_screen_title" msgid="8823331744788100605">"ယခင် ချိတ်ဆက်ထားသည်များ"</string>
     <string name="connected_device_bluetooth_turned_on_toast" msgid="144664089794199928">"ဘလူးတုသ် ဖွင့်ထားသည်"</string>
     <string name="previous_connected_see_all" msgid="7759413145713251328">"အားလုံး ကြည့်ရန်"</string>
     <string name="date_and_time" msgid="1788358029823431692">"ရက်စွဲနှင့် အချိန်"</string>
@@ -1082,7 +1082,7 @@
     <string name="wifi_use_system_certs" msgid="5587866698144996931">"စနစ်လက်မှတ်များ သုံးပါ"</string>
     <string name="wifi_do_not_provide_eap_user_cert" msgid="6336636553673065145">"မပေးထားပါ"</string>
     <string name="wifi_do_not_validate_eap_server" msgid="4673867078988209732">"အတည်မပြုပါ"</string>
-    <string name="wifi_trust_on_first_use" msgid="7488431582505858774">"ပထမအကြိမ် အသုံးပြုမှုအတွက် ယုံကြည်ရန်"</string>
+    <string name="wifi_trust_on_first_use" msgid="7488431582505858774">"ပထမအကြိမ် အသုံးပြုမှုအတွက် ယုံကြည်ပါ"</string>
     <string name="wifi_ssid_too_long" msgid="5961719058705013875">"ကွန်ရက်အမည် ရှည်လွန်းပါသည်။"</string>
     <string name="wifi_no_domain_warning" msgid="1452133316532366772">"ဒိုမိန်းတစ်ခု သတ်မှတ်ပေးရပါမည်။"</string>
     <string name="wifi_no_user_cert_warning" msgid="8466376918835248956">"အသိအမှတ်ပြုလက်မှတ် လိုအပ်သည်။"</string>
@@ -2331,7 +2331,7 @@
     <string name="accessibility_text_reading_preview_mail_subject" msgid="4597374768612733616">"အကြောင်းအရာ- မိုးပျံပူဖောင်း ဒီဇိုင်းများ"</string>
     <string name="accessibility_text_reading_preview_mail_from" msgid="1797499780365288020">"ပို့သူ- Bill"</string>
     <string name="accessibility_text_reading_preview_mail_content" msgid="8078152365771951802">"မင်္ဂလာနံနက်ခင်းပါ။\n\nဒီဇိုင်းများအခြေအနေကို သိချင်ရုံပါ။ ဘောလုံးအသစ်များ စတင်မထည့်သွင်းမီ ၎င်းတို့အသင့်ဖြစ်နိုင်မလား။"</string>
-    <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ဆက်တင်ပြင်ဆင်သတ်မှတ်ခြင်း"</string>
+    <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ဆက်တင်ပြင်ဆင်သတ်မှတ်ရန်"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ပြကွက်အရွယ်အစားနှင့် စာသားပြင်ဆင်သတ်မှတ်မလား။"</string>
     <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"သင့်ပြကွက်အရွယ်အစားနှင့် စာသားသတ်မှတ်ချက်များကို ဖုန်း၏ မူလဆက်တင်များသို့ ပြင်ဆင်သတ်မှတ်ပါမည်"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ပြင်ဆင်သတ်မှတ်ရန်"</string>
@@ -2629,8 +2629,8 @@
     <string name="keywords_rtt" msgid="2429130928152514402">"နားလေးခြင်း၊ အကြားအာရုံဆုံးရှုံးခြင်း၊ စာတန်းများ၊ ကြေးနန်းရိုက်ခြင်း၊ tty"</string>
     <string name="keywords_voice_access" msgid="7807335263195876454"></string>
     <string name="fast_pair_settings" msgid="3308819519080016185">"အမြန်တွဲချိတ်ခြင်း"</string>
-    <string name="fast_pair_settings_summary" msgid="1786567691058982987">"အနီးရှိ အမြန်တွဲချိတ် ဘလူးတုသ်သုံးစက်ကို သိရှိခြင်း။"</string>
-    <string name="fast_pair_main_switch_title" msgid="1439039801201425194">"အနီးတစ်ဝိုက်ရှိ စက်များကို ရှာခြင်း"</string>
+    <string name="fast_pair_settings_summary" msgid="1786567691058982987">"အနီးရှိ အမြန်တွဲချိတ် ဘလူးတုသ်သုံးစက်ကို သိရှိသည်"</string>
+    <string name="fast_pair_main_switch_title" msgid="1439039801201425194">"အနီးတစ်ဝိုက်ရှိ စက်များကို ရှာရန်"</string>
     <string name="fast_pair_saved_devices_title" msgid="3799803309073333082">"သိမ်းထားသည့် စက်ပစ္စည်းများ"</string>
     <string name="print_settings" msgid="8519810615863882491">"ပုံနှိပ်ခြင်း"</string>
     <string name="print_settings_summary_no_service" msgid="6721731154917653862">"ပိတ်"</string>
@@ -4396,7 +4396,7 @@
     </plurals>
     <string name="runtime_permissions_summary_no_permissions_granted" msgid="7456745929035665029">"ခွင့်ပြုထားသော ခွင့်ပြုချက်များ မရှိပါ"</string>
     <string name="runtime_permissions_summary_no_permissions_requested" msgid="7174876170116073356">"တောင်းခံထားသော ခွင့်ပြုချက်များ မရှိပါ"</string>
-    <string name="runtime_permissions_summary_control_app_access" msgid="3744591396348990500">"ဒေတာအား အက်ပ်အသုံးပြုခွင့် ထိန်းချုပ်ပါ"</string>
+    <string name="runtime_permissions_summary_control_app_access" msgid="3744591396348990500">"အက်ပ်၏ သင့်ဒေတာအသုံးပြုခွင့်ကို ထိန်းချုပ်သည်"</string>
     <string name="permissions_usage_title" msgid="2942741460679049132">"ကိုယ်ရေးအချက်အလက်လုံခြုံမှု ဒက်ရှ်ဘုတ်"</string>
     <string name="permissions_usage_summary" msgid="6784310472062516454">"မည်သည့်အက်ပ်များသည် မကြာသေးမီက ခွင့်ပြုချက်များ သုံးထားသည်ကို ပြသည်"</string>
     <string name="unused_apps" msgid="4566272194756830656">"အသုံးမပြုသော အက်ပ်များ"</string>
@@ -4519,7 +4519,7 @@
     <string name="usb_use_tethering" msgid="2897063414491670531">"USB သုံး၍ ချိတ်ဆက်ခြင်း"</string>
     <string name="usb_use_MIDI" msgid="8621338227628859789">"MIDI"</string>
     <string name="usb_use_MIDI_desc" msgid="6464135515868405143">"ဤစက်ပစ္စည်းကို MIDI အဖြစ်အသုံးပြုပါ"</string>
-    <string name="usb_use" msgid="6783183432648438528">"USB သုံးပါ"</string>
+    <string name="usb_use" msgid="6783183432648438528">"အောက်ပါတို့အတွက် USB သုံးပါ"</string>
     <string name="usb_default_label" msgid="3372838450371060750">"မူရင်း USB စီစဉ်သတ်မှတ်မှု"</string>
     <string name="usb_default_info" msgid="167172599497085266">"အခြားစက်ပစ္စည်းတစ်ခုကို ချိတ်ဆက်ထားပြီး သင့်ဖုန်းကို လော့ခ်ဖွင့်ထားသည့်အခါ ဤဆက်တင်များ အကျိုးသက်ရောက်မှု ရှိပါမည်။ ယုံကြည်စိတ်ချရသည့် စက်ပစ္စည်းများသို့သာ ချိတ်ဆက်ပါ။"</string>
     <string name="usb_power_title" msgid="5602112548385798646">"ပါဝါ ရွေးစရာများ"</string>
@@ -5338,7 +5338,7 @@
     <string name="mobile_network_sim_name_label" msgid="1452440641628369625">"အမည်"</string>
     <string name="mobile_network_sim_color_label" msgid="5293944087609632340">"အရောင် (တွဲသုံးနိုင်သော အက်ပ်က သုံးထား)"</string>
     <string name="mobile_network_sim_name_rename" msgid="5967588549571582924">"သိမ်းရန်"</string>
-    <string name="mobile_network_use_sim_on" msgid="7298332437547707908">"SIM ကတ် အသုံးပြုရန်"</string>
+    <string name="mobile_network_use_sim_on" msgid="7298332437547707908">"ဆင်းမ်ကတ်သုံးရန်"</string>
     <string name="mobile_network_use_sim_off" msgid="6303281166199670639">"ပိတ်"</string>
     <string name="mobile_network_disable_sim_explanation" msgid="2851862257846773796">"ဤဆင်းမ်ကတ်ကို ပိတ်ရန် ဆင်းမ်ကတ်ကို ထုတ်လိုက်ပါ"</string>
     <string name="mobile_network_tap_to_activate" msgid="4139979375717958102">"<xliff:g id="CARRIER">%1$s</xliff:g> ကိုဖွင့်ရန် တို့ပါ"</string>
@@ -5680,7 +5680,7 @@
     <string name="enable_2g_summary_disabled_carrier" msgid="8141118453219482762">"<xliff:g id="CARRIER_NAME_2G">%1$s</xliff:g> သုံးနိုင်ရန် 2G လိုအပ်သည်"</string>
     <string name="app_info_all_services_label" msgid="3600929226735860271">"ဝန်ဆောင်မှုအားလုံး"</string>
     <string name="show_clip_access_notification" msgid="7782300987639778542">"ကလစ်ဘုတ်အသုံးပြုမှုကို ပြခြင်း"</string>
-    <string name="show_clip_access_notification_summary" msgid="474090757777203207">"အက်ပ်များက သင်မိတ္တူကူးထားသော စာသား၊ ပုံများ (သို့) အခြားအကြောင်းအရာကို သုံးသောအခါ မက်ဆေ့ဂျ်ကို ပြသည်"</string>
+    <string name="show_clip_access_notification_summary" msgid="474090757777203207">"အက်ပ်များက သင်မိတ္တူကူးထားသော စာသား၊ ပုံများ (သို့) အခြားအကြောင်းအရာကို သုံးသောအခါ အကြောင်းကြားပါ"</string>
     <string name="all_apps" msgid="3054120149509114789">"အက်ပ်အားလုံး"</string>
     <string name="request_manage_bluetooth_permission_dont_allow" msgid="8798061333407581300">"ခွင့်မပြုပါ"</string>
     <string name="uwb_settings_title" msgid="8578498712312002231">"အလွန်ကျယ်ပြန့်သော လှိုင်းအလျား (UWB)"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index eae6dc8..3e148ce 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -101,7 +101,7 @@
     <string name="progress_scanning" msgid="2564746192843011826">"Søker"</string>
     <string name="bluetooth_no_devices_found" msgid="7704539337219953182">"Finner ingen Bluetooth-enheter."</string>
     <string name="bluetooth_notif_ticker" msgid="209515545257862858">"Forespørsel om Bluetooth-sammenkobling"</string>
-    <string name="bluetooth_notif_title" msgid="1196532269131348647">"Paringsforespørsel"</string>
+    <string name="bluetooth_notif_title" msgid="1196532269131348647">"Tilkoblingsforespørsel"</string>
     <string name="bluetooth_notif_message" msgid="5584717784198086653">"Trykk for å koble sammen med <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string>
     <string name="bluetooth_show_received_files" msgid="685424727760622632">"Mottatte filer"</string>
     <string name="bluetooth_devices_card_off_title" msgid="1320149821945129127">"Bluetooth er av"</string>
@@ -844,7 +844,7 @@
     <string name="bluetooth_preference_no_found_devices" msgid="1331122763066030155">"Ingen enheter er tilgjengelige"</string>
     <string name="bluetooth_device_context_connect" msgid="4913860372216815855">"Koble til"</string>
     <string name="bluetooth_device_context_disconnect" msgid="4464167389972513232">"Koble fra"</string>
-    <string name="bluetooth_device_context_pair_connect" msgid="2406032703622371826">"Par med og koble til"</string>
+    <string name="bluetooth_device_context_pair_connect" msgid="2406032703622371826">"Koble sammen"</string>
     <string name="bluetooth_device_context_unpair" msgid="7525735305244087162">"Koble fra"</string>
     <string name="bluetooth_device_context_disconnect_unpair" msgid="2001359431289794561">"Koble fra og fjern paring"</string>
     <string name="bluetooth_device_context_connect_advanced" msgid="934657460643490773">"Innstillinger…"</string>
@@ -860,7 +860,7 @@
     <string name="bluetooth_unpair_dialog_title" msgid="6943633443716052995">"Vil du glemme enheten?"</string>
     <string name="remove_association_button" msgid="5004208145998061135">"Fjern tilknytning"</string>
     <string name="bluetooth_companion_app_remove_association_dialog_title" msgid="1344518601377991897">"Vil du koble fra appen?"</string>
-    <string name="bluetooth_unpair_dialog_body" product="default" msgid="4730377171981539265">"Telefonen din kommer ikke lenger til å være koblet sammen med <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
+    <string name="bluetooth_unpair_dialog_body" product="default" msgid="4730377171981539265">"Telefonen din blir ikke lenger koblet sammen med <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
     <string name="bluetooth_unpair_dialog_body" product="tablet" msgid="3428463407231980054">"Nettbrettet ditt kommer ikke lenger til å være koblet sammen med <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
     <string name="bluetooth_unpair_dialog_body" product="device" msgid="5117397433721336918">"Enheten din kommer ikke lenger til å være koblet sammen med <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
     <string name="bluetooth_companion_app_body" msgid="8442643629075687761">"<xliff:g id="APP_NAME">%1$s</xliff:g>-appen kobler ikke lenger til <xliff:g id="DEVICE_NAME">%2$s</xliff:g>"</string>
@@ -1851,7 +1851,7 @@
     <string name="location_recent_location_requests_see_all" msgid="7918405176741692524">"Se alle"</string>
     <string name="location_category_location_services" msgid="8163798686832434284">"Posisjonstjenester"</string>
     <string name="location_title" msgid="5819154746934945021">"Min posisjon"</string>
-    <string name="managed_profile_location_switch_title" msgid="1265007506385460066">"Sted for arbeidsprofil"</string>
+    <string name="managed_profile_location_switch_title" msgid="1265007506385460066">"Sted for jobbprofil"</string>
     <string name="location_app_level_permissions" msgid="907206607664629759">"Appenes posisjonstillatelser"</string>
     <string name="location_app_permission_summary_location_off" msgid="2711822936853500335">"Posisjon er slått av"</string>
     <plurals name="location_app_permission_summary_location_on" formatted="false" msgid="8286873148858526214">
@@ -1862,7 +1862,7 @@
     <string name="location_recent_location_access_see_all" msgid="4203102419355323325">"Se alle"</string>
     <string name="location_recent_location_access_view_details" msgid="5803264082558504544">"Se detaljer"</string>
     <string name="location_no_recent_apps" msgid="6814206631456177033">"Ingen apper har bedt om posisjonen din i det siste"</string>
-    <string name="location_no_recent_accesses" msgid="6031735777805464247">"Ingen apper har nylig brukt posisjon"</string>
+    <string name="location_no_recent_accesses" msgid="6031735777805464247">"Ingen apper har brukt posisjon nylig"</string>
     <string name="location_high_battery_use" msgid="4277318891200626524">"Høy batteribruk"</string>
     <string name="location_low_battery_use" msgid="5218950289737996431">"Lav batteribruk"</string>
     <string name="location_scanning_wifi_always_scanning_title" msgid="5004781272733434794">"Wi‑Fi-skanning"</string>
@@ -2433,7 +2433,7 @@
     <string name="accessibility_display_inversion_switch_title" msgid="7458595722552743503">"Bruk fargeinvertering"</string>
     <string name="accessibility_display_inversion_shortcut_title" msgid="6889624526691513462">"Snarvei til fargeinvertering"</string>
     <string name="accessibility_display_inversion_preference_intro_text" msgid="1159663288481145318">"Med fargeinvertering blir lyse skjermer mørke. I tillegg blir mørke skjermer lyse."</string>
-    <string name="accessibility_display_inversion_preference_subtitle" msgid="4494767676482389509">"&lt;b&gt;Husk&lt;/b&gt;&lt;br/&gt; &lt;ol&gt; &lt;li&gt; Farger endres i medier og bilder.&lt;/li&gt; &lt;li&gt; Fargeinvertering fungerer i alle apper.&lt;/li&gt; &lt;li&gt; For å vise mørke bakgrunner kan mørkt tema brukes i stedet.&lt;/li&gt; &lt;/ol&gt;"</string>
+    <string name="accessibility_display_inversion_preference_subtitle" msgid="4494767676482389509">"&lt;b&gt;Husk&lt;/b&gt;&lt;br/&gt; &lt;ol&gt; &lt;li&gt;&amp;nbsp;Farger endres i medier og bilder.&lt;/li&gt; &lt;li&gt;&amp;nbsp;Fargeinvertering fungerer i alle apper.&lt;/li&gt; &lt;li&gt;&amp;nbsp;For å vise mørke bakgrunner kan mørkt tema brukes i stedet.&lt;/li&gt; &lt;/ol&gt;"</string>
     <string name="accessibility_autoclick_preference_title" msgid="2703143361605555752">"Autoklikk (holdetid)"</string>
     <string name="accessibility_autoclick_about_title" msgid="152923024405552594">"Om autoklikk (holdetid)"</string>
     <string name="accessibility_autoclick_footer_learn_more_content_description" msgid="7056189627042350691">"Finn ut mer om autoklikk (holdetid)"</string>
@@ -2629,7 +2629,7 @@
     <string name="keywords_rtt" msgid="2429130928152514402">"hørselshemmet, hørselstap, teksting, fjernskriver, TTY"</string>
     <string name="keywords_voice_access" msgid="7807335263195876454"></string>
     <string name="fast_pair_settings" msgid="3308819519080016185">"Rask sammenkobling"</string>
-    <string name="fast_pair_settings_summary" msgid="1786567691058982987">"Registrer Bluetooth-enheter m. rask sammenkobling i nærheten."</string>
+    <string name="fast_pair_settings_summary" msgid="1786567691058982987">"Oppdag enheter i nærheten med rask Bluetooth-tilkobling."</string>
     <string name="fast_pair_main_switch_title" msgid="1439039801201425194">"Skann etter enheter i nærheten"</string>
     <string name="fast_pair_saved_devices_title" msgid="3799803309073333082">"Lagrede enheter"</string>
     <string name="print_settings" msgid="8519810615863882491">"Utskrift"</string>
@@ -3369,13 +3369,13 @@
     <string name="user_settings_title" msgid="6550866465409807877">"Flere brukere"</string>
     <string name="user_settings_footer_text" product="device" msgid="7523914344521302179">"Del enheten din ved å legge til nye brukere. Hver bruker har et eget område på enheten din for blant annet egendefinerte startsider, kontoer, apper og innstillinger."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="3730074318510244552">"Del nettbrettet ditt ved å legge til nye brukere. Hver bruker har et eget område på nettbrettet ditt for blant annet egendefinerte startsider, kontoer, apper og innstillinger."</string>
-    <string name="user_settings_footer_text" product="default" msgid="4420915712050349125">"Del telefonen din ved å legge til nye brukere. Hver bruker har et eget område på telefonen din for blant annet egendefinerte startsider, kontoer, apper og innstillinger."</string>
+    <string name="user_settings_footer_text" product="default" msgid="4420915712050349125">"Del telefonen din ved å legge til nye brukere. Hver bruker har et eget område på telefonen for blant annet egendefinerte startsider, kontoer, apper og innstillinger."</string>
     <string name="user_list_title" msgid="1387379079186123404">"Brukere og profiler"</string>
     <string name="user_add_user_or_profile_menu" msgid="305851380425838287">"Legg til en bruker eller profil"</string>
     <string name="user_summary_restricted_profile" msgid="451650609582185813">"Begrenset profil"</string>
     <string name="user_summary_not_set_up" msgid="4602868481732886115">"Ikke konfigurert"</string>
     <string name="user_summary_restricted_not_set_up" msgid="1658946988920104613">"Ikke konfigurert – begrenset profil"</string>
-    <string name="user_summary_managed_profile_not_set_up" msgid="5739207307082458746">"Ikke konfigurert – arbeidsprofil"</string>
+    <string name="user_summary_managed_profile_not_set_up" msgid="5739207307082458746">"Ikke konfigurert – jobbprofil"</string>
     <string name="user_admin" msgid="4024553191395768119">"Administrator"</string>
     <string name="user_you" msgid="3070562015202859996">"Du (<xliff:g id="NAME">%s</xliff:g>)"</string>
     <string name="user_add_max_count" msgid="3328539978480663740">"Du kan ikke legge til flere brukere. Fjern en bruker hvis du vil legge til en ny."</string>
@@ -3398,7 +3398,7 @@
     <string name="user_adding_new_user" msgid="7439602720177181412">"Legger til ny bruker …"</string>
     <string name="user_delete_user_description" msgid="7764153465503821011">"Slett bruker"</string>
     <string name="user_delete_button" msgid="3833498650182594653">"Slett"</string>
-    <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Alle appene og all informasjon i denne økten kommer til å slettes."</string>
+    <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Alle apper og data i denne økten blir slettet."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Fjern"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Slå på telefonsamtaler"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Slå på telefonsamtaler og SMS"</string>
@@ -3418,7 +3418,7 @@
     <string name="user_copy_apps_menu_title" msgid="5354300105759670300">"Installer tilgjengelige apper"</string>
     <string name="nfc_payment_settings_title" msgid="2043139180030485500">"Kontaktløs betaling"</string>
     <string name="nfc_default_payment_settings_title" msgid="2150504446774382261">"Standard betalingsapp"</string>
-    <string name="nfc_default_payment_footer" msgid="978535088340021360">"For å betale med en betalingsapp, hold baksiden av enheten din inntil en betalingsterminal"</string>
+    <string name="nfc_default_payment_footer" msgid="978535088340021360">"For å betale med en betalingsapp, hold baksiden av enheten inntil en betalingsterminal"</string>
     <string name="nfc_more_details" msgid="1700713533074275233">"Finn ut mer"</string>
     <string name="nfc_default_payment_workapp_confirmation_title" msgid="746921251872504687">"Angi jobbapp som standard betalingsapp?"</string>
     <string name="nfc_default_payment_workapp_confirmation_message_title" msgid="1533022606333010329">"Slik betaler du med en jobbapp:"</string>
@@ -5426,7 +5426,7 @@
     <string name="switch_sim_dialog_no_switch_text" msgid="7053939850026876088">"For å bruke mobildata, ringefunksjoner og SMS senere, gå til nettverksinnstillingene"</string>
     <string name="sim_card_label" msgid="5632157635124050923">"SIM-kort"</string>
     <string name="erase_sim_dialog_title" msgid="881253002169177016">"Vil du slette dette nedlastede SIM-kortet?"</string>
-    <string name="erase_sim_dialog_text" msgid="753031064269699885">"Hvis du sletter dette SIM-kortet, fjernes <xliff:g id="CARRIER_NAME_A">%1$s</xliff:g>-tjenesten fra denne enheten.\n\nAbonnementet hos <xliff:g id="CARRIER_NAME_B">%1$s</xliff:g> blir ikke sagt opp."</string>
+    <string name="erase_sim_dialog_text" msgid="753031064269699885">"Hvis du sletter dette SIM-kortet, fjernes <xliff:g id="CARRIER_NAME_A">%1$s</xliff:g>-tjenesten fra denne enheten.\n\n<xliff:g id="CARRIER_NAME_B">%1$s</xliff:g>-tjenesten blir ikke sagt opp."</string>
     <string name="erase_sim_confirm_button" msgid="8309115684335320541">"Slett"</string>
     <string name="erasing_sim" msgid="7877703231075699139">"Sletter SIM-kortet …"</string>
     <string name="erase_sim_fail_title" msgid="2024446702985862427">"Kan ikke slette SIM-kortet"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 20efda0..4bb049f 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -960,7 +960,7 @@
     <string name="use_open_wifi_automatically_summary" msgid="6663890845558591023">"Maak automatisch verbinding met openbare netwerken van hoge kwaliteit"</string>
     <string name="use_open_wifi_automatically_summary_scoring_disabled" msgid="2299284032301667622">"Selecteer een provider van netwerkbeoordelingen om deze optie te gebruiken"</string>
     <string name="use_open_wifi_automatically_summary_scorer_unsupported_disabled" msgid="1780306481499369913">"Selecteer een geschikte provider van netwerkbeoordelingen om deze optie te gebruiken"</string>
-    <string name="wifi_install_credentials" msgid="5192903644606839972">"Certificaten installeren"</string>
+    <string name="wifi_install_credentials" msgid="5192903644606839972">"Installeer certificaten"</string>
     <string name="wifi_scan_notify_text" msgid="7163137260385995873">"Apps en services kunnen gewoon wifi-netwerken detecteren, zelfs als wifi uitstaat, om de locatienauwkeurigheid te verbeteren. Dit kan worden gebruikt om bijvoorbeeld locatiegebaseerde functies en services te verbeteren. Je kunt dit wijzigen in de <xliff:g id="LINK_BEGIN_0">LINK_BEGIN</xliff:g>instellingen voor wifi-scannen<xliff:g id="LINK_END_1">LINK_END</xliff:g>."</string>
     <string name="wifi_scan_notify_text_scanning_off" msgid="7439201783168213149">"Zet wifi-scannen aan via de <xliff:g id="LINK_BEGIN_0">LINK_BEGIN</xliff:g>instellingen voor wifi-scannen<xliff:g id="LINK_END_1">LINK_END</xliff:g> om de locatienauwkeurigheid te verbeteren."</string>
     <string name="wifi_scan_notify_remember_choice" msgid="8436897497968907701">"Niet opnieuw tonen"</string>
@@ -2629,7 +2629,7 @@
     <string name="keywords_rtt" msgid="2429130928152514402">"slechthorend, gehoorverlies, ondertiteling, teletype, TTY"</string>
     <string name="keywords_voice_access" msgid="7807335263195876454"></string>
     <string name="fast_pair_settings" msgid="3308819519080016185">"Snel koppelen"</string>
-    <string name="fast_pair_settings_summary" msgid="1786567691058982987">"Detectie in de buurt van bluetooth-apparaten met Snel koppelen."</string>
+    <string name="fast_pair_settings_summary" msgid="1786567691058982987">"Detectie in de buurt van bluetooth-apparaten met Snel koppelen"</string>
     <string name="fast_pair_main_switch_title" msgid="1439039801201425194">"Apparaten in de buurt zoeken"</string>
     <string name="fast_pair_saved_devices_title" msgid="3799803309073333082">"Opgeslagen apparaten"</string>
     <string name="print_settings" msgid="8519810615863882491">"Afdrukken"</string>
@@ -3418,7 +3418,7 @@
     <string name="user_copy_apps_menu_title" msgid="5354300105759670300">"Beschikbare apps installeren"</string>
     <string name="nfc_payment_settings_title" msgid="2043139180030485500">"Contactloze betalingen"</string>
     <string name="nfc_default_payment_settings_title" msgid="2150504446774382261">"Standaard betalingsapp"</string>
-    <string name="nfc_default_payment_footer" msgid="978535088340021360">"Als je een betaling wilt doen via een betalingsapp, houd je de achterkant van je apparaat tegen een betaalautomaat"</string>
+    <string name="nfc_default_payment_footer" msgid="978535088340021360">"Als je een betaling wilt doen via een betalingsapp, houd je de achterkant van je apparaat tegen een betaalautomaat."</string>
     <string name="nfc_more_details" msgid="1700713533074275233">"Meer informatie"</string>
     <string name="nfc_default_payment_workapp_confirmation_title" msgid="746921251872504687">"Werk-app instellen als standaard betalingsapp?"</string>
     <string name="nfc_default_payment_workapp_confirmation_message_title" msgid="1533022606333010329">"Voor een betaling via een werk-app:"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 0546439..d992f37 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -227,8 +227,7 @@
     <string name="suggested_app_locales_title" msgid="8898358282377369405">"Sugerowane języki"</string>
     <string name="all_supported_app_locales_title" msgid="5479289964316009026">"Wszystkie języki"</string>
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"Język systemu"</string>
-    <!-- no translation found for preference_of_system_locale_summary (5612241394431188535) -->
-    <skip />
+    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"Ustawienie domyślne systemu"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"Wybór języka tej aplikacji nie jest dostępny w Ustawieniach."</string>
     <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
     <skip />
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 4fd260a..74bfae2 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -226,10 +226,9 @@
     <string name="suggested_app_locales_title" msgid="8898358282377369405">"Limbi sugerate"</string>
     <string name="all_supported_app_locales_title" msgid="5479289964316009026">"Toate limbile"</string>
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"Limba sistemului"</string>
-    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"Prestabilită de sistem"</string>
+    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"Prestabilit de sistem"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"Selectarea limbii pentru această aplicație din Setări nu este disponibilă."</string>
-    <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
-    <skip />
+    <string name="desc_app_locale_disclaimer" msgid="5295933110644789052">"Limba poate fi alta decât limbile disponibile în aplicație. Este posibil ca unele aplicații să nu accepte această setare."</string>
     <plurals name="dlg_remove_locales_title" formatted="false" msgid="2845515796732609837">
       <item quantity="few">Eliminați limbile selectate?</item>
       <item quantity="other">Eliminați limbile selectate?</item>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index a2a60e7..1420672 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -5740,7 +5740,7 @@
     <string name="app_pinning_main_switch_title" msgid="5465506660064032876">"Користи качење апликација"</string>
     <string name="developer_options_main_switch_title" msgid="1720074589554152501">"Користи опције за програмере"</string>
     <string name="default_print_service_main_switch_title" msgid="4697133737128324036">"Користите услугу штампања"</string>
-    <string name="multiple_users_main_switch_title" msgid="6686858308083037810">"Дозволите више корисника"</string>
+    <string name="multiple_users_main_switch_title" msgid="6686858308083037810">"Дозволи више корисника"</string>
     <string name="wireless_debugging_main_switch_title" msgid="8463499572781441719">"Користи бежично отклањање грешака"</string>
     <string name="graphics_driver_main_switch_title" msgid="6125172901855813790">"Користи подешавања управљачког програма за графику"</string>
     <string name="battery_saver_main_switch_title" msgid="5072135547489779352">"Користи уштеду батерије"</string>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index 63fc19f..6ec4da0 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -225,8 +225,7 @@
     <string name="suggested_app_locales_title" msgid="8898358282377369405">"பரிந்துரைக்கப்படும் மொழிகள்"</string>
     <string name="all_supported_app_locales_title" msgid="5479289964316009026">"எல்லா மொழிகளும்"</string>
     <string name="preference_of_system_locale_title" msgid="8067226276038751504">"சிஸ்டம் மொழி"</string>
-    <!-- no translation found for preference_of_system_locale_summary (5612241394431188535) -->
-    <skip />
+    <string name="preference_of_system_locale_summary" msgid="5612241394431188535">"சிஸ்டத்தின் இயல்பு"</string>
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"அமைப்புகளில் இந்த ஆப்ஸுக்கான மொழித் தேர்வு கிடைக்கவில்லை."</string>
     <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
     <skip />
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index 3e5c281..661b0ff 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -101,8 +101,8 @@
     <string name="progress_scanning" msgid="2564746192843011826">"సెర్చ్ చేయడం"</string>
     <string name="bluetooth_no_devices_found" msgid="7704539337219953182">"సమీపంలో బ్లూటూత్ పరికరాలేవీ దొరకలేదు."</string>
     <string name="bluetooth_notif_ticker" msgid="209515545257862858">"బ్లూటూత్ జత చేయడానికి రిక్వెస్ట్‌"</string>
-    <string name="bluetooth_notif_title" msgid="1196532269131348647">"జత చేయడానికి రిక్వెస్ట్‌"</string>
-    <string name="bluetooth_notif_message" msgid="5584717784198086653">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g>తో జత చేయడానికి నొక్కండి."</string>
+    <string name="bluetooth_notif_title" msgid="1196532269131348647">"పెయిరింగ్ రిక్వెస్ట్‌"</string>
+    <string name="bluetooth_notif_message" msgid="5584717784198086653">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g>తో పెయిర్ చేయడానికి ట్యాప్ చేయండి."</string>
     <string name="bluetooth_show_received_files" msgid="685424727760622632">"స్వీకరించిన ఫైళ్లు"</string>
     <string name="bluetooth_devices_card_off_title" msgid="1320149821945129127">"బ్లూటూత్ ఆఫ్‌లో ఉంది"</string>
     <string name="bluetooth_devices_card_off_summary" msgid="2276527382891105858">"దీన్ని ఆన్ చేయడానికి ట్యాప్ చేయండి"</string>
@@ -157,7 +157,7 @@
     <string name="connected_device_call_device_title" msgid="88732390601723608">"కాల్ పరికరాలు"</string>
     <string name="connected_device_other_device_title" msgid="4652120430615729193">"ఇతర పరికరాలు"</string>
     <string name="connected_device_saved_title" msgid="5607274378851905959">"సేవ్ చేసిన పరికరాలు"</string>
-    <string name="connected_device_add_device_summary" msgid="8671009879957120802">"జత చేయడం కోసం బ్లూటూత్ ఆన్ చేయబడుతుంది"</string>
+    <string name="connected_device_add_device_summary" msgid="8671009879957120802">"పెయిరింగ్ కోసం బ్లూటూత్ ఆన్ చేయబడుతుంది"</string>
     <string name="connected_device_connections_title" msgid="4164120115341579170">"కనెక్షన్ ప్రాధాన్యతలు"</string>
     <string name="connected_device_previously_connected_title" msgid="605808252622814415">"మునుపు కనెక్ట్ చేసిన పరికరాలు"</string>
     <string name="connected_device_previously_connected_screen_title" msgid="8823331744788100605">"ఇంతకు మునుపు కనెక్ట్ చేయబడినవి"</string>
@@ -815,7 +815,7 @@
     <string name="bluetooth_settings_title" msgid="2642029095769509647">"బ్లూటూత్"</string>
     <string name="bluetooth_settings_summary" msgid="6805458703566046784">"కనెక్షన్‌లను నిర్వహించండి, పరికరం పేరును &amp; కనిపించే సామర్థ్యాన్ని సెట్ చేయండి"</string>
     <string name="bluetooth_pairing_request" msgid="7762990650683525640">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g>తో పెయిర్ చేయాలా?"</string>
-    <string name="bluetooth_pairing_key_msg" msgid="1329835708475701761">"బ్లూటూత్ జత చేసే కోడ్"</string>
+    <string name="bluetooth_pairing_key_msg" msgid="1329835708475701761">"బ్లూటూత్ పెయిరింగ్ కోడ్"</string>
     <string name="bluetooth_enter_passkey_msg" msgid="5806420933599368592">"జత చేసే కోడ్‌ను టైప్ చేసి, ఆపై Return లేదా Enter నొక్కండి"</string>
     <string name="bluetooth_enable_alphanumeric_pin" msgid="7256286571636950635">"పిన్‌ అక్షరాలను లేదా చిహ్నాలను కలిగి ఉంది"</string>
     <string name="bluetooth_pin_values_hint" msgid="2753202519050044670">"సాధారణంగా 0000 లేదా 1234"</string>
@@ -845,7 +845,7 @@
     <string name="bluetooth_preference_no_found_devices" msgid="1331122763066030155">"పరికరాలు ఏవీ అందుబాటులో లేవు"</string>
     <string name="bluetooth_device_context_connect" msgid="4913860372216815855">"కనెక్ట్ చేయి"</string>
     <string name="bluetooth_device_context_disconnect" msgid="4464167389972513232">"డిస్‌కనెక్ట్ చేయండి"</string>
-    <string name="bluetooth_device_context_pair_connect" msgid="2406032703622371826">"జత చేసి &amp; కనెక్ట్ చేయి"</string>
+    <string name="bluetooth_device_context_pair_connect" msgid="2406032703622371826">"పెయిర్ చేసి &amp; కనెక్ట్ చేయి"</string>
     <string name="bluetooth_device_context_unpair" msgid="7525735305244087162">"జతను తీసివేయి"</string>
     <string name="bluetooth_device_context_disconnect_unpair" msgid="2001359431289794561">"డిస్‌కనెక్ట్ చేసి &amp; జతను తీసివేయి"</string>
     <string name="bluetooth_device_context_connect_advanced" msgid="934657460643490773">"ఆప్షన్‌లు…"</string>
@@ -3370,7 +3370,7 @@
     <string name="user_settings_title" msgid="6550866465409807877">"మల్టిపుల్ యూజర్‌లు"</string>
     <string name="user_settings_footer_text" product="device" msgid="7523914344521302179">"కొత్త వినియోగదారులను జోడించడం ద్వారా మీ పరికరాన్ని షేర్ చేయండి. మీ పరికరంలోని అనుకూల హోమ్ స్క్రీన్‌లు, ఖాతాలు, యాప్‌ల సెట్టింగ్‌లు మరియు మరిన్నింటి కోసం ప్రతి వినియోగదారుకి వ్యక్తిగత స్థలం ఉంటుంది."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="3730074318510244552">"కొత్త వినియోగదారులను జోడించడం ద్వారా మీ టాబ్లెట్‌ని షేర్ చేయండి. మీ టాబ్లెట్‌లోని అనుకూల హోమ్ స్క్రీన్‌లు, ఖాతాలు, యాప్‌ల సెట్టింగ్‌లు మరియు మరిన్నింటి కోసం ప్రతి వినియోగదారుకి వ్యక్తిగత స్థలం ఉంటుంది."</string>
-    <string name="user_settings_footer_text" product="default" msgid="4420915712050349125">"కొత్త యూజర్‌లను జోడించడం ద్వారా మీ ఫోన్‌ను షేర్ చేయండి. మీ ఫోన్‌లో అనుకూల హోమ్ స్క్రీన్‌లు, ఖాతాలు, యాప్‌ల సెట్టింగ్‌లతో పాటు మరిన్నింటి కోసం ప్రతి యూజర్‌కు వ్యక్తిగత స్థలం ఉంటుంది."</string>
+    <string name="user_settings_footer_text" product="default" msgid="4420915712050349125">"కొత్త యూజర్‌లను జోడించడం ద్వారా మీ ఫోన్‌ను షేర్ చేయండి. మీ ఫోన్‌లో అనుకూల హోమ్ స్క్రీన్‌లు, ఖాతాలు, యాప్‌ల సెట్టింగ్‌లతో పాటు మరిన్నింటి కోసం ప్రతి యూజర్‌కు వ్యక్తిగత స్పేస్ ఉంటుంది."</string>
     <string name="user_list_title" msgid="1387379079186123404">"వినియోగదారులు &amp; ప్రొఫైళ్లు"</string>
     <string name="user_add_user_or_profile_menu" msgid="305851380425838287">"వినియోగదారు లేదా ప్రొఫైల్‌ను జోడించు"</string>
     <string name="user_summary_restricted_profile" msgid="451650609582185813">"పరిమితం చేయబడిన ప్రొఫైల్"</string>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index 580f908..d8ab650 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -102,7 +102,7 @@
     <string name="bluetooth_no_devices_found" msgid="7704539337219953182">"کوئی قریبی بلوٹوتھ آلات نہیں ملے۔"</string>
     <string name="bluetooth_notif_ticker" msgid="209515545257862858">"بلوٹوتھ جوڑا بنانے کی درخواست"</string>
     <string name="bluetooth_notif_title" msgid="1196532269131348647">"جوڑا بنانے کی درخواست"</string>
-    <string name="bluetooth_notif_message" msgid="5584717784198086653">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> کے ساتھ جوڑا بنانے کیلئے تھپتھپائیں۔"</string>
+    <string name="bluetooth_notif_message" msgid="5584717784198086653">"‫<xliff:g id="DEVICE_NAME">%1$s</xliff:g> کے ساتھ جوڑا بنانے کیلئے تھپتھپائیں۔"</string>
     <string name="bluetooth_show_received_files" msgid="685424727760622632">"موصولہ فائلیں"</string>
     <string name="bluetooth_devices_card_off_title" msgid="1320149821945129127">"بلوٹوتھ آف ہے"</string>
     <string name="bluetooth_devices_card_off_summary" msgid="2276527382891105858">"اسے آن کرنے کے لیے تھپتھپائیں"</string>
@@ -857,7 +857,7 @@
     <string name="device_details_title" msgid="1155622417516195481">"آلہ کی تفصیلات"</string>
     <string name="bluetooth_device_mac_address" msgid="4873325074786732703">"آلے کا بلوٹوتھ پتہ: <xliff:g id="ADDRESS">%1$s</xliff:g>"</string>
     <string name="bluetooth_multuple_devices_mac_address" msgid="4974301550897923376">"آلے کا بلوٹوتھ پتہ:\n<xliff:g id="ADDRESS">%1$s</xliff:g>"</string>
-    <string name="bluetooth_unpair_dialog_title" msgid="6943633443716052995">"آلہ بھولنا ہے؟"</string>
+    <string name="bluetooth_unpair_dialog_title" msgid="6943633443716052995">"آلہ بھول جائیں؟"</string>
     <string name="remove_association_button" msgid="5004208145998061135">"وابستگی ہٹائیں"</string>
     <string name="bluetooth_companion_app_remove_association_dialog_title" msgid="1344518601377991897">"ایپ کو غیر منسلک کریں؟"</string>
     <string name="bluetooth_unpair_dialog_body" product="default" msgid="4730377171981539265">"آپ کے فون کا <xliff:g id="DEVICE_NAME">%1$s</xliff:g> کے ساتھ جوڑا مزید برقرار نہیں رہے گا"</string>
@@ -5374,12 +5374,12 @@
     <string name="see_less" msgid="2642392725363552793">"کم دیکھیں"</string>
     <string name="sim_action_enable_sub_dialog_title" msgid="4003377033815971802">"‫<xliff:g id="CARRIER_NAME">%1$s</xliff:g> آن کریں؟"</string>
     <string name="sim_action_enable_sub_dialog_title_without_carrier_name" msgid="4842051610633654278">"‏SIM آن کریں؟"</string>
-    <string name="sim_action_switch_sub_dialog_title" msgid="9180969453358718635">"<xliff:g id="CARRIER_NAME">%1$s</xliff:g> پر سوئچ کریں؟"</string>
+    <string name="sim_action_switch_sub_dialog_title" msgid="9180969453358718635">"‫<xliff:g id="CARRIER_NAME">%1$s</xliff:g> پر سوئچ کریں؟"</string>
     <string name="sim_action_switch_psim_dialog_title" msgid="5613177333235213024">"‏SIM کارڈ استعمال کرنے کے لیے سوئچ کریں؟"</string>
     <string name="sim_action_switch_sub_dialog_mep_title" msgid="933856847099933004">"<xliff:g id="CARRIER_NAME">%1$s</xliff:g> کا استعمال کریں؟"</string>
-    <string name="sim_action_switch_sub_dialog_text" msgid="2091834911153293004">"‏ایک وقت میں صرف ایک SIM فعال ہو سکتا ہے۔\n\n‫<xliff:g id="TO_CARRIER_NAME">%1$s</xliff:g> پر سوئچ کرنا آپ کے <xliff:g id="FROM_CARRIER_NAME">%2$s</xliff:g> کی سروس کو منسوخ نہیں کرے گا۔"</string>
-    <string name="sim_action_switch_sub_dialog_text_downloaded" msgid="1396320209544698027">"‏ایک وقت میں صرف ایک ڈاؤن لوڈ کردہ SIM فعال ہو سکتا ہے۔\n\n‫<xliff:g id="TO_CARRIER_NAME">%1$s</xliff:g> پر سوئچ کرنا آپ کے <xliff:g id="FROM_CARRIER_NAME">%2$s</xliff:g> کی سروس کو منسوخ نہیں کرے گا۔"</string>
-    <string name="sim_action_switch_sub_dialog_text_single_sim" msgid="6188750682431170845">"‏ایک وقت میں صرف ایک SIM فعال ہو سکتا ہے۔\n\nسوئچ کرنے سے آپ کے <xliff:g id="TO_CARRIER_NAME">%1$s</xliff:g> کی سروس منسوخ نہیں ہوگی۔"</string>
+    <string name="sim_action_switch_sub_dialog_text" msgid="2091834911153293004">"‏ایک وقت میں صرف ایک SIM فعال ہو سکتی ہے۔\n\n‫<xliff:g id="TO_CARRIER_NAME">%1$s</xliff:g> پر سوئچ کرنے سے آپ کے <xliff:g id="FROM_CARRIER_NAME">%2$s</xliff:g> کی سروس منسوخ نہیں ہو گی۔"</string>
+    <string name="sim_action_switch_sub_dialog_text_downloaded" msgid="1396320209544698027">"‏ایک وقت میں صرف ایک ڈاؤن لوڈ کردہ SIM فعال ہو سکتی ہے۔\n\n‫<xliff:g id="TO_CARRIER_NAME">%1$s</xliff:g> پر سوئچ کرنے سے آپ کے <xliff:g id="FROM_CARRIER_NAME">%2$s</xliff:g> کی سروس منسوخ نہیں ہو گی۔"</string>
+    <string name="sim_action_switch_sub_dialog_text_single_sim" msgid="6188750682431170845">"‏ایک وقت میں صرف ایک SIM فعال ہو سکتی ہے۔\n\nسوئچ کرنے سے آپ کے <xliff:g id="TO_CARRIER_NAME">%1$s</xliff:g> کی سروس منسوخ نہیں ہوگی۔"</string>
     <string name="sim_action_switch_sub_dialog_mep_text" msgid="8348764755143679582">"‏آپ ایک وقت میں 2 SIM کا استعمال کر سکتے ہیں۔ <xliff:g id="CARRIER_NAME">%1$s</xliff:g> کا استعمال کرنے کے لیے، دوسری SIM آف کریں۔"</string>
     <string name="sim_action_switch_sub_dialog_confirm" msgid="1901181581944638961">"‫<xliff:g id="CARRIER_NAME">%1$s</xliff:g> پر سوئچ کریں"</string>
     <string name="sim_action_switch_sub_dialog_carrier_list_item_for_turning_off" msgid="5392037608705799522">"<xliff:g id="CARRIER_NAME">%1$s</xliff:g> آف کریں"</string>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index e439c68..2be5f50 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -228,8 +228,7 @@
     <!-- no translation found for preference_of_system_locale_summary (5612241394431188535) -->
     <skip />
     <string name="desc_no_available_supported_locale" msgid="7883271726226947273">"Bu ilova uchun Sozlamalardan tilni tanlash imkonsiz"</string>
-    <!-- no translation found for desc_app_locale_disclaimer (5295933110644789052) -->
-    <skip />
+    <string name="desc_app_locale_disclaimer" msgid="5295933110644789052">"Bu til ilovadagi tillardan farq qilishi mumkin. Ayrim ilovalarda bu sozlama ishlamaydi."</string>
     <plurals name="dlg_remove_locales_title" formatted="false" msgid="2845515796732609837">
       <item quantity="other">Tanlangan tillar olib tashlansinmi?</item>
       <item quantity="one">Tanlangan til olib tashlansinmi?</item>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 2b6f75d..53db30e 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -2953,13 +2953,13 @@
     <!-- Display settings screen, screen resolution option for "FHD+" [CHAR LIMIT=45] -->
     <string name="screen_resolution_option_high">High resolution</string>
     <!-- Display settings screen, screen resolution option for "QHD+" [CHAR LIMIT=45] -->
-    <string name="screen_resolution_option_highest">Highest resolution</string>
+    <string name="screen_resolution_option_highest">Full resolution</string>
     <!-- Display settings screen, "FHD+" screen resolution summary [CHAR LIMIT=NONE] -->
     <string name="screen_resolution_summary_high">1080p FHD+</string>
     <!-- Display settings screen, "QHD+" screen resolution summary [CHAR LIMIT=NONE] -->
     <string name="screen_resolution_summary_highest">1440p QHD+</string>
     <!-- The footer message for switch screen resolution [CHAR LIMIT=NONE] -->
-    <string name="screen_resolution_footer">Switching your resolution might cause some apps currently running to close.</string>
+    <string name="screen_resolution_footer">Full resolution uses more of your battery. Switching to full resolution may cause some apps to restart.</string>
 
     <!-- Display settings screen, Color mode settings title [CHAR LIMIT=30] -->
     <string name="color_mode_title">Colors</string>
diff --git a/src/com/android/settings/biometrics/BiometricEnrollActivity.java b/src/com/android/settings/biometrics/BiometricEnrollActivity.java
index c74e85e..dda3997 100644
--- a/src/com/android/settings/biometrics/BiometricEnrollActivity.java
+++ b/src/com/android/settings/biometrics/BiometricEnrollActivity.java
@@ -32,7 +32,6 @@
 import android.hardware.biometrics.BiometricManager;
 import android.hardware.biometrics.BiometricManager.Authenticators;
 import android.hardware.biometrics.BiometricManager.BiometricError;
-import android.hardware.biometrics.SensorProperties;
 import android.hardware.face.FaceManager;
 import android.hardware.face.FaceSensorPropertiesInternal;
 import android.hardware.fingerprint.FingerprintManager;
@@ -211,12 +210,6 @@
                 // required check if setup has completed instead.
                 final boolean isSettingUp = isSetupWizard || (mParentalOptionsRequired
                         && !WizardManagerHelper.isUserSetupComplete(this));
-                if (isSettingUp && isMultiSensor && mIsFaceEnrollable) {
-                    if (props.sensorStrength == SensorProperties.STRENGTH_CONVENIENCE) {
-                        Log.i(TAG, "Excluding face from SuW enrollment (STRENGTH_CONVENIENCE)");
-                        mIsFaceEnrollable = false;
-                    }
-                }
             }
         }
         if (mHasFeatureFingerprint) {
diff --git a/src/com/android/settings/biometrics/BiometricEnrollBase.java b/src/com/android/settings/biometrics/BiometricEnrollBase.java
index 6e7d04f..ad9b64e 100644
--- a/src/com/android/settings/biometrics/BiometricEnrollBase.java
+++ b/src/com/android/settings/biometrics/BiometricEnrollBase.java
@@ -60,6 +60,8 @@
     public static final String EXTRA_KEY_SENSOR_ID = "sensor_id";
     public static final String EXTRA_KEY_CHALLENGE = "challenge";
     public static final String EXTRA_KEY_MODALITY = "sensor_modality";
+    public static final String EXTRA_FINISHED_ENROLL_FACE = "finished_enrolling_face";
+    public static final String EXTRA_FINISHED_ENROLL_FINGERPRINT = "finished_enrolling_fingerprint";
 
     /**
      * Used by the choose fingerprint wizard to indicate the wizard is
@@ -254,6 +256,7 @@
         intent.putExtra(EXTRA_FROM_SETTINGS_SUMMARY, mFromSettingsSummary);
         intent.putExtra(EXTRA_KEY_CHALLENGE, mChallenge);
         intent.putExtra(EXTRA_KEY_SENSOR_ID, mSensorId);
+        BiometricUtils.copyMultiBiometricExtras(getIntent(), intent);
         if (mUserId != UserHandle.USER_NULL) {
             intent.putExtra(Intent.EXTRA_USER_ID, mUserId);
         }
diff --git a/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java b/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java
index e360760..62114d2 100644
--- a/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java
@@ -24,7 +24,6 @@
 import android.os.Bundle;
 import android.os.UserHandle;
 import android.os.UserManager;
-import android.util.Log;
 import android.view.View;
 import android.widget.TextView;
 
@@ -303,9 +302,18 @@
 
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        // TODO(b/229924331): Add tests for the enrollment flows.
+        final boolean cameFromMultiBioFpAuthAddAnother =
+                requestCode == BiometricUtils.REQUEST_ADD_ANOTHER
+                && BiometricUtils.isMultiBiometricFingerprintEnrollmentFlow(this);
         if (requestCode == BIOMETRIC_FIND_SENSOR_REQUEST) {
-            if (isResultSkipOrFinished(resultCode)) {
+            if (isResultFinished(resultCode)) {
                 handleBiometricResultSkipOrFinished(resultCode, data);
+            } else if (isResultSkipped(resultCode)) {
+                if (!BiometricUtils.tryStartingNextBiometricEnroll(this,
+                        ENROLL_NEXT_BIOMETRIC_REQUEST, "BIOMETRIC_FIND_SENSOR_SKIPPED")) {
+                    handleBiometricResultSkipOrFinished(resultCode, data);
+                }
             } else if (resultCode == RESULT_TIMEOUT) {
                 setResult(resultCode, data);
                 finish();
@@ -353,10 +361,22 @@
             }
         } else if (requestCode == LEARN_MORE_REQUEST) {
             overridePendingTransition(R.anim.sud_slide_back_in, R.anim.sud_slide_back_out);
-        } else if (requestCode == ENROLL_NEXT_BIOMETRIC_REQUEST) {
-            Log.d(TAG, "ENROLL_NEXT_BIOMETRIC_REQUEST, result: " + resultCode);
-            if (isResultSkipOrFinished(resultCode)) {
+        } else if (requestCode == ENROLL_NEXT_BIOMETRIC_REQUEST
+                || cameFromMultiBioFpAuthAddAnother) {
+            if (isResultFinished(resultCode)) {
                 handleBiometricResultSkipOrFinished(resultCode, data);
+            } else if (isResultSkipped(resultCode)) {
+                if (requestCode == BiometricUtils.REQUEST_ADD_ANOTHER) {
+                    // If we came from an add another request, it still might
+                    // be possible to add another biometric. Check if we can.
+                    if (checkMaxEnrolled() != 0) {
+                        // If we can't enroll any more biometrics, than skip
+                        // this one.
+                        handleBiometricResultSkipOrFinished(resultCode, data);
+                    }
+                } else {
+                    handleBiometricResultSkipOrFinished(resultCode, data);
+                }
             } else if (resultCode != RESULT_CANCELED) {
                 setResult(resultCode, data);
                 finish();
@@ -365,18 +385,33 @@
         super.onActivityResult(requestCode, resultCode, data);
     }
 
-    private static boolean isResultSkipOrFinished(int resultCode) {
-        return resultCode == RESULT_SKIP || resultCode == SetupSkipDialog.RESULT_SKIP
-                || resultCode == RESULT_FINISHED;
+    private static boolean isResultSkipped(int resultCode) {
+        return resultCode == RESULT_SKIP
+                || resultCode == SetupSkipDialog.RESULT_SKIP;
     }
 
-    private void handleBiometricResultSkipOrFinished(int resultCode, @Nullable Intent data) {
+    private static boolean isResultFinished(int resultCode) {
+        return resultCode == RESULT_FINISHED;
+    }
+
+    private static boolean isResultSkipOrFinished(int resultCode) {
+        return isResultSkipped(resultCode) || isResultFinished(resultCode);
+    }
+
+    protected void removeEnrollNextBiometric() {
+        getIntent().removeExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FACE);
+        getIntent().removeExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FINGERPRINT);
+    }
+
+    protected void removeEnrollNextBiometricIfSkipEnroll(@Nullable Intent data) {
         if (data != null
                 && data.getBooleanExtra(
                         MultiBiometricEnrollHelper.EXTRA_SKIP_PENDING_ENROLL, false)) {
-            getIntent().removeExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FACE);
+            removeEnrollNextBiometric();
         }
-
+    }
+    protected void handleBiometricResultSkipOrFinished(int resultCode, @Nullable Intent data) {
+        removeEnrollNextBiometricIfSkipEnroll(data);
         if (resultCode == RESULT_SKIP) {
             onEnrollmentSkipped(data);
         } else if (resultCode == RESULT_FINISHED) {
diff --git a/src/com/android/settings/biometrics/BiometricUtils.java b/src/com/android/settings/biometrics/BiometricUtils.java
index febe3c6..be233ed 100644
--- a/src/com/android/settings/biometrics/BiometricUtils.java
+++ b/src/com/android/settings/biometrics/BiometricUtils.java
@@ -51,6 +51,12 @@
  */
 public class BiometricUtils {
     private static final String TAG = "BiometricUtils";
+
+    /**
+     * Request was sent for starting another enrollment of a previously
+     * enrolled biometric of the same type.
+     */
+    public static int REQUEST_ADD_ANOTHER = 7;
     /**
      * Given the result from confirming or choosing a credential, request Gatekeeper to generate
      * a HardwareAuthToken with the Gatekeeper Password together with a biometric challenge.
@@ -223,38 +229,66 @@
     }
 
     /**
+     * Used for checking if a multi-biometric enrollment flow starts with Face and
+     * ends with Fingerprint.
+     *
      * @param activity Activity that we want to check
-     * @return True if the activity is going through a multi-biometric enrollment flow.
+     * @return True if the activity is going through a multi-biometric enrollment flow, that starts
+     * with Face.
      */
-    public static boolean isMultiBiometricEnrollmentFlow(@NonNull Activity activity) {
+    public static boolean isMultiBiometricFaceEnrollmentFlow(@NonNull Activity activity) {
         return activity.getIntent().hasExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FACE);
     }
 
+
+    /**
+     * Used for checking if a multi-biometric enrollment flowstarts with Fingerprint
+     * and ends with Face.
+     *
+     * @param activity Activity that we want to check
+     * @return True if the activity is going through a multi-biometric enrollment flow, that starts
+     * with Fingerprint.
+     */
+    public static boolean isMultiBiometricFingerprintEnrollmentFlow(@NonNull Activity activity) {
+        return activity.getIntent().hasExtra(
+                MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FINGERPRINT);
+    }
+
     public static void copyMultiBiometricExtras(@NonNull Intent fromIntent,
             @NonNull Intent toIntent) {
-        final PendingIntent pendingIntent = (PendingIntent) fromIntent.getExtra(
+        PendingIntent pendingIntent = (PendingIntent) fromIntent.getExtra(
                 MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FACE, null);
         if (pendingIntent != null) {
-            toIntent.putExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FACE, pendingIntent);
+            toIntent.putExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FACE,
+                    pendingIntent);
+        }
+
+        pendingIntent = (PendingIntent) fromIntent.getExtra(
+                MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FINGERPRINT, null);
+        if (pendingIntent != null) {
+            toIntent.putExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FINGERPRINT,
+                    pendingIntent);
         }
     }
 
     /**
-     * If the current biometric enrollment (e.g. face) should be followed by another one (e.g.
-     * fingerprint) (see {@link #isMultiBiometricEnrollmentFlow(Activity)}), retrieves the
-     * PendingIntent pointing to the next enrollment and starts it. The caller will receive the
-     * result in onActivityResult.
+     * If the current biometric enrollment (e.g. face/fingerprint) should be followed by another
+     * one (e.g. fingerprint/face) retrieves the PendingIntent pointing to the next enrollment
+     * and starts it. The caller will receive the result in onActivityResult.
      * @return true if the next enrollment was started
      */
     public static boolean tryStartingNextBiometricEnroll(@NonNull Activity activity,
             int requestCode, String debugReason) {
 
-        Log.d(TAG, "tryStartingNextBiometricEnroll, debugReason: " + debugReason);
-        final PendingIntent pendingIntent = (PendingIntent) activity.getIntent()
+        PendingIntent pendingIntent = (PendingIntent) activity.getIntent()
                 .getExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FACE);
+        if (pendingIntent == null) {
+            pendingIntent = (PendingIntent) activity.getIntent()
+                .getExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FINGERPRINT);
+        }
+
         if (pendingIntent != null) {
             try {
-                Log.d(TAG, "Starting pendingIntent: " + pendingIntent);
                 IntentSender intentSender = pendingIntent.getIntentSender();
                 activity.startIntentSenderForResult(intentSender, requestCode,
                         null /* fillInIntent */, 0 /* flagMask */, 0 /* flagValues */,
diff --git a/src/com/android/settings/biometrics/MultiBiometricEnrollHelper.java b/src/com/android/settings/biometrics/MultiBiometricEnrollHelper.java
index 5cc45b1..94fbb76 100644
--- a/src/com/android/settings/biometrics/MultiBiometricEnrollHelper.java
+++ b/src/com/android/settings/biometrics/MultiBiometricEnrollHelper.java
@@ -37,6 +37,7 @@
     private static final int REQUEST_FINGERPRINT_ENROLL = 3001;
 
     public static final String EXTRA_ENROLL_AFTER_FACE = "enroll_after_face";
+    public static final String EXTRA_ENROLL_AFTER_FINGERPRINT = "enroll_after_finger";
     public static final String EXTRA_SKIP_PENDING_ENROLL = "skip_pending_enroll";
 
     @NonNull private final FragmentActivity mActivity;
@@ -55,10 +56,10 @@
     }
 
     void startNextStep() {
-        if (mRequestEnrollFace) {
-            launchFaceEnroll();
-        } else if (mRequestEnrollFingerprint) {
+        if (mRequestEnrollFingerprint) {
             launchFingerprintEnroll();
+        } else if (mRequestEnrollFace) {
+            launchFaceEnroll();
         } else {
             mActivity.setResult(BiometricEnrollIntroduction.RESULT_SKIP);
             mActivity.finish();
@@ -74,20 +75,6 @@
                     mActivity.getIntent());
             faceIntent.putExtra(BiometricEnrollBase.EXTRA_KEY_SENSOR_ID, sensorId);
             faceIntent.putExtra(BiometricEnrollBase.EXTRA_KEY_CHALLENGE, challenge);
-
-            if (mRequestEnrollFingerprint) {
-                // Give FaceEnroll a pendingIntent pointing to fingerprint enrollment, so that it
-                // can be started when user skips or finishes face enrollment. FLAG_UPDATE_CURRENT
-                // ensures it is launched with the most recent values.
-                final Intent fpIntent = BiometricUtils.getFingerprintIntroIntent(mActivity,
-                        mActivity.getIntent());
-                fpIntent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_GK_PW_HANDLE, mGkPwHandle);
-                final PendingIntent fpAfterFaceIntent = PendingIntent.getActivity(mActivity,
-                        0 /* requestCode */, fpIntent,
-                        PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT);
-                faceIntent.putExtra(EXTRA_ENROLL_AFTER_FACE, fpAfterFaceIntent);
-            }
-
             BiometricUtils.launchEnrollForResult(mActivity, faceIntent, REQUEST_FACE_ENROLL,
                     hardwareAuthToken, mGkPwHandle, mUserId);
         });
@@ -103,6 +90,19 @@
                     mActivity.getIntent());
             intent.putExtra(BiometricEnrollBase.EXTRA_KEY_SENSOR_ID, sensorId);
             intent.putExtra(BiometricEnrollBase.EXTRA_KEY_CHALLENGE, challenge);
+            if (mRequestEnrollFace) {
+                // Give FingerprintEnroll a pendingIntent pointing to face enrollment, so that it
+                // can be started when user skips or finishes fingerprint enrollment.
+                // FLAG_UPDATE_CURRENT ensures it is launched with the most recent values.
+                final Intent faceIntent = BiometricUtils.getFaceIntroIntent(mActivity,
+                        mActivity.getIntent());
+                faceIntent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_GK_PW_HANDLE, mGkPwHandle);
+                final PendingIntent faceAfterFp = PendingIntent.getActivity(mActivity,
+                        0 /* requestCode */, faceIntent,
+                        PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT);
+                intent.putExtra(EXTRA_ENROLL_AFTER_FINGERPRINT, faceAfterFp);
+            }
+
             BiometricUtils.launchEnrollForResult(mActivity, intent, REQUEST_FINGERPRINT_ENROLL,
                     hardwareAuthToken, mGkPwHandle, mUserId);
         }));
diff --git a/src/com/android/settings/biometrics/face/FaceEnrollEducation.java b/src/com/android/settings/biometrics/face/FaceEnrollEducation.java
index 6509d4e..d2d356b 100644
--- a/src/com/android/settings/biometrics/face/FaceEnrollEducation.java
+++ b/src/com/android/settings/biometrics/face/FaceEnrollEducation.java
@@ -227,6 +227,10 @@
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
         mResultIntent = data;
+        boolean hasEnrolledFace = false;
+        if (data != null) {
+            hasEnrolledFace = data.getBooleanExtra(EXTRA_FINISHED_ENROLL_FACE, false);
+        }
         if (resultCode == RESULT_TIMEOUT) {
             setResult(resultCode, data);
             finish();
@@ -234,7 +238,7 @@
                 || requestCode == ENROLL_NEXT_BIOMETRIC_REQUEST) {
             // If the user finished or skipped enrollment, finish this activity
             if (resultCode == RESULT_SKIP || resultCode == RESULT_FINISHED
-                    || resultCode == SetupSkipDialog.RESULT_SKIP) {
+                    || resultCode == SetupSkipDialog.RESULT_SKIP || hasEnrolledFace) {
                 setResult(resultCode, data);
                 finish();
             }
diff --git a/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java b/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
index efb200f..aa081bd 100644
--- a/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
@@ -41,8 +41,10 @@
 import com.android.settings.biometrics.BiometricEnrollActivity;
 import com.android.settings.biometrics.BiometricEnrollIntroduction;
 import com.android.settings.biometrics.BiometricUtils;
+import com.android.settings.biometrics.MultiBiometricEnrollHelper;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.password.ChooseLockSettingsHelper;
+import com.android.settings.password.SetupSkipDialog;
 import com.android.settings.utils.SensorPrivacyManagerHelper;
 import com.android.settingslib.RestrictedLockUtilsInternal;
 
@@ -167,6 +169,30 @@
         Log.v(TAG, "cameraPrivacyEnabled : " + cameraPrivacyEnabled);
     }
 
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        // If user has skipped or finished enrolling, don't restart enrollment.
+        final boolean isEnrollRequest = requestCode == BIOMETRIC_FIND_SENSOR_REQUEST
+                || requestCode == ENROLL_NEXT_BIOMETRIC_REQUEST;
+        final boolean isResultSkipOrFinished = resultCode == RESULT_SKIP
+                || resultCode == SetupSkipDialog.RESULT_SKIP || resultCode == RESULT_FINISHED;
+        boolean hasEnrolledFace = false;
+        if (data != null) {
+            hasEnrolledFace = data.getBooleanExtra(EXTRA_FINISHED_ENROLL_FACE, false);
+        }
+
+        if (resultCode == RESULT_CANCELED && hasEnrolledFace) {
+            setResult(resultCode, data);
+            finish();
+            return;
+        }
+
+        if (isEnrollRequest && isResultSkipOrFinished || hasEnrolledFace) {
+            data = setSkipPendingEnroll(data);
+        }
+        super.onActivityResult(requestCode, resultCode, data);
+    }
+
     protected boolean generateChallengeOnCreate() {
         return true;
     }
@@ -387,4 +413,13 @@
     protected int getMoreButtonTextRes() {
         return R.string.security_settings_face_enroll_introduction_more;
     }
+
+    @NonNull
+    protected static Intent setSkipPendingEnroll(@Nullable Intent data) {
+        if (data == null) {
+            data = new Intent();
+        }
+        data.putExtra(MultiBiometricEnrollHelper.EXTRA_SKIP_PENDING_ENROLL, true);
+        return data;
+    }
 }
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java
index de778bd..98210b3 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java
@@ -52,6 +52,7 @@
 
 import androidx.appcompat.app.AlertDialog;
 
+import com.android.internal.annotations.VisibleForTesting;
 import com.android.settings.R;
 import com.android.settings.biometrics.BiometricEnrollSidecar;
 import com.android.settings.biometrics.BiometricUtils;
@@ -139,6 +140,15 @@
     private OrientationEventListener mOrientationEventListener;
     private int mPreviousRotation = 0;
 
+    @VisibleForTesting
+    protected boolean shouldShowLottie() {
+        DisplayDensityUtils displayDensity = new DisplayDensityUtils(getApplicationContext());
+        int currentDensityIndex = displayDensity.getCurrentIndex();
+        final int currentDensity = displayDensity.getValues()[currentDensityIndex];
+        final int defaultDensity = displayDensity.getDefaultDensity();
+        return defaultDensity == currentDensity;
+    }
+
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -172,12 +182,7 @@
             setHeaderText(R.string.security_settings_fingerprint_enroll_repeat_title);
         }
 
-        DisplayDensityUtils displayDensity =
-                new DisplayDensityUtils(getApplicationContext());
-        int currentDensityIndex = displayDensity.getCurrentIndex();
-        final int currentDensity = displayDensity.getValues()[currentDensityIndex];
-        final int defaultDensity = displayDensity.getDefaultDensity();
-        mShouldShowLottie = defaultDensity == currentDensity;
+        mShouldShowLottie = shouldShowLottie();
         // Only show the lottie if the current display density is the default density.
         // Otherwise, the lottie will overlap with the settings header text.
         boolean isLandscape = BiometricUtils.isReverseLandscape(getApplicationContext())
@@ -509,6 +514,7 @@
             mErrorText.removeCallbacks(mTouchAgainRunnable);
             mErrorText.postDelayed(mTouchAgainRunnable, HINT_TIMEOUT_DURATION);
         } else {
+
             if (mIsAccessibilityEnabled) {
                 final int percent = (int) (((float)(steps - remaining) / (float) steps) * 100);
                 CharSequence cs = getString(
@@ -580,7 +586,6 @@
                 mErrorText.setTranslationY(0f);
             }
         }
-
         if (isResumed() && mIsAccessibilityEnabled && !mCanAssumeUdfps) {
             mVibrator.vibrate(Process.myUid(), getApplicationContext().getOpPackageName(),
                     VIBRATE_EFFECT_ERROR, getClass().getSimpleName() + "::showError",
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFindSensor.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFindSensor.java
index 66059e7..547869f 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFindSensor.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFindSensor.java
@@ -289,6 +289,17 @@
 
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        boolean enrolledFingerprint = false;
+        if (data != null) {
+            enrolledFingerprint = data.getBooleanExtra(EXTRA_FINISHED_ENROLL_FINGERPRINT, false);
+        }
+
+        if (resultCode == RESULT_CANCELED && enrolledFingerprint) {
+            setResult(resultCode, data);
+            finish();
+            return;
+        }
+
         if (requestCode == CONFIRM_REQUEST) {
             if (resultCode == RESULT_OK && data != null) {
                 throw new IllegalStateException("Pretty sure this is dead code");
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFinish.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFinish.java
index 7bfe615..16773d3 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFinish.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFinish.java
@@ -31,6 +31,7 @@
 import com.android.settings.R;
 import com.android.settings.Utils;
 import com.android.settings.biometrics.BiometricEnrollBase;
+import com.android.settings.biometrics.BiometricUtils;
 import com.android.settings.password.ChooseLockSettingsHelper;
 
 import com.google.android.setupcompat.template.FooterBarMixin;
@@ -47,8 +48,6 @@
     private static final String ACTION_FINGERPRINT_SETTINGS =
             "android.settings.FINGERPRINT_SETTINGS";
     @VisibleForTesting
-    static final int REQUEST_ADD_ANOTHER = 1;
-    @VisibleForTesting
     static final String FINGERPRINT_SUGGESTION_ACTIVITY =
             "com.android.settings.SetupFingerprintSuggestionActivity";
 
@@ -80,9 +79,10 @@
 
     @Override
     public void onBackPressed() {
-        super.onBackPressed();
-
         updateFingerprintSuggestionEnableState();
+        Intent intent = getIntent().putExtra(EXTRA_FINISHED_ENROLL_FINGERPRINT, true);
+        setResult(RESULT_CANCELED, intent);
+        finish();
     }
 
     @Override
@@ -160,13 +160,13 @@
     }
 
     private void onAddAnotherButtonClick(View view) {
-        startActivityForResult(getFingerprintEnrollingIntent(), REQUEST_ADD_ANOTHER);
+        startActivityForResult(getFingerprintEnrollingIntent(), BiometricUtils.REQUEST_ADD_ANOTHER);
     }
 
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         updateFingerprintSuggestionEnableState();
-        if (requestCode == REQUEST_ADD_ANOTHER && resultCode != RESULT_CANCELED) {
+        if (requestCode == BiometricUtils.REQUEST_ADD_ANOTHER && resultCode != RESULT_CANCELED) {
             setResult(resultCode, data);
             finish();
         } else {
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java
index 6fe14e6..b9e9dcc 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java
@@ -42,7 +42,6 @@
 import com.android.settings.biometrics.BiometricUtils;
 import com.android.settings.biometrics.MultiBiometricEnrollHelper;
 import com.android.settings.password.ChooseLockSettingsHelper;
-import com.android.settings.password.SetupSkipDialog;
 import com.android.settingslib.HelpUtils;
 import com.android.settingslib.RestrictedLockUtilsInternal;
 
@@ -106,28 +105,31 @@
 
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
-        // If user has skipped or finished enrolling, don't restart enrollment.
-        final boolean isEnrollRequest = requestCode == BIOMETRIC_FIND_SENSOR_REQUEST
-                || requestCode == ENROLL_NEXT_BIOMETRIC_REQUEST;
-        final boolean isResultSkipOrFinished = resultCode == RESULT_SKIP
-                || resultCode == SetupSkipDialog.RESULT_SKIP || resultCode == RESULT_FINISHED;
-        if (isEnrollRequest && isResultSkipOrFinished) {
-            data = setSkipPendingEnroll(data);
-        }
         super.onActivityResult(requestCode, resultCode, data);
     }
 
     @Override
     protected void onCancelButtonClick(View view) {
-        // User has explicitly canceled enroll. Don't restart it automatically.
-        Intent data = setSkipPendingEnroll(new Intent());
-        setResult(RESULT_SKIP, data);
-        finish();
+        if (!BiometricUtils.tryStartingNextBiometricEnroll(
+                this, ENROLL_NEXT_BIOMETRIC_REQUEST, "cancel")) {
+            super.onCancelButtonClick(view);
+        }
     }
 
     @Override
     protected void onSkipButtonClick(View view) {
-        onCancelButtonClick(view);
+        if (!BiometricUtils.tryStartingNextBiometricEnroll(
+                this, ENROLL_NEXT_BIOMETRIC_REQUEST, "skipped")) {
+            super.onSkipButtonClick(view);
+        }
+    }
+
+    @Override
+    protected void onFinishedEnrolling(@Nullable Intent data) {
+        if (!BiometricUtils.tryStartingNextBiometricEnroll(
+                this, ENROLL_NEXT_BIOMETRIC_REQUEST, "finished")) {
+            super.onFinishedEnrolling(data);
+        }
     }
 
     @StringRes
@@ -269,6 +271,7 @@
     @Override
     protected Intent getEnrollingIntent() {
         final Intent intent = new Intent(this, FingerprintEnrollFindSensor.class);
+        BiometricUtils.copyMultiBiometricExtras(getIntent(), intent);
         if (BiometricUtils.containsGatekeeperPasswordHandle(getIntent())) {
             intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_GK_PW_HANDLE,
                     BiometricUtils.getGatekeeperPasswordHandle(getIntent()));
diff --git a/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollFindSensor.java b/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollFindSensor.java
index 5f2fbb5..7256511 100644
--- a/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollFindSensor.java
+++ b/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollFindSensor.java
@@ -31,6 +31,7 @@
 
 import com.android.settings.R;
 import com.android.settings.SetupWizardUtils;
+import com.android.settings.biometrics.BiometricUtils;
 import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
 import com.android.settings.password.ChooseLockSettingsHelper;
 
@@ -45,6 +46,7 @@
         if (mUserId != UserHandle.USER_NULL) {
             intent.putExtra(Intent.EXTRA_USER_ID, mUserId);
         }
+        BiometricUtils.copyMultiBiometricExtras(getIntent(), intent);
         SetupWizardUtils.copySetupExtras(getIntent(), intent);
         return intent;
     }
diff --git a/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroduction.java b/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroduction.java
index 7d8d12e..af25ecd 100644
--- a/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroduction.java
@@ -62,8 +62,10 @@
     @Override
     protected Intent getEnrollingIntent() {
         final Intent intent = new Intent(this, SetupFingerprintEnrollFindSensor.class);
+        BiometricUtils.copyMultiBiometricExtras(getIntent(), intent);
         if (BiometricUtils.containsGatekeeperPasswordHandle(getIntent())) {
-            intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_GK_PW_HANDLE,
+            intent.putExtra(
+                    ChooseLockSettingsHelper.EXTRA_KEY_GK_PW_HANDLE,
                     BiometricUtils.getGatekeeperPasswordHandle(getIntent()));
         }
         SetupWizardUtils.copySetupExtras(getIntent(), intent);
@@ -72,6 +74,16 @@
 
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        boolean hasEnrolledFace = false;
+        boolean hasEnrolledFingerprint = false;
+        if (data != null) {
+            hasEnrolledFace = data.getBooleanExtra(EXTRA_FINISHED_ENROLL_FACE, false);
+            hasEnrolledFingerprint = data.getBooleanExtra(EXTRA_FINISHED_ENROLL_FINGERPRINT, false);
+            // If we've enrolled a face, we can remove the pending intent to launch FaceEnrollIntro.
+            if (hasEnrolledFace) {
+                removeEnrollNextBiometric();
+            }
+        }
         if (requestCode == BIOMETRIC_FIND_SENSOR_REQUEST && isKeyguardSecure()) {
             // if lock was already present, do not return intent data since it must have been
             // reported in previous attempts
@@ -83,6 +95,34 @@
             if (resultCode == RESULT_FINISHED) {
                 data = setFingerprintCount(data);
             }
+
+            if (resultCode == RESULT_CANCELED && hasEnrolledFingerprint) {
+                // If we are coming from a back press from an already enrolled fingerprint,
+                // we can finish this activity.
+                setResult(resultCode, data);
+                finish();
+                return;
+            }
+        } else if (requestCode == ENROLL_NEXT_BIOMETRIC_REQUEST) {
+            // See if we can still enroll a fingerprint
+            boolean canEnrollFinger = checkMaxEnrolled() == 0;
+            // If we came from the next biometric flow and a user has either
+            // finished or skipped, we will also finish.
+            if (resultCode == RESULT_SKIP || resultCode == RESULT_FINISHED) {
+                // If user skips the enroll next biometric, we will also finish
+                setResult(RESULT_FINISHED, data);
+                finish();
+            } else if (resultCode == RESULT_CANCELED) {
+                // Note that result_canceled comes from onBackPressed.
+                // If we can enroll a finger, Stay on this page, else we cannot,
+                // and finish entirely.
+                if (!canEnrollFinger) {
+                    finish();
+                }
+            } else {
+                super.onActivityResult(requestCode, resultCode, data);
+            }
+            return;
         }
         super.onActivityResult(requestCode, resultCode, data);
     }
@@ -118,18 +158,22 @@
         if (isKeyguardSecure()) {
             // If the keyguard is already set up securely (maybe the user added a backup screen
             // lock and skipped fingerprint), return RESULT_SKIP directly.
-            resultCode = RESULT_SKIP;
-            data = mAlreadyHadLockScreenSetup ? null : getMetricIntent(null);
+            if (!BiometricUtils.tryStartingNextBiometricEnroll(
+                    this, ENROLL_NEXT_BIOMETRIC_REQUEST, "cancel")) {
+                resultCode = RESULT_SKIP;
+                data = mAlreadyHadLockScreenSetup ? null : getMetricIntent(null);
+                setResult(resultCode, data);
+                finish();
+                return;
+            }
         } else {
             resultCode = SetupSkipDialog.RESULT_SKIP;
-            data = null;
+            data = setSkipPendingEnroll(null);
+            setResult(resultCode, data);
+            finish();
         }
 
         // User has explicitly canceled enroll. Don't restart it automatically.
-        data = setSkipPendingEnroll(data);
-
-        setResult(resultCode, data);
-        finish();
     }
 
     /**
diff --git a/src/com/android/settings/notification/NotificationBackend.java b/src/com/android/settings/notification/NotificationBackend.java
index 2ae91e2..5215a33 100644
--- a/src/com/android/settings/notification/NotificationBackend.java
+++ b/src/com/android/settings/notification/NotificationBackend.java
@@ -115,40 +115,27 @@
 
     void recordCanBeBlocked(Context context, PackageManager pm, RoleManager rm, PackageInfo app,
             AppRow row) {
-        if (Settings.Secure.getIntForUser(context.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 0, USER_SYSTEM) != 0) {
-            try {
-                row.systemApp = row.lockedImportance =
-                        sINM.isPermissionFixed(app.packageName, row.userId);
-            } catch (RemoteException e) {
-                Log.w(TAG, "Error calling NMS", e);
-            }
-            // The permission system cannot make role permissions 'fixed', so check for these
-            // roles explicitly
-            List<String> roles = rm.getHeldRolesFromController(app.packageName);
-            if (roles.contains(RoleManager.ROLE_DIALER)
-                    || roles.contains(RoleManager.ROLE_EMERGENCY)) {
-                row.systemApp = row.lockedImportance = true;
-            }
-            // if the app targets T but has not requested the permission, we cannot change the
-            // permission state
-            if (app.applicationInfo.targetSdkVersion > Build.VERSION_CODES.S_V2) {
-                if (app.requestedPermissions == null || Arrays.stream(app.requestedPermissions)
-                        .noneMatch(p -> p.equals(android.Manifest.permission.POST_NOTIFICATIONS))) {
-                    row.lockedImportance = true;
-                }
-            }
 
-        } else {
-            row.systemApp = Utils.isSystemPackage(context.getResources(), pm, app);
-            List<String> roles = rm.getHeldRolesFromController(app.packageName);
-            if (roles.contains(RoleManager.ROLE_DIALER)
-                    || roles.contains(RoleManager.ROLE_EMERGENCY)) {
-                row.systemApp = true;
+        try {
+            row.systemApp = row.lockedImportance =
+                    sINM.isPermissionFixed(app.packageName, row.userId);
+        } catch (RemoteException e) {
+            Log.w(TAG, "Error calling NMS", e);
+        }
+        // The permission system cannot make role permissions 'fixed', so check for these
+        // roles explicitly
+        List<String> roles = rm.getHeldRolesFromController(app.packageName);
+        if (roles.contains(RoleManager.ROLE_DIALER)
+                || roles.contains(RoleManager.ROLE_EMERGENCY)) {
+            row.systemApp = row.lockedImportance = true;
+        }
+        // if the app targets T but has not requested the permission, we cannot change the
+        // permission state
+        if (app.applicationInfo.targetSdkVersion > Build.VERSION_CODES.S_V2) {
+            if (app.requestedPermissions == null || Arrays.stream(app.requestedPermissions)
+                    .noneMatch(p -> p.equals(android.Manifest.permission.POST_NOTIFICATIONS))) {
+                row.lockedImportance = true;
             }
-            final String[] nonBlockablePkgs = context.getResources().getStringArray(
-                    com.android.internal.R.array.config_nonBlockableNotificationPackages);
-            markAppRowWithBlockables(nonBlockablePkgs, row, app.packageName);
         }
     }
 
diff --git a/src/com/android/settings/notification/app/NotificationPreferenceController.java b/src/com/android/settings/notification/app/NotificationPreferenceController.java
index 289f1ed..9d339f0 100644
--- a/src/com/android/settings/notification/app/NotificationPreferenceController.java
+++ b/src/com/android/settings/notification/app/NotificationPreferenceController.java
@@ -64,7 +64,6 @@
     @Nullable
     protected ShortcutInfo mConversationInfo;
     protected List<String> mPreferenceFilter;
-    boolean mMigratedPermission;
 
     boolean overrideCanBlock;
     boolean overrideCanConfigure;
@@ -78,8 +77,6 @@
         mBackend = backend;
         mUm = (UserManager) mContext.getSystemService(Context.USER_SERVICE);
         mPm = mContext.getPackageManager();
-        mMigratedPermission = Settings.Secure.getIntForUser(context.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 0, USER_SYSTEM) != 0;
     }
 
     /**
@@ -155,9 +152,7 @@
             return overrideCanConfigureValue;
         }
         if (channel != null && mAppRow != null) {
-            boolean locked = mMigratedPermission ? mAppRow.lockedImportance
-                    : channel.isImportanceLockedByCriticalDeviceFunction()
-                            || channel.isImportanceLockedByOEM();
+            boolean locked = mAppRow.lockedImportance;
             if (locked) {
                 return channel.isBlockable() || channel.getImportance() == IMPORTANCE_NONE;
             }
@@ -186,8 +181,7 @@
             return overrideCanConfigureValue;
         }
         if (channel != null && mAppRow != null) {
-            boolean locked = mMigratedPermission ? mAppRow.lockedImportance
-                    : channel.isImportanceLockedByOEM();
+            boolean locked = mAppRow.lockedImportance;
             return !locked || channel.isBlockable();
         }
         return false;
diff --git a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrollingTest.java b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrollingTest.java
index a7b7e85..757a304 100644
--- a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrollingTest.java
+++ b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrollingTest.java
@@ -20,22 +20,27 @@
 
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
 
-import android.content.Intent;
+import android.hardware.biometrics.ComponentInfoInternal;
+import android.hardware.biometrics.SensorProperties;
 import android.hardware.fingerprint.FingerprintManager;
 import android.hardware.fingerprint.FingerprintManager.EnrollmentCallback;
+import android.hardware.fingerprint.FingerprintSensorProperties;
+import android.hardware.fingerprint.FingerprintSensorPropertiesInternal;
 import android.os.CancellationSignal;
+import android.os.Vibrator;
 import android.widget.TextView;
 
 import com.android.settings.R;
-import com.android.settings.password.ChooseLockSettingsHelper;
 import com.android.settings.testutils.FakeFeatureFactory;
-import com.android.settings.testutils.shadow.ShadowUtils;
 
-
-import org.junit.After;
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
@@ -43,36 +48,25 @@
 import org.mockito.ArgumentCaptor;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
-import org.robolectric.Robolectric;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
+import org.robolectric.android.controller.ActivityController;
+
+import java.util.ArrayList;
+import java.util.List;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(shadows = ShadowUtils.class)
 public class FingerprintEnrollEnrollingTest {
 
-    @Mock
-    private FingerprintManager mFingerprintManager;
+    @Mock private FingerprintManager mFingerprintManager;
+
+    @Mock private Vibrator mVibrator;
 
     private FingerprintEnrollEnrolling mActivity;
 
     @Before
     public void setUp() {
         MockitoAnnotations.initMocks(this);
-        ShadowUtils.setFingerprintManager(mFingerprintManager);
-
         FakeFeatureFactory.setupForTest();
-        mActivity = Robolectric.buildActivity(
-                FingerprintEnrollEnrolling.class,
-                new Intent()
-                        // Set the challenge token so the confirm screen will not be shown
-                        .putExtra(ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE_TOKEN, new byte[0]))
-                .setup().get();
-    }
-
-    @After
-    public void tearDown() {
-        ShadowUtils.reset();
     }
 
     @Test
@@ -82,23 +76,63 @@
 
         enrollmentCallback.onEnrollmentProgress(123);
         enrollmentCallback.onEnrollmentHelp(
-                FingerprintManager.FINGERPRINT_ERROR_UNABLE_TO_PROCESS,
-                "test enrollment help");
+                FingerprintManager.FINGERPRINT_ERROR_UNABLE_TO_PROCESS, "test enrollment help");
 
         TextView errorText = mActivity.findViewById(R.id.error_text);
         assertThat(errorText.getText()).isEqualTo("test enrollment help");
     }
 
+    @Test
+    public void fingerprintUdfpsEnrollSuccessProgress_shouldNotVibrate() {
+        initializeActivityFor(FingerprintSensorProperties.TYPE_UDFPS_OPTICAL);
+
+        mActivity.onEnrollmentProgressChange(1, 1);
+
+        verify(mVibrator, never()).vibrate(anyInt(), anyString(), any(), anyString(), any());
+    }
+
+    @Test
+    public void fingerprintRearEnrollSuccessProgress_shouldNotVibrate() {
+        initializeActivityFor(FingerprintSensorProperties.TYPE_REAR);
+
+        mActivity.onEnrollmentProgressChange(1, 1);
+
+        verify(mVibrator, never()).vibrate(anyInt(), anyString(), any(), anyString(), any());
+    }
+
+    private void initializeActivityFor(int sensorType) {
+        final List<ComponentInfoInternal> componentInfo = new ArrayList<>();
+        final FingerprintSensorPropertiesInternal prop =
+                new FingerprintSensorPropertiesInternal(
+                        0 /* sensorId */,
+                        SensorProperties.STRENGTH_STRONG,
+                        1 /* maxEnrollmentsPerUser */,
+                        componentInfo,
+                        sensorType,
+                        true /* resetLockoutRequiresHardwareAuthToken */);
+        final ArrayList<FingerprintSensorPropertiesInternal> props = new ArrayList<>();
+        props.add(prop);
+        when(mFingerprintManager.getSensorPropertiesInternal()).thenReturn(props);
+
+        mActivity = spy(FingerprintEnrollEnrolling.class);
+        doReturn(true).when(mActivity).shouldShowLottie();
+        doReturn(mFingerprintManager).when(mActivity).getSystemService(FingerprintManager.class);
+        doReturn(mVibrator).when(mActivity).getSystemService(Vibrator.class);
+
+        ActivityController.of(mActivity).create();
+    }
+
     private EnrollmentCallback verifyAndCaptureEnrollmentCallback() {
         ArgumentCaptor<EnrollmentCallback> callbackCaptor =
                 ArgumentCaptor.forClass(EnrollmentCallback.class);
-        verify(mFingerprintManager).enroll(
-                any(byte[].class),
-                any(CancellationSignal.class),
-                anyInt(),
-                callbackCaptor.capture(),
-                eq(FingerprintManager.ENROLL_ENROLL));
+        verify(mFingerprintManager)
+                .enroll(
+                        any(byte[].class),
+                        any(CancellationSignal.class),
+                        anyInt(),
+                        callbackCaptor.capture(),
+                        eq(FingerprintManager.ENROLL_ENROLL));
 
         return callbackCaptor.getValue();
     }
-}
\ No newline at end of file
+}
diff --git a/tests/robotests/src/com/android/settings/notification/NotificationBackendTest.java b/tests/robotests/src/com/android/settings/notification/NotificationBackendTest.java
index a7ddec3..5745aa0 100644
--- a/tests/robotests/src/com/android/settings/notification/NotificationBackendTest.java
+++ b/tests/robotests/src/com/android/settings/notification/NotificationBackendTest.java
@@ -16,9 +16,6 @@
 
 package com.android.settings.notification;
 
-import static android.os.UserHandle.USER_SYSTEM;
-import static android.provider.Settings.*;
-
 import static com.google.common.truth.Truth.assertThat;
 
 import static org.junit.Assert.assertFalse;
@@ -37,11 +34,9 @@
 import android.content.pm.ApplicationInfo;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
-import android.content.pm.PermissionInfo;
 import android.net.MacAddress;
 import android.os.Build;
 import android.os.Parcel;
-import android.provider.Settings;
 
 import com.android.settings.notification.NotificationBackend.AppRow;
 import com.android.settingslib.bluetooth.CachedBluetoothDevice;
@@ -117,9 +112,6 @@
 
     @Test
     public void testMarkAppRow_fixedPermission_withRole() throws Exception {
-        Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         PackageInfo pi = new PackageInfo();
         pi.packageName = "test";
         pi.applicationInfo = new ApplicationInfo();
@@ -141,9 +133,6 @@
 
     @Test
     public void testMarkAppRow_fixedPermission() throws Exception {
-        Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         PackageInfo pi = new PackageInfo();
         pi.packageName = "test";
         pi.applicationInfo = new ApplicationInfo();
@@ -161,9 +150,6 @@
 
     @Test
     public void testMarkAppRow_notFixedPermission() throws Exception {
-        Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         PackageInfo pi = new PackageInfo();
         pi.packageName = "test";
         pi.applicationInfo = new ApplicationInfo();
@@ -181,9 +167,6 @@
 
     @Test
     public void testMarkAppRow_targetsT_noPermissionRequest() throws Exception {
-        Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         PackageInfo pi = new PackageInfo();
         pi.packageName = "test";
         pi.applicationInfo = new ApplicationInfo();
@@ -203,9 +186,6 @@
 
     @Test
     public void testMarkAppRow_targetsT_permissionRequest() throws Exception {
-        Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         PackageInfo pi = new PackageInfo();
         pi.packageName = "test";
         pi.applicationInfo = new ApplicationInfo();
diff --git a/tests/robotests/src/com/android/settings/notification/app/NotificationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/app/NotificationPreferenceControllerTest.java
index 8d31fe5..4ba5fe7 100644
--- a/tests/robotests/src/com/android/settings/notification/app/NotificationPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/app/NotificationPreferenceControllerTest.java
@@ -225,9 +225,6 @@
 
     @Test
     public void testIsChannelBlockable_postMigration_locked() {
-        Settings.Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         mController = new TestPreferenceController(mContext, mBackend);
 
         NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
@@ -240,9 +237,6 @@
 
     @Test
     public void testIsChannelBlockable_postMigration_locked_butChannelOff() {
-        Settings.Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         mController = new TestPreferenceController(mContext, mBackend);
 
         NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
@@ -255,9 +249,6 @@
 
     @Test
     public void testIsChannelBlockable_postMigration_locked_butChannelBlockable() {
-        Settings.Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         mController = new TestPreferenceController(mContext, mBackend);
 
         NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
@@ -271,9 +262,6 @@
 
     @Test
     public void testIsChannelGroupBlockable_postMigration_locked() {
-        Settings.Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         mController = new TestPreferenceController(mContext, mBackend);
 
         NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
@@ -285,9 +273,6 @@
 
     @Test
     public void testIsChannelGroupBlockable_postMigration_locked_butChannelGroupOff() {
-        Settings.Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         mController = new TestPreferenceController(mContext, mBackend);
 
         NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
@@ -300,9 +285,6 @@
 
     @Test
     public void testIsAppBlockable_postMigration_locked() {
-        Settings.Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         mController = new TestPreferenceController(mContext, mBackend);
 
         NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
@@ -314,9 +296,6 @@
 
     @Test
     public void testIsAppBlockable_postMigration_locked_butAppOff() {
-        Settings.Secure.putIntForUser(RuntimeEnvironment.application.getContentResolver(),
-                Settings.Secure.NOTIFICATION_PERMISSION_ENABLED, 1, USER_SYSTEM);
-
         mController = new TestPreferenceController(mContext, mBackend);
 
         NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
@@ -327,32 +306,6 @@
     }
 
     @Test
-    public void testIsBlockable_oemAllowlist() {
-        NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
-        NotificationChannel channel = mock(NotificationChannel.class);
-        when(channel.isImportanceLockedByOEM()).thenReturn(true);
-        when(channel.getImportance()).thenReturn(IMPORTANCE_LOW);
-
-        mController.onResume(appRow, channel, null, null, null, null, null);
-        assertFalse(mController.isChannelBlockable());
-
-        when(channel.isImportanceLockedByOEM()).thenReturn(false);
-        mController.onResume(appRow, channel, null, null, null, null, null);
-        assertTrue(mController.isChannelBlockable());
-    }
-
-    @Test
-    public void testIsBlockable_defaultApp() {
-        NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
-        NotificationChannel channel = mock(NotificationChannel.class);
-        when(channel.getImportance()).thenReturn(IMPORTANCE_LOW);
-        when(channel.isImportanceLockedByCriticalDeviceFunction()).thenReturn(true);
-
-        mController.onResume(appRow, channel, null, null, null, null, null);
-        assertFalse(mController.isChannelBlockable());
-    }
-
-    @Test
     public void testIsChannelBlockable_nonSystemAppsBlockable() {
         NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
         appRow.systemApp = false;
@@ -410,30 +363,6 @@
     }
 
     @Test
-    public void testIsChannelBlockable_oemLocked() {
-        NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
-        appRow.systemApp = false;
-        NotificationChannel channel = mock(NotificationChannel.class);
-        when(channel.isImportanceLockedByOEM()).thenReturn(true);
-        when(channel.getImportance()).thenReturn(IMPORTANCE_DEFAULT);
-
-        mController.onResume(appRow, channel, null, null, null, null, null);
-        assertFalse(mController.isChannelBlockable());
-    }
-
-    @Test
-    public void testIsChannelBlockable_criticalDeviceFunction() {
-        NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
-        appRow.systemApp = false;
-        NotificationChannel channel = mock(NotificationChannel.class);
-        when(channel.isImportanceLockedByCriticalDeviceFunction()).thenReturn(true);
-        when(channel.getImportance()).thenReturn(IMPORTANCE_DEFAULT);
-
-        mController.onResume(appRow, channel, null, null, null, null, null);
-        assertFalse(mController.isChannelBlockable());
-    }
-
-    @Test
     public void testIsChannelGroupBlockable_SystemNotBlockable() {
         NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
         appRow.systemApp = true;
