diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index e335d0b..d213ae6 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -2385,10 +2385,10 @@
     <string name="vpn_no_ca_cert" msgid="8776029412793353361">"(ingen bekræftelse af serveren)"</string>
     <string name="vpn_no_server_cert" msgid="2167487440231913330">"(modtaget fra serveren)"</string>
     <string name="vpn_always_on_invalid_reason_type" msgid="7574518311224455825">"Denne VPN-type kan ikke være forbundet hele tiden"</string>
-    <string name="vpn_always_on_invalid_reason_server" msgid="477304620899799383">"Altid aktiveret VPN understøtter kun numeriske serveradresser"</string>
-    <string name="vpn_always_on_invalid_reason_no_dns" msgid="2226648961940273294">"Der skal angives en DNS-server for altid aktiveret VPN"</string>
+    <string name="vpn_always_on_invalid_reason_server" msgid="477304620899799383">"Konstant VPN understøtter kun numeriske serveradresser"</string>
+    <string name="vpn_always_on_invalid_reason_no_dns" msgid="2226648961940273294">"Der skal angives en DNS-server for konstant VPN"</string>
     <string name="vpn_always_on_invalid_reason_dns" msgid="3551394495620249972">"DNS-serveradressen skal være numerisk for altid aktiverede VPN-netværk"</string>
-    <string name="vpn_always_on_invalid_reason_other" msgid="5959352052515258208">"De indtastede oplysninger understøtter ikke altid aktiveret VPN"</string>
+    <string name="vpn_always_on_invalid_reason_other" msgid="5959352052515258208">"De indtastede oplysninger understøtter ikke konstant VPN"</string>
     <string name="vpn_cancel" msgid="1979937976123659332">"Annuller"</string>
     <string name="vpn_done" msgid="8678655203910995914">"Annuller"</string>
     <string name="vpn_save" msgid="4233484051644764510">"Gem"</string>
@@ -2402,19 +2402,19 @@
     <string name="vpn_version" msgid="1939804054179766249">"Version <xliff:g id="VERSION">%s</xliff:g>"</string>
     <string name="vpn_forget_long" msgid="2232239391189465752">"Glem VPN"</string>
     <string name="vpn_replace_vpn_title" msgid="2963898301277610248">"Erstat det eksisterende VPN-netværk?"</string>
-    <string name="vpn_set_vpn_title" msgid="4009987321156037267">"Vil du konfigurere altid aktiveret VPN?"</string>
+    <string name="vpn_set_vpn_title" msgid="4009987321156037267">"Vil du konfigurere konstant VPN?"</string>
     <string name="vpn_first_always_on_vpn_message" msgid="3025322109743675467">"Hvis du aktiverer denne indstilling, vil du ikke have nogen internetforbindelse, før VPN-netværket etablerer forbindelse."</string>
     <string name="vpn_replace_always_on_vpn_enable_message" msgid="2577928591361606641">"Dit eksisterende VPN-netværk erstattes, og du vil ikke have nogen internetforbindelse, før VPN-netværket etablerer forbindelse."</string>
-    <string name="vpn_replace_always_on_vpn_disable_message" msgid="3011818750025879902">"Du har allerede forbindelse til et altid aktiveret VPN-netværk. Hvis du opretter forbindelse til et andet netværk, erstattes dit eksisterende VPN, og Altid aktiveret-tilstanden deaktiveres."</string>
+    <string name="vpn_replace_always_on_vpn_disable_message" msgid="3011818750025879902">"Du har allerede forbindelse til et konstant VPN-netværk. Hvis du opretter forbindelse til et andet netværk, erstattes dit eksisterende VPN, og Altid aktiveret-tilstanden deaktiveres."</string>
     <string name="vpn_replace_vpn_message" msgid="5611635724578812860">"Du har allerede forbindelse til et VPN-netværk. Hvis du opretter forbindelse til et andet, erstattes dit eksisterende VPN."</string>
     <string name="vpn_turn_on" msgid="2363136869284273872">"Aktivér"</string>
     <string name="vpn_cant_connect_title" msgid="4517706987875907511">"<xliff:g id="VPN_NAME">%1$s</xliff:g> kan ikke oprette forbindelse"</string>
-    <string name="vpn_cant_connect_message" msgid="1352832123114214283">"Denne app understøtter ikke altid aktiveret VPN"</string>
+    <string name="vpn_cant_connect_message" msgid="1352832123114214283">"Denne app understøtter ikke konstant VPN"</string>
     <string name="vpn_title" msgid="6317731879966640551">"VPN"</string>
     <string name="vpn_create" msgid="5628219087569761496">"Tilføj VPN-profil"</string>
     <string name="vpn_menu_edit" msgid="408275284159243490">"Rediger profil"</string>
     <string name="vpn_menu_delete" msgid="8098021690546891414">"Slet profil"</string>
-    <string name="vpn_menu_lockdown" msgid="7863024538064268139">"Altid aktiveret VPN"</string>
+    <string name="vpn_menu_lockdown" msgid="7863024538064268139">"Konstant VPN"</string>
     <string name="vpn_no_vpns_added" msgid="5002741367858707244">"Der er ikke tilføjet nogen VPN-netværk"</string>
     <string name="vpn_always_on_summary" msgid="2821344524094363617">"Vær forbundet til VPN hele tiden"</string>
     <string name="vpn_always_on_summary_not_supported" msgid="592304911378771510">"Understøttes ikke af denne app"</string>
@@ -2423,7 +2423,7 @@
     <string name="vpn_require_connection_title" msgid="159053539340576331">"Vil du kræve VPN-forbindelse?"</string>
     <string name="vpn_lockdown_summary" msgid="2200032066376720339">"Vælg en VPN-profil, der altid skal være forbindelse til. Netværkstrafik tillades kun, når der er forbindelse til dette VPN-netværk."</string>
     <string name="vpn_lockdown_none" msgid="9214462857336483711">"Ingen"</string>
-    <string name="vpn_lockdown_config_error" msgid="3898576754914217248">"Et altid aktiveret VPN kræver en IP-adresse til både server og DNS."</string>
+    <string name="vpn_lockdown_config_error" msgid="3898576754914217248">"Et konstant VPN kræver en IP-adresse til både server og DNS."</string>
     <string name="vpn_no_network" msgid="3050233675132726155">"Der er ingen netværksforbindelse. Prøv igen senere."</string>
     <string name="vpn_disconnected" msgid="280531508768927471">"Frakoblet VPN"</string>
     <string name="vpn_disconnected_summary" msgid="3082851661207900606">"Ingen"</string>
@@ -3521,9 +3521,9 @@
     </plurals>
     <string name="enterprise_privacy_input_method" msgid="6531350246850814920">"Standardtastatur"</string>
     <string name="enterprise_privacy_input_method_name" msgid="4941106433683067953">"Indstillet til <xliff:g id="APP_LABEL">%s</xliff:g>"</string>
-    <string name="enterprise_privacy_always_on_vpn_device" msgid="4409098287763221215">"\"Altid aktiveret VPN\" er aktiveret"</string>
-    <string name="enterprise_privacy_always_on_vpn_personal" msgid="9217774730260037434">"\"Altid aktiveret VPN\" er aktiveret på din personlige profil"</string>
-    <string name="enterprise_privacy_always_on_vpn_work" msgid="7244472958208315814">"\"Altid aktiveret VPN\" er aktiveret på din arbejdsprofil"</string>
+    <string name="enterprise_privacy_always_on_vpn_device" msgid="4409098287763221215">"\"Konstant VPN\" er aktiveret"</string>
+    <string name="enterprise_privacy_always_on_vpn_personal" msgid="9217774730260037434">"\"Konstant VPN\" er aktiveret på din personlige profil"</string>
+    <string name="enterprise_privacy_always_on_vpn_work" msgid="7244472958208315814">"\"Konstant VPN\" er aktiveret på din arbejdsprofil"</string>
     <string name="enterprise_privacy_global_http_proxy" msgid="7936664553416257333">"Global HTTP-proxy er konfigureret"</string>
     <string name="enterprise_privacy_ca_certs" msgid="5885892204903688909">"Pålidelige loginoplysninger"</string>
     <plurals name="enterprise_privacy_number_ca_certs" formatted="false" msgid="526375234629534165">
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 82e98ca..f6f2009 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -2552,7 +2552,7 @@
     <string name="nfc_payment_favor_open" msgid="1923314062109977944">"Εκτός εάν είναι ανοικτή μια άλλη εφαρμογή πληρωμής"</string>
     <string name="nfc_payment_pay_with" msgid="7524904024378144072">"Σε τερματικά \"Πατήστε και πληρώστε\", πληρωμή με:"</string>
     <string name="nfc_how_it_works_title" msgid="1984068457698797207">"Πληρωμή στο τερματικό"</string>
-    <string name="nfc_how_it_works_content" msgid="4749007806393224934">"Ρυθμίστε μια εφαρμογή πληρωμής. Στη συνέχεια, ακουμπήστε απλώς το πίσω μέρος του τηλεφώνου σας, σε οποιοδήποτε τερματικό με το σύμβολο ανέπαφης πληρωμής."</string>
+    <string name="nfc_how_it_works_content" msgid="4749007806393224934">"Ρυθμίστε μια εφαρμογή πληρωμής. Στη συνέχεια, ακουμπήστε απλώς το πίσω μέρος του τηλεφώνου σας, σε οποιοδήποτε τερματικό με το σύμβολο ανεπαφικών πληρωμών."</string>
     <string name="nfc_how_it_works_got_it" msgid="259653300203217402">"Το κατάλαβα"</string>
     <string name="nfc_more_title" msgid="815910943655133280">"Περισσότερα…"</string>
     <string name="nfc_payment_set_default_label" msgid="7315817259485674542">"Ορισμός ως προτίμησης;"</string>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index ee808e6..5d12bd2 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -483,20 +483,20 @@
     <string name="unlock_disable_lock_title" msgid="1427036227416979120">"Desakt. pant.-blokeoa"</string>
     <string name="unlock_disable_frp_warning_title" msgid="264008934468492550">"Gailuaren babesa kendu nahi duzu?"</string>
     <string name="unlock_disable_frp_warning_title_profile" msgid="5507136301904313583">"Profilaren babes-sistema kendu nahi duzu?"</string>
-    <string name="unlock_disable_frp_warning_content_pattern" msgid="8869767290771023461">"Eredua behar da gailua babesteko eginbideek funtziona dezaten."</string>
-    <string name="unlock_disable_frp_warning_content_pattern_fingerprint" msgid="8212242533942400457">"Eredua behar da gailua babesteko eginbideek funtziona dezaten.<xliff:g id="EMPTY_LINE">
+    <string name="unlock_disable_frp_warning_content_pattern" msgid="8869767290771023461">"Eredua behar da gailuaren babes-eginbideek funtziona dezaten."</string>
+    <string name="unlock_disable_frp_warning_content_pattern_fingerprint" msgid="8212242533942400457">"Eredua behar da gailuaren babes-eginbideek funtziona dezaten.<xliff:g id="EMPTY_LINE">
 
 </xliff:g>Gordetako hatz-markak ere kenduko dira gailutik eta ezin izango duzu haiek gabe telefonoa desblokeatu, erosketarik baimendu edo aplikazioetan saioa hasi.\""</string>
-    <string name="unlock_disable_frp_warning_content_pin" msgid="586996206210265131">"PIN kodea behar da gailua babesteko eginbideek funtziona dezaten."</string>
-    <string name="unlock_disable_frp_warning_content_pin_fingerprint" msgid="875669051899437197">"PIN kodea behar da gailua babesteko eginbideek funtziona dezaten.<xliff:g id="EMPTY_LINE">
+    <string name="unlock_disable_frp_warning_content_pin" msgid="586996206210265131">"PIN kodea behar da gailuaren babes-eginbideek funtziona dezaten."</string>
+    <string name="unlock_disable_frp_warning_content_pin_fingerprint" msgid="875669051899437197">"PIN kodea behar da gailuaren babes-eginbideek funtziona dezaten.<xliff:g id="EMPTY_LINE">
 
 </xliff:g>Gordetako hatz-markak ere kenduko dira gailutik eta ezin izango duzu haiek gabe telefonoa desblokeatu, erosketarik baimendu edo aplikazioetan saioa hasi.\""</string>
-    <string name="unlock_disable_frp_warning_content_password" msgid="5420612686852555537">"Pasahitza behar da gailua babesteko eginbideek funtziona dezaten."</string>
-    <string name="unlock_disable_frp_warning_content_password_fingerprint" msgid="2228159168587170445">"Pasahitza behar da gailua babesteko eginbideek funtziona dezaten.<xliff:g id="EMPTY_LINE">
+    <string name="unlock_disable_frp_warning_content_password" msgid="5420612686852555537">"Pasahitza behar da gailuaren babes-eginbideek funtziona dezaten."</string>
+    <string name="unlock_disable_frp_warning_content_password_fingerprint" msgid="2228159168587170445">"Pasahitza behar da gailuaren babes-eginbideek funtziona dezaten.<xliff:g id="EMPTY_LINE">
 
 </xliff:g>Gordetako hatz-markak ere kenduko dira gailutik eta ezin izango duzu haiek gabe telefonoa desblokeatu, erosketarik baimendu edo aplikazioetan saioa hasi.\""</string>
-    <string name="unlock_disable_frp_warning_content_unknown" msgid="1550718040483548220">"Pantailaren blokeoa kodea behar da gailua babesteko eginbideek funtziona dezaten."</string>
-    <string name="unlock_disable_frp_warning_content_unknown_fingerprint" msgid="6363091330281670692">"Pantailaren blokeoa behar da gailua babesteko eginbideek funtziona dezaten.<xliff:g id="EMPTY_LINE">
+    <string name="unlock_disable_frp_warning_content_unknown" msgid="1550718040483548220">"Pantailaren blokeoa kodea behar da gailuaren babes-eginbideek funtziona dezaten."</string>
+    <string name="unlock_disable_frp_warning_content_unknown_fingerprint" msgid="6363091330281670692">"Pantailaren blokeoa behar da gailuaren babes-eginbideek funtziona dezaten.<xliff:g id="EMPTY_LINE">
 
 </xliff:g>Gordetako hatz-markak ere kenduko dira gailutik eta ezin izango duzu haiek gabe telefonoa desblokeatu, erosketarik baimendu edo aplikazioetan saioa hasi.\""</string>
     <string name="unlock_disable_frp_warning_content_pattern_profile" msgid="8682200103576359918">"Eredua behar da profila babesteko eginbideek funtziona dezaten."</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 1a3922d..9aa4323 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -3486,7 +3486,7 @@
     <string name="automatic_storage_manager_activation_warning" msgid="6353100011690933254">"Votre espace de stockage est désormais géré par le gestionnaire d\'espace de stockage."</string>
     <string name="account_for_section_header" msgid="5356566418548737121">"Comptes pour <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
     <string name="configure_section_header" msgid="7391183586410814450">"Configurer"</string>
-    <string name="auto_sync_account_title" msgid="898796354710116383">"Synchronisation automatique des données"</string>
+    <string name="auto_sync_account_title" msgid="898796354710116383">"Synchronisation auto. données"</string>
     <string name="auto_sync_personal_account_title" msgid="8496263182646100610">"Synchronisation automatique des données personnelles"</string>
     <string name="auto_sync_work_account_title" msgid="4489172450037434152">"Synchronisation automatique des données professionnelles"</string>
     <string name="auto_sync_account_summary" msgid="692499211629185107">"Autoriser les applications à actualiser les données automatiquement"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index f721093..09edbf8 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -1186,7 +1186,7 @@
     <string name="storage_dialog_unmounted" msgid="6403320870103261477">"<xliff:g id="NAME_0">^1</xliff:g> ini dikeluarkan dengan aman, tetapi masih ada. \n\nUntuk menggunakan <xliff:g id="NAME_1">^1</xliff:g> ini, Anda harus memasangnya terlebih dahulu."</string>
     <string name="storage_dialog_unmountable" msgid="3732209361668282254">"<xliff:g id="NAME_0">^1</xliff:g> ini rusak. \n\nUntuk menggunakan <xliff:g id="NAME_1">^1</xliff:g> ini, Anda harus menyiapkannya terlebih dahulu."</string>
     <string name="storage_dialog_unsupported" msgid="4503128224360482228">"Perangkat ini tidak mendukung <xliff:g id="NAME_0">^1</xliff:g> ini. \n\nUntuk menggunakan <xliff:g id="NAME_1">^1</xliff:g> ini dengan perangkat ini, Anda harus menyiapkannya terlebih dahulu."</string>
-    <string name="storage_internal_format_details" msgid="4018647158382548820">"Setelah memformat, Anda dapat menggunakan <xliff:g id="NAME_0">^1</xliff:g> ini di perangkat lain. \n\nSemua data di <xliff:g id="NAME_1">^1</xliff:g> ini akan dihapus. Pertimbangkan untuk mencadangkan terlebih dahulu. \n\n"<b>"Cadangkan foto &amp; media lain"</b>" \nPindahkan file media ke penyimpanan alternatif di perangkat ini, atau transfer ke komputer menggunakan kabel USB. \n\n"<b>"Cadangkan aplikasi"</b>" \nSemua aplikasi yang disimpan di <xliff:g id="NAME_6">^1</xliff:g> ini akan dicopot pemasangannya dan datanya akan dihapus. Untuk menyimpan aplikasi tersebut, pindahkan ke penyimpanan alternatif di perangkat ini."</string>
+    <string name="storage_internal_format_details" msgid="4018647158382548820">"Setelah memformat, Anda dapat menggunakan <xliff:g id="NAME_0">^1</xliff:g> ini di perangkat lain. \n\nSemua data di <xliff:g id="NAME_1">^1</xliff:g> ini akan dihapus. Pertimbangkan untuk melakukan backup terlebih dahulu. \n\n"<b>"Backup foto &amp; media lain"</b>" \nPindahkan file media ke penyimpanan alternatif di perangkat ini, atau transfer ke komputer menggunakan kabel USB. \n\n"<b>"Backup aplikasi"</b>" \nSemua aplikasi yang disimpan di <xliff:g id="NAME_6">^1</xliff:g> ini akan di-uninstal dan datanya akan dihapus. Untuk menyimpan aplikasi tersebut, pindahkan ke penyimpanan alternatif di perangkat ini."</string>
     <string name="storage_internal_unmount_details" msgid="3582802571684490057"><b>"Saat Anda mengeluarkan <xliff:g id="NAME_0">^1</xliff:g> ini, aplikasi yang tersimpan di situ tidak akan berfungsi lagi, dan file media yang tersimpan di situ baru dapat tersedia jika dicolokkan kembali."</b>" \n\n <xliff:g id="NAME_1">^1</xliff:g> ini diformat untuk berfungsi hanya di perangkat ini dan tidak akan berfungsi di perangkat lain."</string>
     <string name="storage_internal_forget_details" msgid="9028875424669047327">"Untuk menggunakan aplikasi, foto, atau data dalam <xliff:g id="NAME">^1</xliff:g> ini, colokkan kembali. \n\nAtau, Anda dapat memilih untuk melupakan penyimpanan ini jika perangkat tidak tersedia. \n\nJika Anda memilih untuk melupakan, semua data dalam perangkat ini akan hilang selamanya. \n\nNanti Anda dapat memasang ulang aplikasi, tetapi datanya yang disimpan di perangkat ini akan hilang."</string>
     <string name="storage_internal_forget_confirm_title" msgid="1370847944388479245">"Lupakan <xliff:g id="NAME">^1</xliff:g>?"</string>
@@ -2150,7 +2150,7 @@
     <string name="personal_data_section_title" msgid="7815209034443782061">"Data pribadi"</string>
     <string name="backup_data_title" msgid="1239105919852668016">"Cadangkan data saya"</string>
     <string name="backup_data_summary" msgid="708773323451655666">"Mencadangkan data aplikasi, sandi Wi-Fi, dan setelan lainnya ke server Google"</string>
-    <string name="backup_configure_account_title" msgid="3790872965773196615">"Akun cadangan"</string>
+    <string name="backup_configure_account_title" msgid="3790872965773196615">"Akun backup"</string>
     <string name="include_app_data_title" msgid="2829970132260278394">"Sertakan data aplikasi"</string>
     <string name="auto_restore_title" msgid="5397528966329126506">"Pemulihan otomatis"</string>
     <string name="auto_restore_summary" msgid="4235615056371993807">"Memulihkan cadangan setelan dan data ketika memasang ulang apl"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 8cf4fc3..ccc0359 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -1079,8 +1079,8 @@
     <string name="device_status" msgid="607405385799807324">"상태"</string>
     <string name="device_status_summary" product="tablet" msgid="3292717754497039686">"배터리 상태, 네트워크 및 기타 정보"</string>
     <string name="device_status_summary" product="default" msgid="2599162787451519618">"전화번호, 신호 등"</string>
-    <string name="storage_settings" msgid="4211799979832404953">"저장소"</string>
-    <string name="storage_usb_settings" msgid="7293054033137078060">"저장소"</string>
+    <string name="storage_settings" msgid="4211799979832404953">"저장용량"</string>
+    <string name="storage_usb_settings" msgid="7293054033137078060">"저장용량"</string>
     <string name="storage_settings_title" msgid="8746016738388094064">"저장소 설정"</string>
     <string name="storage_settings_summary" product="nosdcard" msgid="3543813623294870759">"USB 저장소를 마운트 해제하고 사용 가능한 저장공간을 봅니다."</string>
     <string name="storage_settings_summary" product="default" msgid="9176693537325988610">"SD 카드 마운트 해제, 사용 가능한 저장공간 보기"</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 2021d94..866ad6d 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -978,7 +978,7 @@
     <string name="auto_brightness_very_high_summary" msgid="4551003097086220709">"耗电量更高"</string>
     <string name="auto_brightness_disclaimer" msgid="871436423746343406">"根据环境光线情况优化亮度。开启此功能后，您仍然可以暂时调整亮度。"</string>
     <string name="night_display_title" msgid="2626451512200357686">"夜间模式"</string>
-    <string name="night_display_text" msgid="1837277457033025056">"夜间模式会将您的屏幕色调调节为琥珀色，让您在光线昏暗的环境下可以更舒适地查看屏幕或阅读文字，并可能有助于您入睡。"</string>
+    <string name="night_display_text" msgid="1837277457033025056">"夜间模式会将您的屏幕色调调为琥珀色，可让您在光线昏暗的环境下更舒适地查看屏幕或阅读文字，并有助您入睡。"</string>
     <string name="night_display_category_schedule" msgid="2044072617637348966">"排定时间"</string>
     <string name="night_display_category_status" msgid="1952928783124400330">"状态"</string>
     <string name="night_display_auto_mode_title" msgid="8046314360381608455">"自动开启"</string>
@@ -1900,7 +1900,7 @@
     <string name="power_usage_summary" msgid="7237084831082848168">"耗电情况"</string>
     <string name="power_usage_not_available" msgid="3109326074656512387">"没有电池使用数据。"</string>
     <string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
-    <string name="power_discharge_remaining" msgid="4925678997049911808">"电池剩余使用时间：<xliff:g id="REMAIN">%1$s</xliff:g>"</string>
+    <string name="power_discharge_remaining" msgid="4925678997049911808">"还可用：<xliff:g id="REMAIN">%1$s</xliff:g>"</string>
     <string name="power_charge_remaining" msgid="6132074970943913135">"充电剩余时间：<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
     <string name="background_activity_title" msgid="8618384801540759730">"后台活动"</string>
     <string name="background_activity_summary" msgid="8140094430510517362">"允许应用在后台运行"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index d04d0bb..169ac8f 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -1755,7 +1755,7 @@
     <string name="accessibility_settings_title" msgid="2130492524656204459">"協助工具設定"</string>
     <string name="accessibility_settings_summary" msgid="981260486011624939">"螢幕閱讀器、顯示、互動控制項"</string>
     <string name="vision_settings_title" msgid="4204111425716868288">"視覺輔助設定"</string>
-    <string name="vision_settings_description" msgid="5679491180156408260">"你可以根據個人需求自訂這個裝置，而你日後可以前往 [設定] 變更這些協助工具功能。"</string>
+    <string name="vision_settings_description" msgid="5679491180156408260">"你可以根據個人需求自訂這個裝置，日後，你可以前往 [設定] 變更這些無障礙功能。"</string>
     <string name="screen_reader_category_title" msgid="7739154903913400641">"螢幕閱讀器"</string>
     <string name="audio_and_captions_category_title" msgid="3420727114421447524">"音訊和畫面上的文字"</string>
     <string name="display_category_title" msgid="685461049938269166">"螢幕"</string>
@@ -1907,7 +1907,7 @@
     <string name="background_activity_summary_on" msgid="649282072540085599">"應用程式不使用時可在背景執行"</string>
     <string name="background_activity_summary_off" msgid="7666330699090632040">"應用程式的背景活動會在不使用時受限"</string>
     <string name="background_activity_summary_disabled" msgid="3710669050484599847">"應用程式無法在背景執行"</string>
-    <string name="device_screen_usage" msgid="3386088035570409683">"上次完全充飽電後的螢幕用電量"</string>
+    <string name="device_screen_usage" msgid="3386088035570409683">"上次完全充飽電後的螢幕使用時間"</string>
     <string name="device_screen_consumption" msgid="4607589286438986687">"螢幕耗電量"</string>
     <string name="device_cellular_network" msgid="4724773411762382950">"行動網路掃描作業"</string>
     <string name="power_last_full_charge_summary" msgid="532845389094620657">"<xliff:g id="TIME">^1</xliff:g>之前"</string>
@@ -1932,7 +1932,7 @@
     <string name="awake" msgid="387122265874485088">"裝置清醒時間"</string>
     <string name="wifi_on_time" msgid="3208518458663637035">"開啟 Wi-Fi 的時間"</string>
     <string name="bluetooth_on_time" msgid="3056108148042308690">"開啟 Wi-Fi 的時間"</string>
-    <string name="advanced_battery_title" msgid="2068039111517508622">"進階電池用量資訊"</string>
+    <string name="advanced_battery_title" msgid="2068039111517508622">"關於電池用量的進階資訊"</string>
     <string name="history_details_title" msgid="3608240585315506067">"詳細記錄"</string>
     <string name="battery_details_title" msgid="6101394441569858580">"電池用量"</string>
     <string name="details_subtitle" msgid="32593908269911734">"使用狀況詳細資訊"</string>
@@ -2026,7 +2026,7 @@
     <string name="process_kernel_label" msgid="3916858646836739323">"Android 作業系統"</string>
     <string name="process_mediaserver_label" msgid="6500382062945689285">"媒體伺服器"</string>
     <string name="process_dex2oat_label" msgid="2592408651060518226">"應用程式最佳化"</string>
-    <string name="battery_saver" msgid="1426682272004907982">"省電模式"</string>
+    <string name="battery_saver" msgid="1426682272004907982">"節約耗電量模式"</string>
     <string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"自動開啟"</string>
     <string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"永遠不要"</string>
     <string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"電量為 <xliff:g id="PERCENT">%1$s</xliff:g> 時"</string>
@@ -3396,7 +3396,7 @@
     <string name="demo_mode" msgid="2798762752209330277">"系統 UI 示範模式"</string>
     <string name="quick_settings_developer_tiles" msgid="5947788063262762448">"快速設定開發人員圖塊"</string>
     <string name="support_escalation_title" msgid="4111071371281023145">"我們很樂意為你提供協助"</string>
-    <string name="support_escalation_24_7_title" msgid="8118369197749832074">"我們隨時可為你提供服務"</string>
+    <string name="support_escalation_24_7_title" msgid="8118369197749832074">"我們隨時為你提供服務"</string>
     <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"我們隨時為你提供服務"</string>
     <string name="support_escalation_summary" msgid="8473084168776014405">"我們的支援小組會協助你解決任何問題"</string>
     <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"我們的支援小組全年無休，隨時為你提供服務"</string>
diff --git a/src/com/android/settings/search2/AppSearchResult.java b/src/com/android/settings/search2/AppSearchResult.java
index 111f775..eeccb82 100644
--- a/src/com/android/settings/search2/AppSearchResult.java
+++ b/src/com/android/settings/search2/AppSearchResult.java
@@ -18,6 +18,7 @@
 package com.android.settings.search2;
 
 import android.content.pm.ApplicationInfo;
+import android.os.UserHandle;
 
 public class AppSearchResult extends SearchResult {
     /**
@@ -30,6 +31,10 @@
         info = builder.mInfo;
     }
 
+    public UserHandle getAppUserHandle() {
+        return new UserHandle(UserHandle.getUserId(info.uid));
+    }
+
     public static class Builder extends SearchResult.Builder {
         protected ApplicationInfo mInfo;
 
diff --git a/src/com/android/settings/search2/IntentSearchViewHolder.java b/src/com/android/settings/search2/IntentSearchViewHolder.java
index f0cbc51..9a7e395 100644
--- a/src/com/android/settings/search2/IntentSearchViewHolder.java
+++ b/src/com/android/settings/search2/IntentSearchViewHolder.java
@@ -17,6 +17,7 @@
 
 import android.content.ComponentName;
 import android.content.Intent;
+import android.os.UserHandle;
 import android.text.TextUtils;
 import android.util.Pair;
 import android.view.View;
@@ -51,7 +52,14 @@
             mMetricsFeatureProvider.action(v.getContext(),
                     MetricsEvent.ACTION_CLICK_SETTINGS_SEARCH_RESULT,
                     resultName, rank);
-            fragment.startActivity(intent);
+            // Use app user id to support work profile use case.
+            if (result instanceof AppSearchResult) {
+                AppSearchResult appResult = (AppSearchResult) result;
+                UserHandle userHandle = appResult.getAppUserHandle();
+                fragment.getActivity().startActivityAsUser(intent, userHandle);
+            } else {
+                fragment.startActivity(intent);
+            }
         });
     }
 }
diff --git a/src/com/android/settings/search2/SearchViewHolder.java b/src/com/android/settings/search2/SearchViewHolder.java
index ab13252..185a5fe 100644
--- a/src/com/android/settings/search2/SearchViewHolder.java
+++ b/src/com/android/settings/search2/SearchViewHolder.java
@@ -17,8 +17,11 @@
 
 import android.content.Context;
 import android.content.pm.PackageManager;
+import android.graphics.drawable.Drawable;
+import android.os.UserHandle;
 import android.support.v7.widget.RecyclerView;
 import android.text.TextUtils;
+import android.util.IconDrawableFactory;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
@@ -44,6 +47,7 @@
     public final ImageView iconView;
 
     protected final MetricsFeatureProvider mMetricsFeatureProvider;
+    private final IconDrawableFactory mIconDrawableFactory;
 
     public SearchViewHolder(View view) {
         super(view);
@@ -55,6 +59,7 @@
         breadcrumbView = view.findViewById(R.id.breadcrumb);
 
         mPlaceholderSummary = view.getContext().getString(R.string.summary_placeholder);
+        mIconDrawableFactory = IconDrawableFactory.newInstance(view.getContext());
     }
 
     public void onBind(SearchFragment fragment, SearchResult result) {
@@ -72,7 +77,12 @@
         if (result instanceof AppSearchResult) {
             AppSearchResult appResult = (AppSearchResult) result;
             PackageManager pm = fragment.getActivity().getPackageManager();
-            iconView.setImageDrawable(appResult.info.loadIcon(pm));
+            UserHandle userHandle = appResult.getAppUserHandle();
+            Drawable badgedIcon =
+                    mIconDrawableFactory.getBadgedIcon(appResult.info, userHandle.getIdentifier());
+            iconView.setImageDrawable(badgedIcon);
+            titleView.setContentDescription(
+                    pm.getUserBadgedLabel(appResult.info.loadLabel(pm), userHandle));
         } else {
             // Valid even when result.icon is null.
             iconView.setImageDrawable(result.icon);
diff --git a/tests/robotests/src/com/android/settings/search/IntentSearchViewHolderTest.java b/tests/robotests/src/com/android/settings/search/IntentSearchViewHolderTest.java
index 404a824..39da718 100644
--- a/tests/robotests/src/com/android/settings/search/IntentSearchViewHolderTest.java
+++ b/tests/robotests/src/com/android/settings/search/IntentSearchViewHolderTest.java
@@ -17,10 +17,22 @@
 
 package com.android.settings.search;
 
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.Intent;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
 import android.graphics.drawable.Drawable;
+import android.os.UserHandle;
 import android.util.Pair;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -29,6 +41,7 @@
 import com.android.settings.R;
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
+import com.android.settings.search2.AppSearchResult;
 import com.android.settings.search2.IntentPayload;
 import com.android.settings.search2.IntentSearchViewHolder;
 import com.android.settings.search2.SearchFragment;
@@ -48,25 +61,25 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.verify;
-
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class IntentSearchViewHolderTest {
 
     private static final String TITLE = "title";
     private static final String SUMMARY = "summary";
+    private static final int USER_ID = 10;
+    private static final String BADGED_LABEL = "work title";
 
     @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private Context mContext;
-    @Mock
+    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private SearchFragment mFragment;
+    @Mock
+    private PackageManager mPackageManager;
     private FakeFeatureFactory mFeatureFactory;
     private IntentSearchViewHolder mHolder;
     private Drawable mIcon;
+    private Drawable mBadgedIcon;
 
     @Before
     public void setUp() {
@@ -79,6 +92,8 @@
         mHolder = new IntentSearchViewHolder(view);
 
         mIcon = context.getDrawable(R.drawable.ic_search_history);
+        mBadgedIcon = context.getDrawable(R.drawable.ic_add);
+        when(mFragment.getActivity().getPackageManager()).thenReturn(mPackageManager);
     }
 
     @Test
@@ -177,6 +192,30 @@
         assertThat(mHolder.summaryView.getVisibility()).isEqualTo(View.GONE);
     }
 
+    public void testBindViewElements_appSearchResult() {
+        when(mPackageManager.getUserBadgedLabel(any(CharSequence.class),
+                eq(new UserHandle(USER_ID)))).thenReturn(BADGED_LABEL);
+
+        SearchResult result = getAppSearchResult(
+                TITLE, SUMMARY, mIcon, getApplicationInfo(USER_ID, TITLE, mIcon));
+        mHolder.onBind(mFragment, result);
+        mHolder.itemView.performClick();
+
+        assertThat(mHolder.titleView.getText()).isEqualTo(TITLE);
+        assertThat(mHolder.summaryView.getText()).isEqualTo(SUMMARY);
+        assertThat(mHolder.summaryView.getVisibility()).isEqualTo(View.VISIBLE);
+        assertThat(mHolder.breadcrumbView.getVisibility()).isEqualTo(View.GONE);
+        assertThat(mHolder.titleView.getContentDescription()).isEqualTo(BADGED_LABEL);
+
+        verify(mFragment).onSearchResultClicked();
+        verify(mFragment.getActivity()).startActivityAsUser(
+                any(Intent.class), eq(new UserHandle(USER_ID)));
+        verify(mFeatureFactory.metricsFeatureProvider).action(any(Context.class),
+                eq(MetricsProto.MetricsEvent.ACTION_CLICK_SETTINGS_SEARCH_RESULT),
+                eq(((IntentPayload)result.payload).intent.getComponent().flattenToString()),
+                any(Pair.class));
+    }
+
     private SearchResult getSearchResult(String title, String summary, Drawable icon) {
         Builder builder = new Builder();
         builder.addTitle(title)
@@ -189,4 +228,26 @@
 
         return builder.build();
     }
+
+    private SearchResult getAppSearchResult(
+            String title, String summary, Drawable icon, ApplicationInfo applicationInfo) {
+        AppSearchResult.Builder builder = new AppSearchResult.Builder();
+        builder.addTitle(title)
+                .addSummary(summary)
+                .addRank(1)
+                .addPayload(new IntentPayload(
+                        new Intent().setComponent(new ComponentName("pkg", "class"))))
+                .addBreadcrumbs(new ArrayList<>())
+                .addIcon(icon);
+        builder.setAppInfo(applicationInfo);
+        return builder.build();
+    }
+
+    private ApplicationInfo getApplicationInfo(int userId, CharSequence appLabel, Drawable icon) {
+        ApplicationInfo applicationInfo = spy(new ApplicationInfo());
+        applicationInfo.uid = UserHandle.getUid(userId, 12345);
+        doReturn(icon).when(applicationInfo).loadIcon(any(PackageManager.class));
+        doReturn(appLabel).when(applicationInfo).loadLabel(any(PackageManager.class));
+        return applicationInfo;
+    }
 }
