summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShimPriv_apk.asciipb4
-rw-r--r--.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShim_apk.asciipb4
-rw-r--r--.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShimPriv_apk.asciipb4
-rw-r--r--.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShim_apk.asciipb4
-rw-r--r--Android.bp11
-rw-r--r--ApiDocs.bp10
-rw-r--r--StubLibraries.bp1
-rw-r--r--apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java9
-rw-r--r--cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java2
-rw-r--r--cmds/bu/src/com/android/commands/bu/Backup.java3
-rw-r--r--core/java/Android.bp5
-rw-r--r--core/java/android/app/AppOpsManager.java24
-rw-r--r--core/java/android/app/IBackupAgent.aidl6
-rw-r--r--core/java/android/app/IWallpaperManager.aidl14
-rw-r--r--core/java/android/app/LocaleConfig.java2
-rw-r--r--core/java/android/app/LocaleManager.java11
-rw-r--r--core/java/android/app/ProcessMemoryState.java120
-rw-r--r--core/java/android/app/admin/DevicePolicyResources.java13
-rw-r--r--core/java/android/app/backup/BackupAgent.java6
-rw-r--r--core/java/android/app/backup/BackupManagerMonitor.java8
-rw-r--r--core/java/android/app/trust/ITrustListener.aidl1
-rw-r--r--core/java/android/app/trust/ITrustManager.aidl1
-rw-r--r--core/java/android/app/trust/TrustManager.java29
-rw-r--r--core/java/android/credentials/ui/RequestInfo.java15
-rw-r--r--core/java/android/hardware/CameraSessionStats.java12
-rw-r--r--core/java/android/hardware/biometrics/IBiometricService.aidl3
-rw-r--r--core/java/android/hardware/camera2/impl/CameraDeviceImpl.java6
-rw-r--r--core/java/android/os/CancellationSignalBeamer.java14
-rw-r--r--core/java/android/os/IPowerManager.aidl1
-rw-r--r--core/java/android/os/PowerManager.java24
-rw-r--r--core/java/android/provider/Settings.java8
-rw-r--r--core/java/android/view/InsetsSource.java11
-rw-r--r--core/java/android/view/TextureView.java4
-rw-r--r--core/java/android/view/View.java2
-rw-r--r--core/java/android/view/ViewRootImpl.java59
-rw-r--r--core/java/android/view/autofill/AutofillManager.java2
-rw-r--r--core/java/android/view/inputmethod/CancellableHandwritingGesture.java17
-rw-r--r--core/java/com/android/internal/app/AppLocaleCollector.java61
-rw-r--r--core/java/com/android/internal/app/HeavyWeightSwitcherActivity.java8
-rw-r--r--core/java/com/android/internal/app/LocalePickerWithRegion.java4
-rw-r--r--core/java/com/android/internal/app/LocaleStore.java154
-rw-r--r--core/res/AndroidManifest.xml3
-rw-r--r--core/res/res/values-af/strings.xml8
-rw-r--r--core/res/res/values-am/strings.xml8
-rw-r--r--core/res/res/values-ar/strings.xml14
-rw-r--r--core/res/res/values-as/strings.xml8
-rw-r--r--core/res/res/values-az/strings.xml8
-rw-r--r--core/res/res/values-b+sr+Latn/strings.xml12
-rw-r--r--core/res/res/values-be/strings.xml8
-rw-r--r--core/res/res/values-bg/strings.xml10
-rw-r--r--core/res/res/values-bn/strings.xml22
-rw-r--r--core/res/res/values-bs/strings.xml12
-rw-r--r--core/res/res/values-ca/strings.xml14
-rw-r--r--core/res/res/values-cs/strings.xml10
-rw-r--r--core/res/res/values-da/strings.xml10
-rw-r--r--core/res/res/values-de/strings.xml10
-rw-r--r--core/res/res/values-el/strings.xml10
-rw-r--r--core/res/res/values-en-rAU/strings.xml8
-rw-r--r--core/res/res/values-en-rCA/strings.xml5
-rw-r--r--core/res/res/values-en-rGB/strings.xml8
-rw-r--r--core/res/res/values-en-rIN/strings.xml8
-rw-r--r--core/res/res/values-en-rXC/strings.xml5
-rw-r--r--core/res/res/values-es-rUS/strings.xml12
-rw-r--r--core/res/res/values-es/strings.xml10
-rw-r--r--core/res/res/values-et/strings.xml12
-rw-r--r--core/res/res/values-eu/strings.xml12
-rw-r--r--core/res/res/values-fa/strings.xml18
-rw-r--r--core/res/res/values-fi/strings.xml10
-rw-r--r--core/res/res/values-fr-rCA/strings.xml14
-rw-r--r--core/res/res/values-fr/strings.xml14
-rw-r--r--core/res/res/values-gl/strings.xml12
-rw-r--r--core/res/res/values-gu/strings.xml8
-rw-r--r--core/res/res/values-hi/strings.xml8
-rw-r--r--core/res/res/values-hr/strings.xml14
-rw-r--r--core/res/res/values-hu/strings.xml8
-rw-r--r--core/res/res/values-hy/strings.xml16
-rw-r--r--core/res/res/values-in/strings.xml10
-rw-r--r--core/res/res/values-is/strings.xml12
-rw-r--r--core/res/res/values-it/strings.xml14
-rw-r--r--core/res/res/values-iw/strings.xml12
-rw-r--r--core/res/res/values-ja/strings.xml8
-rw-r--r--core/res/res/values-ka/strings.xml8
-rw-r--r--core/res/res/values-kk/strings.xml10
-rw-r--r--core/res/res/values-km/strings.xml8
-rw-r--r--core/res/res/values-kn/strings.xml16
-rw-r--r--core/res/res/values-ko/strings.xml8
-rw-r--r--core/res/res/values-ky/strings.xml20
-rw-r--r--core/res/res/values-lo/strings.xml8
-rw-r--r--core/res/res/values-lt/strings.xml8
-rw-r--r--core/res/res/values-lv/strings.xml8
-rw-r--r--core/res/res/values-mcc310-mnc030-my/strings.xml4
-rw-r--r--core/res/res/values-mcc310-mnc170-my/strings.xml4
-rw-r--r--core/res/res/values-mcc310-mnc280-my/strings.xml4
-rw-r--r--core/res/res/values-mcc310-mnc380-my/strings.xml4
-rw-r--r--core/res/res/values-mcc310-mnc410-my/strings.xml4
-rw-r--r--core/res/res/values-mcc310-mnc560-my/strings.xml4
-rw-r--r--core/res/res/values-mcc310-mnc950-my/strings.xml4
-rw-r--r--core/res/res/values-mcc310/config.xml3
-rw-r--r--core/res/res/values-mcc311-mnc180-my/strings.xml4
-rw-r--r--core/res/res/values-mcc311/config.xml3
-rw-r--r--core/res/res/values-mcc312/config.xml3
-rw-r--r--core/res/res/values-mcc313/config.xml3
-rw-r--r--core/res/res/values-mcc314/config.xml3
-rw-r--r--core/res/res/values-mcc315/config.xml3
-rw-r--r--core/res/res/values-mcc316/config.xml3
-rw-r--r--core/res/res/values-mk/strings.xml10
-rw-r--r--core/res/res/values-ml/strings.xml10
-rw-r--r--core/res/res/values-mn/strings.xml8
-rw-r--r--core/res/res/values-mr/strings.xml14
-rw-r--r--core/res/res/values-ms/strings.xml8
-rw-r--r--core/res/res/values-my/strings.xml52
-rw-r--r--core/res/res/values-nb/strings.xml8
-rw-r--r--core/res/res/values-ne/strings.xml12
-rw-r--r--core/res/res/values-nl/strings.xml10
-rw-r--r--core/res/res/values-or/strings.xml20
-rw-r--r--core/res/res/values-pa/strings.xml8
-rw-r--r--core/res/res/values-pl/strings.xml10
-rw-r--r--core/res/res/values-pt-rBR/strings.xml12
-rw-r--r--core/res/res/values-pt-rPT/strings.xml10
-rw-r--r--core/res/res/values-pt/strings.xml12
-rw-r--r--core/res/res/values-ro/strings.xml8
-rw-r--r--core/res/res/values-ru/strings.xml10
-rw-r--r--core/res/res/values-si/strings.xml8
-rw-r--r--core/res/res/values-sk/strings.xml14
-rw-r--r--core/res/res/values-sl/strings.xml10
-rw-r--r--core/res/res/values-sq/strings.xml12
-rw-r--r--core/res/res/values-sr/strings.xml12
-rw-r--r--core/res/res/values-sv/strings.xml10
-rw-r--r--core/res/res/values-sw/strings.xml10
-rw-r--r--core/res/res/values-ta/strings.xml8
-rw-r--r--core/res/res/values-te/strings.xml12
-rw-r--r--core/res/res/values-th/strings.xml10
-rw-r--r--core/res/res/values-tl/strings.xml8
-rw-r--r--core/res/res/values-tr/strings.xml10
-rw-r--r--core/res/res/values-uk/strings.xml8
-rw-r--r--core/res/res/values-ur/strings.xml8
-rw-r--r--core/res/res/values-uz/strings.xml10
-rw-r--r--core/res/res/values-vi/strings.xml10
-rw-r--r--core/res/res/values-zh-rCN/strings.xml8
-rw-r--r--core/res/res/values-zh-rHK/strings.xml8
-rw-r--r--core/res/res/values-zh-rTW/strings.xml12
-rw-r--r--core/res/res/values-zu/strings.xml8
-rw-r--r--core/res/res/values/config.xml17
-rw-r--r--core/res/res/values/strings.xml15
-rw-r--r--core/tests/coretests/Android.bp1
-rw-r--r--core/tests/coretests/AndroidTest.xml7
-rw-r--r--core/tests/coretests/src/android/view/inputmethod/InsertModeGestureTest.java12
-rw-r--r--graphics/java/android/graphics/RenderNode.java13
-rw-r--r--libs/WindowManager/Jetpack/src/androidx/window/extensions/area/RearDisplayPresentationController.java36
-rw-r--r--libs/WindowManager/Jetpack/src/androidx/window/extensions/area/RearDisplayPresentationRequestCallback.java115
-rw-r--r--libs/WindowManager/Jetpack/src/androidx/window/extensions/area/WindowAreaComponentImpl.java6
-rw-r--r--libs/WindowManager/Jetpack/src/androidx/window/extensions/layout/WindowLayoutComponentImpl.java11
-rw-r--r--libs/WindowManager/Shell/res/drawable/letterbox_education_dialog_background.xml3
-rw-r--r--libs/WindowManager/Shell/res/drawable/letterbox_education_dismiss_button_background_ripple.xml3
-rw-r--r--libs/WindowManager/Shell/res/drawable/letterbox_education_ic_light_bulb.xml3
-rw-r--r--libs/WindowManager/Shell/res/layout/letterbox_education_dialog_action_layout.xml3
-rw-r--r--libs/WindowManager/Shell/res/layout/letterbox_education_dialog_layout.xml5
-rw-r--r--libs/WindowManager/Shell/res/values-cs/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values-hr/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values-is/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values-ja/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values-kk/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values-mk/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values-or/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values-ro/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values-ta/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values-vi/strings.xml2
-rw-r--r--libs/WindowManager/Shell/res/values/colors.xml1
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimation.java5
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java6
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/DismissView.kt1
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/compatui/CompatUIController.java18
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/compatui/LetterboxEduWindowManager.java7
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java3
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositioner.java5
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositioner.java5
-rw-r--r--libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/pip/ClosePipBySwipingDownTest.kt10
-rw-r--r--libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduWindowManagerTest.java21
-rw-r--r--libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositionerTest.kt49
-rw-r--r--libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositionerTest.kt49
-rw-r--r--libs/hwui/RenderNode.cpp3
-rw-r--r--libs/hwui/RenderNode.h4
-rw-r--r--libs/hwui/TreeInfo.h4
-rw-r--r--libs/hwui/jni/android_graphics_RenderNode.cpp6
-rw-r--r--libs/hwui/renderthread/CanvasContext.cpp7
-rw-r--r--libs/hwui/renderthread/CanvasContext.h2
-rw-r--r--libs/hwui/renderthread/DrawFrameTask.cpp5
-rw-r--r--libs/hwui/renderthread/RenderThread.cpp19
-rw-r--r--mime/java/Android.bp5
-rw-r--r--packages/CompanionDeviceManager/res/values-am/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-ar/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-az/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-be/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-bn/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-bs/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-ca/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-cs/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-da/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-de/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-el/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-es-rUS/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-es/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-eu/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-fa/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-fi/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml9
-rw-r--r--packages/CompanionDeviceManager/res/values-fr/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-gl/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-gu/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-hr/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-hu/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-hy/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-in/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-is/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-iw/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-kk/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-kn/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-ko/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-ky/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-lo/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-lt/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-lv/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-mk/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-mn/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-mr/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-ms/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-nb/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-nl/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-pl/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-pt/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-ru/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-si/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-sk/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-sl/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-sr/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-sw/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-ta/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-te/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-tr/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-uk/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-ur/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-vi/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-zh-rCN/strings.xml6
-rw-r--r--packages/CompanionDeviceManager/res/values-zu/strings.xml6
-rw-r--r--packages/CredentialManager/res/values-af/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-am/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ar/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-as/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-az/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-b+sr+Latn/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-be/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-bg/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-bn/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-bs/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ca/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-cs/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-da/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-de/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-el/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-en-rAU/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-en-rCA/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-en-rGB/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-en-rIN/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-en-rXC/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-es-rUS/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-es/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-et/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-eu/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-fa/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-fi/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-fr-rCA/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-fr/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-gl/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-gu/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-hi/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-hr/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-hu/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-hy/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-in/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-is/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-it/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-iw/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ja/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ka/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-kk/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-km/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-kn/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ko/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ky/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-lo/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-lt/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-lv/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-mk/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ml/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-mn/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-mr/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ms/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-my/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-nb/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ne/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-nl/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-or/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-pa/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-pl/strings.xml38
-rw-r--r--packages/CredentialManager/res/values-pt-rBR/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-pt-rPT/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-pt/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ro/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ru/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-si/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-sk/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-sl/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-sq/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-sr/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-sv/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-sw/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ta/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-te/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-th/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-tl/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-tr/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-uk/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-ur/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-uz/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-vi/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-zh-rCN/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-zh-rHK/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-zh-rTW/strings.xml16
-rw-r--r--packages/CredentialManager/res/values-zu/strings.xml16
-rw-r--r--packages/CredentialManager/src/com/android/credentialmanager/createflow/CreateCredentialComponents.kt14
-rw-r--r--packages/CredentialManager/src/com/android/credentialmanager/getflow/GetCredentialComponents.kt14
-rw-r--r--packages/CtsShim/apk/arm/CtsShim.apkbin8542 -> 8542 bytes
-rw-r--r--packages/CtsShim/apk/arm/CtsShimPriv.apkbin34946 -> 157818 bytes
-rw-r--r--packages/CtsShim/apk/x86/CtsShim.apkbin8542 -> 8542 bytes
-rw-r--r--packages/CtsShim/apk/x86/CtsShimPriv.apkbin26566 -> 26566 bytes
-rw-r--r--packages/InputDevices/res/values-es/strings.xml2
-rw-r--r--packages/PackageInstaller/res/values-uk/strings.xml2
-rw-r--r--packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java118
-rw-r--r--packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java110
-rw-r--r--packages/PackageInstaller/src/com/android/packageinstaller/PackageUtil.java38
-rw-r--r--packages/SettingsLib/Spa/spa/build.gradle2
-rw-r--r--packages/SettingsLib/res/values-af/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-am/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ar/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-as/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-az/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-b+sr+Latn/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-be/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-bg/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-bn/strings.xml13
-rw-r--r--packages/SettingsLib/res/values-bs/strings.xml7
-rw-r--r--packages/SettingsLib/res/values-ca/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-cs/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-da/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-de/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-el/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-en-rAU/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-en-rCA/strings.xml2
-rw-r--r--packages/SettingsLib/res/values-en-rGB/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-en-rIN/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-en-rXC/strings.xml2
-rw-r--r--packages/SettingsLib/res/values-es-rUS/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-es/strings.xml7
-rw-r--r--packages/SettingsLib/res/values-et/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-eu/strings.xml7
-rw-r--r--packages/SettingsLib/res/values-fa/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-fi/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-fr-rCA/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-fr/strings.xml5
-rw-r--r--packages/SettingsLib/res/values-gl/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-gu/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-hi/strings.xml5
-rw-r--r--packages/SettingsLib/res/values-hr/strings.xml7
-rw-r--r--packages/SettingsLib/res/values-hu/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-hy/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-in/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-is/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-it/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-iw/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ja/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ka/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-kk/strings.xml9
-rw-r--r--packages/SettingsLib/res/values-km/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-kn/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ko/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ky/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-lo/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-lt/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-lv/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-mk/arrays.xml4
-rw-r--r--packages/SettingsLib/res/values-mk/strings.xml31
-rw-r--r--packages/SettingsLib/res/values-ml/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-mn/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-mr/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ms/strings.xml5
-rw-r--r--packages/SettingsLib/res/values-my/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-nb/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ne/strings.xml5
-rw-r--r--packages/SettingsLib/res/values-nl/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-or/strings.xml23
-rw-r--r--packages/SettingsLib/res/values-pa/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-pl/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-pt-rBR/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-pt-rPT/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-pt/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ro/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ru/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-si/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-sk/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-sl/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-sq/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-sr/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-sv/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-sw/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ta/strings.xml7
-rw-r--r--packages/SettingsLib/res/values-te/strings.xml5
-rw-r--r--packages/SettingsLib/res/values-th/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-tl/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-tr/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-uk/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-ur/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-uz/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-vi/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-zh-rCN/strings.xml9
-rw-r--r--packages/SettingsLib/res/values-zh-rHK/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-zh-rTW/strings.xml3
-rw-r--r--packages/SettingsLib/res/values-zu/strings.xml3
-rw-r--r--packages/SettingsLib/res/values/strings.xml5
-rw-r--r--packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java1
-rw-r--r--packages/SoundPicker/res/values-or/strings.xml2
-rw-r--r--packages/SystemUI/AndroidManifest.xml19
-rw-r--r--packages/SystemUI/log/src/com/android/systemui/log/LogMessage.kt2
-rw-r--r--packages/SystemUI/res-keyguard/values-in/strings.xml2
-rw-r--r--packages/SystemUI/res-keyguard/values-kn/strings.xml2
-rw-r--r--packages/SystemUI/res-keyguard/values-ky/strings.xml2
-rw-r--r--packages/SystemUI/res-keyguard/values-lt/strings.xml2
-rw-r--r--packages/SystemUI/res-keyguard/values-mr/strings.xml2
-rw-r--r--packages/SystemUI/res-keyguard/values-my/strings.xml24
-rw-r--r--packages/SystemUI/res-keyguard/values-or/strings.xml6
-rw-r--r--packages/SystemUI/res-keyguard/values-te/strings.xml2
-rw-r--r--packages/SystemUI/res-product/values-my/strings.xml2
-rw-r--r--packages/SystemUI/res/values-af/strings.xml2
-rw-r--r--packages/SystemUI/res/values-am/strings.xml16
-rw-r--r--packages/SystemUI/res/values-ar/strings.xml20
-rw-r--r--packages/SystemUI/res/values-as/strings.xml6
-rw-r--r--packages/SystemUI/res/values-az/strings.xml16
-rw-r--r--packages/SystemUI/res/values-b+sr+Latn/strings.xml16
-rw-r--r--packages/SystemUI/res/values-be/strings.xml20
-rw-r--r--packages/SystemUI/res/values-bg/strings.xml10
-rw-r--r--packages/SystemUI/res/values-bn/strings.xml10
-rw-r--r--packages/SystemUI/res/values-bs/strings.xml20
-rw-r--r--packages/SystemUI/res/values-ca/strings.xml16
-rw-r--r--packages/SystemUI/res/values-cs/strings.xml18
-rw-r--r--packages/SystemUI/res/values-da/strings.xml16
-rw-r--r--packages/SystemUI/res/values-de/strings.xml16
-rw-r--r--packages/SystemUI/res/values-el/strings.xml10
-rw-r--r--packages/SystemUI/res/values-en-rAU/strings.xml8
-rw-r--r--packages/SystemUI/res/values-en-rCA/strings.xml2
-rw-r--r--packages/SystemUI/res/values-en-rGB/strings.xml8
-rw-r--r--packages/SystemUI/res/values-en-rIN/strings.xml8
-rw-r--r--packages/SystemUI/res/values-en-rXC/strings.xml2
-rw-r--r--packages/SystemUI/res/values-es-rUS/strings.xml16
-rw-r--r--packages/SystemUI/res/values-es/strings.xml18
-rw-r--r--packages/SystemUI/res/values-et/strings.xml8
-rw-r--r--packages/SystemUI/res/values-eu/strings.xml10
-rw-r--r--packages/SystemUI/res/values-fa/strings.xml10
-rw-r--r--packages/SystemUI/res/values-fi/strings.xml16
-rw-r--r--packages/SystemUI/res/values-fr-rCA/strings.xml16
-rw-r--r--packages/SystemUI/res/values-fr/strings.xml90
-rw-r--r--packages/SystemUI/res/values-gl/strings.xml16
-rw-r--r--packages/SystemUI/res/values-gu/strings.xml10
-rw-r--r--packages/SystemUI/res/values-hi/strings.xml2
-rw-r--r--packages/SystemUI/res/values-hr/strings.xml12
-rw-r--r--packages/SystemUI/res/values-hu/strings.xml16
-rw-r--r--packages/SystemUI/res/values-hy/strings.xml16
-rw-r--r--packages/SystemUI/res/values-in/strings.xml16
-rw-r--r--packages/SystemUI/res/values-is/strings.xml16
-rw-r--r--packages/SystemUI/res/values-it/strings.xml4
-rw-r--r--packages/SystemUI/res/values-iw/strings.xml2
-rw-r--r--packages/SystemUI/res/values-ja/strings.xml4
-rw-r--r--packages/SystemUI/res/values-ka/strings.xml2
-rw-r--r--packages/SystemUI/res/values-kk/strings.xml20
-rw-r--r--packages/SystemUI/res/values-km/strings.xml2
-rw-r--r--packages/SystemUI/res/values-kn/strings.xml12
-rw-r--r--packages/SystemUI/res/values-ko/strings.xml16
-rw-r--r--packages/SystemUI/res/values-ky/strings.xml48
-rw-r--r--packages/SystemUI/res/values-lo/strings.xml10
-rw-r--r--packages/SystemUI/res/values-lt/strings.xml16
-rw-r--r--packages/SystemUI/res/values-lv/strings.xml16
-rw-r--r--packages/SystemUI/res/values-mk/strings.xml20
-rw-r--r--packages/SystemUI/res/values-ml/strings.xml4
-rw-r--r--packages/SystemUI/res/values-mn/strings.xml18
-rw-r--r--packages/SystemUI/res/values-mr/strings.xml10
-rw-r--r--packages/SystemUI/res/values-ms/strings.xml8
-rw-r--r--packages/SystemUI/res/values-my/strings.xml4
-rw-r--r--packages/SystemUI/res/values-nb/strings.xml16
-rw-r--r--packages/SystemUI/res/values-ne/strings.xml10
-rw-r--r--packages/SystemUI/res/values-nl/strings.xml14
-rw-r--r--packages/SystemUI/res/values-or/strings.xml32
-rw-r--r--packages/SystemUI/res/values-pa/strings.xml10
-rw-r--r--packages/SystemUI/res/values-pl/strings.xml16
-rw-r--r--packages/SystemUI/res/values-pl/tiles_states_strings.xml2
-rw-r--r--packages/SystemUI/res/values-pt-rBR/strings.xml14
-rw-r--r--packages/SystemUI/res/values-pt-rPT/strings.xml4
-rw-r--r--packages/SystemUI/res/values-pt/strings.xml14
-rw-r--r--packages/SystemUI/res/values-ro/strings.xml8
-rw-r--r--packages/SystemUI/res/values-ru/strings.xml16
-rw-r--r--packages/SystemUI/res/values-si/strings.xml16
-rw-r--r--packages/SystemUI/res/values-sk/strings.xml18
-rw-r--r--packages/SystemUI/res/values-sl/strings.xml14
-rw-r--r--packages/SystemUI/res/values-sq/strings.xml2
-rw-r--r--packages/SystemUI/res/values-sr/strings.xml16
-rw-r--r--packages/SystemUI/res/values-sv/strings.xml4
-rw-r--r--packages/SystemUI/res/values-sw/strings.xml2
-rw-r--r--packages/SystemUI/res/values-ta/strings.xml18
-rw-r--r--packages/SystemUI/res/values-te/strings.xml10
-rw-r--r--packages/SystemUI/res/values-th/strings.xml14
-rw-r--r--packages/SystemUI/res/values-tl/strings.xml2
-rw-r--r--packages/SystemUI/res/values-tr/strings.xml16
-rw-r--r--packages/SystemUI/res/values-uk/strings.xml18
-rw-r--r--packages/SystemUI/res/values-ur/strings.xml16
-rw-r--r--packages/SystemUI/res/values-uz/strings.xml10
-rw-r--r--packages/SystemUI/res/values-vi/strings.xml18
-rw-r--r--packages/SystemUI/res/values-zh-rCN/strings.xml14
-rw-r--r--packages/SystemUI/res/values-zh-rHK/strings.xml10
-rw-r--r--packages/SystemUI/res/values-zh-rTW/strings.xml4
-rw-r--r--packages/SystemUI/res/values-zu/strings.xml8
-rw-r--r--packages/SystemUI/res/values/strings.xml12
-rw-r--r--packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java4
-rw-r--r--packages/SystemUI/src/com/android/systemui/biometrics/BiometricDisplayListener.kt13
-rw-r--r--packages/SystemUI/src/com/android/systemui/controls/ui/ControlsActivity.kt11
-rw-r--r--packages/SystemUI/src/com/android/systemui/dump/LogBufferEulogizer.kt2
-rw-r--r--packages/SystemUI/src/com/android/systemui/flags/Flags.kt5
-rw-r--r--packages/SystemUI/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractor.kt4
-rw-r--r--packages/SystemUI/src/com/android/systemui/keyboard/data/model/Keyboard.kt20
-rw-r--r--packages/SystemUI/src/com/android/systemui/keyboard/data/repository/KeyboardRepository.kt76
-rw-r--r--packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt73
-rw-r--r--packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java20
-rw-r--r--packages/SystemUI/src/com/android/systemui/keyguard/data/repository/TrustRepository.kt5
-rw-r--r--packages/SystemUI/src/com/android/systemui/log/table/TableLogBuffer.kt2
-rw-r--r--packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java5
-rw-r--r--packages/SystemUI/src/com/android/systemui/notetask/NoteTaskController.kt18
-rw-r--r--packages/SystemUI/src/com/android/systemui/notetask/NoteTaskModule.kt4
-rw-r--r--packages/SystemUI/src/com/android/systemui/notetask/shortcut/CreateNoteTaskShortcutActivity.kt55
-rw-r--r--packages/SystemUI/src/com/android/systemui/privacy/logging/PrivacyLogger.kt2
-rw-r--r--packages/SystemUI/src/com/android/systemui/shade/NPVCDownEventState.kt2
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/inflation/NotificationRowBinderImpl.java9
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java11
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentView.java3
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationController.kt3
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java62
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputViewController.kt9
-rw-r--r--packages/SystemUI/src/com/android/systemui/volume/CsdWarningDialog.java40
-rw-r--r--packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java1
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/biometrics/BiometricDisplayListenerTest.java73
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/controls/ui/ControlsActivityTest.kt13
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/controls/ui/TestableControlsActivity.kt8
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractorTest.kt8
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/ui/viewmodel/BacklightDialogViewModelTest.kt4
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/keyboard/data/repository/KeyboardRepositoryTest.kt112
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardUnlockAnimationControllerTest.kt100
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/notetask/NoteTaskControllerTest.kt26
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationControllerTest.kt19
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/RemoteInputViewTest.java8
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/volume/CsdWarningDialogTest.java8
-rw-r--r--packages/SystemUI/tests/utils/src/com/android/systemui/keyboard/data/repository/FakeKeyboardRepository.kt16
-rw-r--r--packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperBackupAgent.java35
-rw-r--r--packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperEventLogger.java12
-rw-r--r--packages/WallpaperBackup/test/src/com/android/wallpaperbackup/WallpaperBackupAgentTest.java78
-rw-r--r--services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java10
-rw-r--r--services/accessibility/java/com/android/server/accessibility/magnification/FullScreenMagnificationController.java13
-rw-r--r--services/accessibility/java/com/android/server/accessibility/magnification/MagnificationController.java26
-rw-r--r--services/accessibility/java/com/android/server/accessibility/magnification/MagnificationFeatureFlagBase.java3
-rw-r--r--services/autofill/java/com/android/server/autofill/AutofillInlineSessionController.java7
-rw-r--r--services/autofill/java/com/android/server/autofill/AutofillInlineSuggestionsRequestSession.java9
-rw-r--r--services/autofill/java/com/android/server/autofill/Session.java6
-rw-r--r--services/backup/TEST_MAPPING8
-rw-r--r--services/backup/java/com/android/server/backup/BackupManagerService.java95
-rw-r--r--services/backup/java/com/android/server/backup/UserBackupManagerService.java16
-rw-r--r--services/backup/java/com/android/server/backup/utils/BackupManagerMonitorUtils.java12
-rw-r--r--services/companion/java/com/android/server/companion/virtual/SensorController.java70
-rw-r--r--services/companion/java/com/android/server/companion/virtual/VirtualDeviceImpl.java3
-rw-r--r--services/core/java/com/android/server/adb/AdbDebuggingManager.java34
-rw-r--r--services/core/java/com/android/server/am/ActivityManagerService.java14
-rw-r--r--services/core/java/com/android/server/am/AppProfiler.java5
-rw-r--r--services/core/java/com/android/server/am/ContentProviderHelper.java2
-rw-r--r--services/core/java/com/android/server/am/PendingIntentRecord.java14
-rw-r--r--services/core/java/com/android/server/am/ProcessProfileRecord.java85
-rw-r--r--services/core/java/com/android/server/am/ProcessServiceRecord.java4
-rw-r--r--services/core/java/com/android/server/am/ProcessStateRecord.java6
-rw-r--r--services/core/java/com/android/server/am/ServiceRecord.java2
-rw-r--r--services/core/java/com/android/server/audio/AudioService.java2
-rw-r--r--services/core/java/com/android/server/audio/SoundDoseHelper.java13
-rw-r--r--services/core/java/com/android/server/biometrics/AuthService.java3
-rw-r--r--services/core/java/com/android/server/biometrics/BiometricService.java18
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/Fingerprint21UdfpsMock.java5
-rw-r--r--services/core/java/com/android/server/camera/CameraServiceProxy.java16
-rw-r--r--services/core/java/com/android/server/inputmethod/InputMethodUtils.java4
-rw-r--r--services/core/java/com/android/server/locales/LocaleManagerService.java7
-rw-r--r--services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java113
-rwxr-xr-xservices/core/java/com/android/server/notification/NotificationManagerService.java40
-rw-r--r--services/core/java/com/android/server/notification/NotificationRecordLogger.java2
-rw-r--r--services/core/java/com/android/server/pm/InstallPackageHelper.java100
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java8
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerShellCommand.java2
-rw-r--r--services/core/java/com/android/server/pm/Settings.java3
-rw-r--r--services/core/java/com/android/server/pm/ShortcutService.java4
-rw-r--r--services/core/java/com/android/server/power/PowerManagerService.java36
-rw-r--r--services/core/java/com/android/server/stats/pull/StatsPullAtomService.java9
-rw-r--r--services/core/java/com/android/server/trust/TrustAgentWrapper.java4
-rw-r--r--services/core/java/com/android/server/trust/TrustManagerService.java70
-rw-r--r--services/core/java/com/android/server/wallpaper/WallpaperDataParser.java5
-rw-r--r--services/core/java/com/android/server/wallpaper/WallpaperManagerService.java8
-rw-r--r--services/core/java/com/android/server/wm/ActivityRecord.java1
-rw-r--r--services/core/java/com/android/server/wm/DisplayPolicy.java5
-rw-r--r--services/core/java/com/android/server/wm/Transition.java12
-rw-r--r--services/core/java/com/android/server/wm/TransitionTracer.java6
-rw-r--r--services/credentials/java/com/android/server/credentials/ClearRequestSession.java10
-rw-r--r--services/credentials/java/com/android/server/credentials/CreateRequestSession.java9
-rw-r--r--services/credentials/java/com/android/server/credentials/CredentialManagerService.java30
-rw-r--r--services/credentials/java/com/android/server/credentials/GetRequestSession.java16
-rw-r--r--services/credentials/java/com/android/server/credentials/MetricUtilities.java193
-rw-r--r--services/credentials/java/com/android/server/credentials/PrepareGetRequestSession.java4
-rw-r--r--services/credentials/java/com/android/server/credentials/ProviderGetSession.java2
-rw-r--r--services/credentials/java/com/android/server/credentials/ProviderSession.java4
-rw-r--r--services/credentials/java/com/android/server/credentials/RequestSession.java26
-rw-r--r--services/credentials/java/com/android/server/credentials/metrics/ApiName.java17
-rw-r--r--services/credentials/java/com/android/server/credentials/metrics/BrowsedAuthenticationMetric.java69
-rw-r--r--services/credentials/java/com/android/server/credentials/metrics/CandidateAggregateMetric.java172
-rw-r--r--services/credentials/java/com/android/server/credentials/metrics/CandidatePhaseMetric.java10
-rw-r--r--services/credentials/java/com/android/server/credentials/metrics/ChosenProviderFinalPhaseMetric.java10
-rw-r--r--services/credentials/java/com/android/server/credentials/metrics/ProviderSessionMetric.java85
-rw-r--r--services/credentials/java/com/android/server/credentials/metrics/RequestSessionMetric.java62
-rw-r--r--services/credentials/java/com/android/server/credentials/metrics/shared/ResponseCollective.java59
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java40
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java216
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java25
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/PolicyDefinition.java10
-rw-r--r--services/robotests/backup/src/com/android/server/backup/BackupManagerServiceRoboTest.java9
-rw-r--r--services/tests/InputMethodSystemServerTests/src/com/android/server/inputmethod/InputMethodManagerServiceTestBase.java2
-rw-r--r--services/tests/mockingservicestests/src/com/android/server/backup/BackupManagerServiceTest.java48
-rw-r--r--services/tests/mockingservicestests/src/com/android/server/backup/UserBackupManagerServiceTest.java4
-rw-r--r--services/tests/mockingservicestests/src/com/android/server/backup/utils/BackupManagerMonitorUtilsTest.java77
-rw-r--r--services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationControllerTest.java4
-rw-r--r--services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandlerTest.java5
-rw-r--r--services/tests/servicestests/src/com/android/server/accessibility/magnification/MagnificationControllerTest.java7
-rw-r--r--services/tests/servicestests/src/com/android/server/biometrics/AuthServiceTest.java2
-rw-r--r--services/tests/servicestests/src/com/android/server/biometrics/BiometricServiceTest.java34
-rw-r--r--services/tests/servicestests/src/com/android/server/companion/virtual/SensorControllerTest.java3
-rw-r--r--services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java3
-rw-r--r--services/tests/servicestests/src/com/android/server/power/PowerManagerServiceTest.java143
-rwxr-xr-xservices/tests/uiservicestests/src/com/android/server/notification/NotificationManagerServiceTest.java48
-rw-r--r--services/tests/uiservicestests/src/com/android/server/notification/NotificationRecordLoggerFake.java4
-rw-r--r--services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java5
-rw-r--r--telephony/common/com/android/internal/telephony/TelephonyPermissions.java5
-rw-r--r--tests/Internal/src/com/android/internal/app/AppLocaleCollectorTest.java41
-rw-r--r--tests/Internal/src/com/android/internal/app/LocaleStoreTest.java2
-rw-r--r--tests/TrustTests/AndroidManifest.xml10
-rw-r--r--tests/TrustTests/src/android/trust/test/CanUnlockWithActiveUnlockTest.kt131
-rw-r--r--tests/TrustTests/src/android/trust/test/lib/LockStateTrackingRule.kt12
-rw-r--r--tests/TrustTests/src/android/trust/test/lib/TestTrustListener.kt45
663 files changed, 6259 insertions, 3164 deletions
diff --git a/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShimPriv_apk.asciipb b/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShimPriv_apk.asciipb
index 4f5b62060856..a40adac7369e 100644
--- a/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShimPriv_apk.asciipb
+++ b/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShimPriv_apk.asciipb
@@ -1,6 +1,6 @@
drops {
android_build_drop {
- build_id: "9653376"
+ build_id: "10093150"
target: "CtsShim"
source_file: "aosp_arm64/CtsShimPriv.apk"
}
@@ -8,7 +8,7 @@ drops {
version: ""
version_group: ""
git_project: "platform/frameworks/base"
- git_branch: "master"
+ git_branch: "udc-dev"
transform: TRANSFORM_NONE
transform_options {
}
diff --git a/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShim_apk.asciipb b/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShim_apk.asciipb
index 404bcacde167..96444ba9b989 100644
--- a/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShim_apk.asciipb
+++ b/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__arm_CtsShim_apk.asciipb
@@ -1,6 +1,6 @@
drops {
android_build_drop {
- build_id: "9653376"
+ build_id: "10093150"
target: "CtsShim"
source_file: "aosp_arm64/CtsShim.apk"
}
@@ -8,7 +8,7 @@ drops {
version: ""
version_group: ""
git_project: "platform/frameworks/base"
- git_branch: "master"
+ git_branch: "udc-dev"
transform: TRANSFORM_NONE
transform_options {
}
diff --git a/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShimPriv_apk.asciipb b/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShimPriv_apk.asciipb
index 045af028a668..4d6f8ed5523e 100644
--- a/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShimPriv_apk.asciipb
+++ b/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShimPriv_apk.asciipb
@@ -1,6 +1,6 @@
drops {
android_build_drop {
- build_id: "9653376"
+ build_id: "10093150"
target: "CtsShim"
source_file: "aosp_x86_64/CtsShimPriv.apk"
}
@@ -8,7 +8,7 @@ drops {
version: ""
version_group: ""
git_project: "platform/frameworks/base"
- git_branch: "master"
+ git_branch: "udc-dev"
transform: TRANSFORM_NONE
transform_options {
}
diff --git a/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShim_apk.asciipb b/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShim_apk.asciipb
index 483b2f1764ae..bfd6788ec7df 100644
--- a/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShim_apk.asciipb
+++ b/.prebuilt_info/prebuilt_info_packages_CtsShim_apk__x86_CtsShim_apk.asciipb
@@ -1,6 +1,6 @@
drops {
android_build_drop {
- build_id: "9653376"
+ build_id: "10093150"
target: "CtsShim"
source_file: "aosp_x86_64/CtsShim.apk"
}
@@ -8,7 +8,7 @@ drops {
version: ""
version_group: ""
git_project: "platform/frameworks/base"
- git_branch: "master"
+ git_branch: "udc-dev"
transform: TRANSFORM_NONE
transform_options {
}
diff --git a/Android.bp b/Android.bp
index 64d2c66f013c..54d9255b8a03 100644
--- a/Android.bp
+++ b/Android.bp
@@ -606,7 +606,7 @@ filegroup {
"core/java/**/*.logtags",
"**/package.html",
],
- visibility: ["//visibility:private"],
+ visibility: ["//frameworks/base/api"],
}
// Defaults for all stubs that include the non-updatable framework. These defaults do not include
@@ -620,12 +620,10 @@ stubs_defaults {
java_version: "1.8",
arg_files: [":frameworks-base-core-AndroidManifest.xml"],
aidl: {
- local_include_dirs: [
- "media/aidl",
- "telephony/java",
- ],
include_dirs: [
"frameworks/av/aidl",
+ "frameworks/base/media/aidl",
+ "frameworks/base/telephony/java",
"frameworks/native/libs/permission/aidl",
"packages/modules/Bluetooth/framework/aidl-export",
"packages/modules/Connectivity/framework/aidl-export",
@@ -661,7 +659,7 @@ stubs_defaults {
annotations_enabled: true,
previous_api: ":android.api.public.latest",
merge_annotations_dirs: ["metalava-manual"],
- defaults_visibility: ["//visibility:private"],
+ defaults_visibility: ["//frameworks/base/api"],
visibility: ["//frameworks/base/api"],
}
@@ -689,7 +687,6 @@ stubs_defaults {
// NOTE: The below can be removed once the prebuilt stub contains IKE.
"sdk_system_current_android.net.ipsec.ike",
],
- defaults_visibility: ["//visibility:private"],
}
build = [
diff --git a/ApiDocs.bp b/ApiDocs.bp
index a46ecce5c721..fbcaa52f9bb4 100644
--- a/ApiDocs.bp
+++ b/ApiDocs.bp
@@ -182,10 +182,10 @@ droidstubs {
// using droiddoc
/////////////////////////////////////////////////////////////////////
-framework_docs_only_args = " -android -manifest $(location core/res/AndroidManifest.xml) " +
+framework_docs_only_args = " -android -manifest $(location :frameworks-base-core-AndroidManifest.xml) " +
"-metalavaApiSince " +
"-werror -lerror -hide 111 -hide 113 -hide 125 -hide 126 -hide 127 -hide 128 " +
- "-overview $(location core/java/overview.html) " +
+ "-overview $(location :frameworks-base-java-overview) " +
// Federate Support Library references against local API file.
"-federate SupportLib https://developer.android.com " +
"-federationapi SupportLib $(location :current-support-api) " +
@@ -218,16 +218,16 @@ doc_defaults {
"sdk.preview 0",
],
arg_files: [
- "core/res/AndroidManifest.xml",
- "core/java/overview.html",
+ ":frameworks-base-core-AndroidManifest.xml",
+ ":frameworks-base-java-overview",
":current-support-api",
":current-androidx-api",
],
// TODO(b/169090544): remove below aidl includes.
aidl: {
- local_include_dirs: ["media/aidl"],
include_dirs: [
"frameworks/av/aidl",
+ "frameworks/base/media/aidl",
"frameworks/native/libs/permission/aidl",
],
},
diff --git a/StubLibraries.bp b/StubLibraries.bp
index b005591980c0..f08745b5cd2c 100644
--- a/StubLibraries.bp
+++ b/StubLibraries.bp
@@ -515,6 +515,7 @@ droidstubs {
],
api_levels_sdk_type: "public",
extensions_info_file: ":sdk-extensions-info",
+ visibility: ["//frameworks/base"],
}
droidstubs {
diff --git a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java
index b0b3b1f3cb5e..8316a2625ccd 100644
--- a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java
+++ b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java
@@ -100,6 +100,7 @@ import com.android.internal.util.ArrayUtils;
import com.android.internal.util.DumpUtils;
import com.android.internal.util.FastXmlSerializer;
import com.android.internal.util.XmlUtils;
+import com.android.modules.expresslog.Counter;
import com.android.server.am.BatteryStatsService;
import com.android.server.deviceidle.ConstraintController;
import com.android.server.deviceidle.DeviceIdleConstraintTracker;
@@ -300,6 +301,12 @@ public class DeviceIdleController extends SystemService
implements AnyMotionDetector.DeviceIdleCallback {
private static final String TAG = "DeviceIdleController";
+ private static final String USER_ALLOWLIST_ADDITION_METRIC_ID =
+ "battery.value_app_added_to_power_allowlist";
+
+ private static final String USER_ALLOWLIST_REMOVAL_METRIC_ID =
+ "battery.value_app_removed_from_power_allowlist";
+
private static final boolean DEBUG = false;
private static final boolean COMPRESS_TIME = false;
@@ -2805,6 +2812,7 @@ public class DeviceIdleController extends SystemService
if (mPowerSaveWhitelistUserApps.put(name, UserHandle.getAppId(ai.uid))
== null) {
numAdded++;
+ Counter.logIncrement(USER_ALLOWLIST_ADDITION_METRIC_ID);
}
} catch (PackageManager.NameNotFoundException e) {
Slog.e(TAG, "Tried to add unknown package to power save whitelist: " + name);
@@ -2826,6 +2834,7 @@ public class DeviceIdleController extends SystemService
reportPowerSaveWhitelistChangedLocked();
updateWhitelistAppIdsLocked();
writeConfigFileLocked();
+ Counter.logIncrement(USER_ALLOWLIST_REMOVAL_METRIC_ID);
return true;
}
}
diff --git a/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java b/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java
index 7d09b992d080..b6dc32a29f04 100644
--- a/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java
+++ b/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java
@@ -253,7 +253,7 @@ public class Bmgr {
try {
boolean enable = Boolean.parseBoolean(arg);
- mBmgr.setAutoRestoreForUser(userId, enable);
+ mBmgr.setAutoRestore(enable);
System.out.println(
"Auto restore is now "
+ (enable ? "enabled" : "disabled")
diff --git a/cmds/bu/src/com/android/commands/bu/Backup.java b/cmds/bu/src/com/android/commands/bu/Backup.java
index 11c9773a7a6c..373677eccf62 100644
--- a/cmds/bu/src/com/android/commands/bu/Backup.java
+++ b/cmds/bu/src/com/android/commands/bu/Backup.java
@@ -56,7 +56,6 @@ public final class Backup {
}
public void run(String[] args) {
- Log.d(TAG, "Called run() with args: " + String.join(" ", args));
if (mBackupManager == null) {
Log.e(TAG, "Can't obtain Backup Manager binder");
return;
@@ -71,8 +70,6 @@ public final class Backup {
return;
}
- Log.d(TAG, "UserId : " + userId);
-
String arg = nextArg();
if (arg.equals("backup")) {
doBackup(OsConstants.STDOUT_FILENO, userId);
diff --git a/core/java/Android.bp b/core/java/Android.bp
index 39695770ba58..02b14ad7a757 100644
--- a/core/java/Android.bp
+++ b/core/java/Android.bp
@@ -421,6 +421,11 @@ aidl_interface {
},
}
+filegroup {
+ name: "frameworks-base-java-overview",
+ srcs: ["overview.html"],
+}
+
// Avoid including Parcelable classes as we don't want to have two copies of
// Parcelable cross the libraries. This is used by telephony-common (frameworks/opt/telephony)
// and TeleService app (packages/services/Telephony).
diff --git a/core/java/android/app/AppOpsManager.java b/core/java/android/app/AppOpsManager.java
index 0e5cbe228c1b..ba5a9f741756 100644
--- a/core/java/android/app/AppOpsManager.java
+++ b/core/java/android/app/AppOpsManager.java
@@ -7089,6 +7089,26 @@ public class AppOpsManager {
*/
public interface OnOpChangedListener {
public void onOpChanged(String op, String packageName);
+
+ /**
+ * Implementations can override this method to add handling logic for AppOp changes.
+ *
+ * Normally, listeners to AppOp changes work in the same User Space as the App whose Op
+ * has changed. However, in some case listeners can have a single instance responsible for
+ * multiple users. (For ex single Media Provider instance in user 0 is responsible for both
+ * cloned and user 0 spaces). For handling such cases correctly, listeners need to be
+ * passed userId in addition to PackageName and Op.
+
+ * The default impl is to fallback onto {@link #onOpChanged(String, String)
+ *
+ * @param op The Op that changed.
+ * @param packageName Package of the app whose Op changed.
+ * @param userId User Space of the app whose Op changed.
+ * @hide
+ */
+ default void onOpChanged(@NonNull String op, @NonNull String packageName, int userId) {
+ onOpChanged(op, packageName);
+ }
}
/**
@@ -7785,7 +7805,9 @@ public class AppOpsManager {
((OnOpChangedInternalListener)callback).onOpChanged(op, packageName);
}
if (sAppOpInfos[op].name != null) {
- callback.onOpChanged(sAppOpInfos[op].name, packageName);
+
+ callback.onOpChanged(sAppOpInfos[op].name, packageName,
+ UserHandle.getUserId(uid));
}
}
};
diff --git a/core/java/android/app/IBackupAgent.aidl b/core/java/android/app/IBackupAgent.aidl
index c5e536f4ba6d..ff0872695926 100644
--- a/core/java/android/app/IBackupAgent.aidl
+++ b/core/java/android/app/IBackupAgent.aidl
@@ -208,6 +208,12 @@ oneway interface IBackupAgent {
in AndroidFuture<List<BackupRestoreEventLogger.DataTypeResult>> resultsFuture);
/**
+ * Provides the operation type (backup or restore) the agent is created for. See
+ * {@link android.app.backup.BackupAnnotations.OperationType}.
+ */
+ void getOperationType(in AndroidFuture<int> operationTypeFuture);
+
+ /**
* Clears the logs accumulated by the BackupAgent during a backup or restore operation.
*/
void clearBackupRestoreEventLogger();
diff --git a/core/java/android/app/IWallpaperManager.aidl b/core/java/android/app/IWallpaperManager.aidl
index 4d308d90ce2d..94c46fa68edb 100644
--- a/core/java/android/app/IWallpaperManager.aidl
+++ b/core/java/android/app/IWallpaperManager.aidl
@@ -220,20 +220,6 @@ interface IWallpaperManager {
void notifyGoingToSleep(int x, int y, in Bundle extras);
/**
- * Called when the screen has been fully turned on and is visible.
- *
- * @hide
- */
- void notifyScreenTurnedOn(int displayId);
-
- /**
- * Called when the screen starts turning on.
- *
- * @hide
- */
- void notifyScreenTurningOn(int displayId);
-
- /**
* Sets the wallpaper dim amount between [0f, 1f] which would be blended with the system default
* dimming. 0f doesn't add any additional dimming and 1f makes the wallpaper fully black.
*
diff --git a/core/java/android/app/LocaleConfig.java b/core/java/android/app/LocaleConfig.java
index 97cc706fbab6..5031a338520a 100644
--- a/core/java/android/app/LocaleConfig.java
+++ b/core/java/android/app/LocaleConfig.java
@@ -161,7 +161,7 @@ public class LocaleConfig implements Parcelable {
* <p><b>Note:</b> The creation of this LocaleConfig does not automatically mean it will
* become the override config for an application. Any LocaleConfig desired to be the override
* must be passed into the {@link LocaleManager#setOverrideLocaleConfig(LocaleConfig)},
- * otherwise it will not persist or affect the system’s understanding of app-supported
+ * otherwise it will not persist or affect the system&#39;s understanding of app-supported
* resources.
*
* @param locales the desired locales for a specified application
diff --git a/core/java/android/app/LocaleManager.java b/core/java/android/app/LocaleManager.java
index bb9a95c03ba5..e865af789b15 100644
--- a/core/java/android/app/LocaleManager.java
+++ b/core/java/android/app/LocaleManager.java
@@ -194,18 +194,19 @@ public class LocaleManager {
* <p><b>Note:</b> Only the app itself with the same user can override its own LocaleConfig.
*
* <p><b>Note:</b> This function takes in a {@link LocaleConfig} which is intended to
- * override the original config in the application’s resources. This LocaleConfig will become
- * the override config, and stored in a system file for future access.
+ * override the original config in the application&#39;s resources. This LocaleConfig will
+ * become the override config, and stored in a system file for future access.
*
* <p><b>Note:</b> Using this function, applications can update their list of supported
- * locales while running, without an update of the application’s software.
+ * locales while running, without an update of the application&#39;s software. For more
+ * information, see the <a
+ * href="https://developer.android.com/about/versions/14/features#app-languages">section on
+ * dynamic updates for an app's localeConfig</a>.
*
* <p>Applications can remove the override LocaleConfig with a {@code null} object.
*
* @param localeConfig the desired {@link LocaleConfig} for the calling app.
*/
- // Add following to last Note: when guide is written:
- // For more information, see TODO(b/261528306): add link to guide.
@UserHandleAware
public void setOverrideLocaleConfig(@Nullable LocaleConfig localeConfig) {
try {
diff --git a/core/java/android/app/ProcessMemoryState.java b/core/java/android/app/ProcessMemoryState.java
index 2c58603ecdb9..c4caa4512acc 100644
--- a/core/java/android/app/ProcessMemoryState.java
+++ b/core/java/android/app/ProcessMemoryState.java
@@ -16,6 +16,7 @@
package android.app;
+import android.annotation.IntDef;
import android.os.Parcel;
import android.os.Parcelable;
@@ -24,19 +25,132 @@ import android.os.Parcelable;
* {@hide}
*/
public final class ProcessMemoryState implements Parcelable {
+ /**
+ * The type of the component this process is hosting;
+ * this means not hosting any components (cached).
+ */
+ public static final int HOSTING_COMPONENT_TYPE_EMPTY =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_EMPTY;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's a system process.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_SYSTEM =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_SYSTEM;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's a persistent process.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_PERSISTENT =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_PERSISTENT;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's hosting a backup/restore agent.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_BACKUP =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_BACKUP;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's hosting an instrumentation.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_INSTRUMENTATION =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_INSTRUMENTATION;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's hosting an activity.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_ACTIVITY =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_ACTIVITY;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's hosting a broadcast receiver.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_BROADCAST_RECEIVER =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_BROADCAST_RECEIVER;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's hosting a content provider.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_PROVIDER =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_PROVIDER;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's hosting a started service.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_STARTED_SERVICE =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_STARTED_SERVICE;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's hosting a foreground service.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_FOREGROUND_SERVICE =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_FOREGROUND_SERVICE;
+
+ /**
+ * The type of the component this process is hosting;
+ * this means it's being bound via a service binding.
+ */
+ public static final int HOSTING_COMPONENT_TYPE_BOUND_SERVICE =
+ AppProtoEnums.HOSTING_COMPONENT_TYPE_BOUND_SERVICE;
+
+ /**
+ * The type of the component this process is hosting.
+ * @hide
+ */
+ @IntDef(flag = true, prefix = { "HOSTING_COMPONENT_TYPE_" }, value = {
+ HOSTING_COMPONENT_TYPE_EMPTY,
+ HOSTING_COMPONENT_TYPE_SYSTEM,
+ HOSTING_COMPONENT_TYPE_PERSISTENT,
+ HOSTING_COMPONENT_TYPE_BACKUP,
+ HOSTING_COMPONENT_TYPE_INSTRUMENTATION,
+ HOSTING_COMPONENT_TYPE_ACTIVITY,
+ HOSTING_COMPONENT_TYPE_BROADCAST_RECEIVER,
+ HOSTING_COMPONENT_TYPE_PROVIDER,
+ HOSTING_COMPONENT_TYPE_STARTED_SERVICE,
+ HOSTING_COMPONENT_TYPE_FOREGROUND_SERVICE,
+ HOSTING_COMPONENT_TYPE_BOUND_SERVICE,
+ })
+ public @interface HostingComponentType {}
+
public final int uid;
public final int pid;
public final String processName;
public final int oomScore;
public final boolean hasForegroundServices;
+ /**
+ * The types of the components this process is hosting at the moment this snapshot is taken.
+ *
+ * Its value is the combination of {@link HostingComponentType}.
+ */
+ public final int mHostingComponentTypes;
+
+ /**
+ * The historical types of the components this process is or was hosting since it's born.
+ *
+ * Its value is the combination of {@link HostingComponentType}.
+ */
+ public final int mHistoricalHostingComponentTypes;
+
public ProcessMemoryState(int uid, int pid, String processName, int oomScore,
- boolean hasForegroundServices) {
+ boolean hasForegroundServices, int hostingComponentTypes,
+ int historicalHostingComponentTypes) {
this.uid = uid;
this.pid = pid;
this.processName = processName;
this.oomScore = oomScore;
this.hasForegroundServices = hasForegroundServices;
+ this.mHostingComponentTypes = hostingComponentTypes;
+ this.mHistoricalHostingComponentTypes = historicalHostingComponentTypes;
}
private ProcessMemoryState(Parcel in) {
@@ -45,6 +159,8 @@ public final class ProcessMemoryState implements Parcelable {
processName = in.readString();
oomScore = in.readInt();
hasForegroundServices = in.readInt() == 1;
+ mHostingComponentTypes = in.readInt();
+ mHistoricalHostingComponentTypes = in.readInt();
}
public static final @android.annotation.NonNull Creator<ProcessMemoryState> CREATOR = new Creator<ProcessMemoryState>() {
@@ -71,5 +187,7 @@ public final class ProcessMemoryState implements Parcelable {
parcel.writeString(processName);
parcel.writeInt(oomScore);
parcel.writeInt(hasForegroundServices ? 1 : 0);
+ parcel.writeInt(mHostingComponentTypes);
+ parcel.writeInt(mHistoricalHostingComponentTypes);
}
}
diff --git a/core/java/android/app/admin/DevicePolicyResources.java b/core/java/android/app/admin/DevicePolicyResources.java
index f4dc6ba5e2de..0512c7511ec6 100644
--- a/core/java/android/app/admin/DevicePolicyResources.java
+++ b/core/java/android/app/admin/DevicePolicyResources.java
@@ -243,6 +243,12 @@ public final class DevicePolicyResources {
PREFIX + "ACCESSIBILITY_CATEGORY_PERSONAL";
/**
+ * Content description for clone profile accounts group
+ */
+ public static final String ACCESSIBILITY_CATEGORY_CLONE =
+ PREFIX + "ACCESSIBILITY_CATEGORY_CLONE";
+
+ /**
* Content description for work profile details page title
*/
public static final String ACCESSIBILITY_WORK_ACCOUNT_TITLE =
@@ -1172,6 +1178,13 @@ public final class DevicePolicyResources {
PREFIX + "PERSONAL_CATEGORY_HEADER";
/**
+ * Header for items under the clone user
+ */
+ public static final String CLONE_CATEGORY_HEADER =
+ PREFIX + "CLONE_CATEGORY_HEADER";
+
+
+ /**
* Text to indicate work notification content will be shown on the lockscreen.
*/
public static final String LOCK_SCREEN_SHOW_WORK_NOTIFICATION_CONTENT =
diff --git a/core/java/android/app/backup/BackupAgent.java b/core/java/android/app/backup/BackupAgent.java
index 3eaa8daca7d1..0b8d1dfccc07 100644
--- a/core/java/android/app/backup/BackupAgent.java
+++ b/core/java/android/app/backup/BackupAgent.java
@@ -1353,6 +1353,12 @@ public abstract class BackupAgent extends ContextWrapper {
}
@Override
+ public void getOperationType(
+ AndroidFuture<Integer> in) {
+ in.complete(mLogger == null ? OperationType.UNKNOWN : mLogger.getOperationType());
+ }
+
+ @Override
public void clearBackupRestoreEventLogger() {
final long ident = Binder.clearCallingIdentity();
try {
diff --git a/core/java/android/app/backup/BackupManagerMonitor.java b/core/java/android/app/backup/BackupManagerMonitor.java
index d134ca27b354..f73366b6af0c 100644
--- a/core/java/android/app/backup/BackupManagerMonitor.java
+++ b/core/java/android/app/backup/BackupManagerMonitor.java
@@ -17,6 +17,7 @@
package android.app.backup;
import android.annotation.SystemApi;
+import android.app.backup.BackupAnnotations.OperationType;
import android.os.Bundle;
/**
@@ -136,6 +137,13 @@ public class BackupManagerMonitor {
public static final String EXTRA_LOG_AGENT_LOGGING_RESULTS =
"android.app.backup.extra.LOG_AGENT_LOGGING_RESULTS";
+ /**
+ * The operation type this log is associated with. See {@link OperationType}.
+ *
+ * @hide
+ */
+ public static final String EXTRA_LOG_OPERATION_TYPE = "android.app.backup.extra.OPERATION_TYPE";
+
// TODO complete this list with all log messages. And document properly.
public static final int LOG_EVENT_ID_FULL_BACKUP_CANCEL = 4;
public static final int LOG_EVENT_ID_ILLEGAL_KEY = 5;
diff --git a/core/java/android/app/trust/ITrustListener.aidl b/core/java/android/app/trust/ITrustListener.aidl
index 8d4478493b13..665b24c568a6 100644
--- a/core/java/android/app/trust/ITrustListener.aidl
+++ b/core/java/android/app/trust/ITrustListener.aidl
@@ -29,4 +29,5 @@ oneway interface ITrustListener {
in List<String> trustGrantedMessages);
void onTrustManagedChanged(boolean managed, int userId);
void onTrustError(in CharSequence message);
+ void onIsActiveUnlockRunningChanged(boolean isRunning, int userId);
}
diff --git a/core/java/android/app/trust/ITrustManager.aidl b/core/java/android/app/trust/ITrustManager.aidl
index 94a9656e2c6b..a5e5135f2cb0 100644
--- a/core/java/android/app/trust/ITrustManager.aidl
+++ b/core/java/android/app/trust/ITrustManager.aidl
@@ -40,4 +40,5 @@ interface ITrustManager {
boolean isTrustUsuallyManaged(int userId);
void unlockedByBiometricForUser(int userId, in BiometricSourceType source);
void clearAllBiometricRecognized(in BiometricSourceType target, int unlockedUser);
+ boolean isActiveUnlockRunning(int userId);
}
diff --git a/core/java/android/app/trust/TrustManager.java b/core/java/android/app/trust/TrustManager.java
index 3552ce0e5889..e5f2976417ab 100644
--- a/core/java/android/app/trust/TrustManager.java
+++ b/core/java/android/app/trust/TrustManager.java
@@ -44,6 +44,7 @@ public class TrustManager {
private static final int MSG_TRUST_MANAGED_CHANGED = 2;
private static final int MSG_TRUST_ERROR = 3;
private static final int MSG_ENABLED_TRUST_AGENTS_CHANGED = 4;
+ private static final int MSG_IS_ACTIVE_UNLOCK_RUNNING = 5;
private static final String TAG = "TrustManager";
private static final String DATA_FLAGS = "initiatedByUser";
@@ -166,6 +167,17 @@ public class TrustManager {
}
/**
+ * Returns whether active unlock can be used to unlock the device for user {@code userId}.
+ */
+ public boolean isActiveUnlockRunning(int userId) {
+ try {
+ return mService.isActiveUnlockRunning(userId);
+ } catch (RemoteException e) {
+ throw e.rethrowFromSystemServer();
+ }
+ }
+
+ /**
* Registers a listener for trust events.
*
* Requires the {@link android.Manifest.permission#TRUST_LISTENER} permission.
@@ -206,6 +218,12 @@ public class TrustManager {
m.getData().putCharSequence(DATA_MESSAGE, message);
m.sendToTarget();
}
+
+ @Override
+ public void onIsActiveUnlockRunningChanged(boolean isRunning, int userId) {
+ mHandler.obtainMessage(MSG_IS_ACTIVE_UNLOCK_RUNNING,
+ (isRunning ? 1 : 0), userId, trustListener).sendToTarget();
+ }
};
mService.registerTrustListener(iTrustListener);
mTrustListeners.put(trustListener, iTrustListener);
@@ -295,6 +313,10 @@ public class TrustManager {
case MSG_ENABLED_TRUST_AGENTS_CHANGED:
((TrustListener) msg.obj).onEnabledTrustAgentsChanged(msg.arg1);
break;
+ case MSG_IS_ACTIVE_UNLOCK_RUNNING:
+ ((TrustListener) msg.obj)
+ .onIsActiveUnlockRunningChanged(msg.arg1 != 0, msg.arg2);
+ break;
}
}
};
@@ -333,5 +355,12 @@ public class TrustManager {
* Reports that the enabled trust agents for the specified user has changed.
*/
void onEnabledTrustAgentsChanged(int userId);
+
+ /**
+ * Reports changes on if the device can be unlocked with active unlock.
+ * @param isRunning If true, the device can be unlocked with active unlock.
+ * @param userId The user, for which the state changed.
+ */
+ void onIsActiveUnlockRunningChanged(boolean isRunning, int userId);
}
}
diff --git a/core/java/android/credentials/ui/RequestInfo.java b/core/java/android/credentials/ui/RequestInfo.java
index 3fc3be58f022..4fedc8353bf7 100644
--- a/core/java/android/credentials/ui/RequestInfo.java
+++ b/core/java/android/credentials/ui/RequestInfo.java
@@ -113,6 +113,21 @@ public final class RequestInfo implements Parcelable {
hasPermissionToOverrideDefault, defaultProviderIds);
}
+ /**
+ * Creates new {@code RequestInfo} for a get-credential flow.
+ *
+ * @hide
+ */
+ @NonNull
+ public static RequestInfo newGetRequestInfo(
+ @NonNull IBinder token, @NonNull GetCredentialRequest getCredentialRequest,
+ @NonNull String appPackageName, boolean hasPermissionToOverrideDefault) {
+ return new RequestInfo(
+ token, TYPE_GET, appPackageName, null, getCredentialRequest,
+ hasPermissionToOverrideDefault,
+ /*defaultProviderIds=*/ new ArrayList<>());
+ }
+
/** Creates new {@code RequestInfo} for a get-credential flow. */
@NonNull
public static RequestInfo newGetRequestInfo(
diff --git a/core/java/android/hardware/CameraSessionStats.java b/core/java/android/hardware/CameraSessionStats.java
index 79a551a6be1e..d59295ebe940 100644
--- a/core/java/android/hardware/CameraSessionStats.java
+++ b/core/java/android/hardware/CameraSessionStats.java
@@ -64,6 +64,7 @@ public class CameraSessionStats implements Parcelable {
private ArrayList<CameraStreamStats> mStreamStats;
private String mUserTag;
private int mVideoStabilizationMode;
+ private int mSessionIndex;
public CameraSessionStats() {
mFacing = -1;
@@ -80,11 +81,13 @@ public class CameraSessionStats implements Parcelable {
mDeviceError = false;
mStreamStats = new ArrayList<CameraStreamStats>();
mVideoStabilizationMode = -1;
+ mSessionIndex = 0;
}
public CameraSessionStats(String cameraId, int facing, int newCameraState,
String clientName, int apiLevel, boolean isNdk, int creationDuration,
- float maxPreviewFps, int sessionType, int internalReconfigure, long logId) {
+ float maxPreviewFps, int sessionType, int internalReconfigure, long logId,
+ int sessionIdx) {
mCameraId = cameraId;
mFacing = facing;
mNewCameraState = newCameraState;
@@ -97,6 +100,7 @@ public class CameraSessionStats implements Parcelable {
mSessionType = sessionType;
mInternalReconfigure = internalReconfigure;
mStreamStats = new ArrayList<CameraStreamStats>();
+ mSessionIndex = sessionIdx;
}
public static final @android.annotation.NonNull Parcelable.Creator<CameraSessionStats> CREATOR =
@@ -140,6 +144,7 @@ public class CameraSessionStats implements Parcelable {
dest.writeTypedList(mStreamStats);
dest.writeString(mUserTag);
dest.writeInt(mVideoStabilizationMode);
+ dest.writeInt(mSessionIndex);
}
public void readFromParcel(Parcel in) {
@@ -164,6 +169,7 @@ public class CameraSessionStats implements Parcelable {
mUserTag = in.readString();
mVideoStabilizationMode = in.readInt();
+ mSessionIndex = in.readInt();
}
public String getCameraId() {
@@ -233,4 +239,8 @@ public class CameraSessionStats implements Parcelable {
public int getVideoStabilizationMode() {
return mVideoStabilizationMode;
}
+
+ public int getSessionIndex() {
+ return mSessionIndex;
+ }
}
diff --git a/core/java/android/hardware/biometrics/IBiometricService.aidl b/core/java/android/hardware/biometrics/IBiometricService.aidl
index 1a38c8897b76..1286046e6a01 100644
--- a/core/java/android/hardware/biometrics/IBiometricService.aidl
+++ b/core/java/android/hardware/biometrics/IBiometricService.aidl
@@ -66,8 +66,7 @@ interface IBiometricService {
// Register callback for when keyguard biometric eligibility changes.
@EnforcePermission("USE_BIOMETRIC_INTERNAL")
- void registerEnabledOnKeyguardCallback(IBiometricEnabledOnKeyguardCallback callback,
- int callingUserId);
+ void registerEnabledOnKeyguardCallback(IBiometricEnabledOnKeyguardCallback callback);
// Notify BiometricService when <Biometric>Service is ready to start the prepared client.
// Client lifecycle is still managed in <Biometric>Service.
diff --git a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
index bf4a20dfcae0..b8e451c2f816 100644
--- a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
+++ b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
@@ -2238,6 +2238,12 @@ public class CameraDeviceImpl extends CameraDevice
} else {
List<CaptureResult> partialResults =
mFrameNumberTracker.popPartialResults(frameNumber);
+ if (mBatchOutputMap.containsKey(requestId)) {
+ int requestCount = mBatchOutputMap.get(requestId);
+ for (int i = 1; i < requestCount; i++) {
+ mFrameNumberTracker.popPartialResults(frameNumber - (requestCount - i));
+ }
+ }
final long sensorTimestamp =
result.get(CaptureResult.SENSOR_TIMESTAMP);
diff --git a/core/java/android/os/CancellationSignalBeamer.java b/core/java/android/os/CancellationSignalBeamer.java
index b4247831ddc5..5c0b22172674 100644
--- a/core/java/android/os/CancellationSignalBeamer.java
+++ b/core/java/android/os/CancellationSignalBeamer.java
@@ -18,6 +18,7 @@ package android.os;
import android.annotation.NonNull;
import android.annotation.Nullable;
+import android.annotation.SuppressLint;
import android.system.SystemCleaner;
import android.util.Pair;
import android.view.inputmethod.CancellableHandwritingGesture;
@@ -137,7 +138,7 @@ public class CancellationSignalBeamer {
* MUST be forwarded to {@link Receiver#cancel} with proper ordering. See
* {@link CancellationSignalBeamer} for details.
*/
- public abstract void onCancel(IBinder token);
+ public abstract void onCancel(@NonNull IBinder token);
/**
* A {@link #beam}ed {@link CancellationSignal} was GC'd.
@@ -145,7 +146,7 @@ public class CancellationSignalBeamer {
* MUST be forwarded to {@link Receiver#forget} with proper ordering. See
* {@link CancellationSignalBeamer} for details.
*/
- public abstract void onForget(IBinder token);
+ public abstract void onForget(@NonNull IBinder token);
private static final ThreadLocal<Pair<Sender, ArrayList<CloseableToken>>> sScope =
new ThreadLocal<>();
@@ -159,7 +160,8 @@ public class CancellationSignalBeamer {
* try-with-resources. {@code null} if {@code cs} was {@code null} or if
* {@link HandwritingGesture} isn't {@link CancellableHandwritingGesture cancellable}.
*/
- public MustClose beamScopeIfNeeded(HandwritingGesture gesture) {
+ @NonNull
+ public MustClose beamScopeIfNeeded(@NonNull HandwritingGesture gesture) {
if (!(gesture instanceof CancellableHandwritingGesture)) {
return null;
}
@@ -189,7 +191,8 @@ public class CancellationSignalBeamer {
* @param cs {@link CancellationSignal} for which token should be returned.
* @return {@link IBinder} token.
*/
- public static IBinder beamFromScope(CancellationSignal cs) {
+ @NonNull
+ public static IBinder beamFromScope(@NonNull CancellationSignal cs) {
var state = sScope.get();
if (state != null) {
var token = state.first.beam(cs);
@@ -291,6 +294,7 @@ public class CancellationSignalBeamer {
* @return a {@link CancellationSignal} linked to the given token.
*/
@Nullable
+ @SuppressLint("VisiblySynchronized")
public CancellationSignal unbeam(@Nullable IBinder token) {
if (token == null) {
return null;
@@ -327,6 +331,7 @@ public class CancellationSignalBeamer {
*
* @param token the token to forget. No-op if {@code null}.
*/
+ @SuppressLint("VisiblySynchronized")
public void forget(@Nullable IBinder token) {
synchronized (this) {
if (mTokenMap.remove(token) != null) {
@@ -347,6 +352,7 @@ public class CancellationSignalBeamer {
*
* @param token the token to forget. No-op if {@code null}.
*/
+ @SuppressLint("VisiblySynchronized")
public void cancel(@Nullable IBinder token) {
CancellationSignal cs;
synchronized (this) {
diff --git a/core/java/android/os/IPowerManager.aidl b/core/java/android/os/IPowerManager.aidl
index 6f4cdcef266a..be7c1e5c0333 100644
--- a/core/java/android/os/IPowerManager.aidl
+++ b/core/java/android/os/IPowerManager.aidl
@@ -55,6 +55,7 @@ interface IPowerManager
float getBrightnessConstraint(int constraint);
@UnsupportedAppUsage
boolean isInteractive();
+ boolean isDisplayInteractive(int displayId);
boolean areAutoPowerSaveModesEnabled();
boolean isPowerSaveMode();
PowerSaveState getPowerSaveState(int serviceType);
diff --git a/core/java/android/os/PowerManager.java b/core/java/android/os/PowerManager.java
index 38e331c4ac0d..d1063f647c4f 100644
--- a/core/java/android/os/PowerManager.java
+++ b/core/java/android/os/PowerManager.java
@@ -1150,13 +1150,17 @@ public final class PowerManager {
}
};
- private final PropertyInvalidatedCache<Void, Boolean> mInteractiveCache =
- new PropertyInvalidatedCache<Void, Boolean>(MAX_CACHE_ENTRIES,
+ private final PropertyInvalidatedCache<Integer, Boolean> mInteractiveCache =
+ new PropertyInvalidatedCache<Integer, Boolean>(MAX_CACHE_ENTRIES,
CACHE_KEY_IS_INTERACTIVE_PROPERTY) {
@Override
- public Boolean recompute(Void query) {
+ public Boolean recompute(Integer displayId) {
try {
- return mService.isInteractive();
+ if (displayId == null) {
+ return mService.isInteractive();
+ } else {
+ return mService.isDisplayInteractive(displayId);
+ }
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -1802,6 +1806,18 @@ public final class PowerManager {
return mInteractiveCache.query(null);
}
+ /**
+ * Returns the interactive state for a specific display, which may not be the same as the
+ * global wakefulness (which is true when any display is awake).
+ *
+ * @param displayId
+ * @return whether the given display is present and interactive, or false
+ *
+ * @hide
+ */
+ public boolean isInteractive(int displayId) {
+ return mInteractiveCache.query(displayId);
+ }
/**
* Returns {@code true} if this device supports rebooting userspace.
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 867dafe7f552..a42af1af2d46 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -12159,6 +12159,14 @@ public final class Settings {
public static final String ADB_WIFI_ENABLED = "adb_wifi_enabled";
/**
+ * Whether existing ADB sessions over both USB and Wifi should be terminated when the user
+ * revokes debugging authorizations.
+ * @hide
+ */
+ public static final String ADB_DISCONNECT_SESSIONS_ON_REVOKE =
+ "adb_disconnect_sessions_on_revoke";
+
+ /**
* Whether Views are allowed to save their attribute data.
* @hide
*/
diff --git a/core/java/android/view/InsetsSource.java b/core/java/android/view/InsetsSource.java
index 114f4ed04ee6..9fc42fff7084 100644
--- a/core/java/android/view/InsetsSource.java
+++ b/core/java/android/view/InsetsSource.java
@@ -293,16 +293,23 @@ public class InsetsSource implements Parcelable {
* @see #createId(Object, int, int)
*/
public static int getIndex(int id) {
- return (id % (1 << 16)) >> 5;
+ // start: ????????????????***********?????
+ // & 65535: 0000000000000000***********?????
+ // >> 5: 000000000000000000000***********
+ return (id & 65535) >> 5;
}
/**
* Gets the {@link InsetsType} from the ID.
*
* @see #createId(Object, int, int)
+ * @see WindowInsets.Type#indexOf(int)
*/
public static int getType(int id) {
- return 1 << (id % 32);
+ // start: ???????????????????????????*****
+ // & 31: 000000000000000000000000000*****
+ // 1 <<: See WindowInsets.Type#indexOf
+ return 1 << (id & 31);
}
public static String flagsToString(@Flags int flags) {
diff --git a/core/java/android/view/TextureView.java b/core/java/android/view/TextureView.java
index 15e0cce9af10..bdd0a9cf653a 100644
--- a/core/java/android/view/TextureView.java
+++ b/core/java/android/view/TextureView.java
@@ -206,6 +206,7 @@ public class TextureView extends View {
*/
public TextureView(@NonNull Context context) {
super(context);
+ mRenderNode.setIsTextureView();
}
/**
@@ -216,6 +217,7 @@ public class TextureView extends View {
*/
public TextureView(@NonNull Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
+ mRenderNode.setIsTextureView();
}
/**
@@ -229,6 +231,7 @@ public class TextureView extends View {
*/
public TextureView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
+ mRenderNode.setIsTextureView();
}
/**
@@ -247,6 +250,7 @@ public class TextureView extends View {
public TextureView(@NonNull Context context, @Nullable AttributeSet attrs,
int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
+ mRenderNode.setIsTextureView();
}
/**
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 6af160c04b4b..441636d9a2d6 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -32321,7 +32321,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
}
/**
- * Gets the mode for determining whether this view is a credential.
+ * Sets whether this view is a credential for Credential Manager purposes.
*
* <p>See {@link #isCredential()}.
*
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index 8d74e99c56ba..f662c7372667 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -200,8 +200,10 @@ import android.view.contentcapture.MainContentCaptureSession;
import android.view.inputmethod.ImeTracker;
import android.view.inputmethod.InputMethodManager;
import android.widget.Scroller;
+import android.window.BackEvent;
import android.window.ClientWindowFrames;
import android.window.CompatOnBackInvokedCallback;
+import android.window.OnBackAnimationCallback;
import android.window.OnBackInvokedCallback;
import android.window.OnBackInvokedDispatcher;
import android.window.ScreenCapture;
@@ -6526,6 +6528,7 @@ public final class ViewRootImpl implements ViewParent,
*/
final class NativePreImeInputStage extends AsyncInputStage
implements InputQueue.FinishedInputEventCallback {
+
public NativePreImeInputStage(InputStage next, String traceCounter) {
super(next, traceCounter);
}
@@ -6533,32 +6536,62 @@ public final class ViewRootImpl implements ViewParent,
@Override
protected int onProcess(QueuedInputEvent q) {
if (q.mEvent instanceof KeyEvent) {
- final KeyEvent event = (KeyEvent) q.mEvent;
+ final KeyEvent keyEvent = (KeyEvent) q.mEvent;
// If the new back dispatch is enabled, intercept KEYCODE_BACK before it reaches the
// view tree or IME, and invoke the appropriate {@link OnBackInvokedCallback}.
- if (isBack(event)
+ if (isBack(keyEvent)
&& mContext != null
&& mOnBackInvokedDispatcher.isOnBackInvokedCallbackEnabled()) {
- OnBackInvokedCallback topCallback =
- getOnBackInvokedDispatcher().getTopCallback();
- if (event.getAction() == KeyEvent.ACTION_UP) {
- if (topCallback != null) {
+ return doOnBackKeyEvent(keyEvent);
+ }
+
+ if (mInputQueue != null) {
+ mInputQueue.sendInputEvent(q.mEvent, q, true, this);
+ return DEFER;
+ }
+ }
+ return FORWARD;
+ }
+
+ private int doOnBackKeyEvent(KeyEvent keyEvent) {
+ OnBackInvokedCallback topCallback = getOnBackInvokedDispatcher().getTopCallback();
+ if (topCallback instanceof OnBackAnimationCallback) {
+ final OnBackAnimationCallback animationCallback =
+ (OnBackAnimationCallback) topCallback;
+ switch (keyEvent.getAction()) {
+ case KeyEvent.ACTION_DOWN:
+ // ACTION_DOWN is emitted twice: once when the user presses the button,
+ // and again a few milliseconds later.
+ // Based on the result of `keyEvent.getRepeatCount()` we have:
+ // - 0 means the button was pressed.
+ // - 1 means the button continues to be pressed (long press).
+ if (keyEvent.getRepeatCount() == 0) {
+ animationCallback.onBackStarted(
+ new BackEvent(0, 0, 0f, BackEvent.EDGE_LEFT));
+ }
+ break;
+ case KeyEvent.ACTION_UP:
+ if (keyEvent.isCanceled()) {
+ animationCallback.onBackCancelled();
+ } else {
topCallback.onBackInvoked();
return FINISH_HANDLED;
}
+ break;
+ }
+ } else if (topCallback != null) {
+ if (keyEvent.getAction() == KeyEvent.ACTION_UP) {
+ if (!keyEvent.isCanceled()) {
+ topCallback.onBackInvoked();
+ return FINISH_HANDLED;
} else {
- // Drop other actions such as {@link KeyEvent.ACTION_DOWN}.
- return FINISH_NOT_HANDLED;
+ Log.d(mTag, "Skip onBackInvoked(), reason: keyEvent.isCanceled=true");
}
}
}
- if (mInputQueue != null && q.mEvent instanceof KeyEvent) {
- mInputQueue.sendInputEvent(q.mEvent, q, true, this);
- return DEFER;
- }
- return FORWARD;
+ return FINISH_NOT_HANDLED;
}
@Override
diff --git a/core/java/android/view/autofill/AutofillManager.java b/core/java/android/view/autofill/AutofillManager.java
index 5d121ad2957f..2ef7419ac1b1 100644
--- a/core/java/android/view/autofill/AutofillManager.java
+++ b/core/java/android/view/autofill/AutofillManager.java
@@ -1773,7 +1773,7 @@ public final class AutofillManager {
mForAugmentedAutofillOnly = false;
}
- if ((flags & FLAG_SUPPORTS_FILL_DIALOG) != 0 && view != null) {
+ if ((flags & FLAG_SUPPORTS_FILL_DIALOG) != 0) {
flags |= FLAG_RESET_FILL_DIALOG_STATE;
}
diff --git a/core/java/android/view/inputmethod/CancellableHandwritingGesture.java b/core/java/android/view/inputmethod/CancellableHandwritingGesture.java
index 3e7974b0a6b8..09c2b9006817 100644
--- a/core/java/android/view/inputmethod/CancellableHandwritingGesture.java
+++ b/core/java/android/view/inputmethod/CancellableHandwritingGesture.java
@@ -17,6 +17,7 @@
package android.view.inputmethod;
import android.annotation.NonNull;
+import android.annotation.Nullable;
import android.annotation.TestApi;
import android.os.CancellationSignal;
import android.os.CancellationSignalBeamer;
@@ -28,10 +29,13 @@ import android.os.IBinder;
*/
@TestApi
public abstract class CancellableHandwritingGesture extends HandwritingGesture {
+ @NonNull
CancellationSignal mCancellationSignal;
+ @Nullable
IBinder mCancellationSignalToken;
+
/**
* Set {@link CancellationSignal} for testing only.
* @hide
@@ -41,13 +45,20 @@ public abstract class CancellableHandwritingGesture extends HandwritingGesture {
mCancellationSignal = cancellationSignal;
}
+ @NonNull
CancellationSignal getCancellationSignal() {
return mCancellationSignal;
}
- void unbeamCancellationSignal(CancellationSignalBeamer.Receiver receiver) {
- mCancellationSignal = receiver.unbeam(mCancellationSignalToken);
- mCancellationSignalToken = null;
+ /**
+ * Unbeam cancellation token.
+ * @hide
+ */
+ public void unbeamCancellationSignal(@NonNull CancellationSignalBeamer.Receiver receiver) {
+ if (mCancellationSignalToken != null) {
+ mCancellationSignal = receiver.unbeam(mCancellationSignalToken);
+ mCancellationSignalToken = null;
+ }
}
}
diff --git a/core/java/com/android/internal/app/AppLocaleCollector.java b/core/java/com/android/internal/app/AppLocaleCollector.java
index 7fe1e3ae5dba..7cf428ad97a5 100644
--- a/core/java/com/android/internal/app/AppLocaleCollector.java
+++ b/core/java/com/android/internal/app/AppLocaleCollector.java
@@ -154,12 +154,16 @@ public class AppLocaleCollector implements LocalePickerWithRegion.LocaleCollecto
}
/**
- * Get the locales that system activates.
- * @return A set which includes all the locales that system activates.
+ * Get a list of system locale that removes all extensions except for the numbering system.
*/
@VisibleForTesting
- public List<LocaleStore.LocaleInfo> getSystemCurrentLocale() {
- return LocaleStore.getSystemCurrentLocaleInfo();
+ public List<LocaleStore.LocaleInfo> getSystemCurrentLocales() {
+ List<LocaleStore.LocaleInfo> sysLocales = LocaleStore.getSystemCurrentLocales();
+ return sysLocales.stream().filter(
+ // For the locale to be added into the suggestion area, its country could not be
+ // empty.
+ info -> info.getLocale().getCountry().length() > 0).collect(
+ Collectors.toList());
}
@Override
@@ -220,12 +224,15 @@ public class AppLocaleCollector implements LocalePickerWithRegion.LocaleCollecto
// Add current system language into suggestion list
if (!isForCountryMode) {
- boolean isCurrentLocale, isInAppOrIme;
- for (LocaleStore.LocaleInfo localeInfo : getSystemCurrentLocale()) {
+ boolean isCurrentLocale, existsInApp, existsInIme;
+ for (LocaleStore.LocaleInfo localeInfo : getSystemCurrentLocales()) {
isCurrentLocale = mAppCurrentLocale != null
&& localeInfo.getLocale().equals(mAppCurrentLocale.getLocale());
- isInAppOrIme = existsInAppOrIme(localeInfo.getLocale());
- if (!isCurrentLocale && !isInAppOrIme) {
+ // Add the system suggestion flag if the localeInfo exists in mAllAppActiveLocales
+ // and mImeLocales.
+ existsInApp = addSystemSuggestionFlag(localeInfo, mAllAppActiveLocales);
+ existsInIme = addSystemSuggestionFlag(localeInfo, mImeLocales);
+ if (!isCurrentLocale && !existsInApp && !existsInIme) {
appLocaleList.add(localeInfo);
}
}
@@ -248,6 +255,8 @@ public class AppLocaleCollector implements LocalePickerWithRegion.LocaleCollecto
// Filter out the locale with the same language and country
// like zh-TW vs zh-Hant-TW.
localeSet = filterSameLanguageAndCountry(localeSet, suggestedSet);
+ // Add IME suggestion flag if the locale is supported by IME.
+ localeSet = addImeSuggestionFlag(localeSet);
}
appLocaleList.addAll(localeSet);
suggestedSet.addAll(localeSet);
@@ -284,6 +293,31 @@ public class AppLocaleCollector implements LocalePickerWithRegion.LocaleCollecto
Collectors.toSet());
}
+ private boolean addSystemSuggestionFlag(LocaleStore.LocaleInfo localeInfo,
+ Set<LocaleStore.LocaleInfo> appLocaleSet) {
+ for (LocaleStore.LocaleInfo info : appLocaleSet) {
+ if (info.getLocale().equals(localeInfo.getLocale())) {
+ info.extendSuggestionOfType(
+ LocaleStore.LocaleInfo.SUGGESTION_TYPE_SYSTEM_AVAILABLE_LANGUAGE);
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private Set<LocaleStore.LocaleInfo> addImeSuggestionFlag(
+ Set<LocaleStore.LocaleInfo> localeSet) {
+ for (LocaleStore.LocaleInfo localeInfo : localeSet) {
+ for (LocaleStore.LocaleInfo imeLocale : mImeLocales) {
+ if (imeLocale.getLocale().equals(localeInfo.getLocale())) {
+ localeInfo.extendSuggestionOfType(
+ LocaleStore.LocaleInfo.SUGGESTION_TYPE_IME_LANGUAGE);
+ }
+ }
+ }
+ return localeSet;
+ }
+
private Set<LocaleStore.LocaleInfo> filterSameLanguageAndCountry(
Set<LocaleStore.LocaleInfo> newLocaleList,
Set<LocaleStore.LocaleInfo> existingLocaleList) {
@@ -306,17 +340,6 @@ public class AppLocaleCollector implements LocalePickerWithRegion.LocaleCollecto
return result;
}
- private boolean existsInAppOrIme(Locale locale) {
- boolean existInApp = mAllAppActiveLocales.stream().anyMatch(
- localeInfo -> localeInfo.getLocale().equals(locale));
- if (existInApp) {
- return true;
- } else {
- return mImeLocales.stream().anyMatch(
- localeInfo -> localeInfo.getLocale().equals(locale));
- }
- }
-
private Set<LocaleStore.LocaleInfo> filterSupportedLocales(
Set<LocaleStore.LocaleInfo> suggestedLocales,
HashSet<Locale> appSupportedLocales) {
diff --git a/core/java/com/android/internal/app/HeavyWeightSwitcherActivity.java b/core/java/com/android/internal/app/HeavyWeightSwitcherActivity.java
index 801c934676d7..0f5ee8b763ec 100644
--- a/core/java/com/android/internal/app/HeavyWeightSwitcherActivity.java
+++ b/core/java/com/android/internal/app/HeavyWeightSwitcherActivity.java
@@ -18,6 +18,7 @@ package com.android.internal.app;
import android.app.Activity;
import android.app.ActivityManager;
+import android.app.ActivityOptions;
import android.app.ActivityTaskManager;
import android.app.ActivityThread;
import android.app.IApplicationThread;
@@ -150,7 +151,12 @@ public class HeavyWeightSwitcherActivity extends Activity {
Intent.FLAG_ACTIVITY_FORWARD_RESULT,
Intent.FLAG_ACTIVITY_FORWARD_RESULT, 0);
} else {
- startIntentSenderForResult(mStartIntent, -1, null, 0, 0, 0);
+ ActivityOptions activityOptions =
+ ActivityOptions.makeBasic()
+ .setPendingIntentBackgroundActivityStartMode(
+ ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED);
+ startIntentSenderForResult(mStartIntent, -1, null, 0, 0, 0,
+ activityOptions.toBundle());
}
} catch (IntentSender.SendIntentException ex) {
Log.w("HeavyWeightSwitcherActivity", "Failure starting", ex);
diff --git a/core/java/com/android/internal/app/LocalePickerWithRegion.java b/core/java/com/android/internal/app/LocalePickerWithRegion.java
index 5dfc0eafd47e..27eebbef6245 100644
--- a/core/java/com/android/internal/app/LocalePickerWithRegion.java
+++ b/core/java/com/android/internal/app/LocalePickerWithRegion.java
@@ -270,6 +270,10 @@ public class LocalePickerWithRegion extends ListFragment implements SearchView.O
boolean mayHaveDifferentNumberingSystem = locale.hasNumberingSystems();
if (isSystemLocale
+ // The suggeseted locale would contain the country code except an edge case for
+ // SUGGESTION_TYPE_CURRENT where the application itself set the preferred locale.
+ // In this case, onLocaleSelected() will still set the app locale.
+ || locale.isSuggested()
|| (isRegionLocale && !mayHaveDifferentNumberingSystem)
|| mIsNumberingSystem) {
if (mListener != null) {
diff --git a/core/java/com/android/internal/app/LocaleStore.java b/core/java/com/android/internal/app/LocaleStore.java
index d07058daad8a..f4b858f87413 100644
--- a/core/java/com/android/internal/app/LocaleStore.java
+++ b/core/java/com/android/internal/app/LocaleStore.java
@@ -16,6 +16,7 @@
package com.android.internal.app;
+import android.annotation.IntDef;
import android.app.LocaleManager;
import android.compat.annotation.UnsupportedAppUsage;
import android.content.Context;
@@ -29,6 +30,8 @@ import android.view.inputmethod.InputMethodSubtype;
import com.android.internal.annotations.VisibleForTesting;
import java.io.Serializable;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
@@ -47,15 +50,42 @@ public class LocaleStore {
private static boolean sFullyInitialized = false;
public static class LocaleInfo implements Serializable {
- @VisibleForTesting static final int SUGGESTION_TYPE_NONE = 0;
- @VisibleForTesting static final int SUGGESTION_TYPE_SIM = 1 << 0;
- @VisibleForTesting static final int SUGGESTION_TYPE_CFG = 1 << 1;
+ public static final int SUGGESTION_TYPE_NONE = 0;
+ // A mask used to identify the suggested locale is from SIM.
+ public static final int SUGGESTION_TYPE_SIM = 1 << 0;
+ // A mask used to identify the suggested locale is from the config.
+ public static final int SUGGESTION_TYPE_CFG = 1 << 1;
// Only for per-app language picker
- @VisibleForTesting static final int SUGGESTION_TYPE_CURRENT = 1 << 2;
+ // A mask used to identify the suggested locale is from the same application's current
+ // configured locale.
+ public static final int SUGGESTION_TYPE_CURRENT = 1 << 2;
// Only for per-app language picker
- @VisibleForTesting static final int SUGGESTION_TYPE_SYSTEM_LANGUAGE = 1 << 3;
+ // A mask used to identify the suggested locale is the system default language.
+ public static final int SUGGESTION_TYPE_SYSTEM_LANGUAGE = 1 << 3;
// Only for per-app language picker
- @VisibleForTesting static final int SUGGESTION_TYPE_OTHER_APP_LANGUAGE = 1 << 4;
+ // A mask used to identify the suggested locale is from other applications' configured
+ // locales.
+ public static final int SUGGESTION_TYPE_OTHER_APP_LANGUAGE = 1 << 4;
+ // Only for per-app language picker
+ // A mask used to identify the suggested locale is what the active IME supports.
+ public static final int SUGGESTION_TYPE_IME_LANGUAGE = 1 << 5;
+ // Only for per-app language picker
+ // A mask used to identify the suggested locale is in the current system languages.
+ public static final int SUGGESTION_TYPE_SYSTEM_AVAILABLE_LANGUAGE = 1 << 6;
+ /** @hide */
+ @IntDef(prefix = { "SUGGESTION_TYPE_" }, value = {
+ SUGGESTION_TYPE_NONE,
+ SUGGESTION_TYPE_SIM,
+ SUGGESTION_TYPE_CFG,
+ SUGGESTION_TYPE_CURRENT,
+ SUGGESTION_TYPE_SYSTEM_LANGUAGE,
+ SUGGESTION_TYPE_OTHER_APP_LANGUAGE,
+ SUGGESTION_TYPE_IME_LANGUAGE,
+ SUGGESTION_TYPE_SYSTEM_AVAILABLE_LANGUAGE
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface SuggestionType {}
+
private final Locale mLocale;
private final Locale mParent;
private final String mId;
@@ -88,6 +118,17 @@ public class LocaleStore {
this(Locale.forLanguageTag(localeId));
}
+ private LocaleInfo(LocaleInfo localeInfo) {
+ this.mLocale = localeInfo.getLocale();
+ this.mId = localeInfo.getId();
+ this.mParent = localeInfo.getParent();
+ this.mHasNumberingSystems = localeInfo.mHasNumberingSystems;
+ this.mIsChecked = localeInfo.getChecked();
+ this.mSuggestionFlags = localeInfo.mSuggestionFlags;
+ this.mIsTranslated = localeInfo.isTranslated();
+ this.mIsPseudo = localeInfo.mIsPseudo;
+ }
+
private static Locale getParent(Locale locale) {
if (locale.getCountry().isEmpty()) {
return null;
@@ -142,13 +183,31 @@ public class LocaleStore {
return mSuggestionFlags != SUGGESTION_TYPE_NONE;
}
- private boolean isSuggestionOfType(int suggestionMask) {
+ /**
+ * Check whether the LocaleInfo is suggested by a specific mask
+ *
+ * @param suggestionMask The mask which is used to identify the suggestion flag.
+ * @return true if the locale is suggested by a specific suggestion flag. Otherwise, false.
+ */
+ public boolean isSuggestionOfType(int suggestionMask) {
if (!mIsTranslated) { // Never suggest an untranslated locale
return false;
}
return (mSuggestionFlags & suggestionMask) == suggestionMask;
}
+ /**
+ * Extend the locale's suggestion type
+ *
+ * @param suggestionMask The mask to extend the suggestion flag
+ */
+ public void extendSuggestionOfType(@SuggestionType int suggestionMask) {
+ if (!mIsTranslated) { // Never suggest an untranslated locale
+ return;
+ }
+ mSuggestionFlags |= suggestionMask;
+ }
+
@UnsupportedAppUsage
public String getFullNameNative() {
if (mFullNameNative == null) {
@@ -186,14 +245,14 @@ public class LocaleStore {
private String getLangScriptKey() {
if (mLangScriptKey == null) {
Locale baseLocale = new Locale.Builder()
- .setLocale(mLocale)
- .setExtension(Locale.UNICODE_LOCALE_EXTENSION, "")
- .build();
+ .setLocale(mLocale)
+ .setExtension(Locale.UNICODE_LOCALE_EXTENSION, "")
+ .build();
Locale parentWithScript = getParent(LocaleHelper.addLikelySubtags(baseLocale));
mLangScriptKey =
(parentWithScript == null)
- ? mLocale.toLanguageTag()
- : parentWithScript.toLanguageTag();
+ ? mLocale.toLanguageTag()
+ : parentWithScript.toLanguageTag();
}
return mLangScriptKey;
}
@@ -233,6 +292,10 @@ public class LocaleStore {
public boolean isSystemLocale() {
return (mSuggestionFlags & SUGGESTION_TYPE_SYSTEM_LANGUAGE) > 0;
}
+
+ public boolean isInCurrentSystemLocales() {
+ return (mSuggestionFlags & SUGGESTION_TYPE_SYSTEM_AVAILABLE_LANGUAGE) > 0;
+ }
}
private static Set<String> getSimCountries(Context context) {
@@ -304,13 +367,13 @@ public class LocaleStore {
Locale locale = localeList == null ? null : localeList.get(0);
if (locale != null) {
- LocaleInfo localeInfo = new LocaleInfo(locale);
+ LocaleInfo cacheInfo = getLocaleInfo(locale, sLocaleCache);
+ LocaleInfo localeInfo = new LocaleInfo(cacheInfo);
if (isAppSelected) {
localeInfo.mSuggestionFlags |= LocaleInfo.SUGGESTION_TYPE_CURRENT;
} else {
localeInfo.mSuggestionFlags |= LocaleInfo.SUGGESTION_TYPE_OTHER_APP_LANGUAGE;
}
- localeInfo.mIsTranslated = true;
return localeInfo;
}
} catch (IllegalArgumentException e) {
@@ -329,26 +392,27 @@ public class LocaleStore {
List<InputMethodSubtype> list) {
Set<LocaleInfo> imeLocales = new HashSet<>();
for (InputMethodSubtype subtype : list) {
- LocaleInfo localeInfo = new LocaleInfo(subtype.getLanguageTag());
- localeInfo.mSuggestionFlags |= LocaleInfo.SUGGESTION_TYPE_OTHER_APP_LANGUAGE;
- localeInfo.mIsTranslated = true;
+ Locale locale = Locale.forLanguageTag(subtype.getLanguageTag());
+ LocaleInfo cacheInfo = getLocaleInfo(locale, sLocaleCache);
+ LocaleInfo localeInfo = new LocaleInfo(cacheInfo);
+ localeInfo.mSuggestionFlags |= LocaleInfo.SUGGESTION_TYPE_IME_LANGUAGE;
imeLocales.add(localeInfo);
}
return imeLocales;
}
/**
- * Returns a list of system languages with LocaleInfo
+ * Returns a list of system locale that removes all extensions except for the numbering system.
*/
- public static List<LocaleInfo> getSystemCurrentLocaleInfo() {
+ public static List<LocaleInfo> getSystemCurrentLocales() {
List<LocaleInfo> localeList = new ArrayList<>();
-
LocaleList systemLangList = LocaleList.getDefault();
for(int i = 0; i < systemLangList.size(); i++) {
- LocaleInfo systemLocaleInfo = new LocaleInfo(systemLangList.get(i));
- systemLocaleInfo.mSuggestionFlags |= LocaleInfo.SUGGESTION_TYPE_SIM;
- systemLocaleInfo.mIsTranslated = true;
- localeList.add(systemLocaleInfo);
+ Locale sysLocale = getLocaleWithOnlyNumberingSystem(systemLangList.get(i));
+ LocaleInfo cacheInfo = getLocaleInfo(sysLocale, sLocaleCache);
+ LocaleInfo localeInfo = new LocaleInfo(cacheInfo);
+ localeInfo.mSuggestionFlags |= LocaleInfo.SUGGESTION_TYPE_SYSTEM_AVAILABLE_LANGUAGE;
+ localeList.add(localeInfo);
}
return localeList;
}
@@ -542,12 +606,12 @@ public class LocaleStore {
Set<String> ignorables,
LocaleInfo parent,
boolean translatedOnly,
- HashMap<String, LocaleInfo> supportedLcoaleInfos) {
+ HashMap<String, LocaleInfo> supportedLocaleInfos) {
boolean hasTargetParent = parent != null;
String parentId = hasTargetParent ? parent.getId() : null;
HashSet<LocaleInfo> result = new HashSet<>();
- for (LocaleStore.LocaleInfo li : supportedLcoaleInfos.values()) {
+ for (LocaleStore.LocaleInfo li : supportedLocaleInfos.values()) {
if (isShallIgnore(ignorables, li, translatedOnly)) {
continue;
}
@@ -556,13 +620,18 @@ public class LocaleStore {
if (li.isSuggestionOfType(LocaleInfo.SUGGESTION_TYPE_SIM)) {
result.add(li);
} else {
- result.add(getLocaleInfo(li.getParent(), supportedLcoaleInfos));
+ Locale locale = li.getParent();
+ LocaleInfo localeInfo = getLocaleInfo(locale, supportedLocaleInfos);
+ addLocaleInfoToMap(locale, localeInfo, supportedLocaleInfos);
+ result.add(localeInfo);
}
break;
case TIER_REGION:
if (parentId.equals(li.getParent().toLanguageTag())) {
- result.add(getLocaleInfo(
- li.getLocale().stripExtensions(), supportedLcoaleInfos));
+ Locale locale = li.getLocale().stripExtensions();
+ LocaleInfo localeInfo = getLocaleInfo(locale, supportedLocaleInfos);
+ addLocaleInfoToMap(locale, localeInfo, supportedLocaleInfos);
+ result.add(localeInfo);
}
break;
case TIER_NUMBERING:
@@ -636,7 +705,9 @@ public class LocaleStore {
@UnsupportedAppUsage
public static LocaleInfo getLocaleInfo(Locale locale) {
- return getLocaleInfo(locale, sLocaleCache);
+ LocaleInfo localeInfo = getLocaleInfo(locale, sLocaleCache);
+ addLocaleInfoToMap(locale, localeInfo, sLocaleCache);
+ return localeInfo;
}
private static LocaleInfo getLocaleInfo(
@@ -646,10 +717,7 @@ public class LocaleStore {
if (!localeInfos.containsKey(id)) {
// Locale preferences can modify the language tag to current system languages, so we
// need to check the input locale without extra u extension except numbering system.
- Locale filteredLocale = new Locale.Builder()
- .setLocale(locale.stripExtensions())
- .setUnicodeLocaleKeyword("nu", locale.getUnicodeLocaleType("nu"))
- .build();
+ Locale filteredLocale = getLocaleWithOnlyNumberingSystem(locale);
if (localeInfos.containsKey(filteredLocale.toLanguageTag())) {
result = new LocaleInfo(locale);
LocaleInfo localeInfo = localeInfos.get(filteredLocale.toLanguageTag());
@@ -662,13 +730,29 @@ public class LocaleStore {
return result;
}
result = new LocaleInfo(locale);
- localeInfos.put(id, result);
} else {
result = localeInfos.get(id);
}
return result;
}
+ private static Locale getLocaleWithOnlyNumberingSystem(Locale locale) {
+ return new Locale.Builder()
+ .setLocale(locale.stripExtensions())
+ .setUnicodeLocaleKeyword("nu", locale.getUnicodeLocaleType("nu"))
+ .build();
+ }
+
+ private static void addLocaleInfoToMap(Locale locale, LocaleInfo localeInfo,
+ HashMap<String, LocaleInfo> map) {
+ if (!map.containsKey(locale.toLanguageTag())) {
+ Locale localeWithNumberingSystem = getLocaleWithOnlyNumberingSystem(locale);
+ if (!map.containsKey(localeWithNumberingSystem.toLanguageTag())) {
+ map.put(locale.toLanguageTag(), localeInfo);
+ }
+ }
+ }
+
/**
* API for testing.
*/
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index 7e0a36d30771..af08e03f313f 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -7138,9 +7138,10 @@
android:protectionLevel="signature" />
<!-- @SystemApi Allows modifying accessibility state.
+ <p> The only approved role for this permission is COMPANION_DEVICE_APP_STREAMING.
@hide -->
<permission android:name="android.permission.MANAGE_ACCESSIBILITY"
- android:protectionLevel="signature|setup|recents" />
+ android:protectionLevel="signature|setup|recents|role" />
<!-- @SystemApi Allows an app to grant a profile owner access to device identifiers.
<p>Not for use by third-party applications.
diff --git a/core/res/res/values-af/strings.xml b/core/res/res/values-af/strings.xml
index 0b3a28846d11..7309fd1fe1ec 100644
--- a/core/res/res/values-af/strings.xml
+++ b/core/res/res/values-af/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Hervat"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Geen werkprogramme nie"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Geen persoonlike programme nie"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Maak persoonlike <xliff:g id="APP">%s</xliff:g> oop"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Maak werk-<xliff:g id="APP">%s</xliff:g> oop"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Gebruik persoonlike blaaier"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Gebruik werkblaaier"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM se netwerkontsluiting-PIN"</string>
diff --git a/core/res/res/values-am/strings.xml b/core/res/res/values-am/strings.xml
index 1ce1b253178b..2788df781092 100644
--- a/core/res/res/values-am/strings.xml
+++ b/core/res/res/values-am/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ከቆመበት ቀጥል"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"ምንም የሥራ መተግበሪያዎች የሉም"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"ምንም የግል መተግበሪያዎች የሉም"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"የግል <xliff:g id="APP">%s</xliff:g> ይክፈቱ"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"የሥራ <xliff:g id="APP">%s</xliff:g> ይክፈቱ"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"የግል አሳሽ ተጠቀም"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"የስራ አሳሽ ተጠቀም"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"የሲም አውታረ መረብ መክፈቻ ፒን"</string>
diff --git a/core/res/res/values-ar/strings.xml b/core/res/res/values-ar/strings.xml
index f245825d3df9..dc2fc6a51078 100644
--- a/core/res/res/values-ar/strings.xml
+++ b/core/res/res/values-ar/strings.xml
@@ -690,7 +690,7 @@
<string name="face_acquired_too_right" msgid="6245286514593540859">"يُرجى تحريك الهاتف جهة اليسار."</string>
<string name="face_acquired_too_left" msgid="9201762240918405486">"يُرجى تحريك الهاتف لجهة اليمين"</string>
<string name="face_acquired_poor_gaze" msgid="4427153558773628020">"يُرجى النظر إلى جهازك مباشرة أكثر."</string>
- <string name="face_acquired_not_detected" msgid="1057966913397548150">"تتعذّر رؤية وجهك. ارفع هاتفك إلى مستوى العينَين."</string>
+ <string name="face_acquired_not_detected" msgid="1057966913397548150">"ارفع هاتفك إلى مستوى العينَين لأنّه تتعذّر رؤية وجهك"</string>
<string name="face_acquired_too_much_motion" msgid="8199691445085189528">"حركة أكثر من اللازم يُرجى حمل بدون حركة."</string>
<string name="face_acquired_recalibrate" msgid="8724013080976469746">"يُرجى إعادة تسجيل وجهك."</string>
<string name="face_acquired_too_different" msgid="2520389515612972889">"يتعذّر التعرّف على الوجه. يُرجى إعادة المحاولة."</string>
@@ -1956,8 +1956,8 @@
<string name="app_suspended_default_message" msgid="6451215678552004172">"التطبيق <xliff:g id="APP_NAME_0">%1$s</xliff:g> غير متاح الآن، وهو مُدار بواسطة <xliff:g id="APP_NAME_1">%2$s</xliff:g>."</string>
<string name="app_suspended_more_details" msgid="211260942831587014">"مزيد من المعلومات"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"استئناف تشغيل التطبيق"</string>
- <string name="work_mode_off_title" msgid="6367463960165135829">"أتريد إلغاء إيقاف تطبيقات العمل مؤقتًا؟"</string>
- <string name="work_mode_turn_on" msgid="5316648862401307800">"إلغاء الإيقاف المؤقت"</string>
+ <string name="work_mode_off_title" msgid="6367463960165135829">"أتريد إعادة تفعيل تطبيقات العمل؟"</string>
+ <string name="work_mode_turn_on" msgid="5316648862401307800">"إعادة التفعيل"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"الطوارئ"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"التطبيق غير متاح"</string>
<string name="app_blocked_message" msgid="542972921087873023">"تطبيق <xliff:g id="APP_NAME">%1$s</xliff:g> غير متاح الآن."</string>
@@ -2168,8 +2168,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"إلغاء الإيقاف المؤقت"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"ما مِن تطبيقات عمل."</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"ما مِن تطبيقات شخصية."</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"فتح تطبيق \"<xliff:g id="APP">%s</xliff:g>\" في الملف الشخصي"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"فتح تطبيق \"<xliff:g id="APP">%s</xliff:g>\" في ملف العمل"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"استخدام المتصفّح الشخصي"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"استخدام متصفّح العمل"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"‏رقم التعريف الشخصي لإلغاء قفل شبكة شريحة SIM"</string>
diff --git a/core/res/res/values-as/strings.xml b/core/res/res/values-as/strings.xml
index 78ce491b298a..9ec95eadf650 100644
--- a/core/res/res/values-as/strings.xml
+++ b/core/res/res/values-as/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"আনপজ কৰক"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"কোনো কৰ্মস্থানৰ এপ্‌ নাই"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"কোনো ব্যক্তিগত এপ্‌ নাই"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"ব্যক্তিগত <xliff:g id="APP">%s</xliff:g> খোলক"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"কৰ্মস্থানৰ <xliff:g id="APP">%s</xliff:g> খোলক"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ব্যক্তিগত ব্ৰাউজাৰ ব্যৱহাৰ কৰক"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"কৰ্মস্থানৰ ব্ৰাউজাৰ ব্যৱহাৰ কৰক"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"ছিম নেটৱৰ্ক আনলক কৰা পিন"</string>
diff --git a/core/res/res/values-az/strings.xml b/core/res/res/values-az/strings.xml
index c6c5e9120f05..f56f333241ec 100644
--- a/core/res/res/values-az/strings.xml
+++ b/core/res/res/values-az/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Pauzanı bitirin"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"İş tətbiqi yoxdur"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Şəxsi tətbiq yoxdur"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Açın: <xliff:g id="APP">%s</xliff:g> (şəxsi)"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Açın: <xliff:g id="APP">%s</xliff:g> (iş)"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Şəxsi brauzerdən istifadə edin"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"İş brauzerindən istifadə edin"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM şəbəkəsi kilidaçma PİN\'i"</string>
diff --git a/core/res/res/values-b+sr+Latn/strings.xml b/core/res/res/values-b+sr+Latn/strings.xml
index 3d640d800abd..ffd3f85e7925 100644
--- a/core/res/res/values-b+sr+Latn/strings.xml
+++ b/core/res/res/values-b+sr+Latn/strings.xml
@@ -1954,7 +1954,7 @@
<string name="app_suspended_more_details" msgid="211260942831587014">"Saznajte više"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"Opozovi pauziranje aplikacije"</string>
<string name="work_mode_off_title" msgid="6367463960165135829">"Uključiti poslovne aplikacije?"</string>
- <string name="work_mode_turn_on" msgid="5316648862401307800">"Opozovi pauzu"</string>
+ <string name="work_mode_turn_on" msgid="5316648862401307800">"Ponovo aktiviraj"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"Hitan slučaj"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"Aplikacija nije dostupna"</string>
<string name="app_blocked_message" msgid="542972921087873023">"Aplikacija <xliff:g id="APP_NAME">%1$s</xliff:g> trenutno nije dostupna."</string>
@@ -2162,11 +2162,15 @@
<string name="resolver_cant_share_with_personal_apps_explanation" msgid="6349766201904601544">"Ovaj sadržaj ne može da se deli pomoću ličnih aplikacija"</string>
<string name="resolver_cant_access_personal_apps_explanation" msgid="1679399548862724359">"Ovaj sadržaj ne može da se otvara pomoću ličnih aplikacija"</string>
<string name="resolver_turn_on_work_apps" msgid="1535946298236678122">"Poslovne aplikacije su pauzirane"</string>
- <string name="resolver_switch_on_work" msgid="4527096360772311894">"Opozovi pauzu"</string>
+ <string name="resolver_switch_on_work" msgid="4527096360772311894">"Ponovo aktiviraj"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nema poslovnih aplikacija"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nema ličnih aplikacija"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Otvorite ličnu aplikaciju <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Otvorite poslovnu aplikaciju <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Koristi lični pregledač"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Koristi poslovni pregledač"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN za otključavanje SIM mreže"</string>
diff --git a/core/res/res/values-be/strings.xml b/core/res/res/values-be/strings.xml
index 5e97e2ed8754..dd065a5f3eb9 100644
--- a/core/res/res/values-be/strings.xml
+++ b/core/res/res/values-be/strings.xml
@@ -2166,8 +2166,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Уключыць"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Няма працоўных праграм"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Няма асабістых праграм"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Адкрыць асабістую праграму <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Адкрыць працоўную праграму <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Скарыстаць асабісты браўзер"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Скарыстаць працоўны браўзер"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN-код разблакіроўкі сеткі для SIM-карты"</string>
diff --git a/core/res/res/values-bg/strings.xml b/core/res/res/values-bg/strings.xml
index ae3c0c60f0a8..6b5ab2079276 100644
--- a/core/res/res/values-bg/strings.xml
+++ b/core/res/res/values-bg/strings.xml
@@ -1619,7 +1619,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Таблет"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"Телевизор"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Телефон"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Докинг станц.: Високогов."</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Високоговорители докинг станция"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Външно устройство"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Слушалки"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Отмяна на паузата"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Няма подходящи служебни приложения"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Няма подходящи лични приложения"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Към личния потребителски профил в(ъв) <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Към служебния потребителски профил в(ъв) <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Използване на личния браузър"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Използване на служебния браузър"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"ПИН за отключване на мрежата за SIM"</string>
diff --git a/core/res/res/values-bn/strings.xml b/core/res/res/values-bn/strings.xml
index d4fc14f1435b..5575f13fb5f0 100644
--- a/core/res/res/values-bn/strings.xml
+++ b/core/res/res/values-bn/strings.xml
@@ -639,7 +639,7 @@
<string-array name="fingerprint_acquired_vendor">
</string-array>
<string name="fingerprint_error_not_match" msgid="4599441812893438961">"আঙ্গুলের ছাপ শনাক্ত করা যায়নি"</string>
- <string name="fingerprint_udfps_error_not_match" msgid="8236930793223158856">"আঙুলের ছাপ শনাক্ত করা যায়নি"</string>
+ <string name="fingerprint_udfps_error_not_match" msgid="8236930793223158856">"ফিঙ্গারপ্রিন্ট শনাক্ত করা যায়নি"</string>
<string name="fingerprint_authenticated" msgid="2024862866860283100">"আঙ্গুলের ছাপ যাচাই করা হয়েছে"</string>
<string name="face_authenticated_no_confirmation_required" msgid="8867889115112348167">"ফেস যাচাই করা হয়েছে"</string>
<string name="face_authenticated_confirmation_required" msgid="6872632732508013755">"ফেস যাচাই করা হয়েছে, \'কনফার্ম করুন\' বোতাম প্রেস করুন"</string>
@@ -668,7 +668,7 @@
<string name="face_recalibrate_notification_name" msgid="7311163114750748686">"ফেস আনলক"</string>
<string name="face_recalibrate_notification_title" msgid="2524791952735579082">"\'ফেস আনলক\' ফিচার ব্যবহার করার ক্ষেত্রে হওয়া সমস্যা"</string>
<string name="face_recalibrate_notification_content" msgid="3064513770251355594">"আপনার ফেস মডেল মুছে দেওয়ার জন্য ট্যাপ করুন এবং তারপরে আবার ফেস যোগ করুন"</string>
- <string name="face_setup_notification_title" msgid="8843461561970741790">"\'ফেস আনলক\' সেট আপ করুন"</string>
+ <string name="face_setup_notification_title" msgid="8843461561970741790">"\'ফেস আনলক\' সেট-আপ করুন"</string>
<string name="face_setup_notification_content" msgid="5463999831057751676">"আপনার ফোনের দিকে তাকিয়ে এটিকে আনলক করুন"</string>
<string name="face_sensor_privacy_enabled" msgid="7407126963510598508">"\'ফেস আনলক\' ফিচার ব্যবহার করতে \'সেটিংস ও গোপনীয়তা\' বিকল্পে গিয়ে "<b>"ক্যামেরায় অ্যাক্সেস দিন"</b></string>
<string name="fingerprint_setup_notification_title" msgid="2002630611398849495">"আনলক করার জন্য বিভিন্ন উপায়ে সেট আপ করুন"</string>
@@ -691,9 +691,9 @@
<string name="face_acquired_recalibrate" msgid="8724013080976469746">"আপনার মুখের ছবি আবার নথিভুক্ত করুন।"</string>
<string name="face_acquired_too_different" msgid="2520389515612972889">"মুখ শনাক্ত করা যাচ্ছে না। আবার চেষ্টা করুন।"</string>
<string name="face_acquired_too_similar" msgid="8882920552674125694">"আপনার মাথার পজিশন সামান্য পরিবর্তন করুন"</string>
- <string name="face_acquired_pan_too_extreme" msgid="5417928604710621088">"আপনার ফোনের দিকে আরও সরাসরি তাকান"</string>
- <string name="face_acquired_tilt_too_extreme" msgid="5715715666540716620">"আপনার ফোনের দিকে আরও সরাসরি তাকান"</string>
- <string name="face_acquired_roll_too_extreme" msgid="8261939882838881194">"আপনার ফোনের দিকে আরও সরাসরি তাকান"</string>
+ <string name="face_acquired_pan_too_extreme" msgid="5417928604710621088">"আপনার ফোনের দিকে একদম সোজাসুজি তাকান"</string>
+ <string name="face_acquired_tilt_too_extreme" msgid="5715715666540716620">"আপনার ফোনের দিকে একদম সোজাসুজি তাকান"</string>
+ <string name="face_acquired_roll_too_extreme" msgid="8261939882838881194">"আপনার ফোনের দিকে একদম সোজাসুজি তাকান"</string>
<string name="face_acquired_obscured" msgid="4917643294953326639">"আপনার মুখকে আড়াল করে এমন সব কিছু সরিয়ে দিন।"</string>
<string name="face_acquired_sensor_dirty" msgid="8968391891086721678">"ব্ল্যাক বার সহ আপনার স্ক্রিনের উপরের অংশ মুছে ফেলুন"</string>
<!-- no translation found for face_acquired_dark_glasses_detected (5643703296620631986) -->
@@ -702,7 +702,7 @@
<skip />
<string name="face_acquired_recalibrate_alt" msgid="5702674220280332115">"ফেস মডেল তৈরি করা যাচ্ছে না। আবার চেষ্টা করুন।"</string>
<string name="face_acquired_dark_glasses_detected_alt" msgid="4052123776406041972">"কালো চশমা শনাক্ত করা হয়েছে। আপনার মুখ পুরোপুরি দৃশ্যমান হতে হবে।"</string>
- <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"মুখে মাস্ক শনাক্ত করা হয়েছে। আপনার মুখ পুরোপুরি দৃশ্যমান হতে হবে।"</string>
+ <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"আপনার মুখ ঢাকা আছে। পুরো মুখটাই দেখাতে হবে।"</string>
<string-array name="face_acquired_vendor">
</string-array>
<string name="face_error_hw_not_available" msgid="5085202213036026288">"ফেস যাচাই করা যায়নি। হার্ডওয়্যার উপলভ্য নেই।"</string>
@@ -1370,7 +1370,7 @@
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"অ্যানালগ অডিও অ্যাক্সেসরি শনাক্ত করা হয়েছে"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"সংযুক্ত ডিভাইসটি এই ফোনের সাথে ব্যবহার করা যাবে না। আরও জানতে ট্যাপ করুন।"</string>
<string name="adb_active_notification_title" msgid="408390247354560331">"USB ডিবাগিং কানেক্ট হয়েছে"</string>
- <string name="adb_active_notification_message" msgid="5617264033476778211">"ইউএসবি ডিবাগিং বন্ধ করতে ট্যাপ করুন"</string>
+ <string name="adb_active_notification_message" msgid="5617264033476778211">"USB ডিবাগিং বন্ধ করতে ট্যাপ করুন"</string>
<string name="adb_active_notification_message" product="tv" msgid="6624498401272780855">"USB ডিবাগিং অক্ষম করতে বেছে নিন।"</string>
<string name="adbwifi_active_notification_title" msgid="6147343659168302473">"ওয়্যারলেস ডিবাগিং কানেক্ট করা হয়েছে"</string>
<string name="adbwifi_active_notification_message" msgid="930987922852867972">"ওয়্যারলেস ডিবাগিং বন্ধ করতে ট্যাপ করুন"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"আনপজ করুন"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"এর জন্য কোনও অফিস অ্যাপ নেই"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"ব্যক্তিগত অ্যাপে দেখা যাবে না"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"ব্যক্তিগত <xliff:g id="APP">%s</xliff:g> অ্যাপ খুলুন"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"অফিসের <xliff:g id="APP">%s</xliff:g> অ্যাপ খুলুন"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ব্যক্তিগত ব্রাউজার ব্যবহার করুন"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"অফিস ব্রাউজার ব্যবহার করুন"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"সিম নেটওয়ার্ক আনলক পিন"</string>
diff --git a/core/res/res/values-bs/strings.xml b/core/res/res/values-bs/strings.xml
index a9905945ae21..97727d39acd3 100644
--- a/core/res/res/values-bs/strings.xml
+++ b/core/res/res/values-bs/strings.xml
@@ -1954,7 +1954,7 @@
<string name="app_suspended_more_details" msgid="211260942831587014">"Saznajte više"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"Ponovo aktiviraj aplikaciju"</string>
<string name="work_mode_off_title" msgid="6367463960165135829">"Pokrenuti poslovne aplikacije?"</string>
- <string name="work_mode_turn_on" msgid="5316648862401307800">"Prekini pauzu"</string>
+ <string name="work_mode_turn_on" msgid="5316648862401307800">"Ponovo pokreni"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"Hitan slučaj"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"Aplikacija nije dostupna"</string>
<string name="app_blocked_message" msgid="542972921087873023">"Aplikacija <xliff:g id="APP_NAME">%1$s</xliff:g> trenutno nije dostupna."</string>
@@ -2162,11 +2162,15 @@
<string name="resolver_cant_share_with_personal_apps_explanation" msgid="6349766201904601544">"Ovaj sadržaj nije moguće dijeliti pomoću ličnih aplikacija"</string>
<string name="resolver_cant_access_personal_apps_explanation" msgid="1679399548862724359">"Ovaj sadržaj nije moguće otvoriti pomoću ličnih aplikacija"</string>
<string name="resolver_turn_on_work_apps" msgid="1535946298236678122">"Poslovne aplikacije su pauzirane"</string>
- <string name="resolver_switch_on_work" msgid="4527096360772311894">"Prekini pauzu"</string>
+ <string name="resolver_switch_on_work" msgid="4527096360772311894">"Ponovo pokreni"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nema poslovnih aplikacija"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nema ličnih aplikacija"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Otvorite ličnu aplikaciju <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Otvorite poslovnu aplikaciju <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Koristi lični preglednik"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Koristi poslovni preglednik"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN za otključavanje mreže na SIM-u"</string>
diff --git a/core/res/res/values-ca/strings.xml b/core/res/res/values-ca/strings.xml
index 804f34b42a69..0110fa761b6d 100644
--- a/core/res/res/values-ca/strings.xml
+++ b/core/res/res/values-ca/strings.xml
@@ -299,8 +299,8 @@
<string name="android_system_label" msgid="5974767339591067210">"Sistema Android"</string>
<string name="user_owner_label" msgid="8628726904184471211">"Canvia al perfil personal"</string>
<string name="managed_profile_label" msgid="7316778766973512382">"Canvia al perfil de treball"</string>
- <string name="user_owner_app_label" msgid="1553595155465750298">"Canvia al perfil personal de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
- <string name="managed_profile_app_label" msgid="367401088383965725">"Canvia al perfil de treball de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="user_owner_app_label" msgid="1553595155465750298">"Canvia al perfil personal a <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="managed_profile_app_label" msgid="367401088383965725">"Canvia al perfil de treball a <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="permgrouplab_contacts" msgid="4254143639307316920">"Contactes"</string>
<string name="permgroupdesc_contacts" msgid="9163927941244182567">"accedir als contactes"</string>
<string name="permgrouplab_location" msgid="1858277002233964394">"Ubicació"</string>
@@ -1366,7 +1366,7 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"S\'ha activat el mode MIDI per USB"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"Dispositiu connectat com a càmera web"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"S\'ha connectat un accessori USB"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"Toca per veure més opcions."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"Toca per veure més opcions"</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"S\'està carregant el dispositiu connectat. Toca per veure més opcions."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"S\'ha detectat un accessori d\'àudio analògic"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"El dispositiu connectat no és compatible amb aquest telèfon. Toca per obtenir més informació."</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Reactiva"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Cap aplicació de treball"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Cap aplicació personal"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Obre <xliff:g id="APP">%s</xliff:g> al perfil personal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Obre <xliff:g id="APP">%s</xliff:g> al perfil de treball"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Utilitza el navegador personal"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Utilitza el navegador de treball"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN de desbloqueig de la xarxa SIM"</string>
diff --git a/core/res/res/values-cs/strings.xml b/core/res/res/values-cs/strings.xml
index 5afe4bd40ee8..3ffc26b54376 100644
--- a/core/res/res/values-cs/strings.xml
+++ b/core/res/res/values-cs/strings.xml
@@ -1367,7 +1367,7 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"Byl zapnut režim MIDI přes USB"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"Zařízení připojeno jako webkamera"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"Je připojeno příslušenství USB"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"Klepnutím zobrazíte další možnosti."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"Klepnutím zobrazíte další možnosti"</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"Nabíjení připojeného zařízení. Klepnutím zobrazíte další možnosti."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Bylo zjištěno analogové zvukové příslušenství"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"Připojené zařízení není s tímto telefonem kompatibilní. Klepnutím zobrazíte další informace."</string>
@@ -2166,8 +2166,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Zrušit pozastavení"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Žádné pracovní aplikace"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Žádné osobní aplikace"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Otevřít osobní aplikaci <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Otevřít pracovní aplikaci <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Použít osobní prohlížeč"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Použít pracovní prohlížeč"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Kód PIN odblokování sítě pro SIM kartu"</string>
diff --git a/core/res/res/values-da/strings.xml b/core/res/res/values-da/strings.xml
index 4398a3142877..3c3737e6e312 100644
--- a/core/res/res/values-da/strings.xml
+++ b/core/res/res/values-da/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Genoptag"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Der er ingen arbejdsapps"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Der er ingen personlige apps"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Åbn <xliff:g id="APP">%s</xliff:g> (privat)"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Åbn <xliff:g id="APP">%s</xliff:g> (arbejde)"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Brug personlig browser"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Brug arbejdsbrowser"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Pinkode til oplåsning af SIM-netværket"</string>
@@ -2325,7 +2329,7 @@
<string name="concurrent_display_notification_power_save_title" msgid="1794569070730736281">"Dual Screen er ikke tilgængelig"</string>
<string name="concurrent_display_notification_power_save_content" msgid="2198116070583851493">"Dual Screen er ikke tilgængelig, fordi Batterisparefunktion er aktiveret. Du kan deaktivere dette i Indstillinger."</string>
<string name="device_state_notification_settings_button" msgid="691937505741872749">"Gå til Indstillinger"</string>
- <string name="device_state_notification_turn_off_button" msgid="6327161707661689232">"Deaktiver"</string>
+ <string name="device_state_notification_turn_off_button" msgid="6327161707661689232">"Sluk"</string>
<string name="keyboard_layout_notification_selected_title" msgid="1202560174252421219">"<xliff:g id="DEVICE_NAME">%s</xliff:g> er konfigureret"</string>
<string name="keyboard_layout_notification_one_selected_message" msgid="4314216053129257197">"Tastaturlayoutet er angivet som <xliff:g id="LAYOUT_1">%s</xliff:g>. Tryk for at ændre dette."</string>
<string name="keyboard_layout_notification_two_selected_message" msgid="1876349944065922950">"Tastaturlayoutet er angivet som <xliff:g id="LAYOUT_1">%1$s</xliff:g>, <xliff:g id="LAYOUT_2">%2$s</xliff:g>. Tryk for at ændre dette."</string>
diff --git a/core/res/res/values-de/strings.xml b/core/res/res/values-de/strings.xml
index 7b3d76babf97..4899ed431d27 100644
--- a/core/res/res/values-de/strings.xml
+++ b/core/res/res/values-de/strings.xml
@@ -505,7 +505,7 @@
<string name="permdesc_vibrate" msgid="8733343234582083721">"Ermöglicht der App, den Vibrationsalarm zu steuern"</string>
<string name="permdesc_vibrator_state" msgid="7050024956594170724">"Ermöglicht der App, auf den Vibrationsstatus zuzugreifen."</string>
<string name="permlab_callPhone" msgid="1798582257194643320">"Telefonnummern direkt anrufen"</string>
- <string name="permdesc_callPhone" msgid="7892422187827695656">"Ermöglicht der App, ohne dein Zutun Telefonnummern zu wählen. Das kann zu unerwarteten Anrufen bzw. Kosten führen. Beachte, dass die App keine Notrufnummer anrufen darf. Es gibt schädliche Apps, die Kosten verursachen können, weil sie eigenmächtig Anrufe starten, oder die bestimmte Anbietercodes wählen, woraufhin eingehende Anrufe automatisch an eine andere Nummer weitergeleitet werden."</string>
+ <string name="permdesc_callPhone" msgid="7892422187827695656">"Ermöglicht der App, ohne dein Zutun Telefonnummern zu wählen. Das kann zu unerwarteten Anrufen bzw. Kosten führen. Beachte, dass die App keine Notrufnummer anrufen darf. Es gibt schädliche Apps, die Kosten verursachen können, indem sie eigenmächtig Anrufe starten, oder die bestimmte Betreiberkennzahlen wählen, woraufhin eingehende Anrufe automatisch an eine andere Nummer weitergeleitet werden."</string>
<string name="permlab_accessImsCallService" msgid="442192920714863782">"Zugriff auf IMS-Anrufdienst"</string>
<string name="permdesc_accessImsCallService" msgid="6328551241649687162">"Ermöglicht der App die Verwendung des IMS-Dienstes zum Tätigen von Anrufen ohne Nutzereingriffe"</string>
<string name="permlab_readPhoneState" msgid="8138526903259297969">"Telefonstatus und Identität abrufen"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Nicht mehr pausieren"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Keine geschäftlichen Apps"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Keine privaten Apps"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Private App „<xliff:g id="APP">%s</xliff:g>“ öffnen"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Geschäftliche App „<xliff:g id="APP">%s</xliff:g>“ öffnen"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Privaten Browser verwenden"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Arbeitsbrowser verwenden"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Entsperr-PIN für netzgebundenes Gerät"</string>
diff --git a/core/res/res/values-el/strings.xml b/core/res/res/values-el/strings.xml
index 2d22400cc8bb..6986b8a27ef0 100644
--- a/core/res/res/values-el/strings.xml
+++ b/core/res/res/values-el/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Αναίρεση παύσης"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Δεν υπάρχουν εφαρμογές εργασιών"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Δεν υπάρχουν προσωπικές εφαρμογές"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Άνοιγμα προσωπικού <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Άνοιγμα <xliff:g id="APP">%s</xliff:g> εργασίας"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Χρήση προσωπικού προγράμματος περιήγησης"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Χρήση προγράμματος περιήγησης εργασίας"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN ξεκλειδώματος δικτύου κάρτας SIM"</string>
@@ -2319,7 +2323,7 @@
<string name="mic_access_off_toast" msgid="8111040892954242437">"Το μικρόφωνο έχει αποκλειστεί"</string>
<string name="concurrent_display_notification_name" msgid="1526911253558311131">"Διπλή οθόνη"</string>
<string name="concurrent_display_notification_active_title" msgid="4892473462327943673">"Η λειτουργία διπλής οθόνης είναι ενεργή"</string>
- <string name="concurrent_display_notification_active_content" msgid="5889355473710601270">"Η εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g> χρησιμοποιεί και τις δύο οθόνες για να εμφανίζει περιεχόμενο"</string>
+ <string name="concurrent_display_notification_active_content" msgid="5889355473710601270">"Η εφαρμ. <xliff:g id="APP_NAME">%1$s</xliff:g> χρησιμοποιεί και τις 2 οθόνες για εμφάνιση περιεχ."</string>
<string name="concurrent_display_notification_thermal_title" msgid="5921609404644739229">"Η θερμοκρασία της συσκευής είναι πολύ υψηλή"</string>
<string name="concurrent_display_notification_thermal_content" msgid="2075484836527609319">"Η λειτουργία διπλής οθόνης δεν είναι διαθέσιμη επειδή η θερμοκρασία του τηλεφώνου αυξάνεται υπερβολικά"</string>
<string name="concurrent_display_notification_power_save_title" msgid="1794569070730736281">"Το Dual Screen δεν είναι διαθέσιμο"</string>
diff --git a/core/res/res/values-en-rAU/strings.xml b/core/res/res/values-en-rAU/strings.xml
index 0bd4f76f9e99..b0558183888f 100644
--- a/core/res/res/values-en-rAU/strings.xml
+++ b/core/res/res/values-en-rAU/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Unpause"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"No work apps"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"No personal apps"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Open personal <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Open work <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Use personal browser"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Use work browser"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM network unlock PIN"</string>
diff --git a/core/res/res/values-en-rCA/strings.xml b/core/res/res/values-en-rCA/strings.xml
index 291a3725e6d9..b12e3eca5b5e 100644
--- a/core/res/res/values-en-rCA/strings.xml
+++ b/core/res/res/values-en-rCA/strings.xml
@@ -2164,8 +2164,9 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Unpause"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"No work apps"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"No personal apps"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Open personal <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Open work <xliff:g id="APP">%s</xliff:g>"</string>
+ <string name="miniresolver_open_work" msgid="6286176185835401931">"Open work <xliff:g id="APP">%s</xliff:g>?"</string>
+ <string name="miniresolver_open_in_personal" msgid="807427577794490375">"Open in personal <xliff:g id="APP">%s</xliff:g>?"</string>
+ <string name="miniresolver_open_in_work" msgid="941341494673509916">"Open in work <xliff:g id="APP">%s</xliff:g>?"</string>
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Use personal browser"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Use work browser"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM network unlock PIN"</string>
diff --git a/core/res/res/values-en-rGB/strings.xml b/core/res/res/values-en-rGB/strings.xml
index 8650abacd11e..aacc4336e84e 100644
--- a/core/res/res/values-en-rGB/strings.xml
+++ b/core/res/res/values-en-rGB/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Unpause"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"No work apps"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"No personal apps"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Open personal <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Open work <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Use personal browser"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Use work browser"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM network unlock PIN"</string>
diff --git a/core/res/res/values-en-rIN/strings.xml b/core/res/res/values-en-rIN/strings.xml
index 0d30c692d9d0..2b1d57582ad4 100644
--- a/core/res/res/values-en-rIN/strings.xml
+++ b/core/res/res/values-en-rIN/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Unpause"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"No work apps"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"No personal apps"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Open personal <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Open work <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Use personal browser"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Use work browser"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM network unlock PIN"</string>
diff --git a/core/res/res/values-en-rXC/strings.xml b/core/res/res/values-en-rXC/strings.xml
index d36df9434e17..6ceb03b8a0df 100644
--- a/core/res/res/values-en-rXC/strings.xml
+++ b/core/res/res/values-en-rXC/strings.xml
@@ -2164,8 +2164,9 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‏‏‎‏‏‎‏‎‎‏‏‎‏‏‏‏‎‏‎‎‎‏‎‎‏‏‏‏‎‎‎‏‏‏‏‏‏‎‎‏‏‎‎‎‎‎‏‏‎‏‏‎‏‎‏‎‏‏‎‎Unpause‎‏‎‎‏‎"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‏‎‏‏‏‎‎‎‏‎‏‏‏‏‎‎‎‏‎‏‎‎‎‎‏‎‎‎‏‎‏‎‏‏‎‎‏‏‏‏‏‎‎‏‏‎‏‎‎‎‎‏‎‏‏‎‏‏‎‎No work apps‎‏‎‎‏‎"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‏‎‎‏‏‏‎‎‎‎‎‏‏‏‎‏‎‎‎‏‎‏‎‎‎‏‏‎‏‎‎‏‏‏‎‏‎‎‏‏‏‎‏‏‎‏‏‎‎‏‎‎‎‎‎‎‏‎No personal apps‎‏‎‎‏‎"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‏‎‎‎‏‏‎‎‎‏‎‏‏‏‎‎‎‏‎‏‏‎‎‎‏‎‎‎‎‏‎‎‏‎‏‎‏‏‏‎‎‎‎‏‎‎‎‏‏‎‏‎‏‏‏‎‎‎‎Open personal ‎‏‎‎‏‏‎<xliff:g id="APP">%s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‎‎‏‏‎‎‎‏‎‎‎‏‏‎‎‏‏‏‎‏‎‏‎‎‎‎‎‎‏‎‏‎‏‏‎‏‏‏‎‏‎‎‎‏‏‏‏‎‏‏‎‎‏‏‏‎‏‏‏‏‎Open work ‎‏‎‎‏‏‎<xliff:g id="APP">%s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
+ <string name="miniresolver_open_work" msgid="6286176185835401931">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‏‎‎‏‏‏‏‎‎‏‏‏‏‏‎‏‏‏‏‏‎‏‏‏‏‎‏‏‏‏‎‎‎‎‎‏‏‏‏‎‏‎‎‏‏‎‎‏‎‏‏‎‎‏‎‏‏‎Open work ‎‏‎‎‏‏‎<xliff:g id="APP">%s</xliff:g>‎‏‎‎‏‏‏‎?‎‏‎‎‏‎"</string>
+ <string name="miniresolver_open_in_personal" msgid="807427577794490375">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‎‏‏‎‎‏‏‎‏‎‎‏‎‎‎‏‏‏‏‎‎‎‏‏‎‏‎‏‎‏‎‎‏‎‎‎‏‎‎‏‎‏‏‎‏‏‏‎‎‎‎‎‎‎‎‎‏‏‏‎Open in personal ‎‏‎‎‏‏‎<xliff:g id="APP">%s</xliff:g>‎‏‎‎‏‏‏‎?‎‏‎‎‏‎"</string>
+ <string name="miniresolver_open_in_work" msgid="941341494673509916">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‏‎‏‎‎‎‏‎‎‎‎‎‏‎‏‎‎‎‏‎‎‎‏‏‎‏‎‎‎‎‏‏‎‏‎‎‏‎‏‏‎‎‏‏‎‎‎‏‏‏‎‎‎‎‏‏‏‎‎‎Open in work ‎‏‎‎‏‏‎<xliff:g id="APP">%s</xliff:g>‎‏‎‎‏‏‏‎?‎‏‎‎‏‎"</string>
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‎‏‎‏‏‎‎‎‏‎‏‎‎‏‎‏‎‎‏‏‏‏‏‏‏‏‎‎‏‎‎‎‏‏‎‎‏‏‎‏‎‏‏‎‎‎‏‎‏‎‎‎‏‏‏‏‏‎‎‎Use personal browser‎‏‎‎‏‎"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‎‏‏‏‏‏‏‎‎‎‏‎‏‏‎‎‏‎‏‎‏‎‏‏‎‏‏‏‎‎‎‏‏‎‏‏‎‏‏‏‎‏‎‎‏‎‎‏‏‎‎‎‏‏‎‏‏‎‎‎‏‎‎Use work browser‎‏‎‎‏‎"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‏‏‏‎‏‏‏‎‏‎‏‎‏‏‏‎‏‏‎‏‎‎‏‏‏‏‎‎‎‎‎‎‏‏‏‎‎‎‏‏‏‎‎‎‎‏‏‎‎‏‏‏‏‏‏‎‏‏‎SIM network unlock PIN‎‏‎‎‏‎"</string>
diff --git a/core/res/res/values-es-rUS/strings.xml b/core/res/res/values-es-rUS/strings.xml
index f9b988428166..e0eb7ccb306e 100644
--- a/core/res/res/values-es-rUS/strings.xml
+++ b/core/res/res/values-es-rUS/strings.xml
@@ -1366,7 +1366,7 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"Se activó el modo MIDI mediante USB"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"Se conectó el dispositivo como cámara web"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"Accesorio USB conectado"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"Presiona para ver más opciones."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"Presiona para ver más opciones"</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"Cargando el dispositivo conectado. Presiona para ver más opciones."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Se detectó un accesorio de audio analógico"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"El dispositivo adjunto no es compatible con este teléfono. Presiona para obtener más información."</string>
@@ -1620,7 +1620,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Tablet"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"TV"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Dispositivo"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Altavoces del conector"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Altavoces de la estación de carga"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Dispositivo externo"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Auriculares"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Reanudar"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"El contenido no es compatible con apps de trabajo"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"El contenido no es compatible con apps personales"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Abrir <xliff:g id="APP">%s</xliff:g> personal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Abrir <xliff:g id="APP">%s</xliff:g> de trabajo"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Usar un navegador personal"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Usar un navegador de trabajo"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN de desbloqueo del dispositivo para la red de tarjeta SIM"</string>
diff --git a/core/res/res/values-es/strings.xml b/core/res/res/values-es/strings.xml
index d7eb0fed4257..924be836f247 100644
--- a/core/res/res/values-es/strings.xml
+++ b/core/res/res/values-es/strings.xml
@@ -1366,7 +1366,7 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"Modo MIDI por USB activado"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"Dispositivo conectado como cámara web"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"Accesorio USB conectado"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"Toca para ver más opciones."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"Toca para ver más opciones"</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"Cargando el dispositivo conectado. Toca para ver más opciones."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Se ha detectado un accesorio de audio analógico"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"El dispositivo adjunto no es compatible con este teléfono. Toca para obtener más información."</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Reactivar"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Ninguna aplicación de trabajo"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Ninguna aplicación personal"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Abrir <xliff:g id="APP">%s</xliff:g> en el perfil personal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Abrir <xliff:g id="APP">%s</xliff:g> en el perfil de trabajo"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Usar navegador personal"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Usar navegador de trabajo"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN de desbloqueo de red de tarjeta SIM"</string>
diff --git a/core/res/res/values-et/strings.xml b/core/res/res/values-et/strings.xml
index 87ab78a73b7f..a5ab4f260cc7 100644
--- a/core/res/res/values-et/strings.xml
+++ b/core/res/res/values-et/strings.xml
@@ -210,7 +210,7 @@
<string name="personal_apps_suspended_turn_profile_on" msgid="2758012869627513689">"Lülita sisse"</string>
<string name="work_profile_telephony_paused_title" msgid="7690804479291839519">"Kõned ja sõnumid on välja lülitatud"</string>
<string name="work_profile_telephony_paused_text" msgid="8065762301100978221">"Olete töörakendused peatanud. Te ei saa telefonikõnesid ega tekstsõnumeid."</string>
- <string name="work_profile_telephony_paused_turn_on_button" msgid="7542632318337068821">"Jätka töörakendusi"</string>
+ <string name="work_profile_telephony_paused_turn_on_button" msgid="7542632318337068821">"Lõpeta peatamine"</string>
<string name="me" msgid="6207584824693813140">"Mina"</string>
<string name="power_dialog" product="tablet" msgid="8333207765671417261">"Tahvelarvuti valikud"</string>
<string name="power_dialog" product="tv" msgid="7792839006640933763">"Android TV valikud"</string>
@@ -1952,7 +1952,7 @@
<string name="app_suspended_default_message" msgid="6451215678552004172">"<xliff:g id="APP_NAME_0">%1$s</xliff:g> pole praegu saadaval. Seda haldab rakendus <xliff:g id="APP_NAME_1">%2$s</xliff:g>."</string>
<string name="app_suspended_more_details" msgid="211260942831587014">"Lisateave"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"Jätka rakendust"</string>
- <string name="work_mode_off_title" msgid="6367463960165135829">"Kas jätkata töörakendusi?"</string>
+ <string name="work_mode_off_title" msgid="6367463960165135829">"Kas lõpetada töörakenduste peatamine?"</string>
<string name="work_mode_turn_on" msgid="5316648862401307800">"Lõpeta peatamine"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"Hädaolukord"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"Rakendus ei ole saadaval"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Jätka"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Töörakendusi pole"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Isiklikke rakendusi pole"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Ava isikliku profiili <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Ava tööprofiili <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Kasuta isiklikku brauserit"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Kasuta tööbrauserit"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM-kaardi võrgu avamise PIN-kood"</string>
diff --git a/core/res/res/values-eu/strings.xml b/core/res/res/values-eu/strings.xml
index a035deb0fd98..1a5dd508b527 100644
--- a/core/res/res/values-eu/strings.xml
+++ b/core/res/res/values-eu/strings.xml
@@ -1361,7 +1361,7 @@
<string name="usb_supplying_notification_title" msgid="5378546632408101811">"Konektatutako gailua USB bidez kargatzen ari da"</string>
<string name="usb_mtp_notification_title" msgid="1065989144124499810">"Aktibatuta dago USB bidezko fitxategi-transferentzia"</string>
<string name="usb_ptp_notification_title" msgid="5043437571863443281">"Aktibatuta dago USB bidezko PTP modua"</string>
- <string name="usb_tether_notification_title" msgid="8828527870612663771">"Aktibatuta dago USB bidez konexioa partekatzeko aukera"</string>
+ <string name="usb_tether_notification_title" msgid="8828527870612663771">"Aktibatuta dago konexioa USB bidez partekatzeko aukera"</string>
<string name="usb_midi_notification_title" msgid="7404506788950595557">"Aktibatuta dago USB bidezko MIDI modua"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"Web-kamera gisa konektatu da gailua"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"USB osagarri bat konektatu da"</string>
@@ -1691,7 +1691,7 @@
<string name="accessibility_shortcut_multiple_service_warning_title" msgid="3135860819356676426">"Erabilerraztasun-eginbideetarako lasterbidea aktibatu nahi duzu?"</string>
<string name="accessibility_shortcut_multiple_service_warning" msgid="3740723309483706911">"Eduki sakatuta bolumen-botoiak segundo batzuez erabilerraztasun-eginbideak aktibatzeko. Hori eginez gero, baliteke zure mugikorraren funtzionamendua aldatzea.\n\nEginbideak:\n<xliff:g id="SERVICE">%1$s</xliff:g>\nHautatutako eginbideak aldatzeko, joan Ezarpenak &gt; Erabilerraztasuna atalera."</string>
<string name="accessibility_shortcut_multiple_service_list" msgid="2128323171922023762">" • <xliff:g id="SERVICE">%1$s</xliff:g>\n"</string>
- <string name="accessibility_shortcut_single_service_warning_title" msgid="1909518473488345266">"<xliff:g id="SERVICE">%1$s</xliff:g> zerbitzuaren lasterbidea aktibatu nahi duzu?"</string>
+ <string name="accessibility_shortcut_single_service_warning_title" msgid="1909518473488345266">"<xliff:g id="SERVICE">%1$s</xliff:g> eginbidearen lasterbidea aktibatu nahi duzu?"</string>
<string name="accessibility_shortcut_single_service_warning" msgid="6363127705112844257">"Eduki sakatuta bolumen-botoiak segundo batzuez <xliff:g id="SERVICE">%1$s</xliff:g> izeneko erabilerraztasun-eginbidea aktibatzeko. Honen bidez, baliteke zure mugikorraren funtzionamendua aldatzea.\n\nLasterbide hau beste eginbide batengatik aldatzeko, joan Ezarpenak &gt; Erabilerraztasuna atalera."</string>
<string name="accessibility_shortcut_on" msgid="5463618449556111344">"Aktibatu"</string>
<string name="accessibility_shortcut_off" msgid="3651336255403648739">"Ez aktibatu"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Berraktibatu"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Ez dago laneko aplikaziorik"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Ez dago aplikazio pertsonalik"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Ireki <xliff:g id="APP">%s</xliff:g> pertsonala"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Ireki lanerako <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Erabili arakatzaile pertsonala"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Erabili laneko arakatzailea"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIMaren sarearen bidez desblokeatzeko PINa"</string>
diff --git a/core/res/res/values-fa/strings.xml b/core/res/res/values-fa/strings.xml
index 2393132a2fcf..c6b15a09f728 100644
--- a/core/res/res/values-fa/strings.xml
+++ b/core/res/res/values-fa/strings.xml
@@ -210,7 +210,7 @@
<string name="personal_apps_suspended_turn_profile_on" msgid="2758012869627513689">"روشن کردن"</string>
<string name="work_profile_telephony_paused_title" msgid="7690804479291839519">"تماس‌ها و پیام‌ها خاموش هستند"</string>
<string name="work_profile_telephony_paused_text" msgid="8065762301100978221">"برنامه‌های کاری را موقتاً متوقف کرده‌اید. تماس یا پیامکی دریافت نخواهید کرد."</string>
- <string name="work_profile_telephony_paused_turn_on_button" msgid="7542632318337068821">"ازسرگیری برنامه‌های کاری"</string>
+ <string name="work_profile_telephony_paused_turn_on_button" msgid="7542632318337068821">"لغو مکث برنامه‌های کاری"</string>
<string name="me" msgid="6207584824693813140">"من"</string>
<string name="power_dialog" product="tablet" msgid="8333207765671417261">"گزینه‌های رایانهٔ لوحی"</string>
<string name="power_dialog" product="tv" msgid="7792839006640933763">"‏گزینه‌های Android TV"</string>
@@ -1951,9 +1951,9 @@
<string name="app_suspended_title" msgid="888873445010322650">"برنامه در دسترس نیست"</string>
<string name="app_suspended_default_message" msgid="6451215678552004172">"<xliff:g id="APP_NAME_0">%1$s</xliff:g> درحال‌حاضر در دسترس نیست. <xliff:g id="APP_NAME_1">%2$s</xliff:g> آن را مدیریت می‌کند."</string>
<string name="app_suspended_more_details" msgid="211260942831587014">"بیشتر بدانید"</string>
- <string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"لغو توقف موقت برنامه"</string>
- <string name="work_mode_off_title" msgid="6367463960165135829">"برنامه‌های کاری ازسر گرفته شود؟"</string>
- <string name="work_mode_turn_on" msgid="5316648862401307800">"ازسرگیری"</string>
+ <string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"لغو مکث برنامه"</string>
+ <string name="work_mode_off_title" msgid="6367463960165135829">"مکث برنامه‌های کاری لغو شود؟"</string>
+ <string name="work_mode_turn_on" msgid="5316648862401307800">"لغو مکث"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"اضطراری"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"برنامه در دسترس نیست"</string>
<string name="app_blocked_message" msgid="542972921087873023">"<xliff:g id="APP_NAME">%1$s</xliff:g> درحال‌حاضر در دسترس نیست."</string>
@@ -2161,11 +2161,15 @@
<string name="resolver_cant_share_with_personal_apps_explanation" msgid="6349766201904601544">"نمی‌توان این محتوا را با برنامه‌های شخصی هم‌رسانی کرد"</string>
<string name="resolver_cant_access_personal_apps_explanation" msgid="1679399548862724359">"نمی‌توان این محتوا را با برنامه‌های شخصی باز کرد"</string>
<string name="resolver_turn_on_work_apps" msgid="1535946298236678122">"برنامه‌های کاری موقتاً متوقف شده است"</string>
- <string name="resolver_switch_on_work" msgid="4527096360772311894">"ازسرگیری"</string>
+ <string name="resolver_switch_on_work" msgid="4527096360772311894">"لغو مکث"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"برنامه کاری‌ای وجود ندارد"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"برنامه شخصی‌ای وجود ندارد"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"باز کردن <xliff:g id="APP">%s</xliff:g> شخصی"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"باز کردن <xliff:g id="APP">%s</xliff:g> کاری"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"استفاده از مرورگر شخصی"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"استفاده از مرورگر کاری"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"پین باز کردن قفل شبکه سیم‌کارت"</string>
diff --git a/core/res/res/values-fi/strings.xml b/core/res/res/values-fi/strings.xml
index bd490572883d..c8316b7d5a2b 100644
--- a/core/res/res/values-fi/strings.xml
+++ b/core/res/res/values-fi/strings.xml
@@ -702,7 +702,7 @@
<skip />
<string name="face_acquired_recalibrate_alt" msgid="5702674220280332115">"Kasvomallia ei voi luoda. Yritä uudelleen."</string>
<string name="face_acquired_dark_glasses_detected_alt" msgid="4052123776406041972">"Tummat lasit havaittu. Kasvojen täytyy näkyä kokonaan."</string>
- <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"Kasvot peittävä asia havaittu. Kasvojen täytyy näkyä kokonaan."</string>
+ <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"Jokin peittää kasvot. Kasvojen täytyy näkyä kokonaan."</string>
<string-array name="face_acquired_vendor">
</string-array>
<string name="face_error_hw_not_available" msgid="5085202213036026288">"Kasvoja ei voi vahvistaa. Laitteisto ei käytettäv."</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Jatka"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Ei työsovelluksia"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Ei henkilökohtaisia sovelluksia"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Avaa henkilökohtainen sovellus (<xliff:g id="APP">%s</xliff:g>)"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Avaa työsovellus (<xliff:g id="APP">%s</xliff:g>)"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Käytä henkilökohtaista selainta"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Käytä työselainta"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM-kortin verkkoversion lukituksen avaamisen PIN-koodi"</string>
diff --git a/core/res/res/values-fr-rCA/strings.xml b/core/res/res/values-fr-rCA/strings.xml
index 76d884bb98a6..7423ba126193 100644
--- a/core/res/res/values-fr-rCA/strings.xml
+++ b/core/res/res/values-fr-rCA/strings.xml
@@ -211,7 +211,7 @@
<string name="personal_apps_suspended_turn_profile_on" msgid="2758012869627513689">"Activer"</string>
<string name="work_profile_telephony_paused_title" msgid="7690804479291839519">"Les appels et messages sont désactivés"</string>
<string name="work_profile_telephony_paused_text" msgid="8065762301100978221">"Vous avez mis en pause les applications professionnelles. Vous ne recevrez aucun appel téléphonique ni message texte."</string>
- <string name="work_profile_telephony_paused_turn_on_button" msgid="7542632318337068821">"Réact. applis prof."</string>
+ <string name="work_profile_telephony_paused_turn_on_button" msgid="7542632318337068821">"Réact. applis pros"</string>
<string name="me" msgid="6207584824693813140">"Moi"</string>
<string name="power_dialog" product="tablet" msgid="8333207765671417261">"Options de la tablette"</string>
<string name="power_dialog" product="tv" msgid="7792839006640933763">"Options d\'Android TV"</string>
@@ -670,7 +670,7 @@
<string name="face_recalibrate_notification_name" msgid="7311163114750748686">"Déverrouillage par reconnaissance faciale"</string>
<string name="face_recalibrate_notification_title" msgid="2524791952735579082">"Problème avec la fonctionnalité de déverrouillage par reconnaissance faciale"</string>
<string name="face_recalibrate_notification_content" msgid="3064513770251355594">"Touchez pour supprimer votre modèle facial, puis ajoutez votre visage de nouveau"</string>
- <string name="face_setup_notification_title" msgid="8843461561970741790">"Configurer le déverrouillage par reconnaissance faciale"</string>
+ <string name="face_setup_notification_title" msgid="8843461561970741790">"Configurer le Déverrouillage par reconnaissance faciale"</string>
<string name="face_setup_notification_content" msgid="5463999831057751676">"Déverrouillez votre téléphone en le regardant"</string>
<string name="face_sensor_privacy_enabled" msgid="7407126963510598508">"Pour utiliser le déverrouillage par reconnaissance faciale, activez l\'"<b>"accès à l\'appareil photo"</b>" dans Paramètres &gt; Confidentialité"</string>
<string name="fingerprint_setup_notification_title" msgid="2002630611398849495">"Configurer d\'autres méthodes de déverrouillage"</string>
@@ -1954,7 +1954,7 @@
<string name="app_suspended_default_message" msgid="6451215678552004172">"L\'application <xliff:g id="APP_NAME_0">%1$s</xliff:g> n\'est pas accessible pour le moment. Ceci est géré par <xliff:g id="APP_NAME_1">%2$s</xliff:g>."</string>
<string name="app_suspended_more_details" msgid="211260942831587014">"En savoir plus"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"Réactiver l\'application"</string>
- <string name="work_mode_off_title" msgid="6367463960165135829">"Réactiver les applis prof.?"</string>
+ <string name="work_mode_off_title" msgid="6367463960165135829">"Réactiver les applis pros?"</string>
<string name="work_mode_turn_on" msgid="5316648862401307800">"Réactiver"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"Urgence"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"L\'application n\'est pas accessible"</string>
@@ -2168,8 +2168,12 @@
<skip />
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Aucune application professionnelle"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Aucune application personnelle"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Ouvrir <xliff:g id="APP">%s</xliff:g> dans le profil personnel"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Ouvrir <xliff:g id="APP">%s</xliff:g> dans le profil professionnel"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Utiliser le navigateur du profil personnel"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Utiliser le navigateur du profil professionnel"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"NIP de déverrouillage du réseau associé au module SIM"</string>
diff --git a/core/res/res/values-fr/strings.xml b/core/res/res/values-fr/strings.xml
index 058e7809f561..d1c7c9824cf5 100644
--- a/core/res/res/values-fr/strings.xml
+++ b/core/res/res/values-fr/strings.xml
@@ -211,7 +211,7 @@
<string name="personal_apps_suspended_turn_profile_on" msgid="2758012869627513689">"Activer"</string>
<string name="work_profile_telephony_paused_title" msgid="7690804479291839519">"Les appels et messages sont désactivés"</string>
<string name="work_profile_telephony_paused_text" msgid="8065762301100978221">"Vous avez suspendu les applis professionnelles. Vous ne recevrez pas d\'appels ni de messages."</string>
- <string name="work_profile_telephony_paused_turn_on_button" msgid="7542632318337068821">"Réactiver les applis professionnelles"</string>
+ <string name="work_profile_telephony_paused_turn_on_button" msgid="7542632318337068821">"Réact. apps pro"</string>
<string name="me" msgid="6207584824693813140">"Moi"</string>
<string name="power_dialog" product="tablet" msgid="8333207765671417261">"Options de la tablette"</string>
<string name="power_dialog" product="tv" msgid="7792839006640933763">"Options Android TV"</string>
@@ -1257,7 +1257,7 @@
<string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Lancement des applications…"</string>
<string name="android_upgrading_complete" msgid="409800058018374746">"Finalisation de la mise à jour."</string>
<string name="fp_power_button_enrollment_message" msgid="5648173517663246140">"Vous avez appuyé sur le bouton Marche/Arrêt, ce qui éteint généralement l\'écran.\n\nEssayez d\'appuyer doucement pendant la configuration de votre empreinte digitale."</string>
- <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Éteindre l\'écran pour achever la config."</string>
+ <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Éteignez l\'écran pour achever la configuration."</string>
<string name="fp_power_button_enrollment_button_text" msgid="3199783266386029200">"Éteindre"</string>
<string name="fp_power_button_bp_title" msgid="5585506104526820067">"Continuer de valider votre empreinte ?"</string>
<string name="fp_power_button_bp_message" msgid="2983163038168903393">"Vous avez appuyé sur le bouton Marche/Arrêt, ce qui éteint généralement l\'écran.\n\nPour valider votre empreinte digitale, appuyez plus doucement."</string>
@@ -1366,7 +1366,7 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"MIDI via USB activé"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"Appareil connecté en tant que webcam"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"Accessoire USB connecté"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"Appuyez ici pour plus d\'options."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"Appuyez pour plus d\'options."</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"Recharge de l\'appareil connecté. Appuyez ici pour plus d\'options."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Accessoire audio analogique détecté"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"L\'appareil connecté n\'est pas compatible avec ce téléphone. Appuyez ici pour en savoir plus."</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Réactiver"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Aucune appli professionnelle"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Aucune appli personnelle"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Ouvrir l\'appli personnelle <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Ouvrir l\'appli professionnelle <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Utiliser le navigateur personnel"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Utiliser le navigateur professionnel"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Code PIN de déblocage du réseau SIM"</string>
diff --git a/core/res/res/values-gl/strings.xml b/core/res/res/values-gl/strings.xml
index e70c7f1b665c..90bd60f316c9 100644
--- a/core/res/res/values-gl/strings.xml
+++ b/core/res/res/values-gl/strings.xml
@@ -1256,8 +1256,8 @@
<string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Iniciando aplicacións."</string>
<string name="android_upgrading_complete" msgid="409800058018374746">"Está finalizando o arranque"</string>
<string name="fp_power_button_enrollment_message" msgid="5648173517663246140">"Premiches o botón de acendido, o que adoita facer que se apague a pantalla.\n\nProba a dar un toque suave namentres configuras a impresión dixital."</string>
- <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Apaga a pantalla e acaba a configuración"</string>
- <string name="fp_power_button_enrollment_button_text" msgid="3199783266386029200">"Desactivar"</string>
+ <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Para rematar, apaga a pantalla"</string>
+ <string name="fp_power_button_enrollment_button_text" msgid="3199783266386029200">"Apagar"</string>
<string name="fp_power_button_bp_title" msgid="5585506104526820067">"Queres seguir verificando a impresión?"</string>
<string name="fp_power_button_bp_message" msgid="2983163038168903393">"Premiches o botón de acendido, o que adoita facer que se apague a pantalla.\n\nProba a dar un toque suave para verificar a impresión dixital."</string>
<string name="fp_power_button_bp_positive_button" msgid="728945472408552251">"Desactivar pantalla"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Reactivar"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Non hai ningunha aplicación do traballo compatible"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Non hai ningunha aplicación persoal compatible"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Abrir <xliff:g id="APP">%s</xliff:g> no perfil persoal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Abrir <xliff:g id="APP">%s</xliff:g> no perfil de traballo"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Utilizar navegador persoal"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Utilizar navegador de traballo"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN de desbloqueo da rede SIM"</string>
diff --git a/core/res/res/values-gu/strings.xml b/core/res/res/values-gu/strings.xml
index b9ba6d2af25d..23b8cac6e9b6 100644
--- a/core/res/res/values-gu/strings.xml
+++ b/core/res/res/values-gu/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ફરી ચાલુ કરો"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"કોઈ ઑફિસ માટેની ઍપ સપોર્ટ કરતી નથી"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"કોઈ વ્યક્તિગત ઍપ સપોર્ટ કરતી નથી"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"વ્યક્તિગત પ્રોફાઇલવાળી <xliff:g id="APP">%s</xliff:g> ઍપ ખોલો"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"ઑફિસની પ્રોફાઇલવાળી <xliff:g id="APP">%s</xliff:g> ઍપ ખોલો"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"વ્યક્તિગત બ્રાઉઝરનો ઉપયોગ કરો"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ઑફિસના બ્રાઉઝરના ઉપયોગ કરો"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"સિમ નેટવર્કને અનલૉક કરવાનો પિન"</string>
diff --git a/core/res/res/values-hi/strings.xml b/core/res/res/values-hi/strings.xml
index a992c6ece8ef..bdb65b99c253 100644
--- a/core/res/res/values-hi/strings.xml
+++ b/core/res/res/values-hi/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"चालू करें"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"यह कॉन्टेंट, ऑफ़िस के काम से जुड़े आपके किसी भी ऐप्लिकेशन पर खोला नहीं जा सकता"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"यह कॉन्टेंट आपके किसी भी निजी ऐप्लिकेशन पर खोला नहीं जा सकता"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"निजी प्रोफ़ाइल वाला <xliff:g id="APP">%s</xliff:g> ऐप्लिकेशन खोलें"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"वर्क प्रोफ़ाइल वाला <xliff:g id="APP">%s</xliff:g> ऐप्लिकेशन खोलें"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"निजी ब्राउज़र का इस्तेमाल करें"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ऑफ़िस के काम से जुड़े ब्राउज़र का इस्तेमाल करें"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"सिम नेटवर्क को अनलॉक करने का पिन"</string>
diff --git a/core/res/res/values-hr/strings.xml b/core/res/res/values-hr/strings.xml
index fe251423c501..1a3ab3ad5d86 100644
--- a/core/res/res/values-hr/strings.xml
+++ b/core/res/res/values-hr/strings.xml
@@ -1366,11 +1366,11 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"Uključen je MIDI putem USB-a"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"Uređaj je povezan kao web-kamera"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"Priključen je USB dodatak"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"Dodirnite za više opcija."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"Dodirnite za više opcija"</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"Povezani se uređaj puni. Dodirnite za više opcija."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Otkriven je analogni audiododatak"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"Priključeni uređaj nije kompatibilan s ovim telefonom. Dodirnite da biste saznali više."</string>
- <string name="adb_active_notification_title" msgid="408390247354560331">"Priključen je alat za otklanjanje pogrešaka putem USB-a"</string>
+ <string name="adb_active_notification_title" msgid="408390247354560331">"Uključeno je otklanjanje pogrešaka USB-om"</string>
<string name="adb_active_notification_message" msgid="5617264033476778211">"Dodirnite da isključite otkl. pogrešaka putem USB-a"</string>
<string name="adb_active_notification_message" product="tv" msgid="6624498401272780855">"Odaberite da biste onemogućili rješavanje programske pogreške na USB-u."</string>
<string name="adbwifi_active_notification_title" msgid="6147343659168302473">"Bežično otklanjanje pogrešaka povezano"</string>
@@ -1620,7 +1620,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Tabletno računalo"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"Televizor"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Telefon"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Zvučnici postolja"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Zvučnici priključne stanice"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Vanjski uređaj"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Slušalice"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Ponovno pokreni"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Poslovne aplikacije nisu dostupne"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Osobne aplikacije nisu dostupne"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Otvorite osobnu aplikaciju <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Otvorite poslovnu aplikaciju <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Koristi osobni preglednik"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Koristi poslovni preglednik"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN za otključavanje SIM mreže."</string>
diff --git a/core/res/res/values-hu/strings.xml b/core/res/res/values-hu/strings.xml
index c78d5e0d6258..21934cfae09a 100644
--- a/core/res/res/values-hu/strings.xml
+++ b/core/res/res/values-hu/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Szüneteltetés feloldása"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nincs munkahelyi alkalmazás"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nincs személyes alkalmazás"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Személyes <xliff:g id="APP">%s</xliff:g> megnyitása"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Munkahelyi <xliff:g id="APP">%s</xliff:g> megnyitása"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Személyes böngésző használata"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Munkahelyi böngésző használata"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Hálózati SIM feloldó PIN-kódja"</string>
diff --git a/core/res/res/values-hy/strings.xml b/core/res/res/values-hy/strings.xml
index 938241d2070e..4abf4018a5d0 100644
--- a/core/res/res/values-hy/strings.xml
+++ b/core/res/res/values-hy/strings.xml
@@ -302,7 +302,7 @@
<string name="managed_profile_app_label" msgid="367401088383965725">"Անցնել աշխատանքային <xliff:g id="APP_NAME">%1$s</xliff:g> պրոֆիլին"</string>
<string name="permgrouplab_contacts" msgid="4254143639307316920">"Կոնտակտներ"</string>
<string name="permgroupdesc_contacts" msgid="9163927941244182567">"օգտագործել ձեր կոնտակտները"</string>
- <string name="permgrouplab_location" msgid="1858277002233964394">"Տեղորոշում"</string>
+ <string name="permgrouplab_location" msgid="1858277002233964394">"Տեղադրություն"</string>
<string name="permgroupdesc_location" msgid="1995955142118450685">"տեղորոշել այս սարքը"</string>
<string name="permgrouplab_calendar" msgid="6426860926123033230">"Օրացույց"</string>
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"օգտագործել օրացույցը"</string>
@@ -635,7 +635,7 @@
<string name="fingerprint_acquired_too_bright" msgid="3863560181670915607">"Շատ լուսավոր է"</string>
<string name="fingerprint_acquired_power_press" msgid="3107864151278434961">"Հայտնաբերվել է սնուցման կոճակի սեղմում"</string>
<string name="fingerprint_acquired_try_adjusting" msgid="3667006071003809364">"Փորձեք փոխել մատի դիրքը"</string>
- <string name="fingerprint_acquired_immobile" msgid="1621891895241888048">"Ամեն անգամ թեթևա­­կի փոխեք մատի դիրքը"</string>
+ <string name="fingerprint_acquired_immobile" msgid="1621891895241888048">"Թեթևակի փոխեք մատի դիրքն ամեն անգամ"</string>
<string-array name="fingerprint_acquired_vendor">
</string-array>
<string name="fingerprint_error_not_match" msgid="4599441812893438961">"Մատնահետքը չի ճանաչվել"</string>
@@ -694,7 +694,7 @@
<string name="face_acquired_pan_too_extreme" msgid="5417928604710621088">"Նայեք ուղիղ էկրանին"</string>
<string name="face_acquired_tilt_too_extreme" msgid="5715715666540716620">"Նայեք ուղիղ էկրանին"</string>
<string name="face_acquired_roll_too_extreme" msgid="8261939882838881194">"Նայեք ուղիղ էկրանին"</string>
- <string name="face_acquired_obscured" msgid="4917643294953326639">"Հեռացրեք այն ամենը, ինչը թաքցնում է ձեր երեսը:"</string>
+ <string name="face_acquired_obscured" msgid="4917643294953326639">"Հեռացրեք այն ամենը, ինչը փակում է ձեր դեմքը։"</string>
<string name="face_acquired_sensor_dirty" msgid="8968391891086721678">"Մաքրեք էկրանի վերևի մասը, ներառյալ սև գոտին"</string>
<!-- no translation found for face_acquired_dark_glasses_detected (5643703296620631986) -->
<skip />
@@ -702,7 +702,7 @@
<skip />
<string name="face_acquired_recalibrate_alt" msgid="5702674220280332115">"Չհաջողվեց ստեղծել ձեր դեմքի մոդելը։ Նորից փորձեք։"</string>
<string name="face_acquired_dark_glasses_detected_alt" msgid="4052123776406041972">"Հանեք ակնոցը։ Ձեր դեմքը պետք է ամբողջովին տեսանելի լինի։"</string>
- <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"Դեմքի մի մասը ծածկված է։ Ձեր դեմքը պետք է ամբող­ջովին տեսանելի լինի։"</string>
+ <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"Դեմքը մասամբ ծածկված է։ Պետք է լրիվ տեսանելի լինի։"</string>
<string-array name="face_acquired_vendor">
</string-array>
<string name="face_error_hw_not_available" msgid="5085202213036026288">"Չհաջողվեց հաստատել դեմքը։ Սարքն անհասանելի է:"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Վերսկսել"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Աշխատանքային հավելվածներ չկան"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Անձնական հավելվածներ չկան"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Անձնական <xliff:g id="APP">%s</xliff:g> պրոֆիլի բացում"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Աշխատանքային <xliff:g id="APP">%s</xliff:g> պրոֆիլի բացում"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Օգտագործել անձնական դիտարկիչը"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Օգտագործել աշխատանքային դիտարկիչը"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM Network քարտի ապակողպման PIN"</string>
diff --git a/core/res/res/values-in/strings.xml b/core/res/res/values-in/strings.xml
index 5400e055d75f..b536d84a5a19 100644
--- a/core/res/res/values-in/strings.xml
+++ b/core/res/res/values-in/strings.xml
@@ -1619,7 +1619,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Tablet"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"TV"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Ponsel"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Pengeras suara dok"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Speaker dok"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Perangkat Eksternal"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Headphone"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Batalkan jeda"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Tidak ada aplikasi kerja"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Tidak ada aplikasi pribadi"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Buka <xliff:g id="APP">%s</xliff:g> pribadi"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Buka <xliff:g id="APP">%s</xliff:g> kerja"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Gunakan browser pribadi"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Gunakan browser kerja"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN pembuka kunci SIM network"</string>
diff --git a/core/res/res/values-is/strings.xml b/core/res/res/values-is/strings.xml
index 3ddd7ac0ebf6..484f628f4458 100644
--- a/core/res/res/values-is/strings.xml
+++ b/core/res/res/values-is/strings.xml
@@ -638,7 +638,7 @@
<string name="fingerprint_acquired_immobile" msgid="1621891895241888048">"Breyttu stöðu fingursins örlítið í hvert skipti"</string>
<string-array name="fingerprint_acquired_vendor">
</string-array>
- <string name="fingerprint_error_not_match" msgid="4599441812893438961">"Ekki þekkt fingrafar"</string>
+ <string name="fingerprint_error_not_match" msgid="4599441812893438961">"Fingrafar þekkist ekki"</string>
<string name="fingerprint_udfps_error_not_match" msgid="8236930793223158856">"Fingrafar þekkist ekki"</string>
<string name="fingerprint_authenticated" msgid="2024862866860283100">"Fingrafar staðfest"</string>
<string name="face_authenticated_no_confirmation_required" msgid="8867889115112348167">"Andlit staðfest"</string>
@@ -678,7 +678,7 @@
<string name="fingerprint_recalibrate_notification_content" msgid="8519935717822194943">"Þú verður að fara á verkstæði."</string>
<string name="face_acquired_insufficient" msgid="6889245852748492218">"Ekki tekst að búa til andlitslíkan. Reyndu aftur."</string>
<string name="face_acquired_too_bright" msgid="8070756048978079164">"Of bjart. Prófaðu mýkri lýsingu."</string>
- <string name="face_acquired_too_dark" msgid="8539853432479385326">"Of lítið ljós"</string>
+ <string name="face_acquired_too_dark" msgid="8539853432479385326">"Ekki næg birta"</string>
<string name="face_acquired_too_close" msgid="4453646176196302462">"Færðu símann lengra frá"</string>
<string name="face_acquired_too_far" msgid="2922278214231064859">"Færðu símann nær"</string>
<string name="face_acquired_too_high" msgid="8278815780046368576">"Færðu símann hærra"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Ljúka hléi"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Engin vinnuforrit"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Engin forrit til einkanota"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Opna <xliff:g id="APP">%s</xliff:g> með einkaprófíl"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Opna <xliff:g id="APP">%s</xliff:g> með vinnuprófíl"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Nota einkavafra"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Nota vinnuvafra"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN-númer fyrir opnun á SIM-korti netkerfis"</string>
diff --git a/core/res/res/values-it/strings.xml b/core/res/res/values-it/strings.xml
index 2feaa0eebd2c..6281e2c5b095 100644
--- a/core/res/res/values-it/strings.xml
+++ b/core/res/res/values-it/strings.xml
@@ -1855,8 +1855,8 @@
<string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Ruota per migliorare l\'anteprima"</string>
<string name="display_rotation_camera_compat_toast_in_split_screen" msgid="8393302456336805466">"Esci dallo schermo diviso per migliorare l\'anteprima"</string>
<string name="done_label" msgid="7283767013231718521">"Fine"</string>
- <string name="hour_picker_description" msgid="5153757582093524635">"Dispositivo di scorrimento circolare per le ore"</string>
- <string name="minute_picker_description" msgid="9029797023621927294">"Dispositivo di scorrimento circolare per i minuti"</string>
+ <string name="hour_picker_description" msgid="5153757582093524635">"Cursore circolare per le ore"</string>
+ <string name="minute_picker_description" msgid="9029797023621927294">"Cursore circolare per i minuti"</string>
<string name="select_hours" msgid="5982889657313147347">"Seleziona le ore"</string>
<string name="select_minutes" msgid="9157401137441014032">"Seleziona i minuti"</string>
<string name="select_day" msgid="2060371240117403147">"Seleziona mese e giorno"</string>
@@ -1953,7 +1953,7 @@
<string name="app_suspended_default_message" msgid="6451215678552004172">"<xliff:g id="APP_NAME_0">%1$s</xliff:g> non è al momento disponibile. Viene gestita tramite <xliff:g id="APP_NAME_1">%2$s</xliff:g>."</string>
<string name="app_suspended_more_details" msgid="211260942831587014">"Scopri di più"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"Riattiva app"</string>
- <string name="work_mode_off_title" msgid="6367463960165135829">"Riattivare app di lavoro?"</string>
+ <string name="work_mode_off_title" msgid="6367463960165135829">"Riattivare le app di lavoro?"</string>
<string name="work_mode_turn_on" msgid="5316648862401307800">"Riattiva"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"Emergenza"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"L\'app non è disponibile"</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Riattiva"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nessuna app di lavoro"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nessuna app personale"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Apri l\'app <xliff:g id="APP">%s</xliff:g> personale"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Apri l\'app <xliff:g id="APP">%s</xliff:g> di lavoro"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Usa il browser personale"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Usa il browser di lavoro"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN di sblocco rete SIM"</string>
diff --git a/core/res/res/values-iw/strings.xml b/core/res/res/values-iw/strings.xml
index 3d71a476a944..84393916da28 100644
--- a/core/res/res/values-iw/strings.xml
+++ b/core/res/res/values-iw/strings.xml
@@ -626,11 +626,11 @@
<string name="biometric_error_generic" msgid="6784371929985434439">"שגיאה באימות"</string>
<string name="screen_lock_app_setting_name" msgid="6054944352976789228">"שימוש בנעילת מסך"</string>
<string name="screen_lock_dialog_default_subtitle" msgid="120359538048533695">"יש לבטל את נעילת המסך כדי להמשיך"</string>
- <string name="fingerprint_acquired_partial" msgid="4323789264604479684">"לוחצים לחיצה חזקה על החיישן"</string>
+ <string name="fingerprint_acquired_partial" msgid="4323789264604479684">"צריך ללחוץ לחיצה חזקה על החיישן"</string>
<string name="fingerprint_acquired_insufficient" msgid="623888149088216458">"לא ניתן לזהות את טביעת האצבע. יש לנסות שוב."</string>
<string name="fingerprint_acquired_imager_dirty" msgid="1770676120848224250">"עליך לנקות את חיישן טביעות האצבע ולנסות שוב"</string>
<string name="fingerprint_acquired_imager_dirty_alt" msgid="9169582140486372897">"עליך לנקות את החיישן ולנסות שוב"</string>
- <string name="fingerprint_acquired_too_fast" msgid="1628459767349116104">"לוחצים לחיצה חזקה על החיישן"</string>
+ <string name="fingerprint_acquired_too_fast" msgid="1628459767349116104">"צריך ללחוץ חזק על החיישן"</string>
<string name="fingerprint_acquired_too_slow" msgid="6683510291554497580">"הזזת את האצבע לאט מדי. יש לנסות שוב."</string>
<string name="fingerprint_acquired_already_enrolled" msgid="2285166003936206785">"יש להשתמש בטביעת אצבע אחרת"</string>
<string name="fingerprint_acquired_too_bright" msgid="3863560181670915607">"בהיר מדי"</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ביטול ההשהיה"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"אין אפליקציות לעבודה"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"אין אפליקציות לשימוש אישי"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"פתיחת <xliff:g id="APP">%s</xliff:g> בפרופיל האישי"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"פתיחת <xliff:g id="APP">%s</xliff:g> בפרופיל העבודה"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"בדפדפן האישי"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"בדפדפן של העבודה"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"‏קוד אימות לביטול הנעילה של רשת SIM"</string>
diff --git a/core/res/res/values-ja/strings.xml b/core/res/res/values-ja/strings.xml
index a89089c6ee8b..a0f8d8e3d6b4 100644
--- a/core/res/res/values-ja/strings.xml
+++ b/core/res/res/values-ja/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"停止解除"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"仕事用アプリはありません"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"個人用アプリはありません"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"個人用 <xliff:g id="APP">%s</xliff:g> を開く"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"仕事用 <xliff:g id="APP">%s</xliff:g> を開く"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"個人用ブラウザを使用"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"仕事用ブラウザを使用"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM のネットワーク ロック解除 PIN"</string>
diff --git a/core/res/res/values-ka/strings.xml b/core/res/res/values-ka/strings.xml
index be8a07172ab5..9499ffa628f4 100644
--- a/core/res/res/values-ka/strings.xml
+++ b/core/res/res/values-ka/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"პაუზის გაუქმება"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"სამსახურის აპები არ არის"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"პირადი აპები არ არის"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"გახსენით პერსონალური <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"გახსენით სამუშაო <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"პირადი ბრაუზერის გამოყენება"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"სამსახურის ბრაუზერის გამოყენება"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM ქსელის განბლოკვის PIN-კოდი"</string>
diff --git a/core/res/res/values-kk/strings.xml b/core/res/res/values-kk/strings.xml
index 954b06fbacc7..b074b49b8745 100644
--- a/core/res/res/values-kk/strings.xml
+++ b/core/res/res/values-kk/strings.xml
@@ -1619,7 +1619,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Планшет"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"ТД"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Телефон"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Үндеткіштерді қондыру"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Қондыру станциясының динамиктері"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Сыртқы құрылғы"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Құлақаспаптар"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Қайта қосу"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Жұмыс қолданбалары жоқ."</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Жеке қолданбалар жоқ."</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Жеке <xliff:g id="APP">%s</xliff:g> қолданбасын ашу"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Жұмыстағы <xliff:g id="APP">%s</xliff:g> қолданбасын ашу"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Жеке браузерді пайдалану"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Жұмыс браузерін пайдалану"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM желісінің құлпын ашатын PIN коды"</string>
diff --git a/core/res/res/values-km/strings.xml b/core/res/res/values-km/strings.xml
index eb0c7f0371fa..8dbe3905a112 100644
--- a/core/res/res/values-km/strings.xml
+++ b/core/res/res/values-km/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ឈប់ផ្អាក"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"គ្មាន​កម្មវិធី​ការងារ​ទេ"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"គ្មាន​កម្មវិធី​ផ្ទាល់ខ្លួន​ទេ"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"បើក <xliff:g id="APP">%s</xliff:g> ផ្ទាល់ខ្លួន"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"បើក <xliff:g id="APP">%s</xliff:g> សម្រាប់ការងារ"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ប្រើ​កម្មវិធីរុករក​តាមអ៊ីនធឺណិត​ផ្ទាល់ខ្លួន"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ប្រើ​កម្មវិធីរុករក​តាមអ៊ីនធឺណិត​សម្រាប់​ការងារ"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"កូដ PIN ដោះ​សោ​បណ្ដាញ​ស៊ីម"</string>
diff --git a/core/res/res/values-kn/strings.xml b/core/res/res/values-kn/strings.xml
index 5c41cfb7c65e..181e10a40e82 100644
--- a/core/res/res/values-kn/strings.xml
+++ b/core/res/res/values-kn/strings.xml
@@ -1681,7 +1681,7 @@
<string name="kg_failed_attempts_almost_at_login" product="default" msgid="5270861875006378092">"ನಿಮ್ಮ ಅನ್‍‍ಲಾಕ್ ಪ್ಯಾಟರ್ನ್ ಅನ್ನು ನೀವು <xliff:g id="NUMBER_0">%1$d</xliff:g> ಬಾರಿ ತಪ್ಪಾಗಿ ಡ್ರಾ ಮಾಡಿರುವಿರಿ. <xliff:g id="NUMBER_1">%2$d</xliff:g> ಹೆಚ್ಚಿನ ವಿಫಲ ಪ್ರಯತ್ನಗಳ ಬಳಿಕ, ನಿಮ್ಮ ಇಮೇಲ್ ಖಾತೆಯನ್ನು ಬಳಸಿಕೊಂಡು ನಿಮ್ಮ ಫೋನ್ ಅನ್‌ಲಾಕ್ ಮಾಡುವಂತೆ ನಿಮ್ಮಲ್ಲಿ ಕೇಳಿಕೊಳ್ಳಲಾಗುತ್ತದೆ.\n\n <xliff:g id="NUMBER_2">%3$d</xliff:g> ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ."</string>
<string name="kg_text_message_separator" product="default" msgid="4503708889934976866">" — "</string>
<string name="kg_reordering_delete_drop_target_text" msgid="2034358143731750914">"ತೆಗೆದುಹಾಕು"</string>
- <string name="safe_media_volume_warning" product="default" msgid="3751676824423049994">"ವಾಲ್ಯೂಮ್‌ ಅನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾದ ಮಟ್ಟಕ್ಕಿಂತಲೂ ಹೆಚ್ಚು ಮಾಡುವುದೇ?\n\nದೀರ್ಘ ಅವಧಿಯವರೆಗೆ ಹೆಚ್ಚಿನ ವಾಲ್ಯೂಮ್‌ನಲ್ಲಿ ಆಲಿಸುವುದರಿಂದ ನಿಮ್ಮ ಆಲಿಸುವಿಕೆ ಸಾಮರ್ಥ್ಯಕ್ಕೆ ಹಾನಿಯುಂಟು ಮಾಡಬಹುದು."</string>
+ <string name="safe_media_volume_warning" product="default" msgid="3751676824423049994">"ವಾಲ್ಯೂಮ್‌ ಅನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾದ ಮಟ್ಟಕ್ಕಿಂತಲೂ ಹೆಚ್ಚು ಮಾಡಬೇಕೆ?\n\nದೀರ್ಘ ಅವಧಿಯವರೆಗೆ ಹೆಚ್ಚಿನ ವಾಲ್ಯೂಮ್‌ನಲ್ಲಿ ಆಲಿಸುವುದರಿಂದ ನಿಮ್ಮ ಆಲಿಸುವಿಕೆ ಸಾಮರ್ಥ್ಯಕ್ಕೆ ಹಾನಿಯುಂಟು ಮಾಡಬಹುದು."</string>
<string name="csd_dose_reached_warning" product="default" msgid="1032473160590983236">"ಎಚ್ಚರಿಕೆ,\nಒಬ್ಬ ವ್ಯಕ್ತಿ ಒಂದು ವಾರದಲ್ಲಿ ಹೆಡ್‌ಫೋನ್‌ಗಳ ಮೂಲಕ ಗಟ್ಟಿಯಾದ ವಾಲ್ಯೂಮ್‌ನಲ್ಲಿ ಸುರಕ್ಷಿತವಾಗಿ ಆಲಿಸಬಹುದಾದ ಮಿತಿಯನ್ನು ನೀವು ಮೀರಿದ್ದೀರಿ.\n\nಈ ಮಿತಿಯನ್ನು ಮೀರಿದರೆ ನಿಮ್ಮ ಆಲಿಸುವ ಸಾಮರ್ಥ್ಯಕ್ಕೆ ಶಾಶ್ವತ ಹಾನಿಯುಂಟಾಗುತ್ತದೆ."</string>
<string name="csd_dose_repeat_warning" product="default" msgid="6765471037071089401">"ಎಚ್ಚರಿಕೆ,\nಒಬ್ಬ ವ್ಯಕ್ತಿ ಒಂದು ವಾರದಲ್ಲಿ ಹೆಡ್‌ಫೋನ್‌ಗಳ ಮೂಲಕ ಸುರಕ್ಷಿತವಾಗಿ ಆಲಿಸಬಹುದಾದ ಗಟ್ಟಿಯಾದ ವಾಲ್ಯೂಮ್‌ನ 5 ಪಟ್ಟು ಮಿತಿಯನ್ನು ನೀವು ಮೀರಿದ್ದೀರಿ.\n\nನಿಮ್ಮ ಆಲಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ರಕ್ಷಿಸುವುದಕ್ಕಾಗಿ ವಾಲ್ಯೂಮ್ ಅನ್ನು ಕಡಿಮೆಗೊಳಿಸಲಾಗಿದೆ."</string>
<string name="csd_entering_RS2_warning" product="default" msgid="3699509945325496807">"ನೀವು ಪ್ರಸ್ತುತ ಆಲಿಸುತ್ತಿರುವ ವಾಲ್ಯೂಮ್‌ನಲ್ಲಿ ಮಾಧ್ಯಮವನ್ನು ಆಲಿಸುವುದನ್ನು ನೀವು ದೀರ್ಘಕಾಲ ಮುಂದುವರಿಸಿದರೆ, ನಿಮ್ಮ ಆಲಿಸುವ ಸಾಮರ್ಥ್ಯಕ್ಕೆ ಹಾನಿಯುಂಟಾಗಬಹುದು.\n\nಇದೇ ವಾಲ್ಯೂಮ್‌ನಲ್ಲಿ ದೀರ್ಘಕಾಲದವರೆಗೆ ಮಾಧ್ಯಮವನ್ನು ಪ್ಲೇ ಮಾಡುವುದನ್ನು ಮುಂದುವರಿಸಿದರೆ ನಿಮ್ಮ ಆಲಿಸುವ ಸಾಮರ್ಥ್ಯಕ್ಕೆ ಹಾನಿಯುಂಟಾಗಬಹುದು."</string>
@@ -2022,10 +2022,10 @@
<string name="autofill_save_title_with_type" msgid="3002460014579799605">"<xliff:g id="TYPE">%1$s</xliff:g> ಅನ್ನು "<b>"<xliff:g id="LABEL">%2$s</xliff:g>"</b>" ನಲ್ಲಿ ಉಳಿಸುವುದೇ?"</string>
<string name="autofill_save_title_with_2types" msgid="3783270967447869241">"<xliff:g id="TYPE_0">%1$s</xliff:g> ಮತ್ತು <xliff:g id="TYPE_1">%2$s</xliff:g> ಅನ್ನು "<b>"<xliff:g id="LABEL">%3$s</xliff:g>"</b>" ನಲ್ಲಿ ಉಳಿಸುವುದೇ?"</string>
<string name="autofill_save_title_with_3types" msgid="6598228952100102578">"<xliff:g id="TYPE_0">%1$s</xliff:g>, <xliff:g id="TYPE_1">%2$s</xliff:g> ಮತ್ತು <xliff:g id="TYPE_2">%3$s</xliff:g> ಅನ್ನು "<b>"<xliff:g id="LABEL">%4$s</xliff:g>"</b>" ನಲ್ಲಿ ಉಳಿಸುವುದೇ?"</string>
- <string name="autofill_update_title" msgid="3630695947047069136"><b>"<xliff:g id="LABEL">%1$s</xliff:g>"</b>" ನಲ್ಲಿ ಅಪ್‌ಡೇಟ್ ಮಾಡುವುದೇ?"</string>
+ <string name="autofill_update_title" msgid="3630695947047069136"><b>"<xliff:g id="LABEL">%1$s</xliff:g>"</b>" ನಲ್ಲಿ ಅಪ್‌ಡೇಟ್ ಮಾಡಬೇಕೆ?"</string>
<string name="autofill_update_title_with_type" msgid="5264152633488495704">"<xliff:g id="TYPE">%1$s</xliff:g> ಅನ್ನು "<b>"<xliff:g id="LABEL">%2$s</xliff:g>"</b>" ನಲ್ಲಿ ಅಪ್‌ಡೇಟ್ ಮಾಡಬೇಕೆ?"</string>
- <string name="autofill_update_title_with_2types" msgid="1797514386321086273">"<xliff:g id="TYPE_0">%1$s</xliff:g> ಮತ್ತು <xliff:g id="TYPE_1">%2$s</xliff:g> ಅನ್ನು "<b>"<xliff:g id="LABEL">%3$s</xliff:g>"</b>" ನಲ್ಲಿ ಅಪ್‌ಡೇಟ್ ಮಾಡುವುದೇ?"</string>
- <string name="autofill_update_title_with_3types" msgid="1312232153076212291">"ಈ ಮುಂದಿನ ಐಟಂಗಳನ್ನು "<b>"<xliff:g id="LABEL">%4$s</xliff:g>"</b>" ನಲ್ಲಿ ಅಪ್‌ಡೇಟ್ ಮಾಡುವುದೇ: <xliff:g id="TYPE_0">%1$s</xliff:g>, <xliff:g id="TYPE_1">%2$s</xliff:g> ಮತ್ತು <xliff:g id="TYPE_2">%3$s</xliff:g> ?"</string>
+ <string name="autofill_update_title_with_2types" msgid="1797514386321086273">"<xliff:g id="TYPE_0">%1$s</xliff:g> ಮತ್ತು <xliff:g id="TYPE_1">%2$s</xliff:g> ಅನ್ನು "<b>"<xliff:g id="LABEL">%3$s</xliff:g>"</b>" ನಲ್ಲಿ ಅಪ್‌ಡೇಟ್ ಮಾಡಬೇಕೆ?"</string>
+ <string name="autofill_update_title_with_3types" msgid="1312232153076212291">"ಈ ಮುಂದಿನ ಐಟಂಗಳನ್ನು "<b>"<xliff:g id="LABEL">%4$s</xliff:g>"</b>" ನಲ್ಲಿ ಅಪ್‌ಡೇಟ್ ಮಾಡಬೇಕೆ: <xliff:g id="TYPE_0">%1$s</xliff:g>, <xliff:g id="TYPE_1">%2$s</xliff:g> ಮತ್ತು <xliff:g id="TYPE_2">%3$s</xliff:g> ?"</string>
<string name="autofill_save_yes" msgid="8035743017382012850">"ಉಳಿಸಿ"</string>
<string name="autofill_save_no" msgid="9212826374207023544">"ಬೇಡ"</string>
<string name="autofill_save_notnow" msgid="2853932672029024195">"ಸದ್ಯಕ್ಕೆ ಬೇಡ"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ವಿರಾಮವನ್ನು ರದ್ದುಗೊಳಿಸಿ"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"ಯಾವುದೇ ಕೆಲಸಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಆ್ಯಪ್‌ಗಳಿಲ್ಲ"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"ಯಾವುದೇ ವೈಯಕ್ತಿಕ ಆ್ಯಪ್‌ಗಳಿಲ್ಲ"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"ವೈಯಕ್ತಿಕ <xliff:g id="APP">%s</xliff:g> ತೆರೆಯಿರಿ"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"ಕೆಲಸದ <xliff:g id="APP">%s</xliff:g> ತೆರೆಯಿರಿ"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ವೈಯಕ್ತಿಕ ಬ್ರೌಸರ್ ಬಳಸಿ"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ಉದ್ಯೋಗ ಬ್ರೌಸರ್ ಬಳಸಿ"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM ನೆಟ್‌ವರ್ಕ್‌ ಅನ್‌ಲಾಕ್‌ ಮಾಡುವ ಪಿನ್‌"</string>
diff --git a/core/res/res/values-ko/strings.xml b/core/res/res/values-ko/strings.xml
index 5ddc55163738..368c973dac42 100644
--- a/core/res/res/values-ko/strings.xml
+++ b/core/res/res/values-ko/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"일시중지 해제"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"직장 앱 없음"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"개인 앱 없음"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"개인 <xliff:g id="APP">%s</xliff:g> 열기"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"직장 <xliff:g id="APP">%s</xliff:g> 앱 열기"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"개인 브라우저 사용"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"직장 브라우저 사용"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM 네트워크 잠금 해제 PIN"</string>
diff --git a/core/res/res/values-ky/strings.xml b/core/res/res/values-ky/strings.xml
index 55b3723d6c0e..c87911e407e3 100644
--- a/core/res/res/values-ky/strings.xml
+++ b/core/res/res/values-ky/strings.xml
@@ -122,7 +122,7 @@
<string name="roamingTextSearching" msgid="5323235489657753486">"Кызмат изделүүдө"</string>
<string name="wfcRegErrorTitle" msgid="3193072971584858020">"Wi-Fi аркылуу чалуу функциясы жөндөлгөн жок"</string>
<string-array name="wfcOperatorErrorAlertMessages">
- <item msgid="468830943567116703">"Wi-Fi аркылуу чалууларды аткарып жана билдирүүлөрдү жөнөтүү үчүн адегенде байланыш операторуңуздан бул кызматты орнотушун сураныңыз. Андан соң, Жөндөөлөрдөн Wi-Fi чалууну кайра күйгүзүңүз. (Ката коду: <xliff:g id="CODE">%1$s</xliff:g>)"</item>
+ <item msgid="468830943567116703">"Wi-Fi аркылуу чалууларды аткарып жана билдирүүлөрдү жөнөтүү үчүн адегенде байланыш операторуңуздан бул кызматты орнотушун сураныңыз. Андан соң, Параметрлерден Wi-Fi чалууну кайра күйгүзүңүз. (Ката коду: <xliff:g id="CODE">%1$s</xliff:g>)"</item>
</string-array>
<string-array name="wfcOperatorErrorNotificationMessages">
<item msgid="4795145070505729156">"Байланыш операторуңуз менен Wi-Fi аркылуу чалууну каттоодо ката кетти: <xliff:g id="CODE">%1$s</xliff:g>"</item>
@@ -438,7 +438,7 @@
<string name="permlab_getPackageSize" msgid="375391550792886641">"колдонмо сактагычынын мейкиндигин өлчөө"</string>
<string name="permdesc_getPackageSize" msgid="742743530909966782">"Колдонмого өз кодун, дайындарын жана кэш өлчөмдөрүн түшүрүп алуу мүмкүнчүлүгүн берет"</string>
<string name="permlab_writeSettings" msgid="8057285063719277394">"система тууралоолорун өзгөртүү"</string>
- <string name="permdesc_writeSettings" msgid="8293047411196067188">"Колдонмого системанын коопсуздук параметрлеринин дайындарын өзгөртүү мүмкүнчүлүгүн берет. Кесепттүү колдонмолор тутумуңуздун конфигурациясын бузуп салышы мүмкүн."</string>
+ <string name="permdesc_writeSettings" msgid="8293047411196067188">"Колдонмого системанын коопсуздук параметрлеринин дайындарын өзгөртүү мүмкүнчүлүгүн берет. Кесепттүү колдонмолор системаңыздын конфигурациясын бузуп салышы мүмкүн."</string>
<string name="permlab_receiveBootCompleted" msgid="6643339400247325379">"түзмөктү жандырганда иштеп баштоо"</string>
<string name="permdesc_receiveBootCompleted" product="tablet" msgid="5565659082718177484">"Колдонмого тутум жүктөлүп бүтөөрү менен өзүн-өзү иштетүү мүмкүнчүлүгүн берет. Бул планшеттин ишке киргизилишин кыйла создуктуруп, планшеттин үзгүлтүксүз иштешин жайлатып салышы мүмкүн."</string>
<string name="permdesc_receiveBootCompleted" product="tv" msgid="4900842256047614307">"Тутум күйгүзүлөрү менен колдонмого өз алдынча иштеп баштоого уруксат берет. Ага байланыштуу Android TV түзмөгүңүз кечирээк күйгүзүлүп, ошондой эле колдонмо такай иштеп тургандыктан, түзмөк жайыраак иштеп калышы мүмкүн."</string>
@@ -645,7 +645,7 @@
<string name="face_authenticated_confirmation_required" msgid="6872632732508013755">"Жүздүн аныктыгы текшерилди, эми \"Ырастоону\" басыңыз"</string>
<string name="fingerprint_error_hw_not_available" msgid="4571700896929561202">"Манжа изинин аппараттык камсыздоосу жеткиликтүү эмес."</string>
<string name="fingerprint_error_no_space" msgid="7285481581905967580">"Манжа изи жөндөлбөй жатат"</string>
- <string name="fingerprint_error_timeout" msgid="7361192266621252164">"Манжа изин тууралоо убакыты бүтүп калды. Кайра аракет кылыңыз."</string>
+ <string name="fingerprint_error_timeout" msgid="7361192266621252164">"Манжа изин коюу убакыты бүтүп калды. Кайра аракет кылыңыз."</string>
<string name="fingerprint_error_canceled" msgid="540026881380070750">"Манжа изи иш-аракети жокко чыгарылды."</string>
<string name="fingerprint_error_user_canceled" msgid="7685676229281231614">"Манжа изи операциясын колдонуучу жокко чыгарды."</string>
<string name="fingerprint_error_lockout" msgid="6626753679019351368">"Өтө көп жолу аракет кылдыңыз. Экранды кулпулоо функциясын колдонуңуз."</string>
@@ -668,7 +668,7 @@
<string name="face_recalibrate_notification_name" msgid="7311163114750748686">"Жүзүнөн таанып ачуу"</string>
<string name="face_recalibrate_notification_title" msgid="2524791952735579082">"Жүзүнөн таанып ачуу функциясында маселе келип чыкты"</string>
<string name="face_recalibrate_notification_content" msgid="3064513770251355594">"Жүзүңүздүн үлгүсүн өчүрүү үчүн басып, жаңы үлгүнү кошуңуз"</string>
- <string name="face_setup_notification_title" msgid="8843461561970741790">"Жүзүнөн таанып ачууну тууралоо"</string>
+ <string name="face_setup_notification_title" msgid="8843461561970741790">"Жүзүнөн таанып ачууну коюу"</string>
<string name="face_setup_notification_content" msgid="5463999831057751676">"Телефонуңузду карап туруп эле кулпусун ачып алыңыз"</string>
<string name="face_sensor_privacy_enabled" msgid="7407126963510598508">"Жүзүнөн таанып ачуу функциясын колдонуу үчүн Параметрлер &gt; Купуялык бөлүмүнө өтүп, "<b>"Камераны колдонууну"</b>" күйгүзүңүз"</string>
<string name="fingerprint_setup_notification_title" msgid="2002630611398849495">"Кулпусун ачуунун көбүрөөк жолдорун жөндөңүз"</string>
@@ -1256,7 +1256,7 @@
<string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Колдонмолорду иштетип баштоо"</string>
<string name="android_upgrading_complete" msgid="409800058018374746">"Жүктөлүүдө"</string>
<string name="fp_power_button_enrollment_message" msgid="5648173517663246140">"Кубат баскычын бастыңыз — адатта, бул экранды өчүрөт.\n\nМанжаңыздын изин жөндөп жатканда аны акырын басып көрүңүз."</string>
- <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Тууралап бүтүрүү үчүн экранды өчүрүңүз"</string>
+ <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Кошуп бүтүрүү үчүн экранды өчүрүңүз"</string>
<string name="fp_power_button_enrollment_button_text" msgid="3199783266386029200">"Өчүрүү"</string>
<string name="fp_power_button_bp_title" msgid="5585506104526820067">"Манжаңыздын изин ырастоону улантасызбы?"</string>
<string name="fp_power_button_bp_message" msgid="2983163038168903393">"Кубат баскычын бастыңыз — адатта, бул экранды өчүрөт.\n\nМанжаңыздын изин ырастоо үчүн аны акырын басып көрүңүз."</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Иштетүү"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Жумуш колдонмолору жок"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Жеке колдонмолор жок"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Жеке <xliff:g id="APP">%s</xliff:g> колдонмосун ачуу"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Жумуш үчүн <xliff:g id="APP">%s</xliff:g> колдонмосун ачуу"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Жеке серепчини колдонуу"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Жумуш серепчисин колдонуу"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM карта тармагынын кулпусун ачуучу PIN код"</string>
@@ -2282,7 +2286,7 @@
<string name="config_pdp_reject_multi_conn_to_same_pdn_not_allowed" msgid="6024904218067254186"></string>
<string name="window_magnification_prompt_title" msgid="2876703640772778215">"Чоңойтуу функциясынын жаңы параметрлери"</string>
<string name="window_magnification_prompt_content" msgid="8159173903032344891">"Эми экрандын бир бөлүгүн чоңойто аласыз"</string>
- <string name="turn_on_magnification_settings_action" msgid="8521433346684847700">"Жөндөөлөрдөн күйгүзүү"</string>
+ <string name="turn_on_magnification_settings_action" msgid="8521433346684847700">"Параметрлерден күйгүзүү"</string>
<string name="dismiss_action" msgid="1728820550388704784">"Жабуу"</string>
<string name="sensor_privacy_start_use_mic_notification_content_title" msgid="2420858361276370367">"Түзмөктүн микрофонун бөгөттөн чыгаруу"</string>
<string name="sensor_privacy_start_use_camera_notification_content_title" msgid="7287720213963466672">"Түзмөктүн камерасын бөгөттөн чыгаруу"</string>
diff --git a/core/res/res/values-lo/strings.xml b/core/res/res/values-lo/strings.xml
index d727b409da6a..ec593c0d4d12 100644
--- a/core/res/res/values-lo/strings.xml
+++ b/core/res/res/values-lo/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ຍົກເລີກການຢຸດຊົ່ວຄາວ"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"ບໍ່ມີແອັບບ່ອນເຮັດວຽກ"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"ບໍ່ມີແອັບສ່ວນຕົວ"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"ເປີດ <xliff:g id="APP">%s</xliff:g> ແບບສ່ວນຕົວ"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"ເປີດ <xliff:g id="APP">%s</xliff:g> ສຳລັບວຽກ"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ໃຊ້ໂປຣແກຣມທ່ອງເວັບສ່ວນຕົວ"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ໃຊ້ໂປຣແກຣມທ່ອງເວັບບ່ອນເຮັດວຽກ"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN ປົດລັອກເຄືອຂ່າຍຊິມ"</string>
diff --git a/core/res/res/values-lt/strings.xml b/core/res/res/values-lt/strings.xml
index ea2d5ac5da82..5d0e14833cd0 100644
--- a/core/res/res/values-lt/strings.xml
+++ b/core/res/res/values-lt/strings.xml
@@ -2166,8 +2166,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Atšaukti pristabdymą"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nėra darbo programų"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nėra asmeninių programų"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Asmeninės programos „<xliff:g id="APP">%s</xliff:g>“ atidarymas"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Darbo programos „<xliff:g id="APP">%s</xliff:g>“ atidarymas"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Naudoti asmeninę naršyklę"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Naudoti darbo naršyklę"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM tinklo operatoriaus pasirinkimo ribojimo panaikinimo PIN kodas"</string>
diff --git a/core/res/res/values-lv/strings.xml b/core/res/res/values-lv/strings.xml
index dd84e8a95a66..91b62f20dba9 100644
--- a/core/res/res/values-lv/strings.xml
+++ b/core/res/res/values-lv/strings.xml
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Aktivizēt"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nav darba lietotņu"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nav personīgu lietotņu"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Lietotnes <xliff:g id="APP">%s</xliff:g> atvēršana personīgajā profilā"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Lietotnes <xliff:g id="APP">%s</xliff:g> atvēršana darba profilā"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Izmantot personīgo pārlūku"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Izmantot darba pārlūku"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM tīkla atbloķēšanas PIN"</string>
diff --git a/core/res/res/values-mcc310-mnc030-my/strings.xml b/core/res/res/values-mcc310-mnc030-my/strings.xml
index 9622aa13af9b..ad24fed8c328 100644
--- a/core/res/res/values-mcc310-mnc030-my/strings.xml
+++ b/core/res/res/values-mcc310-mnc030-my/strings.xml
@@ -20,7 +20,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="mmcc_imsi_unknown_in_hlr" msgid="656054059094417927">"ဆင်းမ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
- <string name="mmcc_illegal_ms" msgid="1782569305985001089">"ဆင်းမ်ကို ခွင့်မပြုပါ MM#3"</string>
+ <string name="mmcc_imsi_unknown_in_hlr" msgid="656054059094417927">"ဆင်းမ်ကတ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
+ <string name="mmcc_illegal_ms" msgid="1782569305985001089">"ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ MM#3"</string>
<string name="mmcc_illegal_me" msgid="8246632898824321280">"ဖုန်းကို ခွင့်မပြုပါ MM#6"</string>
</resources>
diff --git a/core/res/res/values-mcc310-mnc170-my/strings.xml b/core/res/res/values-mcc310-mnc170-my/strings.xml
index f018b24435f6..d782bd423467 100644
--- a/core/res/res/values-mcc310-mnc170-my/strings.xml
+++ b/core/res/res/values-mcc310-mnc170-my/strings.xml
@@ -20,7 +20,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="mmcc_imsi_unknown_in_hlr" msgid="5424518490295341205">"ဆင်းမ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
- <string name="mmcc_illegal_ms" msgid="3527626511418944853">"ဆင်းမ်ကို ခွင့်မပြုပါ MM#3"</string>
+ <string name="mmcc_imsi_unknown_in_hlr" msgid="5424518490295341205">"ဆင်းမ်ကတ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
+ <string name="mmcc_illegal_ms" msgid="3527626511418944853">"ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ MM#3"</string>
<string name="mmcc_illegal_me" msgid="3948912590657398489">"ဖုန်းကို ခွင့်မပြုပါ MM#6"</string>
</resources>
diff --git a/core/res/res/values-mcc310-mnc280-my/strings.xml b/core/res/res/values-mcc310-mnc280-my/strings.xml
index 3f3097ee256d..e42826dba6fa 100644
--- a/core/res/res/values-mcc310-mnc280-my/strings.xml
+++ b/core/res/res/values-mcc310-mnc280-my/strings.xml
@@ -20,7 +20,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="mmcc_imsi_unknown_in_hlr" msgid="1070849538022865416">"ဆင်းမ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
- <string name="mmcc_illegal_ms" msgid="499832197298480670">"ဆင်းမ်ကို ခွင့်မပြုပါ MM#3"</string>
+ <string name="mmcc_imsi_unknown_in_hlr" msgid="1070849538022865416">"ဆင်းမ်ကတ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
+ <string name="mmcc_illegal_ms" msgid="499832197298480670">"ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ MM#3"</string>
<string name="mmcc_illegal_me" msgid="2346111479504469688">"ဖုန်းကို ခွင့်မပြုပါ MM#6"</string>
</resources>
diff --git a/core/res/res/values-mcc310-mnc380-my/strings.xml b/core/res/res/values-mcc310-mnc380-my/strings.xml
index 8f33ac205bf8..14f9beb7511b 100644
--- a/core/res/res/values-mcc310-mnc380-my/strings.xml
+++ b/core/res/res/values-mcc310-mnc380-my/strings.xml
@@ -20,6 +20,6 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="mmcc_imsi_unknown_in_hlr" msgid="6178029798083341927">"ဆင်းမ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
- <string name="mmcc_illegal_ms" msgid="6084322234976891423">"ဆင်းမ်ကို ခွင့်မပြုပါ MM#3"</string>
+ <string name="mmcc_imsi_unknown_in_hlr" msgid="6178029798083341927">"ဆင်းမ်ကတ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
+ <string name="mmcc_illegal_ms" msgid="6084322234976891423">"ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ MM#3"</string>
</resources>
diff --git a/core/res/res/values-mcc310-mnc410-my/strings.xml b/core/res/res/values-mcc310-mnc410-my/strings.xml
index fff7f6993c23..53e67b0d8915 100644
--- a/core/res/res/values-mcc310-mnc410-my/strings.xml
+++ b/core/res/res/values-mcc310-mnc410-my/strings.xml
@@ -20,7 +20,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="mmcc_imsi_unknown_in_hlr" msgid="8861901652350883183">"ဆင်းမ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
- <string name="mmcc_illegal_ms" msgid="2604694337529846283">"ဆင်းမ်ကို ခွင့်မပြုပါ MM#3"</string>
+ <string name="mmcc_imsi_unknown_in_hlr" msgid="8861901652350883183">"ဆင်းမ်ကတ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
+ <string name="mmcc_illegal_ms" msgid="2604694337529846283">"ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ MM#3"</string>
<string name="mmcc_illegal_me" msgid="3099618295079374317">"ဖုန်းကို ခွင့်မပြုပါ MM#6"</string>
</resources>
diff --git a/core/res/res/values-mcc310-mnc560-my/strings.xml b/core/res/res/values-mcc310-mnc560-my/strings.xml
index df12a44a2574..56384dc9ec22 100644
--- a/core/res/res/values-mcc310-mnc560-my/strings.xml
+++ b/core/res/res/values-mcc310-mnc560-my/strings.xml
@@ -20,7 +20,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="mmcc_imsi_unknown_in_hlr" msgid="3526528316378889524">"ဆင်းမ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
- <string name="mmcc_illegal_ms" msgid="4618730283812066268">"ဆင်းမ်ကို ခွင့်မပြုပါ MM#3"</string>
+ <string name="mmcc_imsi_unknown_in_hlr" msgid="3526528316378889524">"ဆင်းမ်ကတ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
+ <string name="mmcc_illegal_ms" msgid="4618730283812066268">"ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ MM#3"</string>
<string name="mmcc_illegal_me" msgid="8522039751358990401">"ဖုန်းကို ခွင့်မပြုပါ MM#6"</string>
</resources>
diff --git a/core/res/res/values-mcc310-mnc950-my/strings.xml b/core/res/res/values-mcc310-mnc950-my/strings.xml
index c66f1689d49a..366b5c405692 100644
--- a/core/res/res/values-mcc310-mnc950-my/strings.xml
+++ b/core/res/res/values-mcc310-mnc950-my/strings.xml
@@ -20,7 +20,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="mmcc_imsi_unknown_in_hlr" msgid="615419724607901560">"ဆင်းမ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
- <string name="mmcc_illegal_ms" msgid="7801541624846497489">"ဆင်းမ်ကို ခွင့်မပြုပါ MM#3"</string>
+ <string name="mmcc_imsi_unknown_in_hlr" msgid="615419724607901560">"ဆင်းမ်ကတ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
+ <string name="mmcc_illegal_ms" msgid="7801541624846497489">"ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ MM#3"</string>
<string name="mmcc_illegal_me" msgid="7066936962628406316">"ဖုန်းကို ခွင့်မပြုပါ MM#6"</string>
</resources>
diff --git a/core/res/res/values-mcc310/config.xml b/core/res/res/values-mcc310/config.xml
index 76abceeb74b1..df398f9aab32 100644
--- a/core/res/res/values-mcc310/config.xml
+++ b/core/res/res/values-mcc310/config.xml
@@ -22,7 +22,4 @@
<!-- Whether safe headphone volume is enabled or not (country specific). -->
<bool name="config_safe_media_volume_enabled">false</bool>
- <!-- Whether safe headphone sound dosage warning is enabled or not (country specific). -->
- <bool name="config_safe_sound_dosage_mcc_enabled">false</bool>
-
</resources>
diff --git a/core/res/res/values-mcc311-mnc180-my/strings.xml b/core/res/res/values-mcc311-mnc180-my/strings.xml
index 132f77a1d8bd..012009814cd5 100644
--- a/core/res/res/values-mcc311-mnc180-my/strings.xml
+++ b/core/res/res/values-mcc311-mnc180-my/strings.xml
@@ -20,7 +20,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="mmcc_imsi_unknown_in_hlr" msgid="604133804161351810">"ဆင်းမ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
- <string name="mmcc_illegal_ms" msgid="4073997279280371621">"ဆင်းမ်ကို ခွင့်မပြုပါ MM#3"</string>
+ <string name="mmcc_imsi_unknown_in_hlr" msgid="604133804161351810">"ဆင်းမ်ကတ်ကို ထောက်ပံ့မထားပါ MM#2"</string>
+ <string name="mmcc_illegal_ms" msgid="4073997279280371621">"ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ MM#3"</string>
<string name="mmcc_illegal_me" msgid="4936539345546223576">"ဖုန်းကို ခွင့်မပြုပါ MM#6"</string>
</resources>
diff --git a/core/res/res/values-mcc311/config.xml b/core/res/res/values-mcc311/config.xml
index 6e0b678f94d9..df398f9aab32 100644
--- a/core/res/res/values-mcc311/config.xml
+++ b/core/res/res/values-mcc311/config.xml
@@ -22,7 +22,4 @@
<!-- Whether safe headphone volume is enabled or not (country specific). -->
<bool name="config_safe_media_volume_enabled">false</bool>
- <!-- Whether safe headphone sound dosage warning is enabled or not (country specific). -->
- <bool name="config_safe_sound_dosage_enabled">false</bool>
-
</resources>
diff --git a/core/res/res/values-mcc312/config.xml b/core/res/res/values-mcc312/config.xml
index 6e0b678f94d9..df398f9aab32 100644
--- a/core/res/res/values-mcc312/config.xml
+++ b/core/res/res/values-mcc312/config.xml
@@ -22,7 +22,4 @@
<!-- Whether safe headphone volume is enabled or not (country specific). -->
<bool name="config_safe_media_volume_enabled">false</bool>
- <!-- Whether safe headphone sound dosage warning is enabled or not (country specific). -->
- <bool name="config_safe_sound_dosage_enabled">false</bool>
-
</resources>
diff --git a/core/res/res/values-mcc313/config.xml b/core/res/res/values-mcc313/config.xml
index 6e0b678f94d9..df398f9aab32 100644
--- a/core/res/res/values-mcc313/config.xml
+++ b/core/res/res/values-mcc313/config.xml
@@ -22,7 +22,4 @@
<!-- Whether safe headphone volume is enabled or not (country specific). -->
<bool name="config_safe_media_volume_enabled">false</bool>
- <!-- Whether safe headphone sound dosage warning is enabled or not (country specific). -->
- <bool name="config_safe_sound_dosage_enabled">false</bool>
-
</resources>
diff --git a/core/res/res/values-mcc314/config.xml b/core/res/res/values-mcc314/config.xml
index 6e0b678f94d9..df398f9aab32 100644
--- a/core/res/res/values-mcc314/config.xml
+++ b/core/res/res/values-mcc314/config.xml
@@ -22,7 +22,4 @@
<!-- Whether safe headphone volume is enabled or not (country specific). -->
<bool name="config_safe_media_volume_enabled">false</bool>
- <!-- Whether safe headphone sound dosage warning is enabled or not (country specific). -->
- <bool name="config_safe_sound_dosage_enabled">false</bool>
-
</resources>
diff --git a/core/res/res/values-mcc315/config.xml b/core/res/res/values-mcc315/config.xml
index 6e0b678f94d9..df398f9aab32 100644
--- a/core/res/res/values-mcc315/config.xml
+++ b/core/res/res/values-mcc315/config.xml
@@ -22,7 +22,4 @@
<!-- Whether safe headphone volume is enabled or not (country specific). -->
<bool name="config_safe_media_volume_enabled">false</bool>
- <!-- Whether safe headphone sound dosage warning is enabled or not (country specific). -->
- <bool name="config_safe_sound_dosage_enabled">false</bool>
-
</resources>
diff --git a/core/res/res/values-mcc316/config.xml b/core/res/res/values-mcc316/config.xml
index 6e0b678f94d9..df398f9aab32 100644
--- a/core/res/res/values-mcc316/config.xml
+++ b/core/res/res/values-mcc316/config.xml
@@ -22,7 +22,4 @@
<!-- Whether safe headphone volume is enabled or not (country specific). -->
<bool name="config_safe_media_volume_enabled">false</bool>
- <!-- Whether safe headphone sound dosage warning is enabled or not (country specific). -->
- <bool name="config_safe_sound_dosage_enabled">false</bool>
-
</resources>
diff --git a/core/res/res/values-mk/strings.xml b/core/res/res/values-mk/strings.xml
index d570cfc361f3..2ed22d4df384 100644
--- a/core/res/res/values-mk/strings.xml
+++ b/core/res/res/values-mk/strings.xml
@@ -1619,7 +1619,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Таблет"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"Телевизор"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Телефон"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Приклучи звучници"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Звучници на док"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Надворешен уред"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Слушалки"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Прекини ја паузата"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Нема работни апликации"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Нема лични апликации"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Отворање лична <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Отворање работна <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Користи личен прелистувач"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Користи работен прелистувач"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN за отклучување на мрежата на SIM-картичката"</string>
diff --git a/core/res/res/values-ml/strings.xml b/core/res/res/values-ml/strings.xml
index dcc45f8b532f..eebe42cd1dbf 100644
--- a/core/res/res/values-ml/strings.xml
+++ b/core/res/res/values-ml/strings.xml
@@ -1365,7 +1365,7 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"USB വഴിയുള്ള MIDI ഓണാക്കി"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"ഉപകരണം വെബ്‌ക്യാം ആയി കണക്റ്റ് ചെയ്തു"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"USB ആക്‌സസറി കണക്റ്റ് ചെയ്തു"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"കൂടുതൽ ഓപ്ഷനുകൾക്ക് ടാപ്പുചെയ്യുക."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"കൂടുതൽ ഓപ്ഷനുകൾക്ക് ടാപ്പ് ചെയ്യുക."</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"കണക്‌റ്റ് ചെയ്‌ത ഉപകരണം ചാർജ് ചെയ്യുന്നു. കൂടുതൽ ഓപ്ഷനുകൾക്ക് ടാപ്പ് ചെയ്യുക."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"അനലോഗ് ഓഡിയോ ആക്‌സസറി കണ്ടെത്തി"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"അറ്റാച്ചുചെയ്‌ത ഉപകരണം ഈ ഫോണിന് അനുയോജ്യമല്ല. കൂടുതലറിയാൻ ടാപ്പുചെയ്യുക."</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"താൽക്കാലികമായി നിർത്തിയത് മാറ്റുക"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"ഔദ്യോഗിക ആപ്പുകൾ ഇല്ല"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"വ്യക്തിപര ആപ്പുകൾ ഇല്ല"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"<xliff:g id="APP">%s</xliff:g> എന്ന വ്യക്തിപര ആപ്പ് തുറക്കുക"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"<xliff:g id="APP">%s</xliff:g> എന്ന ഔദ്യോഗിക ആപ്പ് തുറക്കുക"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"വ്യക്തിപരമായ ബ്രൗസർ ഉപയോഗിക്കുക"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ഔദ്യോഗിക ബ്രൗസർ ഉപയോഗിക്കുക"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"സിം നെറ്റ്‌വർക്ക് അൺലോക്ക് ചെയ്യാനുള്ള പിൻ"</string>
diff --git a/core/res/res/values-mn/strings.xml b/core/res/res/values-mn/strings.xml
index fcecbe95c1e4..740bb6fbf7ff 100644
--- a/core/res/res/values-mn/strings.xml
+++ b/core/res/res/values-mn/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Үргэлжлүүлэх"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Ямар ч ажлын апп байхгүй байна"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Ямар ч хувийн апп байхгүй байна"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Хувийн <xliff:g id="APP">%s</xliff:g>-г нээх"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Ажлын <xliff:g id="APP">%s</xliff:g>-г нээх"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Хувийн хөтөч ашиглах"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Ажлын хөтөч ашиглах"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Сүлжээний SIM-н түгжээг тайлах ПИН"</string>
diff --git a/core/res/res/values-mr/strings.xml b/core/res/res/values-mr/strings.xml
index c63baeb7e95b..cd9b87ae6d6d 100644
--- a/core/res/res/values-mr/strings.xml
+++ b/core/res/res/values-mr/strings.xml
@@ -638,8 +638,8 @@
<string name="fingerprint_acquired_immobile" msgid="1621891895241888048">"तुमच्या बोटाची स्थिती प्रत्येक वेळी थोडीशी बदला"</string>
<string-array name="fingerprint_acquired_vendor">
</string-array>
- <string name="fingerprint_error_not_match" msgid="4599441812893438961">"फिंगरप्रिंट ओळखले नाही"</string>
- <string name="fingerprint_udfps_error_not_match" msgid="8236930793223158856">"फिंगरप्रिंट ओळखले नाही"</string>
+ <string name="fingerprint_error_not_match" msgid="4599441812893438961">"फिंगरप्रिंट ओळखली नाही"</string>
+ <string name="fingerprint_udfps_error_not_match" msgid="8236930793223158856">"फिंगरप्रिंट ओळखली नाही"</string>
<string name="fingerprint_authenticated" msgid="2024862866860283100">"फिंगरप्रिंट ऑथेंटिकेट केली आहे"</string>
<string name="face_authenticated_no_confirmation_required" msgid="8867889115112348167">"चेहरा ऑथेंटिकेशन केलेला आहे"</string>
<string name="face_authenticated_confirmation_required" msgid="6872632732508013755">"चेहरा ऑथेंटिकेशन केलेला आहे, कृपया कंफर्म प्रेस करा"</string>
@@ -1619,7 +1619,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"टॅबलेट"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"टीव्ही"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"फोन"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"स्पीकर डॉक करा"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"डॉक स्पीकर"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"बाह्य डिव्हाइस"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"हेडफोन"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"पुन्हा सुरू करा"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"कोणतीही कार्य ॲप्स सपोर्ट करत नाहीत"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"कोणतीही वैयक्तिक ॲप्स सपोर्ट करत नाहीत"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"वैयक्तिक <xliff:g id="APP">%s</xliff:g> उघडा"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"ऑफिसचे <xliff:g id="APP">%s</xliff:g> उघडा"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"वैयक्तिक ब्राउझर वापरा"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"कार्य ब्राउझर वापरा"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"सिम नेटवर्क अनलॉक पिन"</string>
diff --git a/core/res/res/values-ms/strings.xml b/core/res/res/values-ms/strings.xml
index 85393ffcd6cc..7d0dfcc54744 100644
--- a/core/res/res/values-ms/strings.xml
+++ b/core/res/res/values-ms/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Nyahjeda"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Tiada apl kerja"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Tiada apl peribadi"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Buka <xliff:g id="APP">%s</xliff:g> peribadi"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Buka <xliff:g id="APP">%s</xliff:g> kerja"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Gunakan penyemak imbas peribadi"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Gunakan penyemak imbas kerja"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN buka kunci rangkaian SIM"</string>
diff --git a/core/res/res/values-my/strings.xml b/core/res/res/values-my/strings.xml
index 8dba09894ebd..196a64104248 100644
--- a/core/res/res/values-my/strings.xml
+++ b/core/res/res/values-my/strings.xml
@@ -43,7 +43,7 @@
<string name="mismatchPin" msgid="2929611853228707473">"သင် ရိုက်ထည့်ခဲ့သည့် PIN များ မတိုက်ဆိုင်ပါ။"</string>
<string name="invalidPin" msgid="7542498253319440408">"နံပါတ်(၄)ခုမှ(၈)ခုအထိပါရှိသော ပင်နံပါတ်အားထည့်ပါ"</string>
<string name="invalidPuk" msgid="8831151490931907083">"နံပါတ်(၈)ခုသို့မဟုတ် ထိုထက်ရှည်သောသော PUKအားထည့်သွင်းပါ"</string>
- <string name="needPuk" msgid="3503414069503752211">"ဆင်းမ်၏ ပင်နံပါတ်ပြန်ဖွင့်သည့် ကုဒ်ကို လော့ခ်ချထားသည်။ ၎င်းကိုဖွင့်ရန် ပင်နံပါတ်ပြန်ဖွင့်သည့် ကုဒ်ကို ထည့်ပါ။"</string>
+ <string name="needPuk" msgid="3503414069503752211">"ဆင်းမ်ကတ်၏ ပင်နံပါတ်ပြန်ဖွင့်သည့် ကုဒ်ကို လော့ခ်ချထားသည်။ ၎င်းကိုဖွင့်ရန် ပင်နံပါတ်ပြန်ဖွင့်သည့် ကုဒ်ကို ထည့်ပါ။"</string>
<string name="needPuk2" msgid="3910763547447344963">"ဆင်းမ်ကိုဖွင့်ရန် ပင်နံပါတ်ပြန်ဖွင့်သည့် ကုဒ် ၂ ကို ထည့်ပါ။"</string>
<string name="enablePin" msgid="2543771964137091212">"မအောင်မြင်ပါ, SIM/RUIM သော့ကို အရင် သုံးခွင့်ပြုရန်"</string>
<plurals name="pinpuk_attempts" formatted="false" msgid="1619867269012213584">
@@ -80,7 +80,7 @@
<string name="RestrictedOnNormalTitle" msgid="7009474589746551737">"ဖုန်းဝန်ဆောင်မှု မရှိပါ"</string>
<string name="RestrictedOnAllVoiceTitle" msgid="3982069078579103087">"ဖုန်းခေါ်ဆိုခြင်း ဝန်ဆောင်မှု သို့မဟုတ် အရေးပေါ်ခေါ်ဆိုခြင်း မရနိုင်ပါ"</string>
<string name="RestrictedStateContent" msgid="7693575344608618926">"သင်၏ ဝန်ဆောင်မှုပေးသူက ယာယီပိတ်ထားသည်"</string>
- <string name="RestrictedStateContentMsimTemplate" msgid="5228235722511044687">"ဆင်းမ် <xliff:g id="SIMNUMBER">%d</xliff:g> အတွက် သင်၏ ဝန်ဆောင်မှုပေးသူက ယာယီပိတ်ထားပါသည်"</string>
+ <string name="RestrictedStateContentMsimTemplate" msgid="5228235722511044687">"ဆင်းမ်ကတ် <xliff:g id="SIMNUMBER">%d</xliff:g> အတွက် သင်၏ ဝန်ဆောင်မှုပေးသူက ယာယီပိတ်ထားပါသည်"</string>
<string name="NetworkPreferenceSwitchTitle" msgid="1008329951315753038">"မိုဘိုင်းကွန်ရက် လိုင်းမရပါ"</string>
<string name="NetworkPreferenceSwitchSummary" msgid="2086506181486324860">"ဦးစားပေးကွန်ရက်သို့ ပြောင်းကြည့်ပါ။ ပြောင်းရန် တို့ပါ။"</string>
<string name="EmergencyCallWarningTitle" msgid="1615688002899152860">"အရေးပေါ်ခေါ်ဆိုမှု မရနိုင်ပါ"</string>
@@ -746,8 +746,8 @@
<string name="permdesc_sdcardWrite" msgid="8376047679331387102">"မျှဝေသိုလှောင်ခန်းမှ အရာများ ရေးခွင့်ပြုသည်။"</string>
<string name="permlab_use_sip" msgid="8250774565189337477">"SIP ခေါ်ဆိုမှုများ ခေါ်ရန်/လက်ခံရန်"</string>
<string name="permdesc_use_sip" msgid="3590270893253204451">"SIP ခေါ်ဆိုမှုများ ခေါ်ရန်နှင့် လက်ခံနိုင်ရန် အက်ပ်ကို ခွင့်ပြုပါ။"</string>
- <string name="permlab_register_sim_subscription" msgid="1653054249287576161">"တယ်လီကွမ် ဆင်းမ် ချိတ်ဆက်မှုများကို မှတ်ပုံတင်ပါ"</string>
- <string name="permdesc_register_sim_subscription" msgid="4183858662792232464">"အက်ပ်အား တယ်လီကွမ် ဆင်းမ် ချိတ်ဆက်မှုကို မှတ်ပုံတင်ခွင့် ပြုသည်။"</string>
+ <string name="permlab_register_sim_subscription" msgid="1653054249287576161">"တယ်လီကွမ် ဆင်းမ်ကတ် ချိတ်ဆက်မှုများကို မှတ်ပုံတင်ပါ"</string>
+ <string name="permdesc_register_sim_subscription" msgid="4183858662792232464">"အက်ပ်အား တယ်လီကွမ် ဆင်းမ်ကတ် ချိတ်ဆက်မှုကို မှတ်ပုံတင်ခွင့် ပြုသည်။"</string>
<string name="permlab_register_call_provider" msgid="6135073566140050702">"တယ်လီကွမ် တယ်လီကွမ် ချိတ်ဆက်မှု အသစ်များကို မှတ်ပုံတင်ပါ"</string>
<string name="permdesc_register_call_provider" msgid="4201429251459068613">"အက်ပ်အား တယ်လီကွမ် ချိတ်ဆက်မှု အသစ်များကို မှတ်ပုံတင်ခွင့် ပြုသည်။"</string>
<string name="permlab_connection_manager" msgid="3179365584691166915">"တယ်လီကွမ် ဆက်သွယ်မှုများကို စီမံရန်"</string>
@@ -973,13 +973,13 @@
<string name="lockscreen_storage_locked" msgid="634993789186443380">"ဝန်ဆောင်မှုနှင့် ဒေတာအားလုံးအတွက် လော့ခ်ဖွင့်ပါ"</string>
<string name="faceunlock_multiple_failures" msgid="681991538434031708">"မျက်မှာပြ လော့ခ်ဖွင့်ခြင်း ခွင့်ပြုသော အကြိမ်ရေထက် ကျော်လွန်သွားပါပြီ"</string>
<string name="lockscreen_missing_sim_message_short" msgid="1229301273156907613">"ဆင်းမ်ကတ် မရှိပါ"</string>
- <string name="lockscreen_missing_sim_message" product="tablet" msgid="3986843848305639161">"တက်ဘလက်တွင် ဆင်းမ်မရှိပါ။"</string>
+ <string name="lockscreen_missing_sim_message" product="tablet" msgid="3986843848305639161">"တက်ဘလက်တွင် ဆင်းမ်ကတ်မရှိပါ။"</string>
<string name="lockscreen_missing_sim_message" product="tv" msgid="3903140876952198273">"သင့် Android TV စက်တွင် ဆင်းမ်မရှိပါ။"</string>
- <string name="lockscreen_missing_sim_message" product="default" msgid="6184187634180854181">"ဖုန်းတွင် ဆင်းမ်မရှိပါ။"</string>
- <string name="lockscreen_missing_sim_instructions" msgid="5823469004536805423">"ဆင်းမ်ထည့်ပါ။"</string>
- <string name="lockscreen_missing_sim_instructions_long" msgid="4403843937236648032">"ဆင်းမ်မရှိပါ (သို့) သုံး၍မရပါ။ ဆင်းမ်ထည့်ပါ။"</string>
- <string name="lockscreen_permanent_disabled_sim_message_short" msgid="1925200607820809677">"ဆင်းမ်ကို သုံး၍မရပါ။"</string>
- <string name="lockscreen_permanent_disabled_sim_instructions" msgid="6902979937802238429">"သင်၏ဆင်းမ်ကို အပြီးပိတ်လိုက်သည်။\n ဆင်းမ်နောက်တစ်ခု ရယူရန် သင်၏ ကြိုးမဲ့ဝန်ဆောင်မှုပေးသူထံ ဆက်သွယ်ပါ။"</string>
+ <string name="lockscreen_missing_sim_message" product="default" msgid="6184187634180854181">"ဖုန်းတွင် ဆင်းမ်ကတ်မရှိပါ။"</string>
+ <string name="lockscreen_missing_sim_instructions" msgid="5823469004536805423">"ဆင်းမ်ကတ်ထည့်ပါ။"</string>
+ <string name="lockscreen_missing_sim_instructions_long" msgid="4403843937236648032">"ဆင်းမ်ကတ်မရှိပါ (သို့) သုံး၍မရပါ။ ဆင်းမ်ကတ်ထည့်ပါ။"</string>
+ <string name="lockscreen_permanent_disabled_sim_message_short" msgid="1925200607820809677">"ဆင်းမ်ကတ်ကို သုံး၍မရပါ။"</string>
+ <string name="lockscreen_permanent_disabled_sim_instructions" msgid="6902979937802238429">"သင်၏ဆင်းမ်ကတ်ကို အပြီးပိတ်လိုက်သည်။\n ဆင်းမ်ကတ်နောက်တစ်ခု ရယူရန် သင်၏ ကြိုးမဲ့ဝန်ဆောင်မှုပေးသူထံ ဆက်သွယ်ပါ။"</string>
<string name="lockscreen_transport_prev_description" msgid="2879469521751181478">"ယခင် တစ်ပုဒ်"</string>
<string name="lockscreen_transport_next_description" msgid="2931509904881099919">"နောက် တစ်ပုဒ်"</string>
<string name="lockscreen_transport_pause_description" msgid="6705284702135372494">"ခဏရပ်ရန်"</string>
@@ -989,10 +989,10 @@
<string name="lockscreen_transport_ffw_description" msgid="4763794746640196772">"ရှေ့သို့ သွားရန်"</string>
<string name="emergency_calls_only" msgid="3057351206678279851">"အရေးပေါ်ခေါ်ဆိုမှုသာ"</string>
<string name="lockscreen_network_locked_message" msgid="2814046965899249635">"ကွန်ရက် သော့ကျနေခြင်း"</string>
- <string name="lockscreen_sim_puk_locked_message" msgid="2867953953604224166">"ဆင်းမ်၏ ပင်နံပါတ်ပြန်ဖွင့်သည့် ကုဒ်ကို လော့ခ်ချထားသည်။"</string>
+ <string name="lockscreen_sim_puk_locked_message" msgid="2867953953604224166">"ဆင်းမ်ကတ်၏ ပင်နံပါတ်ပြန်ဖွင့်သည့် ကုဒ်ကို လော့ခ်ချထားသည်။"</string>
<string name="lockscreen_sim_puk_locked_instructions" msgid="5307979043730860995">"သုံးစွဲသူ လမ်းညွှန်ကို ကြည့်ပါ သို့မဟုတ် ဖောက်သည်များ စောင့်ရှောက်ရေး ဌာနကို ဆက်သွယ်ပါ။"</string>
- <string name="lockscreen_sim_locked_message" msgid="5911944931911850164">"ဆင်းမ်ကို လော့ခ်ချထားသည်။"</string>
- <string name="lockscreen_sim_unlock_progress_dialog_message" msgid="8381565919325410939">"ဆင်းမ်ကိုဖွင့်နေသည်…"</string>
+ <string name="lockscreen_sim_locked_message" msgid="5911944931911850164">"ဆင်းမ်ကတ်ကို လော့ခ်ချထားသည်။"</string>
+ <string name="lockscreen_sim_unlock_progress_dialog_message" msgid="8381565919325410939">"ဆင်းမ်ကတ် ဖွင့်နေသည်…"</string>
<string name="lockscreen_too_many_failed_attempts_dialog_message" msgid="6458790975898594240">"သင်သည် သော့ဖွင့် ပုံစံကို<xliff:g id="NUMBER_0">%1$d</xliff:g> ကြိမ် မမှန်မကန် ရေးဆွဲခဲ့သည်။ \n\nထပ်ပြီးတော့ <xliff:g id="NUMBER_1">%2$d</xliff:g>စက္ကန့် အကြာမှာ စမ်းကြည့်ပါ။"</string>
<string name="lockscreen_too_many_failed_password_attempts_dialog_message" msgid="3118353451602377380">"သင်သည် စကားဝှက်ကို <xliff:g id="NUMBER_0">%1$d</xliff:g> ကြိမ် မမှန်မကန် ရိုက်ခဲ့ပြီ။ \n\n ထပ်ပြီးတော့ <xliff:g id="NUMBER_1">%2$d</xliff:g> စက္ကန့်အကြာ စမ်းကြည့်ပါ။"</string>
<string name="lockscreen_too_many_failed_pin_attempts_dialog_message" msgid="2874278239714821984">"သင်သည် သင်၏ PIN <xliff:g id="NUMBER_0">%1$d</xliff:g>ကို ကြိမ် မမှန်မကန် ရိုက်ခဲ့ပြီ။ \n\n ထပ်ပြီးတော့ <xliff:g id="NUMBER_1">%2$d</xliff:g> စက္ကန့်အကြာ စမ်းကြည့်ပါ။"</string>
@@ -1337,7 +1337,7 @@
<string name="sms_short_code_confirm_always_allow" msgid="2223014893129755950">"အမြဲခွင့်ပြုရန်"</string>
<string name="sms_short_code_confirm_never_allow" msgid="2688828813521652079">"ဘယ်တော့မှခွင့်မပြုပါ"</string>
<string name="sim_removed_title" msgid="1349026474932481037">"ဆင်းမ်ဖယ်ရှားလိုက်သည်"</string>
- <string name="sim_removed_message" msgid="8469588437451533845">"မှန်ကန်သောဆင်းမ်ဖြင့် ပြန်မစမချင်း မိုဘိုင်းကွန်ရက်ကို ရနိုင်မည်မဟုတ်ပါ။"</string>
+ <string name="sim_removed_message" msgid="8469588437451533845">"မှန်ကန်သောဆင်းမ်ကတ်ဖြင့် ပြန်မစမချင်း မိုဘိုင်းကွန်ရက်ကို ရနိုင်မည်မဟုတ်ပါ။"</string>
<string name="sim_done_button" msgid="6464250841528410598">"ပြီးပါပြီ"</string>
<string name="sim_added_title" msgid="2976783426741012468">"ဆင်းမ်ထည့်လိုက်သည်"</string>
<string name="sim_added_message" msgid="6602906609509958680">"မိုးဘိုင်းကွန်ရက်ကို ဆက်သွယ်ရန် စက်ကို ပြန် စ ပါ"</string>
@@ -1653,7 +1653,7 @@
<string name="kg_puk_enter_puk_hint" msgid="6696187482616360994">"ဆင်းမ်ကဒ်သည် ယခု ပိတ်သွားပါပြီ ဆက်လက် လုပ်ဆောင်ရန် ပင်နံပါတ် ပြန်ဖွင့်သည့် ကုဒ်ကို ရိုက်ထည့်ပါ။ ပိုမိုသိချင်လျင် ဖုန်းဝန်ဆောင်မှု ပေးသောဌာန အားဆက်သွယ်နိုင်ပါသည်။"</string>
<string name="kg_puk_enter_pin_hint" msgid="8190982314659429770">"လိုချင်သော ပင်နံပါတ်ကို ရိုက်ထည့်ပါ"</string>
<string name="kg_enter_confirm_pin_hint" msgid="6372557107414074580">"လိုချင်သော ပင်နံပါတ်ကို အတည်ပြုရန်"</string>
- <string name="kg_sim_unlock_progress_dialog_message" msgid="5743634657721110967">"ဆင်းမ်ကိုဖွင့်နေသည်…"</string>
+ <string name="kg_sim_unlock_progress_dialog_message" msgid="5743634657721110967">"ဆင်းမ်ကတ် ဖွင့်နေသည်…"</string>
<string name="kg_password_wrong_pin_code" msgid="9013856346870572451">"ပင်နံပါတ် အမှား"</string>
<string name="kg_invalid_sim_pin_hint" msgid="4821601451222564077">"ဂဏန်း၄ လုံးမှ ၈ လုံးအထိ ရှိသော ပင်နံပါတ် ရိုက်ထည့်ပါ"</string>
<string name="kg_invalid_sim_puk_hint" msgid="2539364558870734339">"ပင်နံပါတ် ပြန်ဖွင့်သည့် ကုဒ် က နံပါတ် ၈ လုံး ဖြစ်ရပါမည်"</string>
@@ -2046,14 +2046,14 @@
<string name="etws_primary_default_message_test" msgid="4583367373909549421">"အရေးပေါ် မက်ဆေ့ဂျ် စမ်းသပ်မှု"</string>
<string name="notification_reply_button_accessibility" msgid="5235776156579456126">"စာပြန်ရန်"</string>
<string name="etws_primary_default_message_others" msgid="7958161706019130739"></string>
- <string name="mmcc_authentication_reject" msgid="4891965994643876369">"စကားသံအတွက် ဆင်းမ်ကို ခွင့်မပြုပါ"</string>
- <string name="mmcc_imsi_unknown_in_hlr" msgid="227760698553988751">"စကားသံအတွက် ဆင်းမ်ကို ထောက်ပံ့မထားပါ"</string>
- <string name="mmcc_illegal_ms" msgid="7509650265233909445">"စကားသံအတွက် ဆင်းမ်ကို ခွင့်မပြုပါ"</string>
+ <string name="mmcc_authentication_reject" msgid="4891965994643876369">"စကားသံအတွက် ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ"</string>
+ <string name="mmcc_imsi_unknown_in_hlr" msgid="227760698553988751">"စကားသံအတွက် ဆင်းမ်ကတ်ကို ထောက်ပံ့မထားပါ"</string>
+ <string name="mmcc_illegal_ms" msgid="7509650265233909445">"စကားသံအတွက် ဆင်းမ်ကတ်ကို ခွင့်မပြုပါ"</string>
<string name="mmcc_illegal_me" msgid="6505557881889904915">"စကားသံအတွက် ဖုန်းကို ခွင့်မပြုပါ"</string>
- <string name="mmcc_authentication_reject_msim_template" msgid="4480853038909922153">"ဆင်းမ် <xliff:g id="SIMNUMBER">%d</xliff:g> ကို ခွင့်မပြုပါ"</string>
- <string name="mmcc_imsi_unknown_in_hlr_msim_template" msgid="3688508325248599657">"ဆင်းမ် <xliff:g id="SIMNUMBER">%d</xliff:g> ကို ပေးမထားပါ"</string>
- <string name="mmcc_illegal_ms_msim_template" msgid="832644375774599327">"ဆင်းမ် <xliff:g id="SIMNUMBER">%d</xliff:g> ကို ခွင့်မပြုပါ"</string>
- <string name="mmcc_illegal_me_msim_template" msgid="4802735138861422802">"ဆင်းမ် <xliff:g id="SIMNUMBER">%d</xliff:g> ကို ခွင့်မပြုပါ"</string>
+ <string name="mmcc_authentication_reject_msim_template" msgid="4480853038909922153">"ဆင်းမ်ကတ် <xliff:g id="SIMNUMBER">%d</xliff:g> ကို ခွင့်မပြုပါ"</string>
+ <string name="mmcc_imsi_unknown_in_hlr_msim_template" msgid="3688508325248599657">"ဆင်းမ်ကတ် <xliff:g id="SIMNUMBER">%d</xliff:g> ကို ပေးမထားပါ"</string>
+ <string name="mmcc_illegal_ms_msim_template" msgid="832644375774599327">"ဆင်းမ်ကတ် <xliff:g id="SIMNUMBER">%d</xliff:g> ကို ခွင့်မပြုပါ"</string>
+ <string name="mmcc_illegal_me_msim_template" msgid="4802735138861422802">"ဆင်းမ်ကတ် <xliff:g id="SIMNUMBER">%d</xliff:g> ကို ခွင့်မပြုပါ"</string>
<string name="popup_window_default_title" msgid="6907717596694826919">"ပေါ့ပ်အပ် ဝင်းဒိုး"</string>
<string name="slice_more_content" msgid="3377367737876888459">"+ <xliff:g id="NUMBER">%1$d</xliff:g>"</string>
<string name="shortcut_restored_on_lower_version" msgid="9206301954024286063">"အက်ပ်ဗားရှင်းကို အဆင့်နှိမ့်ထားသည် သို့မဟုတ် ဤဖြတ်လမ်းလင့်ခ်နှင့် သဟဇာတမဖြစ်ပါ"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ပြန်ဖွင့်ရန်"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"အလုပ်သုံးအက်ပ်များ မရှိပါ"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"ကိုယ်ပိုင်အက်ပ်များ မရှိပါ"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"ကိုယ်ရေးကိုယ်တာသုံး <xliff:g id="APP">%s</xliff:g> ဖွင့်ခြင်း"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"အလုပ်သုံး <xliff:g id="APP">%s</xliff:g> ဖွင့်ခြင်း"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ကိုယ်ပိုင်ဘရောင်ဇာ သုံးရန်"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"အလုပ်သုံးဘရောင်ဇာ သုံးရန်"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"ဆင်းမ်ကွန်ရက် လော့ခ်ဖွင့်ရန် ပင်နံပါတ်"</string>
diff --git a/core/res/res/values-nb/strings.xml b/core/res/res/values-nb/strings.xml
index c0ae44465be8..43bbac7edfd8 100644
--- a/core/res/res/values-nb/strings.xml
+++ b/core/res/res/values-nb/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Slå av pausen"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Ingen jobbapper"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Ingen personlige apper"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Åpne <xliff:g id="APP">%s</xliff:g> personlig"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Åpne <xliff:g id="APP">%s</xliff:g> for jobb"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Bruk den personlige nettleseren"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Bruk jobbnettleseren"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN-kode for å fjerne operatørlåser"</string>
diff --git a/core/res/res/values-ne/strings.xml b/core/res/res/values-ne/strings.xml
index fd6617555122..903ee0b81574 100644
--- a/core/res/res/values-ne/strings.xml
+++ b/core/res/res/values-ne/strings.xml
@@ -663,7 +663,7 @@
<string name="fingerprint_or_screen_lock_dialog_default_subtitle" msgid="5195808203117992200">"जारी राख्न आफ्नो फिंगरप्रिन्ट वा स्क्रिन लक प्रयोग गरी पुष्टि गर्नुहोस्"</string>
<string-array name="fingerprint_error_vendor">
</string-array>
- <string name="fingerprint_error_vendor_unknown" msgid="4170002184907291065">"केही चिज गडबड भयो। फेरि प्रयास गर्नुहोस्।"</string>
+ <string name="fingerprint_error_vendor_unknown" msgid="4170002184907291065">"कुनै समस्या आयो। फेरि प्रयास गर्नुहोस्।"</string>
<string name="fingerprint_icon_content_description" msgid="4741068463175388817">"फिंगरप्रिन्ट आइकन"</string>
<string name="face_recalibrate_notification_name" msgid="7311163114750748686">"फेस अनलक"</string>
<string name="face_recalibrate_notification_title" msgid="2524791952735579082">"फेस अनलक सुविधामा अनुहार दर्ता गर्ने क्रममा त्रुटि भयो"</string>
@@ -724,7 +724,7 @@
<string name="face_or_screen_lock_dialog_default_subtitle" msgid="5006381531158341844">"जारी राख्न आफ्नो फेस वा स्क्रिन लक प्रयोग गरी पुष्टि गर्नुहोस्"</string>
<string-array name="face_error_vendor">
</string-array>
- <string name="face_error_vendor_unknown" msgid="7387005932083302070">"केही चिज गडबड भयो। फेरि प्रयास गर्नुहोस्।"</string>
+ <string name="face_error_vendor_unknown" msgid="7387005932083302070">"कुनै समस्या आयो। फेरि प्रयास गर्नुहोस्।"</string>
<string name="face_icon_content_description" msgid="465030547475916280">"अनुहारको आइकन"</string>
<string name="permlab_readSyncSettings" msgid="6250532864893156277">"समीकरण सेटिङहरू पढ्नुहोस्"</string>
<string name="permdesc_readSyncSettings" msgid="1325658466358779298">"एपलाई खाताको लागि सिंक सेटिङहरू पढ्न अनुमति दिन्छ। उदाहरणको लागि यसले व्यक्तिहरको एप खातासँग सिंक भएको नभएको निर्धारण गर्न सक्दछ।"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"अनपज गर्नुहोस्"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"यो सामग्री खोल्न मिल्ने कुनै पनि कामसम्बन्धी एप छैन"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"यो सामग्री खोल्न मिल्ने कुनै पनि व्यक्तिगत एप छैन"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"व्यक्तिगत <xliff:g id="APP">%s</xliff:g> खोल्नुहोस्"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"कामसम्बन्धी <xliff:g id="APP">%s</xliff:g> खोल्नुहोस्"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"व्यक्तिगत ब्राउजर प्रयोग गर्नुहोस्"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"कार्य ब्राउजर प्रयोग गर्नुहोस्"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM को नेटवर्क अनलक गर्ने PIN"</string>
diff --git a/core/res/res/values-nl/strings.xml b/core/res/res/values-nl/strings.xml
index a4d80c70099a..fc1f9c8e2484 100644
--- a/core/res/res/values-nl/strings.xml
+++ b/core/res/res/values-nl/strings.xml
@@ -694,7 +694,7 @@
<string name="face_acquired_pan_too_extreme" msgid="5417928604710621088">"Kijk goed recht naar je telefoon"</string>
<string name="face_acquired_tilt_too_extreme" msgid="5715715666540716620">"Kijk goed recht naar je telefoon"</string>
<string name="face_acquired_roll_too_extreme" msgid="8261939882838881194">"Kijk goed recht naar je telefoon"</string>
- <string name="face_acquired_obscured" msgid="4917643294953326639">"Zorg dat je gezicht volledig zichtbaar is"</string>
+ <string name="face_acquired_obscured" msgid="4917643294953326639">"Zorg dat er niets voor je gezicht zit"</string>
<string name="face_acquired_sensor_dirty" msgid="8968391891086721678">"Reinig de bovenkant van je scherm, inclusief de zwarte balk"</string>
<!-- no translation found for face_acquired_dark_glasses_detected (5643703296620631986) -->
<skip />
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Hervatten"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Geen werk-apps"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Geen persoonlijke apps"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Persoonlijke <xliff:g id="APP">%s</xliff:g> openen"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"<xliff:g id="APP">%s</xliff:g> voor het werk openen"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Persoonlijke browser gebruiken"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Werkbrowser gebruiken"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Ontgrendelingspincode voor SIM-netwerk"</string>
diff --git a/core/res/res/values-or/strings.xml b/core/res/res/values-or/strings.xml
index fa3fbc4b7100..6d038e117283 100644
--- a/core/res/res/values-or/strings.xml
+++ b/core/res/res/values-or/strings.xml
@@ -262,7 +262,7 @@
<string name="global_action_toggle_silent_mode" msgid="8464352592860372188">"ସାଇଲେଣ୍ଟ ମୋଡ୍"</string>
<string name="global_action_silent_mode_on_status" msgid="2371892537738632013">"ସାଉଣ୍ଡ ଅଫ୍ ଅଛି"</string>
<string name="global_action_silent_mode_off_status" msgid="6608006545950920042">"ସାଉଣ୍ଡ ଚାଲୁ ଅଛି"</string>
- <string name="global_actions_toggle_airplane_mode" msgid="6911684460146916206">"ଏରୋପ୍ଲେନ ମୋଡ"</string>
+ <string name="global_actions_toggle_airplane_mode" msgid="6911684460146916206">"ଏୟାରପ୍ଲେନ ମୋଡ"</string>
<string name="global_actions_airplane_mode_on_status" msgid="5508025516695361936">"ଏୟାରପ୍ଲେନ୍ ମୋଡ୍ ଚାଲୁ ଅଛି"</string>
<string name="global_actions_airplane_mode_off_status" msgid="8522219771500505475">"ଏରୋପ୍ଲେନ୍‍ ମୋଡ୍ ଅଫ୍ ଅଛି"</string>
<string name="global_action_settings" msgid="4671878836947494217">"ସେଟିଂସ୍"</string>
@@ -668,7 +668,7 @@
<string name="face_recalibrate_notification_name" msgid="7311163114750748686">"ଫେସ ଅନଲକ"</string>
<string name="face_recalibrate_notification_title" msgid="2524791952735579082">"ଫେସ୍ ଅନଲକ୍ ସହ ସମସ୍ୟା"</string>
<string name="face_recalibrate_notification_content" msgid="3064513770251355594">"ଆପଣଙ୍କ ଫେସ୍ ମଡେଲକୁ ଡିଲିଟ୍ କରିବାକୁ ଟାପ୍ କରନ୍ତୁ, ତା\'ପରେ ପୁଣି ଆପଣଙ୍କ ଫେସ୍ ଯୋଗ କରନ୍ତୁ"</string>
- <string name="face_setup_notification_title" msgid="8843461561970741790">"ଫେସ୍ ଅନଲକ୍ ସେଟ୍ ଅପ୍ କରନ୍ତୁ"</string>
+ <string name="face_setup_notification_title" msgid="8843461561970741790">"ଫେସ ଅନଲକ ସେଟ ଅପ କରନ୍ତୁ"</string>
<string name="face_setup_notification_content" msgid="5463999831057751676">"ଫୋନକୁ ଦେଖି ଏହାକୁ ଅନଲକ୍ କରନ୍ତୁ"</string>
<string name="face_sensor_privacy_enabled" msgid="7407126963510598508">"ଫେସ ଅନଲକ ବ୍ୟବହାର କରିବା ପାଇଁ, ସେଟିଂସ ଏବଂ ଗୋପନୀୟତାରେ "<b>"କ୍ୟାମେରା ଆକ୍ସେସ"</b>"କୁ ଚାଲୁ କରନ୍ତୁ"</string>
<string name="fingerprint_setup_notification_title" msgid="2002630611398849495">"ଅନଲକ୍ କରିବା ପାଇଁ ଆହୁରି ଅଧିକ ଉପାୟ ସେଟ୍ ଅପ୍ କରନ୍ତୁ"</string>
@@ -982,7 +982,7 @@
<string name="lockscreen_permanent_disabled_sim_instructions" msgid="6902979937802238429">"ଆପଣଙ୍କ SIMକୁ ସ୍ଥାୟୀ ଭାବରେ ନିଷ୍କ୍ରିୟ କରାଯାଇଛି।\n ଅନ୍ୟ ଏକ SIM ପାଇଁ ଆପଣଙ୍କ ୱେୟାରଲେସ ସେବା ପ୍ରଦାନକାରୀଙ୍କ ସହ କଣ୍ଟାକ୍ଟ କରନ୍ତୁ।"</string>
<string name="lockscreen_transport_prev_description" msgid="2879469521751181478">"ପୂର୍ବବର୍ତ୍ତୀ ଟ୍ରାକ୍‌"</string>
<string name="lockscreen_transport_next_description" msgid="2931509904881099919">"ପରବର୍ତ୍ତୀ ଟ୍ରାକ୍‌"</string>
- <string name="lockscreen_transport_pause_description" msgid="6705284702135372494">"ପଜ୍‍ କରନ୍ତୁ"</string>
+ <string name="lockscreen_transport_pause_description" msgid="6705284702135372494">"ବିରତ କରନ୍ତୁ"</string>
<string name="lockscreen_transport_play_description" msgid="106868788691652733">"ପ୍ଲେ କରନ୍ତୁ"</string>
<string name="lockscreen_transport_stop_description" msgid="1449552232598355348">"ବନ୍ଦ କରନ୍ତୁ"</string>
<string name="lockscreen_transport_rew_description" msgid="7680106856221622779">"ପଛକୁ ନିଅନ୍ତୁ"</string>
@@ -1370,7 +1370,7 @@
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"ଆନାଲଗ୍‍ ଅଡିଓ ଆକ୍ସେସରୀ ଚିହ୍ନଟ ହେଲା"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"ଏହି ଫୋନ୍‌ରେ କନେକ୍ଟ ଥିବା ଡିଭାଇସ୍‍ କମ୍ପାଟିବଲ୍‍ ନୁହେଁ। ଅଧିକ ଜାଣିବା ପାଇଁ ଟାପ୍‌ କରନ୍ତୁ।"</string>
<string name="adb_active_notification_title" msgid="408390247354560331">"USB ଡିବଗିଂ କନେକ୍ଟ କରାଯାଇଛି"</string>
- <string name="adb_active_notification_message" msgid="5617264033476778211">"USB ଡିବଗିଂକୁ ବନ୍ଦ କରିବା ପାଇଁ ଟାପ୍ କରନ୍ତୁ"</string>
+ <string name="adb_active_notification_message" msgid="5617264033476778211">"USB ଡିବଗିଂକୁ ବନ୍ଦ କରିବା ପାଇଁ ଟାପ କରନ୍ତୁ"</string>
<string name="adb_active_notification_message" product="tv" msgid="6624498401272780855">"USB ଡିବଗିଙ୍ଗକୁ ଅକ୍ଷମ କରିବା ପାଇଁ ଚୟନ କରନ୍ତୁ।"</string>
<string name="adbwifi_active_notification_title" msgid="6147343659168302473">"ୱାୟାରଲେସ୍ ଡିବଗିଂ ସଂଯୋଗ କରାଯାଇଛି"</string>
<string name="adbwifi_active_notification_message" msgid="930987922852867972">"ୱାୟାରଲେସ୍ ଡିବଗିଂକୁ ବନ୍ଦ କରିବା ପାଇଁ ଟାପ୍ କରନ୍ତୁ"</string>
@@ -1490,7 +1490,7 @@
<string name="input_method_binding_label" msgid="1166731601721983656">"ଇନପୁଟ୍ ପଦ୍ଧତି"</string>
<string name="sync_binding_label" msgid="469249309424662147">"ସିଙ୍କ୍"</string>
<string name="accessibility_binding_label" msgid="1974602776545801715">"ଆକ୍ସେସିବିଲିଟୀ"</string>
- <string name="wallpaper_binding_label" msgid="1197440498000786738">"ୱାଲପେପର୍"</string>
+ <string name="wallpaper_binding_label" msgid="1197440498000786738">"ୱାଲପେପର"</string>
<string name="chooser_wallpaper" msgid="3082405680079923708">"ୱାଲପେପର୍‍ ପରିବର୍ତ୍ତନ କରନ୍ତୁ।"</string>
<string name="notification_listener_binding_label" msgid="2702165274471499713">"ବିଜ୍ଞପ୍ତି ଶ୍ରୋତା"</string>
<string name="vr_listener_binding_label" msgid="8013112996671206429">"VR ଲିସନର୍"</string>
@@ -1619,7 +1619,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"ଟାବଲେଟ୍‌"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"TV"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"ଫୋନ"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"ଡକ୍‌ ସ୍ପିକର୍‌"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"ଡକ ସ୍ପିକର"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"ଏକ୍ସଟର୍ନଲ ଡିଭାଇସ"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"ହେଡଫୋନ୍‍"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ପୁଣି ଚାଲୁ କରନ୍ତୁ"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"କୌଣସି ୱାର୍କ ଆପ୍ ନାହିଁ"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"କୌଣସି ବ୍ୟକ୍ତିଗତ ଆପ୍ ନାହିଁ"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"ବ୍ୟକ୍ତିଗତ <xliff:g id="APP">%s</xliff:g> ଖୋଲନ୍ତୁ"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"ୱାର୍କ <xliff:g id="APP">%s</xliff:g> ଖୋଲନ୍ତୁ"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ବ୍ୟକ୍ତିଗତ ବ୍ରାଉଜର୍ ବ୍ୟବହାର କରନ୍ତୁ"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ୱାର୍କ ବ୍ରାଉଜର୍ ବ୍ୟବହାର କରନ୍ତୁ"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM ନେଟୱାର୍କ ଅନଲକ୍ PIN"</string>
diff --git a/core/res/res/values-pa/strings.xml b/core/res/res/values-pa/strings.xml
index fece843d2178..32bfb0614612 100644
--- a/core/res/res/values-pa/strings.xml
+++ b/core/res/res/values-pa/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ਰੋਕ ਹਟਾਓ"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"ਕੋਈ ਕੰਮ ਸੰਬੰਧੀ ਐਪ ਨਹੀਂ"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"ਕੋਈ ਨਿੱਜੀ ਐਪ ਨਹੀਂ"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"ਨਿੱਜੀ <xliff:g id="APP">%s</xliff:g> ਖੋਲ੍ਹੋ"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"ਕਾਰਜ <xliff:g id="APP">%s</xliff:g> ਖੋਲ੍ਹੋ"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ਨਿੱਜੀ ਬ੍ਰਾਊਜ਼ਰ ਵਰਤੋ"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ਕੰਮ ਸੰਬੰਧੀ ਬ੍ਰਾਊਜ਼ਰ ਵਰਤੋ"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"ਸਿਮ ਨੈੱਟਵਰਕ ਅਣਲਾਕ ਪਿੰਨ"</string>
diff --git a/core/res/res/values-pl/strings.xml b/core/res/res/values-pl/strings.xml
index de78be637203..540b45f37953 100644
--- a/core/res/res/values-pl/strings.xml
+++ b/core/res/res/values-pl/strings.xml
@@ -962,7 +962,7 @@
<string name="keyguard_password_wrong_pin_code" msgid="8583732939138432793">"Błędny kod PIN"</string>
<string name="keyguard_label_text" msgid="3841953694564168384">"Aby odblokować, naciśnij Menu, a następnie 0."</string>
<string name="emergency_call_dialog_number_for_display" msgid="2978165477085612673">"Numer alarmowy"</string>
- <string name="lockscreen_carrier_default" msgid="6192313772955399160">"Brak usługi"</string>
+ <string name="lockscreen_carrier_default" msgid="6192313772955399160">"Brak sieci"</string>
<string name="lockscreen_screen_locked" msgid="7364905540516041817">"Ekran zablokowany."</string>
<string name="lockscreen_instructions_when_pattern_enabled" msgid="7982445492532123308">"Naciśnij Menu, aby odblokować lub wykonać połączenie alarmowe."</string>
<string name="lockscreen_instructions_when_pattern_disabled" msgid="7434061749374801753">"Naciśnij Menu, aby odblokować."</string>
@@ -2166,8 +2166,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Cofnij wstrzymanie"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Brak aplikacji służbowych"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Brak aplikacji osobistych"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Otwórz aplikację osobistą <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Otwórz aplikację służbową <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Użyj przeglądarki osobistej"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Użyj przeglądarki służbowej"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Kod PIN do karty SIM odblokowujący sieć"</string>
diff --git a/core/res/res/values-pt-rBR/strings.xml b/core/res/res/values-pt-rBR/strings.xml
index 57d7c197371b..cd477285b309 100644
--- a/core/res/res/values-pt-rBR/strings.xml
+++ b/core/res/res/values-pt-rBR/strings.xml
@@ -1257,7 +1257,7 @@
<string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Iniciando apps."</string>
<string name="android_upgrading_complete" msgid="409800058018374746">"Concluindo a inicialização."</string>
<string name="fp_power_button_enrollment_message" msgid="5648173517663246140">"Você pressionou o botão liga/desliga. Normalmente, essa ação desliga a tela.\n\nToque levemente na tela durante a configuração da impressão digital."</string>
- <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Desligue a tela para encerrar a configuração"</string>
+ <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Desligue a tela para encerrar a configuração."</string>
<string name="fp_power_button_enrollment_button_text" msgid="3199783266386029200">"Desativar"</string>
<string name="fp_power_button_bp_title" msgid="5585506104526820067">"Continuar a verificação da digital?"</string>
<string name="fp_power_button_bp_message" msgid="2983163038168903393">"Você pressionou o botão liga/desliga. Normalmente, essa ação desliga a tela.\n\nToque levemente na tela para verificar sua impressão digital."</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Reativar"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nenhum app de trabalho"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nenhum app pessoal"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Abrir <xliff:g id="APP">%s</xliff:g> no perfil pessoal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Abrir <xliff:g id="APP">%s</xliff:g> no perfil do trabalho"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Usar o navegador pessoal"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Usar o navegador de trabalho"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN para desbloqueio da rede do chip"</string>
@@ -2326,7 +2330,7 @@
<string name="concurrent_display_notification_power_save_title" msgid="1794569070730736281">"O recurso Dual Screen está indisponível"</string>
<string name="concurrent_display_notification_power_save_content" msgid="2198116070583851493">"O recurso Dual Screen está indisponível porque a Economia de bateria está ativada. É possível desativar essa opção nas configurações."</string>
<string name="device_state_notification_settings_button" msgid="691937505741872749">"Ir para Configurações"</string>
- <string name="device_state_notification_turn_off_button" msgid="6327161707661689232">"Desativar"</string>
+ <string name="device_state_notification_turn_off_button" msgid="6327161707661689232">"Desligar"</string>
<string name="keyboard_layout_notification_selected_title" msgid="1202560174252421219">"Dispositivo <xliff:g id="DEVICE_NAME">%s</xliff:g> configurado"</string>
<string name="keyboard_layout_notification_one_selected_message" msgid="4314216053129257197">"Layout do teclado definido como <xliff:g id="LAYOUT_1">%s</xliff:g>. Toque para mudar."</string>
<string name="keyboard_layout_notification_two_selected_message" msgid="1876349944065922950">"Layout do teclado definido como <xliff:g id="LAYOUT_1">%1$s</xliff:g> e <xliff:g id="LAYOUT_2">%2$s</xliff:g>. Toque para mudar."</string>
diff --git a/core/res/res/values-pt-rPT/strings.xml b/core/res/res/values-pt-rPT/strings.xml
index d209189b88e8..73293347dcb9 100644
--- a/core/res/res/values-pt-rPT/strings.xml
+++ b/core/res/res/values-pt-rPT/strings.xml
@@ -1620,7 +1620,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Tablet"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"TV"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Telemóvel"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Altif. estação ancoragem"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Altif. estação carregamento"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Dispositivo externo"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Auscultadores"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Retomar"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Sem apps de trabalho"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Sem apps pessoais"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Abra a app <xliff:g id="APP">%s</xliff:g> pessoal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Abra a app <xliff:g id="APP">%s</xliff:g> de trabalho"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Usar navegador pessoal"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Usar navegador de trabalho"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN para desbloqueio de rede do cartão SIM"</string>
diff --git a/core/res/res/values-pt/strings.xml b/core/res/res/values-pt/strings.xml
index 57d7c197371b..cd477285b309 100644
--- a/core/res/res/values-pt/strings.xml
+++ b/core/res/res/values-pt/strings.xml
@@ -1257,7 +1257,7 @@
<string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Iniciando apps."</string>
<string name="android_upgrading_complete" msgid="409800058018374746">"Concluindo a inicialização."</string>
<string name="fp_power_button_enrollment_message" msgid="5648173517663246140">"Você pressionou o botão liga/desliga. Normalmente, essa ação desliga a tela.\n\nToque levemente na tela durante a configuração da impressão digital."</string>
- <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Desligue a tela para encerrar a configuração"</string>
+ <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Desligue a tela para encerrar a configuração."</string>
<string name="fp_power_button_enrollment_button_text" msgid="3199783266386029200">"Desativar"</string>
<string name="fp_power_button_bp_title" msgid="5585506104526820067">"Continuar a verificação da digital?"</string>
<string name="fp_power_button_bp_message" msgid="2983163038168903393">"Você pressionou o botão liga/desliga. Normalmente, essa ação desliga a tela.\n\nToque levemente na tela para verificar sua impressão digital."</string>
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Reativar"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nenhum app de trabalho"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nenhum app pessoal"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Abrir <xliff:g id="APP">%s</xliff:g> no perfil pessoal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Abrir <xliff:g id="APP">%s</xliff:g> no perfil do trabalho"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Usar o navegador pessoal"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Usar o navegador de trabalho"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN para desbloqueio da rede do chip"</string>
@@ -2326,7 +2330,7 @@
<string name="concurrent_display_notification_power_save_title" msgid="1794569070730736281">"O recurso Dual Screen está indisponível"</string>
<string name="concurrent_display_notification_power_save_content" msgid="2198116070583851493">"O recurso Dual Screen está indisponível porque a Economia de bateria está ativada. É possível desativar essa opção nas configurações."</string>
<string name="device_state_notification_settings_button" msgid="691937505741872749">"Ir para Configurações"</string>
- <string name="device_state_notification_turn_off_button" msgid="6327161707661689232">"Desativar"</string>
+ <string name="device_state_notification_turn_off_button" msgid="6327161707661689232">"Desligar"</string>
<string name="keyboard_layout_notification_selected_title" msgid="1202560174252421219">"Dispositivo <xliff:g id="DEVICE_NAME">%s</xliff:g> configurado"</string>
<string name="keyboard_layout_notification_one_selected_message" msgid="4314216053129257197">"Layout do teclado definido como <xliff:g id="LAYOUT_1">%s</xliff:g>. Toque para mudar."</string>
<string name="keyboard_layout_notification_two_selected_message" msgid="1876349944065922950">"Layout do teclado definido como <xliff:g id="LAYOUT_1">%1$s</xliff:g> e <xliff:g id="LAYOUT_2">%2$s</xliff:g>. Toque para mudar."</string>
diff --git a/core/res/res/values-ro/strings.xml b/core/res/res/values-ro/strings.xml
index f2de318e44f1..00c4a18a22e5 100644
--- a/core/res/res/values-ro/strings.xml
+++ b/core/res/res/values-ro/strings.xml
@@ -2165,8 +2165,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Reactivează"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nicio aplicație pentru lucru"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nicio aplicație personală"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Deschide <xliff:g id="APP">%s</xliff:g> personal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Deschide <xliff:g id="APP">%s</xliff:g> de serviciu"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Folosește browserul personal"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Folosește browserul de serviciu"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Codul PIN de deblocare SIM privind rețeaua"</string>
diff --git a/core/res/res/values-ru/strings.xml b/core/res/res/values-ru/strings.xml
index a0cb9c353571..eaaa99df19e7 100644
--- a/core/res/res/values-ru/strings.xml
+++ b/core/res/res/values-ru/strings.xml
@@ -1367,7 +1367,7 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"Режим MIDI включен"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"Устройство подключено как веб-камера"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"USB-устройство подключено"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"Нажмите, чтобы показать дополнительные параметры."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"Нажмите, чтобы посмотреть дополнительные параметры"</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"Подключенное устройство заряжается. Нажмите, чтобы увидеть другие настройки."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Обнаружено аналоговое аудиоустройство"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"Подсоединенное устройство несовместимо с этим телефоном. Нажмите, чтобы узнать подробности."</string>
@@ -2166,8 +2166,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Включить"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Не поддерживается рабочими приложениями."</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Не поддерживается личными приложениями."</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Откройте приложение \"<xliff:g id="APP">%s</xliff:g>\" в личном профиле"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Откройте приложение \"<xliff:g id="APP">%s</xliff:g>\" в рабочем профиле"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Использовать личный браузер"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Использовать рабочий браузер"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN-код для разблокировки сети SIM-карты"</string>
diff --git a/core/res/res/values-si/strings.xml b/core/res/res/values-si/strings.xml
index aafee6a54a71..f4aef67bc070 100644
--- a/core/res/res/values-si/strings.xml
+++ b/core/res/res/values-si/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"විරාම නොකරන්න"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"කාර්යාල යෙදුම් නැත"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"පුද්ගලික යෙදුම් නැත"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"පුද්ගලික <xliff:g id="APP">%s</xliff:g> විවෘත කරන්න"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"කාර්යාල <xliff:g id="APP">%s</xliff:g> විවෘත කරන්න"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"පුද්ගලික බ්‍රව්සරය භාවිත කරන්න"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"කාර්යාල බ්‍රව්සරය භාවිත කරන්න"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM ජාල අගුලු හැරීමේ PIN"</string>
diff --git a/core/res/res/values-sk/strings.xml b/core/res/res/values-sk/strings.xml
index 8dcdacbd7f6a..e9df03ca1621 100644
--- a/core/res/res/values-sk/strings.xml
+++ b/core/res/res/values-sk/strings.xml
@@ -1367,7 +1367,7 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"Bol zapnutý režim MIDI cez USB"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"Zariadenie pripojené ako webkamera"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"Bolo pripojené príslušenstvo USB"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"Klepnutím zobrazíte ďalšie možnosti."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"Klepnutím zobrazíte ďalšie možnosti"</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"Pripojené zariadenie sa nabíja. Ďalšie možností získate klepnutím."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Bolo zistené analógové zvukové príslušenstvo"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"Pripojené zariadenie nie je kompatibilné s týmto telefónom. Ďalšie informácie zobrazíte klepnutím."</string>
@@ -1578,7 +1578,7 @@
<string name="storage_internal" msgid="8490227947584914460">"Interné zdieľané úložisko"</string>
<string name="storage_sd_card" msgid="3404740277075331881">"SD karta"</string>
<string name="storage_sd_card_label" msgid="7526153141147470509">"SD karta <xliff:g id="MANUFACTURER">%s</xliff:g>"</string>
- <string name="storage_usb_drive" msgid="448030813201444573">"Disk USB"</string>
+ <string name="storage_usb_drive" msgid="448030813201444573">"Kľúč USB"</string>
<string name="storage_usb_drive_label" msgid="6631740655876540521">"Disk USB <xliff:g id="MANUFACTURER">%s</xliff:g>"</string>
<string name="storage_usb" msgid="2391213347883616886">"Ukladací priestor USB"</string>
<string name="extract_edit_menu_button" msgid="63954536535863040">"Upraviť"</string>
@@ -1954,7 +1954,7 @@
<string name="app_suspended_default_message" msgid="6451215678552004172">"Aplikácia <xliff:g id="APP_NAME_0">%1$s</xliff:g> nie je momentálne k dispozícii. Spravuje to aplikácia <xliff:g id="APP_NAME_1">%2$s</xliff:g>."</string>
<string name="app_suspended_more_details" msgid="211260942831587014">"Ďalšie informácie"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"Znova spustiť aplikáciu"</string>
- <string name="work_mode_off_title" msgid="6367463960165135829">"Zrušiť pozastavenie aplikácií?"</string>
+ <string name="work_mode_off_title" msgid="6367463960165135829">"Zrušiť pozast. prac. aplikácií?"</string>
<string name="work_mode_turn_on" msgid="5316648862401307800">"Zrušiť pozastavenie"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"Zavolať na tiesňovú linku"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"Aplikácia nie je dostupná"</string>
@@ -2166,8 +2166,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Zrušiť pozastavenie"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Žiadne pracovné aplikácie"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Žiadne osobné aplikácie"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Otvorte osobnú aplikáciu <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Otvorte pracovnú aplikáciu <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Použiť osobný prehliadač"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Použiť pracovný prehliadač"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN na odomknutie siete pre SIM kartu"</string>
diff --git a/core/res/res/values-sl/strings.xml b/core/res/res/values-sl/strings.xml
index 0d948cf2dd58..e5e7303c8094 100644
--- a/core/res/res/values-sl/strings.xml
+++ b/core/res/res/values-sl/strings.xml
@@ -1621,7 +1621,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Tablični računalnik"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"Televizor"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Telefon"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Zvočniki stojala"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Zvočniki nosilca"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Zunanja naprava"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Slušalke"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2166,8 +2166,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Znova aktiviraj"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nobena delovna aplikacija ni na voljo"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nobena osebna aplikacija"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Odpri aplikacijo <xliff:g id="APP">%s</xliff:g> v osebnem profilu"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Odpri aplikacijo <xliff:g id="APP">%s</xliff:g> v delovnem profilu"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Uporabi osebni brskalnik"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Uporabi delovni brskalnik"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Koda PIN za odklepanje omrežja kartice SIM"</string>
diff --git a/core/res/res/values-sq/strings.xml b/core/res/res/values-sq/strings.xml
index d5bb5c23561c..63cdf13a3919 100644
--- a/core/res/res/values-sq/strings.xml
+++ b/core/res/res/values-sq/strings.xml
@@ -702,7 +702,7 @@
<skip />
<string name="face_acquired_recalibrate_alt" msgid="5702674220280332115">"Modeli i fytyrës nuk krijohet. Provo sërish."</string>
<string name="face_acquired_dark_glasses_detected_alt" msgid="4052123776406041972">"U zbuluan syze të errëta. Fytyra jote duhet të jetë plotësisht e dukshme."</string>
- <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"Fytyra është e mbuluar. Fytyra duhet të jetë plotësisht e dukshme."</string>
+ <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"Fytyra është e mbuluar. Duhet të jetë plotësisht e dukshme."</string>
<string-array name="face_acquired_vendor">
</string-array>
<string name="face_error_hw_not_available" msgid="5085202213036026288">"Fytyra s\'mund të verifikohet. Hardueri nuk ofrohet."</string>
@@ -1256,7 +1256,7 @@
<string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Aplikacionet e fillimit."</string>
<string name="android_upgrading_complete" msgid="409800058018374746">"Po përfundon nisjen."</string>
<string name="fp_power_button_enrollment_message" msgid="5648173517663246140">"Shtype butonin e energjisë — zakonisht, kjo e fik ekranin.\n\nProvo të trokasësh lehtë ndërkohë që konfiguron gjurmën e gishtit."</string>
- <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Përfundo konfigurimin; fik ekranin"</string>
+ <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Përfundo konfigurimin duke fikur ekranin"</string>
<string name="fp_power_button_enrollment_button_text" msgid="3199783266386029200">"Çaktivizo"</string>
<string name="fp_power_button_bp_title" msgid="5585506104526820067">"Të vazhdohet verifikimi i gjurmës?"</string>
<string name="fp_power_button_bp_message" msgid="2983163038168903393">"Shtype butonin e energjisë — zakonisht, kjo e fik ekranin.\n\nProvo të trokasësh lehtë për të verifikuar gjurmën e gishtit."</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Hiq nga pauza"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Nuk ka aplikacione pune"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Nuk ka aplikacione personale"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Hap <xliff:g id="APP">%s</xliff:g> personal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Hap <xliff:g id="APP">%s</xliff:g> të punës"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Përdor shfletuesin personal"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Përdor shfletuesin e punës"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Kodi PIN i shkyçjes së rrjetit të kartës SIM"</string>
diff --git a/core/res/res/values-sr/strings.xml b/core/res/res/values-sr/strings.xml
index 11af2ba5f833..f363d7fe9da2 100644
--- a/core/res/res/values-sr/strings.xml
+++ b/core/res/res/values-sr/strings.xml
@@ -1954,7 +1954,7 @@
<string name="app_suspended_more_details" msgid="211260942831587014">"Сазнајте више"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"Опозови паузирање апликације"</string>
<string name="work_mode_off_title" msgid="6367463960165135829">"Укључити пословне апликације?"</string>
- <string name="work_mode_turn_on" msgid="5316648862401307800">"Опозови паузу"</string>
+ <string name="work_mode_turn_on" msgid="5316648862401307800">"Поново активирај"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"Хитан случај"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"Апликација није доступна"</string>
<string name="app_blocked_message" msgid="542972921087873023">"Апликација <xliff:g id="APP_NAME">%1$s</xliff:g> тренутно није доступна."</string>
@@ -2162,11 +2162,15 @@
<string name="resolver_cant_share_with_personal_apps_explanation" msgid="6349766201904601544">"Овај садржај не може да се дели помоћу личних апликација"</string>
<string name="resolver_cant_access_personal_apps_explanation" msgid="1679399548862724359">"Овај садржај не може да се отвара помоћу личних апликација"</string>
<string name="resolver_turn_on_work_apps" msgid="1535946298236678122">"Пословне апликације су паузиране"</string>
- <string name="resolver_switch_on_work" msgid="4527096360772311894">"Опозови паузу"</string>
+ <string name="resolver_switch_on_work" msgid="4527096360772311894">"Поново активирај"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Нема пословних апликација"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Нема личних апликација"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Отворите личну апликацију <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Отворите пословну апликацију <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Користи лични прегледач"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Користи пословни прегледач"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN за откључавање SIM мреже"</string>
diff --git a/core/res/res/values-sv/strings.xml b/core/res/res/values-sv/strings.xml
index cdc80f9b8d97..eca78dc673d1 100644
--- a/core/res/res/values-sv/strings.xml
+++ b/core/res/res/values-sv/strings.xml
@@ -702,7 +702,7 @@
<skip />
<string name="face_acquired_recalibrate_alt" msgid="5702674220280332115">"Ansiktsmodellen kunde inte skapas. Försök igen."</string>
<string name="face_acquired_dark_glasses_detected_alt" msgid="4052123776406041972">"Mörka glasögon identifierades. Hela ansiktet måste synas."</string>
- <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"Något som täcker ansiktet identifierades. Hela ansiktet måste synas."</string>
+ <string name="face_acquired_mouth_covering_detected_alt" msgid="1122294982850589766">"Något täcker ansiktet. Hela ansiktet måste synas."</string>
<string-array name="face_acquired_vendor">
</string-array>
<string name="face_error_hw_not_available" msgid="5085202213036026288">"Ansiktsverifiering går ej. Otillgänglig maskinvara."</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Återuppta"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Inga jobbappar"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Inga privata appar"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Öppna <xliff:g id="APP">%s</xliff:g> med privat profil"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Öppna <xliff:g id="APP">%s</xliff:g> med jobbprofil"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Använd privat webbläsare"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Använd jobbwebbläsare"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Pinkod för upplåsning av nätverk för SIM-kort"</string>
diff --git a/core/res/res/values-sw/strings.xml b/core/res/res/values-sw/strings.xml
index 5cd8594c7d6e..64a9fd56e053 100644
--- a/core/res/res/values-sw/strings.xml
+++ b/core/res/res/values-sw/strings.xml
@@ -686,7 +686,7 @@
<string name="face_acquired_too_right" msgid="6245286514593540859">"Sogeza simu upande wako wa kushoto"</string>
<string name="face_acquired_too_left" msgid="9201762240918405486">"Sogeza simu upande wako wa kulia"</string>
<string name="face_acquired_poor_gaze" msgid="4427153558773628020">"Tafadhali angalia kifaa chako moja kwa moja."</string>
- <string name="face_acquired_not_detected" msgid="1057966913397548150">"Imeshindwa kuona uso wako. Shikilia simu yako ikilingana na macho."</string>
+ <string name="face_acquired_not_detected" msgid="1057966913397548150">"Imeshindwa kuona uso wako. Shikilia simu ikilingana na macho."</string>
<string name="face_acquired_too_much_motion" msgid="8199691445085189528">"Inatikisika sana. Ishike simu iwe thabiti."</string>
<string name="face_acquired_recalibrate" msgid="8724013080976469746">"Tafadhali sajili uso wako tena."</string>
<string name="face_acquired_too_different" msgid="2520389515612972889">"Imeshindwa kutambua uso. Jaribu tena."</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Acha kusitisha"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Hakuna programu za kazini"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Hakuna programu za binafsi"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Fungua <xliff:g id="APP">%s</xliff:g> ukitumia wasifu binafsi"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Fungua <xliff:g id="APP">%s</xliff:g> ukitumia wasifu wa kazini"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Tumia kivinjari cha binafsi"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Tumia kivinjari cha kazini"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN ya kufungua mtandao wa SIM"</string>
diff --git a/core/res/res/values-ta/strings.xml b/core/res/res/values-ta/strings.xml
index 0b68c402c324..6db410078552 100644
--- a/core/res/res/values-ta/strings.xml
+++ b/core/res/res/values-ta/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"மீண்டும் இயக்கு"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"பணி ஆப்ஸ் எதுவுமில்லை"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"தனிப்பட்ட ஆப்ஸ் எதுவுமில்லை"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"தனிப்பட்ட கணக்கில் <xliff:g id="APP">%s</xliff:g> ஆப்ஸைத் திறங்கள்"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"பணிக் கணக்கில் <xliff:g id="APP">%s</xliff:g> ஆப்ஸைத் திறங்கள்"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"தனிப்பட்ட உலாவியைப் பயன்படுத்து"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"பணி உலாவியைப் பயன்படுத்து"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"சிம் நெட்வொர்க் அன்லாக் பின்"</string>
diff --git a/core/res/res/values-te/strings.xml b/core/res/res/values-te/strings.xml
index 03a608eb65a7..b8a57dc2da96 100644
--- a/core/res/res/values-te/strings.xml
+++ b/core/res/res/values-te/strings.xml
@@ -678,7 +678,7 @@
<string name="fingerprint_recalibrate_notification_content" msgid="8519935717822194943">"రిపెయిర్ ప్రొవైడర్‌ను సందర్శించండి."</string>
<string name="face_acquired_insufficient" msgid="6889245852748492218">"మీ ఫేస్‌మోడల్ క్రియేషన్ కుదరదు. మళ్లీ ట్రై చేయండి."</string>
<string name="face_acquired_too_bright" msgid="8070756048978079164">"వెలుతురు అధికంగా ఉంది. తక్కువ ఉండేలా చూడండి."</string>
- <string name="face_acquired_too_dark" msgid="8539853432479385326">"తగిన కాంతి లేదు"</string>
+ <string name="face_acquired_too_dark" msgid="8539853432479385326">"తగినంత వెలుతురు లేదు"</string>
<string name="face_acquired_too_close" msgid="4453646176196302462">"ఫోన్‌ను కాస్త దూరంగా జరపండి"</string>
<string name="face_acquired_too_far" msgid="2922278214231064859">"ఫోన్‌ను దగ్గరగా పట్టుకోండి"</string>
<string name="face_acquired_too_high" msgid="8278815780046368576">"ఫోన్‌ను పైకి పట్టుకోండి"</string>
@@ -1365,7 +1365,7 @@
<string name="usb_midi_notification_title" msgid="7404506788950595557">"USB ద్వారా MIDI ఆన్ చేయబడింది"</string>
<string name="usb_uvc_notification_title" msgid="2030032862673400008">"పరికరం వెబ్‌క్యామ్‌గా కనెక్ట్ చేయబడింది"</string>
<string name="usb_accessory_notification_title" msgid="1385394660861956980">"USB ఉపకరణం కనెక్ట్ చేయబడింది"</string>
- <string name="usb_notification_message" msgid="4715163067192110676">"మరిన్ని ఎంపికల కోసం నొక్కండి."</string>
+ <string name="usb_notification_message" msgid="4715163067192110676">"మరిన్ని ఆప్షన్ల కోసం నొక్కండి."</string>
<string name="usb_power_notification_message" msgid="7284765627437897702">"కనెక్ట్ చేయబడిన పరికరాన్ని ఛార్జ్ చేస్తోంది. మరిన్ని ఎంపికల కోసం నొక్కండి."</string>
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"అనలాగ్ ఆడియో ఉపకరణం కనుగొనబడింది"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"జోడించిన పరికరం ఈ ఫోన్‌కు అనుకూలంగా లేదు. మరింత తెలుసుకోవడానికి నొక్కండి."</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"అన్‌పాజ్ చేయండి"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"వర్క్ యాప్‌లు లేవు"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"వ్యక్తిగత యాప్‌లు లేవు"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"వ్యక్తిగత <xliff:g id="APP">%s</xliff:g> యాప్‌ను తెరవండి"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"వర్క్ <xliff:g id="APP">%s</xliff:g> యాప్‌ను తెరవండి"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"వ్యక్తిగత బ్రౌజర్‌ను ఉపయోగించండి"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"వర్క్ బ్రౌజర్‌ను ఉపయోగించండి"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM నెట్‌వర్క్ అన్‌లాక్ పిన్‌"</string>
diff --git a/core/res/res/values-th/strings.xml b/core/res/res/values-th/strings.xml
index 0ec94b2b1cb6..00c8d013edd2 100644
--- a/core/res/res/values-th/strings.xml
+++ b/core/res/res/values-th/strings.xml
@@ -1952,7 +1952,7 @@
<string name="app_suspended_default_message" msgid="6451215678552004172">"เปิด <xliff:g id="APP_NAME_0">%1$s</xliff:g> ไม่ได้ในขณะนี้ แอปนี้จัดการโดย <xliff:g id="APP_NAME_1">%2$s</xliff:g>"</string>
<string name="app_suspended_more_details" msgid="211260942831587014">"ดูข้อมูลเพิ่มเติม"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"ยกเลิกการหยุดแอปชั่วคราว"</string>
- <string name="work_mode_off_title" msgid="6367463960165135829">"ยกเลิกการหยุดแอปงานใช่ไหม"</string>
+ <string name="work_mode_off_title" msgid="6367463960165135829">"ยกเลิกการหยุดแอปงานชั่วคราวไหม"</string>
<string name="work_mode_turn_on" msgid="5316648862401307800">"ยกเลิกการหยุดชั่วคราว"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"ฉุกเฉิน"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"แอปไม่พร้อมใช้งาน"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"ยกเลิกการหยุดชั่วคราว"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"ไม่มีแอปงาน"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"ไม่มีแอปส่วนตัว"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"เปิด <xliff:g id="APP">%s</xliff:g> ในโปรไฟล์ส่วนตัว"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"เปิด <xliff:g id="APP">%s</xliff:g> ในโปรไฟล์งาน"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ใช้เบราว์เซอร์ส่วนตัว"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ใช้เบราว์เซอร์งาน"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN ปลดล็อกเครือข่ายที่ใช้กับ SIM"</string>
diff --git a/core/res/res/values-tl/strings.xml b/core/res/res/values-tl/strings.xml
index c5eec49bbc58..7e4bbe47adde 100644
--- a/core/res/res/values-tl/strings.xml
+++ b/core/res/res/values-tl/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"I-unpause"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Walang app para sa trabaho"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Walang personal na app"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Buksan ang <xliff:g id="APP">%s</xliff:g> na personal"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Buksan ang <xliff:g id="APP">%s</xliff:g> na para sa trabaho"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Gamitin ang personal na browser"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Gamitin ang browser sa trabaho"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN para sa pag-unlock ng network ng SIM"</string>
diff --git a/core/res/res/values-tr/strings.xml b/core/res/res/values-tr/strings.xml
index 5405f7a31324..cc2d3f896db0 100644
--- a/core/res/res/values-tr/strings.xml
+++ b/core/res/res/values-tr/strings.xml
@@ -1370,7 +1370,7 @@
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Analog ses aksesuarı algılandı"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"Takılan cihaz bu telefonla uyumlu değil. Daha fazla bilgi edinmek için dokunun."</string>
<string name="adb_active_notification_title" msgid="408390247354560331">"USB hata ayıklaması bağlandı"</string>
- <string name="adb_active_notification_message" msgid="5617264033476778211">"USB hata ayıklama işlevini kapatmak için dokunun"</string>
+ <string name="adb_active_notification_message" msgid="5617264033476778211">"USB hata ayıklamayı kapatmak için dokunun"</string>
<string name="adb_active_notification_message" product="tv" msgid="6624498401272780855">"USB hata ayıklamasını devre dışı bırakmak için seçin."</string>
<string name="adbwifi_active_notification_title" msgid="6147343659168302473">"Kablosuz hata ayıklama bağlı"</string>
<string name="adbwifi_active_notification_message" msgid="930987922852867972">"Kablosuz hata ayıklamayı kapatmak için dokunun"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Devam ettir"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"İş uygulaması yok"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Kişisel uygulama yok"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Kişisel uygulamayı (<xliff:g id="APP">%s</xliff:g>) aç"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"İş uygulamasını (<xliff:g id="APP">%s</xliff:g>) aç"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Kişisel tarayıcıyı kullan"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"İş tarayıcısını kullan"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM ağ kilidi açma PIN kodu"</string>
diff --git a/core/res/res/values-uk/strings.xml b/core/res/res/values-uk/strings.xml
index 6a057e3ec384..dd286725c019 100644
--- a/core/res/res/values-uk/strings.xml
+++ b/core/res/res/values-uk/strings.xml
@@ -2166,8 +2166,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Увімкнути знову"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Немає робочих додатків"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Немає особистих додатків"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Відкрити особистий додаток <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Відкрити робочий додаток <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Використати особистий веб-переглядач"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Використати робочий веб-переглядач"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN-код розблокування мережі SIM-карти"</string>
diff --git a/core/res/res/values-ur/strings.xml b/core/res/res/values-ur/strings.xml
index 421c72ed15c6..f08404b9c4ed 100644
--- a/core/res/res/values-ur/strings.xml
+++ b/core/res/res/values-ur/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"غیر موقوف کریں"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"کوئی ورک ایپ نہیں"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"کوئی ذاتی ایپ نہیں"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"ذاتی <xliff:g id="APP">%s</xliff:g> کھولیں"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"دفتری <xliff:g id="APP">%s</xliff:g> کھولیں"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"ذاتی براؤزر استعمال کریں"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"ورک براؤزر استعمال کریں"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"‏SIM نیٹ ورک غیر مقفل کرنے کا PIN"</string>
diff --git a/core/res/res/values-uz/strings.xml b/core/res/res/values-uz/strings.xml
index a255827471b3..291b856b6910 100644
--- a/core/res/res/values-uz/strings.xml
+++ b/core/res/res/values-uz/strings.xml
@@ -1619,7 +1619,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Planshet"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"TV"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Telefon"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Taglik karnaylar"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Dok karnaylar"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Tashqi qurilma"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Quloq karnaychalari"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Davom ettirish"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Ishga oid ilovalar topilmadi"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Shaxsiy ilovalar topilmadi"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Shaxsiy <xliff:g id="APP">%s</xliff:g> ochish"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Ishdagi <xliff:g id="APP">%s</xliff:g> ochish"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Shaxsiy brauzerdan foydalanish"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Ishga oid brauzerdan foydalanish"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM kartaning tarmoqdagi qulfini ochish uchun PIN kod"</string>
diff --git a/core/res/res/values-vi/strings.xml b/core/res/res/values-vi/strings.xml
index 85476911d76f..696e87439e20 100644
--- a/core/res/res/values-vi/strings.xml
+++ b/core/res/res/values-vi/strings.xml
@@ -1619,7 +1619,7 @@
<string name="default_audio_route_name" product="tablet" msgid="367936735632195517">"Máy tính bảng"</string>
<string name="default_audio_route_name" product="tv" msgid="4908971385068087367">"TV"</string>
<string name="default_audio_route_name" product="default" msgid="9213546147739983977">"Điện thoại"</string>
- <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Loa đế"</string>
+ <string name="default_audio_route_name_dock_speakers" msgid="1551166029093995289">"Loa kiêm đế sạc"</string>
<string name="default_audio_route_name_external_device" msgid="8124229858618975">"Thiết bị bên ngoài"</string>
<string name="default_audio_route_name_headphones" msgid="6954070994792640762">"Tai nghe"</string>
<string name="default_audio_route_name_usb" msgid="895668743163316932">"USB"</string>
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Bỏ tạm dừng"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Không có ứng dụng công việc"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Không có ứng dụng cá nhân"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Mở <xliff:g id="APP">%s</xliff:g> cá nhân"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Mở <xliff:g id="APP">%s</xliff:g> công việc"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Dùng trình duyệt cá nhân"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Dùng trình duyệt công việc"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Mã PIN mở khóa mạng SIM"</string>
diff --git a/core/res/res/values-zh-rCN/strings.xml b/core/res/res/values-zh-rCN/strings.xml
index 6908387a20ab..4518899fc8d1 100644
--- a/core/res/res/values-zh-rCN/strings.xml
+++ b/core/res/res/values-zh-rCN/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"取消暂停"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"没有支持该内容的工作应用"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"没有支持该内容的个人应用"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"打开个人 <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"打开工作 <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"使用个人浏览器"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"使用工作浏览器"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM 网络解锁 PIN 码"</string>
diff --git a/core/res/res/values-zh-rHK/strings.xml b/core/res/res/values-zh-rHK/strings.xml
index 31bda311d6dd..09e17c1badd5 100644
--- a/core/res/res/values-zh-rHK/strings.xml
+++ b/core/res/res/values-zh-rHK/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"取消暫停"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"沒有適用的工作應用程式"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"沒有適用的個人應用程式"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"開啟個人用 <xliff:g id="APP">%s</xliff:g>"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"開啟工作用 <xliff:g id="APP">%s</xliff:g>"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"使用個人瀏覽器"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"使用工作瀏覽器"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM 網絡解鎖 PIN"</string>
diff --git a/core/res/res/values-zh-rTW/strings.xml b/core/res/res/values-zh-rTW/strings.xml
index e84bb472d4e3..19cfe5d59957 100644
--- a/core/res/res/values-zh-rTW/strings.xml
+++ b/core/res/res/values-zh-rTW/strings.xml
@@ -1952,7 +1952,7 @@
<string name="app_suspended_default_message" msgid="6451215678552004172">"目前無法使用「<xliff:g id="APP_NAME_0">%1$s</xliff:g>」。這項設定是由「<xliff:g id="APP_NAME_1">%2$s</xliff:g>」管理。"</string>
<string name="app_suspended_more_details" msgid="211260942831587014">"瞭解詳情"</string>
<string name="app_suspended_unsuspend_message" msgid="1665438589450555459">"取消暫停應用程式"</string>
- <string name="work_mode_off_title" msgid="6367463960165135829">"要取消暫停工作應用程式嗎?"</string>
+ <string name="work_mode_off_title" msgid="6367463960165135829">"要解除工作應用程式的暫停狀態嗎?"</string>
<string name="work_mode_turn_on" msgid="5316648862401307800">"取消暫停"</string>
<string name="work_mode_emergency_call_button" msgid="6818855962881612322">"撥打緊急電話"</string>
<string name="app_blocked_title" msgid="7353262160455028160">"應用程式無法使用"</string>
@@ -2161,11 +2161,15 @@
<string name="resolver_cant_share_with_personal_apps_explanation" msgid="6349766201904601544">"無法透過個人應用程式分享這項內容"</string>
<string name="resolver_cant_access_personal_apps_explanation" msgid="1679399548862724359">"無法使用個人應用程式開啟這項內容"</string>
<string name="resolver_turn_on_work_apps" msgid="1535946298236678122">"工作應用程式目前為暫停狀態"</string>
- <string name="resolver_switch_on_work" msgid="4527096360772311894">"取消暫停"</string>
+ <string name="resolver_switch_on_work" msgid="4527096360772311894">"解除暫停"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"沒有適用的工作應用程式"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"沒有適用的個人應用程式"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"開啟個人用「<xliff:g id="APP">%s</xliff:g>」"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"開啟工作用「<xliff:g id="APP">%s</xliff:g>」"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"使用個人瀏覽器"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"使用工作瀏覽器"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"SIM 卡網路解鎖 PIN 碼"</string>
diff --git a/core/res/res/values-zu/strings.xml b/core/res/res/values-zu/strings.xml
index 6a22729489a3..c2bc59cc0a48 100644
--- a/core/res/res/values-zu/strings.xml
+++ b/core/res/res/values-zu/strings.xml
@@ -2164,8 +2164,12 @@
<string name="resolver_switch_on_work" msgid="4527096360772311894">"Qhubekisa"</string>
<string name="resolver_no_work_apps_available" msgid="3298291360133337270">"Awekho ama-app womsebenzi"</string>
<string name="resolver_no_personal_apps_available" msgid="6284837227019594881">"Awekho ama-app womuntu siqu"</string>
- <string name="miniresolver_open_in_personal" msgid="6499100403307136696">"Vula i-<xliff:g id="APP">%s</xliff:g> yomuntu siqu"</string>
- <string name="miniresolver_open_in_work" msgid="7138659785478630639">"Vula i-<xliff:g id="APP">%s</xliff:g> yomsebenzi"</string>
+ <!-- no translation found for miniresolver_open_work (6286176185835401931) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_personal (807427577794490375) -->
+ <skip />
+ <!-- no translation found for miniresolver_open_in_work (941341494673509916) -->
+ <skip />
<string name="miniresolver_use_personal_browser" msgid="776072682871133308">"Sebenzisa isiphequluli somuntu siqu"</string>
<string name="miniresolver_use_work_browser" msgid="543575306251952994">"Sebenzisa isiphequluli somsebenzi"</string>
<string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"Iphinikhodi yokuvula inethiwekhi ye-SIM"</string>
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index 984e2cae68dc..23e3139c3d3a 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -794,10 +794,10 @@
<!-- Control whether to launch Car dock home app when user presses home button or when
car dock intent is fired.
- In mobile device, usually separate home app is expected in car mode, and this should be
- enabled. But in environments like real car, default home app may be enough, and in that
- case, this can be disabled (set to false). -->
- <bool name="config_enableCarDockHomeLaunch">true</bool>
+ For devices where a separate home app is expected in car mode this should be enabled.
+ But in environments like real car, default home app may be enough, and in that case
+ this can be disabled (set to false). Defaults to false on mobile devices. -->
+ <bool name="config_enableCarDockHomeLaunch">false</bool>
<!-- Control whether to force apps to give up control over the display of system bars at all
times regardless of System Ui Flags.
@@ -2957,8 +2957,13 @@
<!-- Whether safe headphone volume is enabled or not (country specific). -->
<bool name="config_safe_media_volume_enabled">true</bool>
- <!-- Whether safe headphone sound dosage warning is enabled or not (country specific). -->
- <bool name="config_safe_sound_dosage_enabled">true</bool>
+ <!-- Whether safe headphone sound dosage warning is enabled or not
+ (country specific). This value should only be overlaid to true
+ when a vendor supports offload and has the HAL sound dose
+ interfaces implemented. Otherwise, this can lead to a compliance
+ issue with the safe hearing standards EN50332-3 and IEC62368-1.
+ -->
+ <bool name="config_safe_sound_dosage_enabled">false</bool>
<!-- Whether safe headphone volume warning dialog is disabled on Vol+ (operator specific). -->
<bool name="config_safe_media_disable_on_volume_up">true</bool>
diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
index 027d4f8ab2b5..faaa2e8cc0f5 100644
--- a/core/res/res/values/strings.xml
+++ b/core/res/res/values/strings.xml
@@ -4602,24 +4602,13 @@
<!-- Message shown in dialog when user goes over a multiple of 100% of the safe weekly dose -->
<string name="csd_dose_reached_warning" product="default">
- "Warning,\nYou have exceeded the amount of loud sound signals one can safely listen to in a week over headphones.\n\nGoing over this limit will permanently damage your hearing."
- </string>
-
- <!-- Message shown in dialog when user goes over 500% of the safe weekly dose and volume is
- automatically lowered -->
- <string name="csd_dose_repeat_warning" product="default">
- "Warning,\nYou have exceeded 5 times the amount of loud sound signals one can safely listen to in a week over headphones.\n\nVolume has been lowered to protect your hearing."
- </string>
-
- <!-- Message shown in dialog when user's dose enters RS2 -->
- <string name="csd_entering_RS2_warning" product="default">
- "The level at which you are listening to media can result in hearing damage when sustained over long periods of time.\n\nContinuing to play at this level for long periods of time could damage your hearing."
+ "Keep listening at a high volume?\n\nHeadphone volume has been high for longer than recommended, which can damage your hearing"
</string>
<!-- Message shown in dialog when user is momentarily listening to unsafely loud content
over headphones -->
<string name="csd_momentary_exposure_warning" product="default">
- "Warning,\nYou are currently listening to loud content played at an unsafe level.\n\nContinuing to listen this loud will permanently damage your hearing."
+ "Loud sound detected\n\nHeadphone volume has been higher than recommended, which can damage your hearing"
</string>
<!-- Dialog title for dialog shown when the accessibility shortcut is activated, and we want
diff --git a/core/tests/coretests/Android.bp b/core/tests/coretests/Android.bp
index ab500f730fc8..286697cbd940 100644
--- a/core/tests/coretests/Android.bp
+++ b/core/tests/coretests/Android.bp
@@ -36,6 +36,7 @@ android_test {
"-c fa",
],
static_libs: [
+ "collector-device-lib-platform",
"frameworks-base-testutils",
"core-test-rules", // for libcore.dalvik.system.CloseGuardSupport
"core-tests-support",
diff --git a/core/tests/coretests/AndroidTest.xml b/core/tests/coretests/AndroidTest.xml
index e2cdbf36b530..3e4c47b36ed9 100644
--- a/core/tests/coretests/AndroidTest.xml
+++ b/core/tests/coretests/AndroidTest.xml
@@ -32,6 +32,13 @@
<target_preparer class="com.android.compatibility.common.tradefed.targetprep.DeviceInteractionHelperInstaller" />
+ <metrics_collector class="com.android.tradefed.device.metric.FilePullerLogCollector">
+ <option name="directory-keys" value="/data/user/0/com.android.frameworks.coretests/files" />
+ <option name="pull-pattern-keys"
+ value="android.device.collectors.ScreenRecordCollector.*\.mp4"/>
+ <option name="collect-on-run-ended-only" value="true" />
+ </metrics_collector>
+
<option name="test-tag" value="FrameworksCoreTests" />
<test class="com.android.tradefed.testtype.AndroidJUnitTest" >
<option name="package" value="com.android.frameworks.coretests" />
diff --git a/core/tests/coretests/src/android/view/inputmethod/InsertModeGestureTest.java b/core/tests/coretests/src/android/view/inputmethod/InsertModeGestureTest.java
index 11ddba110f7a..a94f8772fcd0 100644
--- a/core/tests/coretests/src/android/view/inputmethod/InsertModeGestureTest.java
+++ b/core/tests/coretests/src/android/view/inputmethod/InsertModeGestureTest.java
@@ -21,6 +21,7 @@ import static org.junit.Assert.assertNotNull;
import android.graphics.PointF;
import android.os.CancellationSignal;
+import android.os.CancellationSignalBeamer;
import android.platform.test.annotations.Presubmit;
import androidx.test.filters.SmallTest;
@@ -54,4 +55,15 @@ public class InsertModeGestureTest {
assertEquals(FALLBACK_TEXT, gesture.getFallbackText());
assertEquals(CANCELLATION_SIGNAL, gesture.getCancellationSignal());
}
+
+ @Test
+ public void testCancellationSignal() {
+ var cs = CANCELLATION_SIGNAL;
+ var gesture = new InsertModeGesture.Builder().setInsertionPoint(INSERTION_POINT)
+ .setCancellationSignal(CANCELLATION_SIGNAL)
+ .setFallbackText(FALLBACK_TEXT).build();
+ gesture.unbeamCancellationSignal(
+ new CancellationSignalBeamer.Receiver(true /* cancelOnSenderDeath */));
+ assertEquals(gesture.getCancellationSignal(), cs);
+ }
}
diff --git a/graphics/java/android/graphics/RenderNode.java b/graphics/java/android/graphics/RenderNode.java
index dadbd8d2d1aa..2e91c240d71b 100644
--- a/graphics/java/android/graphics/RenderNode.java
+++ b/graphics/java/android/graphics/RenderNode.java
@@ -1561,6 +1561,16 @@ public final class RenderNode {
return nGetUniqueId(mNativeRenderNode);
}
+ /**
+ * Captures whether this RenderNote represents a TextureView
+ * TODO(b/281695725): Clean this up once TextureView use setFrameRate API
+ *
+ * @hide
+ */
+ public void setIsTextureView() {
+ nSetIsTextureView(mNativeRenderNode);
+ }
+
///////////////////////////////////////////////////////////////////////////
// Animations
///////////////////////////////////////////////////////////////////////////
@@ -1891,4 +1901,7 @@ public final class RenderNode {
@CriticalNative
private static native long nGetUniqueId(long renderNode);
+
+ @CriticalNative
+ private static native void nSetIsTextureView(long renderNode);
}
diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/RearDisplayPresentationController.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/RearDisplayPresentationController.java
index 141a6ad48771..0e9119a4332b 100644
--- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/RearDisplayPresentationController.java
+++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/RearDisplayPresentationController.java
@@ -20,9 +20,6 @@ import static androidx.window.extensions.area.WindowAreaComponent.SESSION_STATE_
import static androidx.window.extensions.area.WindowAreaComponent.SESSION_STATE_INACTIVE;
import android.content.Context;
-import android.hardware.devicestate.DeviceStateRequest;
-import android.hardware.display.DisplayManager;
-import android.util.Log;
import android.view.Display;
import androidx.annotation.NonNull;
@@ -32,17 +29,12 @@ import androidx.window.extensions.core.util.function.Consumer;
import java.util.Objects;
/**
- * Controller class that keeps track of the status of the device state request
- * to enable the rear display presentation feature. This controller notifies the session callback
- * when the state request is active, and notifies the callback when the request is canceled.
- *
- * Clients are notified via {@link Consumer} provided with
- * {@link androidx.window.extensions.area.WindowAreaComponent.WindowAreaStatus} values to signify
- * when the request becomes active and cancelled.
+ * Controller class that manages the creation of the {@link android.app.Presentation} object used
+ * to show content on the rear facing display. This controller notifies the session callback with
+ * {@link androidx.window.extensions.area.WindowAreaComponent.WindowAreaStatus} values when the
+ * feature is active, or when the feature has been ended.
*/
-class RearDisplayPresentationController implements DeviceStateRequest.Callback {
-
- private static final String TAG = "RearDisplayPresentationController";
+class RearDisplayPresentationController {
// Original context that requested to enable rear display presentation mode
@NonNull
@@ -51,8 +43,6 @@ class RearDisplayPresentationController implements DeviceStateRequest.Callback {
private final Consumer<@WindowAreaComponent.WindowAreaSessionState Integer> mStateConsumer;
@Nullable
private ExtensionWindowAreaPresentation mExtensionWindowAreaPresentation;
- @NonNull
- private final DisplayManager mDisplayManager;
/**
* Creates the RearDisplayPresentationController
@@ -71,25 +61,15 @@ class RearDisplayPresentationController implements DeviceStateRequest.Callback {
mContext = context;
mStateConsumer = stateConsumer;
- mDisplayManager = context.getSystemService(DisplayManager.class);
}
- @Override
- public void onRequestActivated(@NonNull DeviceStateRequest request) {
- Display[] rearDisplays = mDisplayManager.getDisplays(DisplayManager.DISPLAY_CATEGORY_REAR);
- if (rearDisplays.length == 0) {
- mStateConsumer.accept(SESSION_STATE_INACTIVE);
- Log.e(TAG, "Rear display list should not be empty");
- return;
- }
-
+ public void startSession(@NonNull Display rearDisplay) {
mExtensionWindowAreaPresentation =
- new RearDisplayPresentation(mContext, rearDisplays[0], mStateConsumer);
+ new RearDisplayPresentation(mContext, rearDisplay, mStateConsumer);
mStateConsumer.accept(SESSION_STATE_ACTIVE);
}
- @Override
- public void onRequestCanceled(@NonNull DeviceStateRequest request) {
+ public void endSession() {
mStateConsumer.accept(SESSION_STATE_INACTIVE);
}
diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/RearDisplayPresentationRequestCallback.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/RearDisplayPresentationRequestCallback.java
new file mode 100644
index 000000000000..ea33426d0bdf
--- /dev/null
+++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/RearDisplayPresentationRequestCallback.java
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package androidx.window.extensions.area;
+
+import android.content.Context;
+import android.hardware.devicestate.DeviceStateRequest;
+import android.hardware.display.DisplayManager;
+import android.view.Display;
+
+import androidx.annotation.NonNull;
+
+/**
+ * Callback class to be notified of updates to a {@link DeviceStateRequest} for the rear display
+ * presentation state. This class notifies the {@link RearDisplayPresentationController} when the
+ * device is ready to enable the rear display presentation feature.
+ */
+public class RearDisplayPresentationRequestCallback implements DeviceStateRequest.Callback {
+
+ private static final String TAG = RearDisplayPresentationRequestCallback.class.getSimpleName();
+
+ @NonNull
+ private final DisplayManager mDisplayManager;
+ @NonNull
+ private final DisplayManager.DisplayListener mRearDisplayListener = new RearDisplayListener();
+ @NonNull
+ private final RearDisplayPresentationController mRearDisplayPresentationController;
+ private boolean mWaitingForRearDisplay = false;
+
+ public RearDisplayPresentationRequestCallback(@NonNull Context context,
+ @NonNull RearDisplayPresentationController rearDisplayPresentationController) {
+ mDisplayManager = context.getSystemService(DisplayManager.class);
+ mDisplayManager.registerDisplayListener(mRearDisplayListener,
+ context.getMainThreadHandler(), DisplayManager.EVENT_FLAG_DISPLAY_ADDED
+ | DisplayManager.EVENT_FLAG_DISPLAY_CHANGED);
+
+ mRearDisplayPresentationController = rearDisplayPresentationController;
+ }
+
+ @Override
+ public void onRequestActivated(@NonNull DeviceStateRequest request) {
+ Display[] rearDisplays = mDisplayManager.getDisplays(DisplayManager.DISPLAY_CATEGORY_REAR);
+ if (rearDisplays.length == 0) {
+ // No rear facing display found, marking waiting for display flag as true.
+ mWaitingForRearDisplay = true;
+ return;
+ }
+ mDisplayManager.unregisterDisplayListener(mRearDisplayListener);
+ mRearDisplayPresentationController.startSession(rearDisplays[0]);
+ }
+
+ @Override
+ public void onRequestCanceled(@NonNull DeviceStateRequest request) {
+ mDisplayManager.unregisterDisplayListener(mRearDisplayListener);
+ mRearDisplayPresentationController.endSession();
+ }
+
+ /**
+ * {@link DisplayManager.DisplayListener} to be used if a rear facing {@link Display} isn't
+ * available synchronously when the device is entered into the rear display presentation state.
+ * A rear facing {@link Display} is a {@link Display} that is categorized as
+ * {@link DisplayManager#DISPLAY_CATEGORY_REAR}. This can occur if {@link DisplayManager} is
+ * still in the process of configuring itself for this state when
+ * {@link DeviceStateRequest.Callback#onRequestActivated} is called.
+ *
+ * The {@link DisplayManager.DisplayListener} removes itself when a rear facing display is
+ * found.
+ */
+ private class RearDisplayListener implements DisplayManager.DisplayListener {
+ @Override
+ public void onDisplayAdded(int displayId) {
+ Display display = mDisplayManager.getDisplay(displayId);
+ if (mWaitingForRearDisplay && (display.getFlags() & Display.FLAG_REAR) != 0) {
+ startRearDisplayPresentation(display);
+ }
+ }
+
+ @Override
+ public void onDisplayRemoved(int displayId) {}
+
+ @Override
+ public void onDisplayChanged(int displayId) {
+ Display display = mDisplayManager.getDisplay(displayId);
+ if (mWaitingForRearDisplay && (display.getFlags() & Display.FLAG_REAR) != 0) {
+ startRearDisplayPresentation(display);
+ }
+ }
+
+ /**
+ * Starts a new {@link RearDisplayPresentation} with the updated {@link Display} with a
+ * category of {@link DisplayManager#DISPLAY_CATEGORY_REAR}.
+ */
+ private void startRearDisplayPresentation(Display rearDisplay) {
+ // We have been notified of a change to a rear display, we can unregister the
+ // callback and stop waiting for a display
+ mDisplayManager.unregisterDisplayListener(this);
+ mWaitingForRearDisplay = false;
+
+ mRearDisplayPresentationController.startSession(rearDisplay);
+ }
+ }
+}
diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/WindowAreaComponentImpl.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/WindowAreaComponentImpl.java
index b374ae35f57f..658d92cc7489 100644
--- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/WindowAreaComponentImpl.java
+++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/area/WindowAreaComponentImpl.java
@@ -337,13 +337,15 @@ public class WindowAreaComponentImpl implements WindowAreaComponent,
consumer.accept(stateStatus);
}
});
-
+ RearDisplayPresentationRequestCallback deviceStateCallback =
+ new RearDisplayPresentationRequestCallback(activity,
+ mRearDisplayPresentationController);
DeviceStateRequest concurrentDisplayStateRequest = DeviceStateRequest.newBuilder(
mConcurrentDisplayState).build();
mDeviceStateManager.requestState(
concurrentDisplayStateRequest,
mExecutor,
- mRearDisplayPresentationController
+ deviceStateCallback
);
}
}
diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/layout/WindowLayoutComponentImpl.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/layout/WindowLayoutComponentImpl.java
index a7a6b3c92157..a45a8a183ac8 100644
--- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/layout/WindowLayoutComponentImpl.java
+++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/layout/WindowLayoutComponentImpl.java
@@ -371,24 +371,15 @@ public class WindowLayoutComponentImpl implements WindowLayoutComponent {
final Rect taskBounds = taskConfig.windowConfiguration.getBounds();
final WindowManager windowManager = Objects.requireNonNull(
context.getSystemService(WindowManager.class));
- final Rect currentBounds = windowManager.getCurrentWindowMetrics().getBounds();
final Rect maxBounds = windowManager.getMaximumWindowMetrics().getBounds();
boolean isTaskExpanded = maxBounds.equals(taskBounds);
- boolean isActivityExpanded = maxBounds.equals(currentBounds);
/*
* We need to proxy being in full screen because when a user enters PiP and exits PiP
* the task windowingMode will report multi-window/pinned until the transition is
* finished in WM Shell.
* maxBounds == taskWindowBounds is a proxy check to verify the window is full screen
- * For tasks that are letterboxed, we use currentBounds == maxBounds to filter these
- * out.
*/
- // TODO(b/262900133) remove currentBounds check when letterboxed apps report bounds.
- // currently we don't want to report to letterboxed apps since they do not update the
- // window bounds when the Activity is moved. An inaccurate fold will be reported so
- // we skip.
- return isTaskExpanded && (isActivityExpanded
- || mTaskFragmentOrganizer.isActivityEmbedded(activityToken));
+ return isTaskExpanded;
} else {
// TODO(b/242674941): use task windowing mode for window context that associates with
// activity.
diff --git a/libs/WindowManager/Shell/res/drawable/letterbox_education_dialog_background.xml b/libs/WindowManager/Shell/res/drawable/letterbox_education_dialog_background.xml
index 3e1a2bce2393..e7c89d1f9c76 100644
--- a/libs/WindowManager/Shell/res/drawable/letterbox_education_dialog_background.xml
+++ b/libs/WindowManager/Shell/res/drawable/letterbox_education_dialog_background.xml
@@ -15,7 +15,8 @@
~ limitations under the License.
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:shape="rectangle">
- <solid android:color="@color/compat_controls_background"/>
+ <solid android:color="?androidprv:attr/colorSurface"/>
<corners android:radius="@dimen/letterbox_education_dialog_corner_radius"/>
</shape> \ No newline at end of file
diff --git a/libs/WindowManager/Shell/res/drawable/letterbox_education_dismiss_button_background_ripple.xml b/libs/WindowManager/Shell/res/drawable/letterbox_education_dismiss_button_background_ripple.xml
index a2699681e656..72ebef625ffc 100644
--- a/libs/WindowManager/Shell/res/drawable/letterbox_education_dismiss_button_background_ripple.xml
+++ b/libs/WindowManager/Shell/res/drawable/letterbox_education_dismiss_button_background_ripple.xml
@@ -15,6 +15,7 @@
~ limitations under the License.
-->
<inset xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:insetTop="@dimen/letterbox_education_dialog_vertical_inset"
android:insetBottom="@dimen/letterbox_education_dialog_vertical_inset">
<ripple android:color="@color/letterbox_education_dismiss_button_background_ripple">
@@ -31,7 +32,7 @@
</item>
<item>
<shape android:shape="rectangle">
- <solid android:color="@color/letterbox_education_accent_primary"/>
+ <solid android:color="?androidprv:attr/colorAccentPrimaryVariant"/>
<corners android:radius="@dimen/letterbox_education_dialog_button_radius"/>
<padding android:left="@dimen/letterbox_education_dialog_horizontal_padding"
android:top="@dimen/letterbox_education_dialog_vertical_padding"
diff --git a/libs/WindowManager/Shell/res/drawable/letterbox_education_ic_light_bulb.xml b/libs/WindowManager/Shell/res/drawable/letterbox_education_ic_light_bulb.xml
index ddfb5c27e701..4a1e7485ed19 100644
--- a/libs/WindowManager/Shell/res/drawable/letterbox_education_ic_light_bulb.xml
+++ b/libs/WindowManager/Shell/res/drawable/letterbox_education_ic_light_bulb.xml
@@ -15,12 +15,13 @@
~ limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:width="@dimen/letterbox_education_dialog_title_icon_width"
android:height="@dimen/letterbox_education_dialog_title_icon_height"
android:viewportWidth="45"
android:viewportHeight="44">
<path
- android:fillColor="@color/letterbox_education_accent_primary"
+ android:fillColor="?androidprv:attr/colorAccentPrimaryVariant"
android:pathData="M11 40H19C19 42.2 17.2 44 15 44C12.8 44 11 42.2 11 40ZM7 38L23 38V34L7 34L7 38ZM30 19C30 26.64 24.68 30.72 22.46 32L7.54 32C5.32 30.72 0 26.64 0 19C0 10.72 6.72 4 15 4C23.28 4 30 10.72 30 19ZM26 19C26 12.94 21.06 8 15 8C8.94 8 4 12.94 4 19C4 23.94 6.98 26.78 8.7 28L21.3 28C23.02 26.78 26 23.94 26 19ZM39.74 14.74L37 16L39.74 17.26L41 20L42.26 17.26L45 16L42.26 14.74L41 12L39.74 14.74ZM35 12L36.88 7.88L41 6L36.88 4.12L35 0L33.12 4.12L29 6L33.12 7.88L35 12Z" />
</vector> \ No newline at end of file
diff --git a/libs/WindowManager/Shell/res/layout/letterbox_education_dialog_action_layout.xml b/libs/WindowManager/Shell/res/layout/letterbox_education_dialog_action_layout.xml
index 095576b581df..c77a4fdcfa79 100644
--- a/libs/WindowManager/Shell/res/layout/letterbox_education_dialog_action_layout.xml
+++ b/libs/WindowManager/Shell/res/layout/letterbox_education_dialog_action_layout.xml
@@ -16,6 +16,7 @@
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:layout_width="@dimen/letterbox_education_dialog_action_width"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
@@ -36,7 +37,7 @@
android:layout_height="wrap_content"
android:lineSpacingExtra="4sp"
android:textAlignment="center"
- android:textColor="@color/compat_controls_text"
+ android:textColor="?android:attr/textColorSecondary"
android:textSize="14sp"/>
</LinearLayout> \ No newline at end of file
diff --git a/libs/WindowManager/Shell/res/layout/letterbox_education_dialog_layout.xml b/libs/WindowManager/Shell/res/layout/letterbox_education_dialog_layout.xml
index a993469aaccf..4d5256777018 100644
--- a/libs/WindowManager/Shell/res/layout/letterbox_education_dialog_layout.xml
+++ b/libs/WindowManager/Shell/res/layout/letterbox_education_dialog_layout.xml
@@ -15,6 +15,7 @@
-->
<com.android.wm.shell.compatui.LetterboxEduDialogLayout
xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
style="@style/LetterboxDialog">
@@ -66,7 +67,7 @@
android:lineSpacingExtra="4sp"
android:text="@string/letterbox_education_dialog_title"
android:textAlignment="center"
- android:textColor="@color/compat_controls_text"
+ android:textColor="?android:attr/textColorPrimary"
android:fontFamily="@*android:string/config_bodyFontFamilyMedium"
android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Headline"
android:textSize="24sp"/>
@@ -108,7 +109,7 @@
android:background=
"@drawable/letterbox_education_dismiss_button_background_ripple"
android:text="@string/letterbox_education_got_it"
- android:textColor="@android:color/system_neutral1_900"
+ android:textColor="?android:attr/textColorPrimaryInverse"
android:textAlignment="center"
android:contentDescription="@string/letterbox_education_got_it"/>
diff --git a/libs/WindowManager/Shell/res/values-cs/strings.xml b/libs/WindowManager/Shell/res/values-cs/strings.xml
index 70e29705806f..ac22b8569e16 100644
--- a/libs/WindowManager/Shell/res/values-cs/strings.xml
+++ b/libs/WindowManager/Shell/res/values-cs/strings.xml
@@ -79,7 +79,7 @@
<string name="notification_bubble_title" msgid="6082910224488253378">"Bublina"</string>
<string name="manage_bubbles_text" msgid="7730624269650594419">"Spravovat"</string>
<string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bublina byla zavřena."</string>
- <string name="restart_button_description" msgid="6712141648865547958">"Klepnutím tuto aplikaci kvůli lepšímu zobrazení restartujete."</string>
+ <string name="restart_button_description" msgid="6712141648865547958">"Pokud je problém se zobrazením aplikace, klepněte na ni a restartujte ji."</string>
<string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"Problémy s fotoaparátem?\nKlepnutím vyřešíte"</string>
<string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"Nepomohlo to?\nKlepnutím se vrátíte"</string>
<string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"Žádné problémy s fotoaparátem? Klepnutím zavřete."</string>
diff --git a/libs/WindowManager/Shell/res/values-hr/strings.xml b/libs/WindowManager/Shell/res/values-hr/strings.xml
index 2535657c7d86..08721f0e6746 100644
--- a/libs/WindowManager/Shell/res/values-hr/strings.xml
+++ b/libs/WindowManager/Shell/res/values-hr/strings.xml
@@ -79,7 +79,7 @@
<string name="notification_bubble_title" msgid="6082910224488253378">"Oblačić"</string>
<string name="manage_bubbles_text" msgid="7730624269650594419">"Upravljanje"</string>
<string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Oblačić odbačen."</string>
- <string name="restart_button_description" msgid="6712141648865547958">"Dodirnite da biste ponovo pokrenuli tu aplikaciju kako biste bolje vidjeli."</string>
+ <string name="restart_button_description" msgid="6712141648865547958">"Dodirnite za ponovno pokretanje te aplikacije i bolji prikaz."</string>
<string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"Problemi s fotoaparatom?\nDodirnite za popravak"</string>
<string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"Problem nije riješen?\nDodirnite za vraćanje"</string>
<string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"Nemate problema s fotoaparatom? Dodirnite za odbacivanje."</string>
diff --git a/libs/WindowManager/Shell/res/values-is/strings.xml b/libs/WindowManager/Shell/res/values-is/strings.xml
index 145d26d35b75..20c16be3eaca 100644
--- a/libs/WindowManager/Shell/res/values-is/strings.xml
+++ b/libs/WindowManager/Shell/res/values-is/strings.xml
@@ -79,7 +79,7 @@
<string name="notification_bubble_title" msgid="6082910224488253378">"Blaðra"</string>
<string name="manage_bubbles_text" msgid="7730624269650594419">"Stjórna"</string>
<string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Blöðru lokað."</string>
- <string name="restart_button_description" msgid="6712141648865547958">"Ýta til að endurræsa forritið og fá betri sýn."</string>
+ <string name="restart_button_description" msgid="6712141648865547958">"Ýttu til að endurræsa forritið og fá betri sýn."</string>
<string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"Myndavélavesen?\nÝttu til að breyta stærð"</string>
<string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"Ennþá vesen?\nÝttu til að afturkalla"</string>
<string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"Ekkert myndavélavesen? Ýttu til að hunsa."</string>
diff --git a/libs/WindowManager/Shell/res/values-ja/strings.xml b/libs/WindowManager/Shell/res/values-ja/strings.xml
index 6c1bafee9d82..9434d48286b9 100644
--- a/libs/WindowManager/Shell/res/values-ja/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ja/strings.xml
@@ -79,7 +79,7 @@
<string name="notification_bubble_title" msgid="6082910224488253378">"バブル"</string>
<string name="manage_bubbles_text" msgid="7730624269650594419">"管理"</string>
<string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"ふきだしが非表示になっています。"</string>
- <string name="restart_button_description" msgid="6712141648865547958">"タップしてこのアプリを再起動すると、表示が適切になります。"</string>
+ <string name="restart_button_description" msgid="6712141648865547958">"タップしてこのアプリを再起動すると、より見やすく表示されます。"</string>
<string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"カメラに関する問題の場合は、\nタップすると修正できます"</string>
<string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"修正されなかった場合は、\nタップすると元に戻ります"</string>
<string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"カメラに関する問題でない場合は、タップすると閉じます。"</string>
diff --git a/libs/WindowManager/Shell/res/values-kk/strings.xml b/libs/WindowManager/Shell/res/values-kk/strings.xml
index 7c9120e22b30..c40cd2fb24aa 100644
--- a/libs/WindowManager/Shell/res/values-kk/strings.xml
+++ b/libs/WindowManager/Shell/res/values-kk/strings.xml
@@ -79,7 +79,7 @@
<string name="notification_bubble_title" msgid="6082910224488253378">"Көпіршік"</string>
<string name="manage_bubbles_text" msgid="7730624269650594419">"Басқару"</string>
<string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Қалқыма хабар жабылды."</string>
- <string name="restart_button_description" msgid="6712141648865547958">"Ыңғайлы көріністі реттеу үшін қолданбаны түртіп, өшіріп қосыңыз."</string>
+ <string name="restart_button_description" msgid="6712141648865547958">"Түртсеңіз, қолданба жабылып, ыңғайлы көрініспен қайта ашылады."</string>
<string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"Камерада қателер шықты ма?\nЖөндеу үшін түртіңіз."</string>
<string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"Жөнделмеді ме?\nҚайтару үшін түртіңіз."</string>
<string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"Камерада қателер шықпады ма? Жабу үшін түртіңіз."</string>
diff --git a/libs/WindowManager/Shell/res/values-mk/strings.xml b/libs/WindowManager/Shell/res/values-mk/strings.xml
index 427433c7f2d4..1567d61d833f 100644
--- a/libs/WindowManager/Shell/res/values-mk/strings.xml
+++ b/libs/WindowManager/Shell/res/values-mk/strings.xml
@@ -79,7 +79,7 @@
<string name="notification_bubble_title" msgid="6082910224488253378">"Балонче"</string>
<string name="manage_bubbles_text" msgid="7730624269650594419">"Управувајте"</string>
<string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Балончето е отфрлено."</string>
- <string name="restart_button_description" msgid="6712141648865547958">"Допрете за да ја рестартирате апликацијава за подобар приказ."</string>
+ <string name="restart_button_description" msgid="6712141648865547958">"За подобар приказ, допрете за да ја рестартирате апликацијава."</string>
<string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"Проблеми со камерата?\nДопрете за да се совпадне повторно"</string>
<string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"Не се поправи?\nДопрете за враќање"</string>
<string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"Нема проблеми со камерата? Допрете за отфрлање."</string>
diff --git a/libs/WindowManager/Shell/res/values-or/strings.xml b/libs/WindowManager/Shell/res/values-or/strings.xml
index e4c70537c452..267b8a38a6d7 100644
--- a/libs/WindowManager/Shell/res/values-or/strings.xml
+++ b/libs/WindowManager/Shell/res/values-or/strings.xml
@@ -26,7 +26,7 @@
<string name="pip_notification_title" msgid="1347104727641353453">"<xliff:g id="NAME">%s</xliff:g> \"ଛବି-ଭିତରେ-ଛବି\"ରେ ଅଛି"</string>
<string name="pip_notification_message" msgid="8854051911700302620">"ଏହି ବୈଶିଷ୍ଟ୍ୟ <xliff:g id="NAME">%s</xliff:g> ବ୍ୟବହାର ନକରିବାକୁ ଯଦି ଆପଣ ଚାହାଁନ୍ତି, ସେଟିଙ୍ଗ ଖୋଲିବାକୁ ଟାପ୍‍ କରନ୍ତୁ ଏବଂ ଏହା ଅଫ୍‍ କରିଦିଅନ୍ତୁ।"</string>
<string name="pip_play" msgid="3496151081459417097">"ପ୍ଲେ କରନ୍ତୁ"</string>
- <string name="pip_pause" msgid="690688849510295232">"ପଜ୍‍ କରନ୍ତୁ"</string>
+ <string name="pip_pause" msgid="690688849510295232">"ବିରତ କରନ୍ତୁ"</string>
<string name="pip_skip_to_next" msgid="8403429188794867653">"ପରବର୍ତ୍ତୀକୁ ଯାଆନ୍ତୁ"</string>
<string name="pip_skip_to_prev" msgid="7172158111196394092">"ପୂର୍ବବର୍ତ୍ତୀକୁ ଛାଡ଼ନ୍ତୁ"</string>
<string name="accessibility_action_pip_resize" msgid="4623966104749543182">"ରିସାଇଜ୍ କରନ୍ତୁ"</string>
diff --git a/libs/WindowManager/Shell/res/values-ro/strings.xml b/libs/WindowManager/Shell/res/values-ro/strings.xml
index 8a64b1686543..58ad60a87982 100644
--- a/libs/WindowManager/Shell/res/values-ro/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ro/strings.xml
@@ -79,7 +79,7 @@
<string name="notification_bubble_title" msgid="6082910224488253378">"Balon"</string>
<string name="manage_bubbles_text" msgid="7730624269650594419">"Gestionează"</string>
<string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Balonul a fost respins."</string>
- <string name="restart_button_description" msgid="6712141648865547958">"Atinge ca să repornești aplicația pentru o vizualizare mai bună."</string>
+ <string name="restart_button_description" msgid="6712141648865547958">"Atinge ca să repornești aplicația pentru o afișare mai bună."</string>
<string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"Ai probleme cu camera foto?\nAtinge pentru a reîncadra"</string>
<string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"Nu ai remediat problema?\nAtinge pentru a reveni"</string>
<string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"Nu ai probleme cu camera foto? Atinge pentru a închide."</string>
diff --git a/libs/WindowManager/Shell/res/values-ta/strings.xml b/libs/WindowManager/Shell/res/values-ta/strings.xml
index fd5f0e646d9b..5bb4c27ed6c7 100644
--- a/libs/WindowManager/Shell/res/values-ta/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ta/strings.xml
@@ -79,7 +79,7 @@
<string name="notification_bubble_title" msgid="6082910224488253378">"பபிள்"</string>
<string name="manage_bubbles_text" msgid="7730624269650594419">"நிர்வகி"</string>
<string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"குமிழ் நிராகரிக்கப்பட்டது."</string>
- <string name="restart_button_description" msgid="6712141648865547958">"இங்கு தட்டுவதன் மூலம் இந்த ஆப்ஸை மீண்டும் தொடங்கி, ஆப்ஸ் காட்டப்படும் விதத்தை இன்னும் சிறப்பாக்கலாம்."</string>
+ <string name="restart_button_description" msgid="6712141648865547958">"இங்கு தட்டி ஆப்ஸை மீண்டும் தொடங்கி, ஆப்ஸ் காட்சியை இன்னும் சிறப்பாக்கலாம்."</string>
<string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"கேமரா தொடர்பான சிக்கல்களா?\nமீண்டும் பொருத்த தட்டவும்"</string>
<string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"சிக்கல்கள் சரிசெய்யப்படவில்லையா?\nமாற்றியமைக்க தட்டவும்"</string>
<string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"கேமரா தொடர்பான சிக்கல்கள் எதுவும் இல்லையா? நிராகரிக்க தட்டவும்."</string>
diff --git a/libs/WindowManager/Shell/res/values-vi/strings.xml b/libs/WindowManager/Shell/res/values-vi/strings.xml
index 7d974005dd31..0281c1c8c396 100644
--- a/libs/WindowManager/Shell/res/values-vi/strings.xml
+++ b/libs/WindowManager/Shell/res/values-vi/strings.xml
@@ -79,7 +79,7 @@
<string name="notification_bubble_title" msgid="6082910224488253378">"Bong bóng"</string>
<string name="manage_bubbles_text" msgid="7730624269650594419">"Quản lý"</string>
<string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Đã đóng bong bóng."</string>
- <string name="restart_button_description" msgid="6712141648865547958">"Nhấn để khởi động lại ứng dụng này để xem tốt hơn."</string>
+ <string name="restart_button_description" msgid="6712141648865547958">"Nhấn để khởi động lại ứng dụng để có trải nghiệm xem tốt hơn."</string>
<string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"Có vấn đề với máy ảnh?\nHãy nhấn để sửa lỗi"</string>
<string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"Bạn chưa khắc phục vấn đề?\nHãy nhấn để hủy bỏ"</string>
<string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"Không có vấn đề với máy ảnh? Hãy nhấn để đóng."</string>
diff --git a/libs/WindowManager/Shell/res/values/colors.xml b/libs/WindowManager/Shell/res/values/colors.xml
index 33861485d6f7..171a6b2fe5fb 100644
--- a/libs/WindowManager/Shell/res/values/colors.xml
+++ b/libs/WindowManager/Shell/res/values/colors.xml
@@ -39,7 +39,6 @@
<color name="compat_controls_text">@android:color/system_neutral1_50</color>
<!-- Letterbox Education -->
- <color name="letterbox_education_accent_primary">@android:color/system_accent1_100</color>
<color name="letterbox_education_text_secondary">@android:color/system_neutral2_200</color>
<!-- Letterbox Dialog -->
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimation.java b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimation.java
index 133fd87a2f63..53a438ec2fde 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimation.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimation.java
@@ -55,10 +55,9 @@ public interface BackAnimation {
/**
* Sets the threshold values that defining edge swipe behavior.
- * @param triggerThreshold the min threshold to trigger back.
- * @param progressThreshold the max threshold to keep progressing back animation.
+ * @param progressThreshold the max threshold to keep linear progressing back animation.
*/
- void setSwipeThresholds(float triggerThreshold, float progressThreshold);
+ void setSwipeThresholds(float progressThreshold);
/**
* Sets the system bar listener to control the system bar color.
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java
index dc27ceb7f51c..6d879b830e2e 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java
@@ -301,9 +301,9 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont
}
@Override
- public void setSwipeThresholds(float triggerThreshold, float progressThreshold) {
+ public void setSwipeThresholds(float progressThreshold) {
mShellExecutor.execute(() -> BackAnimationController.this.setSwipeThresholds(
- triggerThreshold, progressThreshold));
+ progressThreshold));
}
@Override
@@ -605,7 +605,7 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont
mTouchTracker.setTriggerBack(triggerBack);
}
- private void setSwipeThresholds(float triggerThreshold, float progressThreshold) {
+ private void setSwipeThresholds(float progressThreshold) {
mTouchTracker.setProgressThreshold(progressThreshold);
}
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/DismissView.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/DismissView.kt
index ab194dfb3ce9..67ecb915e098 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/DismissView.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/DismissView.kt
@@ -144,6 +144,7 @@ class DismissView(context: Context) : FrameLayout(context) {
val gd = GradientDrawable(
GradientDrawable.Orientation.BOTTOM_TOP,
intArrayOf(gradientColorWithAlpha, Color.TRANSPARENT))
+ gd.setDither(true)
gd.setAlpha(0)
return gd
}
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/CompatUIController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/CompatUIController.java
index 2bbd870f024d..62b0799618ac 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/CompatUIController.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/CompatUIController.java
@@ -334,17 +334,19 @@ public class CompatUIController implements OnDisplaysChangedListener,
private void createOrUpdateLetterboxEduLayout(TaskInfo taskInfo,
ShellTaskOrganizer.TaskListener taskListener) {
- if (mActiveLetterboxEduLayout != null
- && mActiveLetterboxEduLayout.getTaskId() == taskInfo.taskId) {
- // UI already exists, update the UI layout.
- if (!mActiveLetterboxEduLayout.updateCompatInfo(taskInfo, taskListener,
- showOnDisplay(mActiveLetterboxEduLayout.getDisplayId()))) {
- // The layout is no longer eligible to be shown, clear active layout.
+ if (mActiveLetterboxEduLayout != null) {
+ if (mActiveLetterboxEduLayout.needsToBeRecreated(taskInfo, taskListener)) {
+ mActiveLetterboxEduLayout.release();
mActiveLetterboxEduLayout = null;
+ } else {
+ if (!mActiveLetterboxEduLayout.updateCompatInfo(taskInfo, taskListener,
+ showOnDisplay(mActiveLetterboxEduLayout.getDisplayId()))) {
+ // The layout is no longer eligible to be shown, clear active layout.
+ mActiveLetterboxEduLayout = null;
+ }
+ return;
}
- return;
}
-
// Create a new UI layout.
final Context context = getOrCreateDisplayContext(taskInfo.displayId);
if (context == null) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/LetterboxEduWindowManager.java b/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/LetterboxEduWindowManager.java
index 9a67258ded2e..fce1a39399d0 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/LetterboxEduWindowManager.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/LetterboxEduWindowManager.java
@@ -141,7 +141,6 @@ class LetterboxEduWindowManager extends CompatUIWindowManagerAbstract {
// startEnterAnimation will be called immediately if shell-transitions are disabled.
mTransitions.runOnIdle(this::startEnterAnimation);
-
return mLayout;
}
@@ -211,6 +210,12 @@ class LetterboxEduWindowManager extends CompatUIWindowManagerAbstract {
}
@Override
+ boolean needsToBeRecreated(TaskInfo taskInfo, ShellTaskOrganizer.TaskListener taskListener) {
+ return super.needsToBeRecreated(taskInfo, taskListener)
+ && !mCompatUIConfiguration.getHasSeenLetterboxEducation(mUserId);
+ }
+
+ @Override
protected void onParentBoundsChanged() {
if (mLayout == null) {
return;
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java
index db516c0e74f9..9677728d1d18 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java
@@ -888,9 +888,6 @@ public class PipTransition extends PipTransitionController {
// setting bounds.
animator.setPipTransactionHandler(mTransactionConsumer).applySurfaceControlTransaction(
leash, finishTransaction, PipAnimationController.FRACTION_END);
- // Remove the workaround after fixing ClosePipBySwipingDownTest that detects the shadow
- // as unexpected visible.
- finishTransaction.setShadowRadius(leash, 0);
// Start to animate enter PiP.
animator.setPipTransactionHandler(mPipOrganizer.getPipTransactionHandler()).start();
}
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositioner.java b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositioner.java
index 9f79d212a7b9..9082323452c9 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositioner.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositioner.java
@@ -73,6 +73,11 @@ class FluidResizeTaskPositioner implements DragPositioningCallback {
mWindowDecoration.mTaskInfo.configuration.windowConfiguration.getBounds());
mRepositionStartPoint.set(x, y);
mDragStartListener.onDragStart(mWindowDecoration.mTaskInfo.taskId);
+ if (mCtrlType != CTRL_TYPE_UNDEFINED && !mWindowDecoration.mTaskInfo.isFocused) {
+ WindowContainerTransaction wct = new WindowContainerTransaction();
+ wct.reorder(mWindowDecoration.mTaskInfo.token, true);
+ mTaskOrganizer.applyTransaction(wct);
+ }
mRepositionTaskBounds.set(mTaskBoundsAtDragStart);
}
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositioner.java b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositioner.java
index 5253fb84a4be..3a3ac4ca7d0c 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositioner.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositioner.java
@@ -78,6 +78,11 @@ public class VeiledResizeTaskPositioner implements DragPositioningCallback {
mRepositionStartPoint.set(x, y);
if (isResizing()) {
mDesktopWindowDecoration.showResizeVeil();
+ if (!mDesktopWindowDecoration.mTaskInfo.isFocused) {
+ WindowContainerTransaction wct = new WindowContainerTransaction();
+ wct.reorder(mDesktopWindowDecoration.mTaskInfo.token, true);
+ mTaskOrganizer.applyTransaction(wct);
+ }
}
mHasDragResized = false;
mDragStartListener.onDragStart(mDesktopWindowDecoration.mTaskInfo.taskId);
diff --git a/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/pip/ClosePipBySwipingDownTest.kt b/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/pip/ClosePipBySwipingDownTest.kt
index e6544c9f39bc..98fc91b334cf 100644
--- a/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/pip/ClosePipBySwipingDownTest.kt
+++ b/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/pip/ClosePipBySwipingDownTest.kt
@@ -95,4 +95,14 @@ open class ClosePipBySwipingDownTest(flicker: FlickerTest) : ClosePipTransition(
fun focusDoesNotChange() {
flicker.assertEventLog { this.focusDoesNotChange() }
}
+
+ @Test
+ override fun visibleLayersShownMoreThanOneConsecutiveEntry() {
+ // TODO(b/270678766): Enable the assertion after fixing the case:
+ // Assume the PiP task has shadow.
+ // 1. The PiP activity is visible -> Task is invisible because it is occluded by activity.
+ // 2. Activity becomes invisible -> Task is visible because it has shadow.
+ // 3. Task is moved outside screen -> Task becomes invisible.
+ // The assertion is triggered for 2 that the Task is only visible in one frame.
+ }
}
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduWindowManagerTest.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduWindowManagerTest.java
index 12ceb0a9a9ba..9200b3c90f0d 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduWindowManagerTest.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduWindowManagerTest.java
@@ -16,6 +16,8 @@
package com.android.wm.shell.compatui;
+import static android.content.res.Configuration.UI_MODE_NIGHT_YES;
+
import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn;
import static com.google.common.truth.Truth.assertThat;
@@ -371,6 +373,25 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase {
verify(mAnimationController).cancelAnimation();
}
+ @Test
+ public void testDeviceThemeChange_educationDialogUnseen_recreated() {
+ LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true);
+ ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo();
+ newTaskInfo.configuration.uiMode |= UI_MODE_NIGHT_YES;
+
+ assertTrue(windowManager.needsToBeRecreated(newTaskInfo, mTaskListener));
+ }
+
+ @Test
+ public void testDeviceThemeHasChanged_educationDialogSeen_notRecreated() {
+ LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true);
+ mCompatUIConfiguration.setSeenLetterboxEducation(USER_ID_1);
+ ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo();
+ newTaskInfo.configuration.uiMode |= UI_MODE_NIGHT_YES;
+
+ assertFalse(windowManager.needsToBeRecreated(newTaskInfo, mTaskListener));
+ }
+
private void verifyLayout(LetterboxEduDialogLayout layout, ViewGroup.LayoutParams params,
int expectedWidth, int expectedHeight, int expectedExtraTopMargin,
int expectedExtraBottomMargin) {
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositionerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositionerTest.kt
index 282a19e8e9a5..69604ddf0af1 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositionerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositionerTest.kt
@@ -565,6 +565,55 @@ class FluidResizeTaskPositionerTest : ShellTestCase() {
bounds == configuration.windowConfiguration.bounds
}
+ @Test
+ fun testDragResize_resize_resizingTaskReorderedToTopWhenNotFocused() {
+ mockWindowDecoration.mTaskInfo.isFocused = false
+ taskPositioner.onDragPositioningStart(
+ CTRL_TYPE_RIGHT, // Resize right
+ STARTING_BOUNDS.left.toFloat(),
+ STARTING_BOUNDS.top.toFloat()
+ )
+
+ // Verify task is reordered to top
+ verify(mockShellTaskOrganizer).applyTransaction(argThat { wct ->
+ return@argThat wct.hierarchyOps.any { hierarchyOps ->
+ hierarchyOps.container == taskBinder && hierarchyOps.toTop }
+ })
+ }
+
+ @Test
+ fun testDragResize_resize_resizingTaskNotReorderedToTopWhenFocused() {
+ mockWindowDecoration.mTaskInfo.isFocused = true
+ taskPositioner.onDragPositioningStart(
+ CTRL_TYPE_RIGHT, // Resize right
+ STARTING_BOUNDS.left.toFloat(),
+ STARTING_BOUNDS.top.toFloat()
+ )
+
+ // Verify task is not reordered to top
+ verify(mockShellTaskOrganizer, never()).applyTransaction(argThat { wct ->
+ return@argThat wct.hierarchyOps.any { hierarchyOps ->
+ hierarchyOps.container == taskBinder && hierarchyOps.toTop }
+ })
+ }
+
+ @Test
+ fun testDragResize_drag_draggedTaskNotReorderedToTop() {
+ mockWindowDecoration.mTaskInfo.isFocused = false
+ taskPositioner.onDragPositioningStart(
+ CTRL_TYPE_UNDEFINED, // drag
+ STARTING_BOUNDS.left.toFloat(),
+ STARTING_BOUNDS.top.toFloat()
+ )
+
+ // Verify task is not reordered to top since task is already brought to top before dragging
+ // begins
+ verify(mockShellTaskOrganizer, never()).applyTransaction(argThat { wct ->
+ return@argThat wct.hierarchyOps.any { hierarchyOps ->
+ hierarchyOps.container == taskBinder && hierarchyOps.toTop }
+ })
+ }
+
companion object {
private const val TASK_ID = 5
private const val MIN_WIDTH = 10
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositionerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositionerTest.kt
index 217bdbb07447..445a73a2ad38 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositionerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositionerTest.kt
@@ -271,6 +271,55 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() {
})
}
+ @Test
+ fun testDragResize_resize_resizingTaskReorderedToTopWhenNotFocused() {
+ mockDesktopWindowDecoration.mTaskInfo.isFocused = false
+ taskPositioner.onDragPositioningStart(
+ CTRL_TYPE_RIGHT, // Resize right
+ STARTING_BOUNDS.left.toFloat(),
+ STARTING_BOUNDS.top.toFloat()
+ )
+
+ // Verify task is reordered to top
+ verify(mockShellTaskOrganizer).applyTransaction(argThat { wct ->
+ return@argThat wct.hierarchyOps.any { hierarchyOps ->
+ hierarchyOps.container == taskBinder && hierarchyOps.toTop }
+ })
+ }
+
+ @Test
+ fun testDragResize_resize_resizingTaskNotReorderedToTopWhenFocused() {
+ mockDesktopWindowDecoration.mTaskInfo.isFocused = true
+ taskPositioner.onDragPositioningStart(
+ CTRL_TYPE_RIGHT, // Resize right
+ STARTING_BOUNDS.left.toFloat(),
+ STARTING_BOUNDS.top.toFloat()
+ )
+
+ // Verify task is not reordered to top
+ verify(mockShellTaskOrganizer, never()).applyTransaction(argThat { wct ->
+ return@argThat wct.hierarchyOps.any { hierarchyOps ->
+ hierarchyOps.container == taskBinder && hierarchyOps.toTop }
+ })
+ }
+
+ @Test
+ fun testDragResize_drag_draggedTaskNotReorderedToTop() {
+ mockDesktopWindowDecoration.mTaskInfo.isFocused = false
+ taskPositioner.onDragPositioningStart(
+ CTRL_TYPE_UNDEFINED, // drag
+ STARTING_BOUNDS.left.toFloat(),
+ STARTING_BOUNDS.top.toFloat()
+ )
+
+ // Verify task is not reordered to top since task is already brought to top before dragging
+ // begins
+ verify(mockShellTaskOrganizer, never()).applyTransaction(argThat { wct ->
+ return@argThat wct.hierarchyOps.any { hierarchyOps ->
+ hierarchyOps.container == taskBinder && hierarchyOps.toTop }
+ })
+ }
+
companion object {
private const val TASK_ID = 5
private const val MIN_WIDTH = 10
diff --git a/libs/hwui/RenderNode.cpp b/libs/hwui/RenderNode.cpp
index b348a6ecaae4..1c39db3a31bb 100644
--- a/libs/hwui/RenderNode.cpp
+++ b/libs/hwui/RenderNode.cpp
@@ -152,6 +152,9 @@ void RenderNode::damageSelf(TreeInfo& info) {
// TODO: Get this from the display list ops or something
info.damageAccumulator->dirty(DIRTY_MIN, DIRTY_MIN, DIRTY_MAX, DIRTY_MAX);
}
+ if (!mIsTextureView) {
+ info.out.solelyTextureViewUpdates = false;
+ }
}
}
diff --git a/libs/hwui/RenderNode.h b/libs/hwui/RenderNode.h
index bdc48e91f6cb..d1e04adcb642 100644
--- a/libs/hwui/RenderNode.h
+++ b/libs/hwui/RenderNode.h
@@ -221,6 +221,8 @@ public:
int64_t uniqueId() const { return mUniqueId; }
+ void setIsTextureView() { mIsTextureView = true; }
+
void markDrawStart(SkCanvas& canvas);
void markDrawEnd(SkCanvas& canvas);
@@ -290,6 +292,8 @@ private:
bool mHasHolePunches;
StretchMask mStretchMask;
+ bool mIsTextureView = false;
+
// METHODS & FIELDS ONLY USED BY THE SKIA RENDERER
public:
/**
diff --git a/libs/hwui/TreeInfo.h b/libs/hwui/TreeInfo.h
index 6b8f43946a74..2bff9cb74fa7 100644
--- a/libs/hwui/TreeInfo.h
+++ b/libs/hwui/TreeInfo.h
@@ -123,6 +123,10 @@ public:
// This is used to post a message to redraw when it is time to draw the
// next frame of an AnimatedImageDrawable.
nsecs_t animatedImageDelay = kNoAnimatedImageDelay;
+ // This is used to determine if there were only TextureView updates in this frame.
+ // This info is passed to SurfaceFlinger to determine whether it should use vsyncIds
+ // for refresh rate selection.
+ bool solelyTextureViewUpdates = true;
} out;
// This flag helps to disable projection for receiver nodes that do not have any backward
diff --git a/libs/hwui/jni/android_graphics_RenderNode.cpp b/libs/hwui/jni/android_graphics_RenderNode.cpp
index 24a785c18711..8c7b9a4b5e94 100644
--- a/libs/hwui/jni/android_graphics_RenderNode.cpp
+++ b/libs/hwui/jni/android_graphics_RenderNode.cpp
@@ -526,6 +526,11 @@ static jlong android_view_RenderNode_getUniqueId(CRITICAL_JNI_PARAMS_COMMA jlong
return reinterpret_cast<RenderNode*>(renderNodePtr)->uniqueId();
}
+static void android_view_RenderNode_setIsTextureView(
+ CRITICAL_JNI_PARAMS_COMMA jlong renderNodePtr) {
+ reinterpret_cast<RenderNode*>(renderNodePtr)->setIsTextureView();
+}
+
// ----------------------------------------------------------------------------
// RenderProperties - Animations
// ----------------------------------------------------------------------------
@@ -844,6 +849,7 @@ static const JNINativeMethod gMethods[] = {
{"nSetAllowForceDark", "(JZ)Z", (void*)android_view_RenderNode_setAllowForceDark},
{"nGetAllowForceDark", "(J)Z", (void*)android_view_RenderNode_getAllowForceDark},
{"nGetUniqueId", "(J)J", (void*)android_view_RenderNode_getUniqueId},
+ {"nSetIsTextureView", "(J)V", (void*)android_view_RenderNode_setIsTextureView},
};
int register_android_view_RenderNode(JNIEnv* env) {
diff --git a/libs/hwui/renderthread/CanvasContext.cpp b/libs/hwui/renderthread/CanvasContext.cpp
index f60c1f3c6ad8..2bd400dba346 100644
--- a/libs/hwui/renderthread/CanvasContext.cpp
+++ b/libs/hwui/renderthread/CanvasContext.cpp
@@ -531,7 +531,7 @@ Frame CanvasContext::getFrame() {
}
}
-void CanvasContext::draw() {
+void CanvasContext::draw(bool solelyTextureViewUpdates) {
if (auto grContext = getGrContext()) {
if (grContext->abandoned()) {
LOG_ALWAYS_FATAL("GrContext is abandoned/device lost at start of CanvasContext::draw");
@@ -604,7 +604,8 @@ void CanvasContext::draw() {
static_cast<int32_t>(mCurrentFrameInfo->get(FrameInfoIndex::InputEventId));
native_window_set_frame_timeline_info(
mNativeSurface->getNativeWindow(), frameCompleteNr, vsyncId, inputEventId,
- mCurrentFrameInfo->get(FrameInfoIndex::FrameStartTime));
+ mCurrentFrameInfo->get(FrameInfoIndex::FrameStartTime),
+ solelyTextureViewUpdates);
}
}
@@ -885,7 +886,7 @@ void CanvasContext::prepareAndDraw(RenderNode* node) {
TreeInfo info(TreeInfo::MODE_RT_ONLY, *this);
prepareTree(info, frameInfo, systemTime(SYSTEM_TIME_MONOTONIC), node);
if (info.out.canDrawThisFrame) {
- draw();
+ draw(info.out.solelyTextureViewUpdates);
} else {
// wait on fences so tasks don't overlap next frame
waitOnFences();
diff --git a/libs/hwui/renderthread/CanvasContext.h b/libs/hwui/renderthread/CanvasContext.h
index d7215de92375..08e24245d16c 100644
--- a/libs/hwui/renderthread/CanvasContext.h
+++ b/libs/hwui/renderthread/CanvasContext.h
@@ -143,7 +143,7 @@ public:
bool makeCurrent();
void prepareTree(TreeInfo& info, int64_t* uiFrameInfo, int64_t syncQueued, RenderNode* target);
// Returns the DequeueBufferDuration.
- void draw();
+ void draw(bool solelyTextureViewUpdates);
void destroy();
// IFrameCallback, Choreographer-driven frame callback entry point
diff --git a/libs/hwui/renderthread/DrawFrameTask.cpp b/libs/hwui/renderthread/DrawFrameTask.cpp
index fab2f46e91c3..53b43ba417d0 100644
--- a/libs/hwui/renderthread/DrawFrameTask.cpp
+++ b/libs/hwui/renderthread/DrawFrameTask.cpp
@@ -98,12 +98,14 @@ void DrawFrameTask::run() {
IRenderPipeline* pipeline = mContext->getRenderPipeline();
bool canUnblockUiThread;
bool canDrawThisFrame;
+ bool solelyTextureViewUpdates;
{
TreeInfo info(TreeInfo::MODE_FULL, *mContext);
info.forceDrawFrame = mForceDrawFrame;
mForceDrawFrame = false;
canUnblockUiThread = syncFrameState(info);
canDrawThisFrame = info.out.canDrawThisFrame;
+ solelyTextureViewUpdates = info.out.solelyTextureViewUpdates;
if (mFrameCommitCallback) {
mContext->addFrameCommitListener(std::move(mFrameCommitCallback));
@@ -136,7 +138,7 @@ void DrawFrameTask::run() {
}
if (CC_LIKELY(canDrawThisFrame)) {
- context->draw();
+ context->draw(solelyTextureViewUpdates);
} else {
// Do a flush in case syncFrameState performed any texture uploads. Since we skipped
// the draw() call, those uploads (or deletes) will end up sitting in the queue.
@@ -179,6 +181,7 @@ bool DrawFrameTask::syncFrameState(TreeInfo& info) {
mLayers[i]->apply();
}
}
+
mLayers.clear();
mContext->setContentDrawBounds(mContentDrawBounds);
mContext->prepareTree(info, mFrameInfo, mSyncQueued, mTargetNode);
diff --git a/libs/hwui/renderthread/RenderThread.cpp b/libs/hwui/renderthread/RenderThread.cpp
index 0afd949cf5c9..9ba67a2110c1 100644
--- a/libs/hwui/renderthread/RenderThread.cpp
+++ b/libs/hwui/renderthread/RenderThread.cpp
@@ -133,12 +133,23 @@ void RenderThread::frameCallback(int64_t vsyncId, int64_t frameDeadline, int64_t
if (timeLord().vsyncReceived(frameTimeNanos, frameTimeNanos, vsyncId, frameDeadline,
frameInterval) &&
!mFrameCallbackTaskPending) {
- ATRACE_NAME("queue mFrameCallbackTask");
mFrameCallbackTaskPending = true;
- nsecs_t timeUntilDeadline = frameDeadline - frameTimeNanos;
- nsecs_t runAt = (frameTimeNanos + (timeUntilDeadline * 0.25f));
- queue().postAt(runAt, [=]() { dispatchFrameCallbacks(); });
+ using SteadyClock = std::chrono::steady_clock;
+ using Nanos = std::chrono::nanoseconds;
+ using toNsecs_t = std::chrono::duration<nsecs_t, std::nano>;
+ using toFloatMillis = std::chrono::duration<float, std::milli>;
+
+ const auto frameTimeTimePoint = SteadyClock::time_point(Nanos(frameTimeNanos));
+ const auto deadlineTimePoint = SteadyClock::time_point(Nanos(frameDeadline));
+
+ const auto timeUntilDeadline = deadlineTimePoint - frameTimeTimePoint;
+ const auto runAt = (frameTimeTimePoint + (timeUntilDeadline / 4));
+
+ ATRACE_FORMAT("queue mFrameCallbackTask to run after %.2fms",
+ toFloatMillis(runAt - SteadyClock::now()).count());
+ queue().postAt(toNsecs_t(runAt.time_since_epoch()).count(),
+ [=]() { dispatchFrameCallbacks(); });
}
}
diff --git a/mime/java/Android.bp b/mime/java/Android.bp
index 07cada8e1372..a267d6593f65 100644
--- a/mime/java/Android.bp
+++ b/mime/java/Android.bp
@@ -10,5 +10,8 @@ package {
filegroup {
name: "framework-mime-sources",
srcs: ["**/*.java"],
- visibility: ["//frameworks/base"],
+ visibility: [
+ "//frameworks/base",
+ "//frameworks/base/api",
+ ],
}
diff --git a/packages/CompanionDeviceManager/res/values-am/strings.xml b/packages/CompanionDeviceManager/res/values-am/strings.xml
index e4745b74e885..b8964b5202b3 100644
--- a/packages/CompanionDeviceManager/res/values-am/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-am/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"ፍቀድ"</string>
<string name="consent_no" msgid="2640796915611404382">"አትፍቀድ"</string>
<string name="consent_back" msgid="2560683030046918882">"ተመለስ"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>ን ዘርጋ"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>ን ሰብስብ"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"በ&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ላይ ላሉ መተግበሪያዎች በ&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ላይ ካሉት ጋር ተመሳሳይ ፈቃዶች ይሰጣቸው?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"ይህ &lt;strong&gt;ማይክሮፎን&lt;/strong&gt;፣ &lt;strong&gt;ካሜራ&lt;/strong&gt; እና &lt;strong&gt;የአካባቢ መዳረሻ&lt;/strong&gt; እና ሌሎች አደገኛ ፈቃዶችን &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; ላይ ሊያካትት ይችላል። &lt;br/&gt;&lt;br/&gt;እነዚህን ቅንብሮች በማንኛውም ጊዜ ቅንብሮችዎ ውስጥ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; ላይ መቀየር ይችላሉ።"</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"ተጨማሪ መረጃ"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ar/strings.xml b/packages/CompanionDeviceManager/res/values-ar/strings.xml
index b25e88bba41a..3a4a211edfa7 100644
--- a/packages/CompanionDeviceManager/res/values-ar/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ar/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"السماح"</string>
<string name="consent_no" msgid="2640796915611404382">"عدم السماح"</string>
<string name="consent_back" msgid="2560683030046918882">"رجوع"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"توسيع <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"تصغير <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"‏هل تريد منح التطبيقات على &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; نفس الأذونات على &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;؟"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"‏قد يتضمّن هذا الوصول إلى &lt;strong&gt;الميكروفون&lt;/strong&gt; و&lt;strong&gt;الكاميرا&lt;/strong&gt; و&lt;strong&gt;الموقع الجغرافي&lt;/strong&gt; وأذونات الوصول إلى المعلومات الحساسة الأخرى في &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;يمكنك تغيير هذه الأذونات في أي وقت في إعداداتك على &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"مزيد من المعلومات"</string>
diff --git a/packages/CompanionDeviceManager/res/values-az/strings.xml b/packages/CompanionDeviceManager/res/values-az/strings.xml
index 2f43adf4f9cd..79a045da5f2c 100644
--- a/packages/CompanionDeviceManager/res/values-az/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-az/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"İcazə verin"</string>
<string name="consent_no" msgid="2640796915611404382">"İcazə verməyin"</string>
<string name="consent_back" msgid="2560683030046918882">"Geriyə"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Genişləndirin: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Yığcamlaşdırın: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; cihazındakı tətbiqlərə &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; cihazındakılarla eyni icazələr verilsin?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Buraya &lt;strong&gt;Mikrofon&lt;/strong&gt;, &lt;strong&gt;Kamera&lt;/strong&gt; və &lt;strong&gt;Məkana giriş&lt;/strong&gt;, eləcə də &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; cihazında digər həssas icazələr daxil ola bilər. Bu icazələri istənilən vaxt &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; cihazında ayarlarınızda dəyişə bilərsiniz.&lt;/p&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Ətraflı məlumat"</string>
diff --git a/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml b/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml
index f449b575b9cf..bb1629085870 100644
--- a/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Dozvoli"</string>
<string name="consent_no" msgid="2640796915611404382">"Ne dozvoli"</string>
<string name="consent_back" msgid="2560683030046918882">"Nazad"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Proširi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Skupi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Aplikcijama na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; dajete sve dozvole kao na uređaju &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"To može da obuhvata pristup &lt;strong&gt;mikrofonu&lt;/strong&gt;, &lt;strong&gt;kameri&lt;/strong&gt;, i &lt;strong&gt;lokaciji&lt;/strong&gt;, i druge osetljive dozvole na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Možete da promenite te dozvole u bilo kom trenutku u Podešavanjima na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Još informacija"</string>
diff --git a/packages/CompanionDeviceManager/res/values-be/strings.xml b/packages/CompanionDeviceManager/res/values-be/strings.xml
index 0e78171d88b3..9c12f5a7d20c 100644
--- a/packages/CompanionDeviceManager/res/values-be/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-be/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Дазволіць"</string>
<string name="consent_no" msgid="2640796915611404382">"Не дазваляць"</string>
<string name="consent_back" msgid="2560683030046918882">"Назад"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Разгарнуць <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Згарнуць <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Даць праграмам на прыладзе &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; такія самыя дазволы, што і на прыладзе &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Праграмы змогуць атрымліваць доступ да &lt;strong&gt;мікрафона&lt;/strong&gt;, &lt;strong&gt;камеры&lt;/strong&gt; і &lt;strong&gt;даных пра месцазнаходжанне&lt;/strong&gt;, а таксама да іншай канфідэнцыяльнай інфармацыі на прыладзе &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Вы можаце ў любы час змяніць гэтыя дазволы ў Наладах на прыладзе &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Дадатковая інфармацыя"</string>
diff --git a/packages/CompanionDeviceManager/res/values-bn/strings.xml b/packages/CompanionDeviceManager/res/values-bn/strings.xml
index 4fb65c130afb..0a1ef7b12ba1 100644
--- a/packages/CompanionDeviceManager/res/values-bn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-bn/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"অনুমতি দিন"</string>
<string name="consent_no" msgid="2640796915611404382">"অনুমতি দেবেন না"</string>
<string name="consent_back" msgid="2560683030046918882">"ফিরুন"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> বড় করুন"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> আড়াল করুন"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;-এ যে অনুমতি দেওয়া আছে &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;-এও সেই একই অনুমতি দিতে চান?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"এর মধ্যে &lt;strong&gt;মাইক্রোফোন&lt;/strong&gt;, &lt;strong&gt;ক্যামেরা&lt;/strong&gt;, ও &lt;strong&gt;লোকেশন সংক্রান্ত অ্যাক্সেস &lt;/strong&gt;, এবং &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;.-এর অন্যান্য সংবেদনশীল অনুমতি অন্তর্ভুক্ত থাকতে পারে &lt;br/&gt;&lt;br/&gt;আপনি যেকোনও সময়&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;.-এর সেটিংস থেকে এইসব অনুমতি পরিবর্তন করতে পারবেন"</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"আরও তথ্য"</string>
diff --git a/packages/CompanionDeviceManager/res/values-bs/strings.xml b/packages/CompanionDeviceManager/res/values-bs/strings.xml
index 675986ed28db..da158e06f7aa 100644
--- a/packages/CompanionDeviceManager/res/values-bs/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-bs/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Dozvoli"</string>
<string name="consent_no" msgid="2640796915611404382">"Nemoj dozvoliti"</string>
<string name="consent_back" msgid="2560683030046918882">"Nazad"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Proširivanje stavke <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Sužavanje stavke <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Dati aplikacijama na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ista odobrenja kao na uređaju &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Ovo može uključivati odobrenja za pristup &lt;strong&gt;mikrofonu&lt;/strong&gt;, &lt;strong&gt;kameri&lt;/strong&gt; i &lt;strong&gt;lokaciji&lt;/strong&gt; te druga osjetljiva odobrenja na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Ova odobrenja možete bilo kada promijeniti u Postavkama na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Više informacija"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ca/strings.xml b/packages/CompanionDeviceManager/res/values-ca/strings.xml
index fe970d350fb5..38a6dbc942aa 100644
--- a/packages/CompanionDeviceManager/res/values-ca/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ca/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Permet"</string>
<string name="consent_no" msgid="2640796915611404382">"No permetis"</string>
<string name="consent_back" msgid="2560683030046918882">"Enrere"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Desplega <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Replega <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vols concedir a les aplicacions del dispositiu &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; els mateixos permisos que tenen a &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Això pot incloure l\'accés al &lt;strong&gt;micròfon&lt;/strong&gt;, a la &lt;strong&gt;càmera&lt;/strong&gt; i a la &lt;strong&gt;ubicació&lt;/strong&gt;, així com altres permisos sensibles a &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Pots canviar aquestes permisos en qualsevol moment a Configuració, a &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Més informació"</string>
diff --git a/packages/CompanionDeviceManager/res/values-cs/strings.xml b/packages/CompanionDeviceManager/res/values-cs/strings.xml
index 7f85939017f8..fbfbac79fa21 100644
--- a/packages/CompanionDeviceManager/res/values-cs/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-cs/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Povolit"</string>
<string name="consent_no" msgid="2640796915611404382">"Nepovolovat"</string>
<string name="consent_back" msgid="2560683030046918882">"Zpět"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Rozbalit sekci <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Sbalit sekci <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Udělit aplikacím v zařízení &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; stejné oprávnění, jako mají v zařízení &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"To může zahrnovat oprávnění &lt;strong&gt;Mikrofon&lt;/strong&gt;, &lt;strong&gt;Fotoparát&lt;/strong&gt; a &lt;strong&gt;Přístup k poloze&lt;/strong&gt; a další citlivá oprávnění na zařízení &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Tato oprávnění můžete kdykoli změnit v Nastavení na zařízení &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Další informace"</string>
diff --git a/packages/CompanionDeviceManager/res/values-da/strings.xml b/packages/CompanionDeviceManager/res/values-da/strings.xml
index 8d8d35139c3f..14f24543f1f8 100644
--- a/packages/CompanionDeviceManager/res/values-da/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-da/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Tillad"</string>
<string name="consent_no" msgid="2640796915611404382">"Tillad ikke"</string>
<string name="consent_back" msgid="2560683030046918882">"Tilbage"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Udvid <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Skjul <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vil du give apps på &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; de samme tilladelser som på &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Dette kan omfatte &lt;strong&gt;mikrofon-&lt;/strong&gt;, &lt;strong&gt;kamera-&lt;/strong&gt; og &lt;strong&gt;lokationsadgang&lt;/strong&gt; samt andre tilladelser til at tilgå følsomme oplysninger på &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Du kan til enhver tid ændre disse tilladelser under Indstillinger på &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Flere oplysninger"</string>
diff --git a/packages/CompanionDeviceManager/res/values-de/strings.xml b/packages/CompanionDeviceManager/res/values-de/strings.xml
index 1a05a4eaed62..d8c6ac3be0b7 100644
--- a/packages/CompanionDeviceManager/res/values-de/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-de/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Zulassen"</string>
<string name="consent_no" msgid="2640796915611404382">"Nicht zulassen"</string>
<string name="consent_back" msgid="2560683030046918882">"Zurück"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> maximieren"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> minimieren"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Apps auf &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; die gleichen Berechtigungen geben wie auf &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Dazu können &lt;strong&gt;Mikrofon&lt;/strong&gt;, &lt;strong&gt;Kamera&lt;/strong&gt; und &lt;strong&gt;Standortzugriff&lt;/strong&gt; sowie weitere vertrauliche Berechtigungen auf &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; gehören. &lt;br/&gt;&lt;br/&gt;Du kannst diese Berechtigungen jederzeit in den Einstellungen von &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; ändern."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Weitere Informationen"</string>
diff --git a/packages/CompanionDeviceManager/res/values-el/strings.xml b/packages/CompanionDeviceManager/res/values-el/strings.xml
index 64163e9a2e5d..37fc39f19f0e 100644
--- a/packages/CompanionDeviceManager/res/values-el/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-el/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Να επιτρέπεται"</string>
<string name="consent_no" msgid="2640796915611404382">"Να μην επιτρέπεται"</string>
<string name="consent_back" msgid="2560683030046918882">"Πίσω"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Ανάπτυξη <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Σύμπτυξη <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Παραχώρηση των ίδιων αδειών στις εφαρμογές στη συσκευή &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; όπως στη συσκευή &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;;"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Μπορεί να περιλαμβάνει την πρόσβαση στο &lt;strong&gt;Μικρόφωνο&lt;/strong&gt;, την &lt;strong&gt;Κάμερα&lt;/strong&gt;, και την &lt;strong&gt;Τοποθεσία&lt;/strong&gt;, καθώς και άλλες άδειες πρόσβασης σε ευαίσθητες πληροφορίες στη συσκευή &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Μπορείτε να αλλάξετε αυτές τις άδειες ανά πάσα στιγμή από τις Ρυθμίσεις της συσκευής &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Περισσότερες πληροφορίες"</string>
diff --git a/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml b/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml
index 8e1e7fe67cd3..26868f6f1610 100644
--- a/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Permitir"</string>
<string name="consent_no" msgid="2640796915611404382">"No permitir"</string>
<string name="consent_back" msgid="2560683030046918882">"Atrás"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Expandir <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Contraer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"¿Dar a las apps de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; los mismos permisos que tienen en &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Esto puede incluir &lt;strong&gt;Micrófono&lt;/strong&gt;, &lt;strong&gt;Cámara&lt;/strong&gt;, y &lt;strong&gt;Acceso a la ubicación&lt;/strong&gt;, así como otros permisos sensibles en &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Puedes cambiar estos permisos en cualquier momento desde la Configuración de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Más información"</string>
diff --git a/packages/CompanionDeviceManager/res/values-es/strings.xml b/packages/CompanionDeviceManager/res/values-es/strings.xml
index 8174ad814b26..fedb8ae63d74 100644
--- a/packages/CompanionDeviceManager/res/values-es/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-es/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Permitir"</string>
<string name="consent_no" msgid="2640796915611404382">"No permitir"</string>
<string name="consent_back" msgid="2560683030046918882">"Atrás"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Desplegar <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Contraer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"¿Dar a las aplicaciones de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; los mismos permisos que &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Esta acción puede dar acceso al &lt;strong&gt;micrófono&lt;/strong&gt;, la &lt;strong&gt;cámara&lt;/strong&gt; y la &lt;strong&gt;ubicación&lt;/strong&gt;, así como a otros permisos sensibles en &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Puedes cambiar estos permisos cuando quieras en los ajustes de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Más información"</string>
diff --git a/packages/CompanionDeviceManager/res/values-eu/strings.xml b/packages/CompanionDeviceManager/res/values-eu/strings.xml
index 11bbd2caa92f..2b4eb80eafea 100644
--- a/packages/CompanionDeviceManager/res/values-eu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-eu/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Eman baimena"</string>
<string name="consent_no" msgid="2640796915611404382">"Ez eman baimenik"</string>
<string name="consent_back" msgid="2560683030046918882">"Atzera"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Zabaldu <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Tolestu <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; gailuan dituzten baimen berberak eman nahi dizkiezu &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; gailuko aplikazioei?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Baliteke &lt;strong&gt;mikrofonoa&lt;/strong&gt;, &lt;strong&gt;kamera&lt;/strong&gt; eta &lt;strong&gt;kokapena&lt;/strong&gt; erabiltzeko baimenak barne hartzea, baita kontuzko informazioa erabiltzeko &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; gailuko beste baimen batzuk ere. &lt;br/&gt;&lt;br/&gt;Baimen horiek aldatzeko, joan &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; gailuaren ezarpenetara."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Informazio gehiago"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fa/strings.xml b/packages/CompanionDeviceManager/res/values-fa/strings.xml
index 5b2ade9141e5..9f0adfe5bd32 100644
--- a/packages/CompanionDeviceManager/res/values-fa/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fa/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"اجازه دادن"</string>
<string name="consent_no" msgid="2640796915611404382">"اجازه ندادن"</string>
<string name="consent_back" msgid="2560683030046918882">"برگشتن"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"ازهم بازکردن <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"جمع کردن <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"‏به برنامه‌های موجود در &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; همان اجازه‌های &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; داده شود؟"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"‏این مورد ممکن است شامل دسترسی به &lt;strong&gt;میکروفون&lt;/strong&gt;، &lt;strong&gt;دوربین&lt;/strong&gt;، و &lt;strong&gt;مکان&lt;/strong&gt;، و دیگر اجازه‌های حساس در &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; شود. &lt;br/&gt;&lt;br/&gt;هر زمان خواستید می‌توانید این اجازه‌ها را در «تنظیمات» &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; تغییر دهید."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"اطلاعات بیشتر"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fi/strings.xml b/packages/CompanionDeviceManager/res/values-fi/strings.xml
index bab1081fa880..12bf0d39c5c7 100644
--- a/packages/CompanionDeviceManager/res/values-fi/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fi/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Salli"</string>
<string name="consent_no" msgid="2640796915611404382">"Älä salli"</string>
<string name="consent_back" msgid="2560683030046918882">"Takaisin"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Laajenna <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Tiivistä <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Anna laitteen &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; sovelluksille samat luvat kuin laitteella &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Tähän voi kuulua pääsy &lt;strong&gt;mikrofoniin&lt;/strong&gt;, &lt;strong&gt;kameraan&lt;/strong&gt;, ja &lt;strong&gt;sijaintiin &lt;/strong&gt;, ja muihin arkaluontoisiin lupiin laitteella&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Voit muuttaa lupia milloin tahansa laitteen &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; asetuksissa."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Lisätietoa"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml b/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml
index b665c6bf461a..d769dc742f4c 100644
--- a/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml
@@ -43,14 +43,11 @@
<string name="consent_yes" msgid="8344487259618762872">"Autoriser"</string>
<string name="consent_no" msgid="2640796915611404382">"Ne pas autoriser"</string>
<string name="consent_back" msgid="2560683030046918882">"Retour"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Développer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Réduire <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Accorder aux applications sur &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; les autorisations déjà accordées sur &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Cela peut inclure l\'accès &lt;strong&gt;au microphone&lt;/strong&gt;, &lt;strong&gt;à l\'appareil photo&lt;/strong&gt;, et &lt;strong&gt;à la position&lt;/strong&gt;, ainsi que d\'autres autorisations sensibles sur &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Vous pouvez modifier ces autorisations à tout moment dans vos paramètres sur &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
- <!-- no translation found for vendor_header_button_description (7994879208461111473) -->
- <skip />
+ <string name="vendor_header_button_description" msgid="7994879208461111473">"Plus de renseignements"</string>
<string name="permission_phone" msgid="2661081078692784919">"Téléphone"</string>
<string name="permission_sms" msgid="6337141296535774786">"Messages texte"</string>
<string name="permission_contacts" msgid="3858319347208004438">"Contacts"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fr/strings.xml b/packages/CompanionDeviceManager/res/values-fr/strings.xml
index 42264d9f92dd..b649f2760e51 100644
--- a/packages/CompanionDeviceManager/res/values-fr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fr/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Autoriser"</string>
<string name="consent_no" msgid="2640796915611404382">"Ne pas autoriser"</string>
<string name="consent_back" msgid="2560683030046918882">"Retour"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Développer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Réduire <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Accorder les mêmes autorisations aux applis sur &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; que sur &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Ceci peut inclure l\'accès au &lt;strong&gt;micro&lt;/strong&gt;, à l\'&lt;strong&gt;appareil photo&lt;/strong&gt; et à la &lt;strong&gt;position&lt;/strong&gt;, ainsi que d\'autres autorisations sensibles sur &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Vous pouvez modifier ces autorisations à tout moment dans vos paramètres sur &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"En savoir plus"</string>
diff --git a/packages/CompanionDeviceManager/res/values-gl/strings.xml b/packages/CompanionDeviceManager/res/values-gl/strings.xml
index 207a4c2d9afc..e7ff1e3864df 100644
--- a/packages/CompanionDeviceManager/res/values-gl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-gl/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Permitir"</string>
<string name="consent_no" msgid="2640796915611404382">"Non permitir"</string>
<string name="consent_back" msgid="2560683030046918882">"Atrás"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Despregar <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Contraer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Queres darlles ás aplicacións de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; os mesmos permisos que teñen as de &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Con esta acción podes conceder acceso a &lt;strong&gt;Micrófono&lt;/strong&gt;, &lt;strong&gt;Cámara&lt;/strong&gt;, e &lt;strong&gt;Acceso á localización&lt;/strong&gt;, así como outros permisos de acceso á información confidencial de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Podes cambiar estes permisos en calquera momento na configuración de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Máis información"</string>
diff --git a/packages/CompanionDeviceManager/res/values-gu/strings.xml b/packages/CompanionDeviceManager/res/values-gu/strings.xml
index 52069088b3c3..436d6cb1a462 100644
--- a/packages/CompanionDeviceManager/res/values-gu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-gu/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"મંજૂરી આપો"</string>
<string name="consent_no" msgid="2640796915611404382">"મંજૂરી આપશો નહીં"</string>
<string name="consent_back" msgid="2560683030046918882">"પાછળ"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>ને મોટું કરો"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>ને નાનું કરો"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; પરની ઍપને &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; પર છે તે જ પરવાનગીઓ આપીએ?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"આમાં &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; પરના &lt;strong&gt;માઇક્રોફોન&lt;/strong&gt;, &lt;strong&gt;કૅમેરા&lt;/strong&gt; અને &lt;strong&gt;લોકેશનના ઍક્સેસ&lt;/strong&gt; તથા અન્ય સંવેદનશીલ માહિતીની પરવાનગીઓ શામેલ હોઈ શકે છે. &lt;br/&gt;&lt;br/&gt;તમે કોઈપણ સમયે &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g> પર તમારા સેટિંગમાં આ પરવાનગીઓમાં ફેરફાર કરી શકો છો&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"વધુ માહિતી"</string>
diff --git a/packages/CompanionDeviceManager/res/values-hr/strings.xml b/packages/CompanionDeviceManager/res/values-hr/strings.xml
index c5062fc60a1a..1e64bbd1f033 100644
--- a/packages/CompanionDeviceManager/res/values-hr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hr/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Dopusti"</string>
<string name="consent_no" msgid="2640796915611404382">"Nemoj dopustiti"</string>
<string name="consent_back" msgid="2560683030046918882">"Natrag"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Proširi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Sažmi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Dati jednaka dopuštenja aplikacijama na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; kao i na uređaju &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"To može uključivati &lt;strong&gt;pristup mikrofonu&lt;/strong&gt;, &lt;strong&gt;kameri&lt;/strong&gt; i &lt;strong&gt;lokaciji&lt;/strong&gt; te druga dopuštenja za osjetljive podatke na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Ta dopuštenja uvijek možete promijeniti u postavkama na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Više informacija"</string>
diff --git a/packages/CompanionDeviceManager/res/values-hu/strings.xml b/packages/CompanionDeviceManager/res/values-hu/strings.xml
index 8b7b76015323..594317861122 100644
--- a/packages/CompanionDeviceManager/res/values-hu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hu/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Engedélyezés"</string>
<string name="consent_no" msgid="2640796915611404382">"Tiltás"</string>
<string name="consent_back" msgid="2560683030046918882">"Vissza"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> kibontása"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> összecsukása"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Ugyanolyan engedélyeket ad a(z) &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; eszközön található alkalmazásoknak, mint a(z) &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; eszköz esetén?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Ide tartozhat a &lt;strong&gt;mikrofonhoz&lt;/strong&gt;, a &lt;strong&gt;kamerához&lt;/strong&gt; és a &lt;strong&gt;helyadatokhoz&lt;/strong&gt; való hozzáférés, valamint a(z) &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; eszközön érvényes egyéb bizalmas engedélyek is. &lt;br/&gt;&lt;br/&gt;Ezeket az engedélyeket bármikor módosíthatja a(z) &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; eszköz beállításai között."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"További információ"</string>
diff --git a/packages/CompanionDeviceManager/res/values-hy/strings.xml b/packages/CompanionDeviceManager/res/values-hy/strings.xml
index e47651f15cae..17f46ed67e38 100644
--- a/packages/CompanionDeviceManager/res/values-hy/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hy/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Թույլատրել"</string>
<string name="consent_no" msgid="2640796915611404382">"Չթույլատրել"</string>
<string name="consent_back" msgid="2560683030046918882">"Հետ"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Ծավալել «<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>» բաժինը"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Ծալել «<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>» բաժինը"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;-ում հավելվածներին տա՞լ նույն թույլտվությունները, ինչ &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;-ում"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Սա կարող է ներառել &lt;strong&gt;խոսափողի&lt;/strong&gt;, &lt;strong&amp;gtտեսախցիկի&lt;/strong&gt;, &lt;strong&gt;տեղադրության&lt;/strong&gt; և այլ կոնֆիդենցիալ տվյալների օգտագործման թույլտվությունները &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; սարքում։ &lt;br/&gt;&lt;br/&gt;Այդ թույլտվությունները ցանկացած ժամանակ կարող եք փոխել &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; սարքի ձեր կարգավորումներում։"</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Լրացուցիչ տեղեկություններ"</string>
diff --git a/packages/CompanionDeviceManager/res/values-in/strings.xml b/packages/CompanionDeviceManager/res/values-in/strings.xml
index fd6f8189b629..992acd23a3e8 100644
--- a/packages/CompanionDeviceManager/res/values-in/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-in/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Izinkan"</string>
<string name="consent_no" msgid="2640796915611404382">"Jangan izinkan"</string>
<string name="consent_back" msgid="2560683030046918882">"Kembali"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Luaskan <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Ciutkan <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Berikan aplikasi di &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; izin yang sama seperti di &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Ini bisa termasuk &lt;strong&gt;Mikrofon&lt;/strong&gt;, &lt;strong&gt;Kamera&lt;/strong&gt;, dan &lt;strong&gt;Akses lokasi&lt;/strong&gt;, serta izin sensitif lainnya di &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Anda dapat mengubah izin ini kapan saja di Setelan &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Info Selengkapnya"</string>
diff --git a/packages/CompanionDeviceManager/res/values-is/strings.xml b/packages/CompanionDeviceManager/res/values-is/strings.xml
index 9029fb0350c4..3f55d5db22e1 100644
--- a/packages/CompanionDeviceManager/res/values-is/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-is/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Leyfa"</string>
<string name="consent_no" msgid="2640796915611404382">"Ekki leyfa"</string>
<string name="consent_back" msgid="2560683030046918882">"Til baka"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Stækka <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Minnka <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Veita forritum í &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; sömu heimildir og í &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Þetta getur átt við um &lt;strong&gt;hljóðnema&lt;/strong&gt;, &lt;strong&gt;myndavél&lt;/strong&gt;, &lt;strong&gt;aðgang að staðsetningu&lt;/strong&gt; og aðrar heimildir fyrir viðkvæmu efni í &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Þú getur breytt þessum heimildum hvenær sem er í stillingunum í &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Frekari upplýsingar"</string>
diff --git a/packages/CompanionDeviceManager/res/values-iw/strings.xml b/packages/CompanionDeviceManager/res/values-iw/strings.xml
index 4032bb2b3dd9..8d7d1e9a6f28 100644
--- a/packages/CompanionDeviceManager/res/values-iw/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-iw/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"יש אישור"</string>
<string name="consent_no" msgid="2640796915611404382">"אין אישור"</string>
<string name="consent_back" msgid="2560683030046918882">"חזרה"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"הרחבה של <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"כיווץ של <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"‏האם לתת לאפליקציות ב-‎&lt;strong&gt;‎‏<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>‏‎&lt;/strong&gt;‎‏ את אותן הרשאות כמו ב-‏‎&lt;strong&gt;‎‏<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>‏‎&lt;/strong&gt;‎‏?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"‏ההרשאות עשויות לכלול גישה ל&lt;strong&gt;מיקרופון&lt;/strong&gt;, ל&lt;strong&gt;מצלמה&lt;/strong&gt;, ול&lt;strong&gt;מיקום&lt;/strong&gt;, וכן גישה למידע רגיש אחר ב-&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;אפשר לשנות את ההרשאות האלה בכל שלב בהגדרות של &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"מידע נוסף"</string>
diff --git a/packages/CompanionDeviceManager/res/values-kk/strings.xml b/packages/CompanionDeviceManager/res/values-kk/strings.xml
index a6427043610b..92951cb7fccc 100644
--- a/packages/CompanionDeviceManager/res/values-kk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-kk/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Рұқсат беру"</string>
<string name="consent_no" msgid="2640796915611404382">"Рұқсат бермеу"</string>
<string name="consent_back" msgid="2560683030046918882">"Артқа"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"\"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\" панелін жаю"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"\"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\" панелін жию"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; құрылғысындағы қолданбаларға &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; құрылғысындағыдай рұқсаттар берілсін бе?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Оған &lt;strong&gt;микрофонды&lt;/strong&gt;, &lt;strong&gt;камераны&lt;/strong&gt; және &lt;strong&gt;локацияны пайдалану рұқсаттары&lt;/strong&gt;, сондай-ақ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; құрылғысындағы басқа да құпия ақпарат рұқсаттары кіруі мүмкін. &lt;br/&gt;&lt;br/&gt;Бұл рұқсаттарды кез келген уақытта &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; құрылғысындағы параметрлерден өзгертуіңізге болады."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Толық ақпарат"</string>
diff --git a/packages/CompanionDeviceManager/res/values-kn/strings.xml b/packages/CompanionDeviceManager/res/values-kn/strings.xml
index 5a3eba4b9d89..1080b6367196 100644
--- a/packages/CompanionDeviceManager/res/values-kn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-kn/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"ಅನುಮತಿಸಿ"</string>
<string name="consent_no" msgid="2640796915611404382">"ಅನುಮತಿಸಬೇಡಿ"</string>
<string name="consent_back" msgid="2560683030046918882">"ಹಿಂದೆ"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ಅನ್ನು ವಿಸ್ತರಿಸಿ"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ಅನ್ನು ಕುಗ್ಗಿಸಿ"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;/strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ನಲ್ಲಿನ ಅನುಮತಿಗಳನ್ನೇ &lt;/strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ನಲ್ಲಿನ ಆ್ಯಪ್‌ಗಳಿಗೆ ನೀಡಬೇಕೆ?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"ಇದು &lt;strong&gt;ಮೈಕ್ರೋಫೋನ್&lt;/strong&gt;, &lt;strong&gt;ಕ್ಯಾಮರಾ&lt;/strong&gt;, and &lt;strong&gt;ಸ್ಥಳದ ಆ್ಯಕ್ಸೆಸ್&lt;/strong&gt;, ಮತ್ತು &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; ನಲ್ಲಿ ಸೂಕ್ಷ್ಮ ಮಾಹಿತಿಗಾಗಿ ಇತರ ಅನುಮತಿಗಳನ್ನು ಒಳಗೊಂಡಿರಬಹುದು. &lt;br/&gt;&lt;br/&gt;ನೀವು &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; ನಲ್ಲಿನ ನಿಮ್ಮ ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ಈ ಅನುಮತಿಗಳನ್ನು ಯಾವಾಗ ಬೇಕಾದರೂ ಬದಲಾಯಿಸಬಹುದು."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"ಇನ್ನಷ್ಟು ಮಾಹಿತಿ"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ko/strings.xml b/packages/CompanionDeviceManager/res/values-ko/strings.xml
index a8c98f0f6dbc..025bc3cb1a7a 100644
--- a/packages/CompanionDeviceManager/res/values-ko/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ko/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"허용"</string>
<string name="consent_no" msgid="2640796915611404382">"허용 안함"</string>
<string name="consent_back" msgid="2560683030046918882">"뒤로"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> 펼치기"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> 접기"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;에 설치된 앱에 &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;에 설치된 앱과 동일한 권한을 부여하시겠습니까?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"여기에는 &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;의 &lt;strong&gt;마이크&lt;/strong&gt;, &lt;strong&gt;카메라&lt;/strong&gt;, &lt;strong&gt;위치 정보 액세스&lt;/strong&gt; 및 기타 민감한 권한이 포함될 수 있습니다. &lt;br/&gt;&lt;br/&gt;언제든지 &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;의 설정에서 이러한 권한을 변경할 수 있습니다."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"자세히 알아보기"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ky/strings.xml b/packages/CompanionDeviceManager/res/values-ky/strings.xml
index f6c0343fe895..7e9104fccbf8 100644
--- a/packages/CompanionDeviceManager/res/values-ky/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ky/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Ооба"</string>
<string name="consent_no" msgid="2640796915611404382">"Уруксат берилбесин"</string>
<string name="consent_back" msgid="2560683030046918882">"Артка"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> жайып көрсөтүү"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> жыйыштыруу"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; түзмөгүнө да &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; түзмөгүнө берилген уруксаттар берилсинби?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Буга &lt;strong&gt;Микрофонду&lt;/strong&gt;, &lt;strong&gt;Камераны&lt;/strong&gt; пайдалануу жана &lt;strong&gt;Жайгашкан жерди аныктоо&lt;/strong&gt;, ошондой эле &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; түзмөгүндөгү башка купуя маалыматты көрүүгө уруксаттар кириши мүмкүн. &lt;br/&gt;&lt;br/&gt;Каалаган убакта &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; түзмөгүндөгү параметрлерге өтүп, бул уруксаттарды өзгөртө аласыз."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Кеңири маалымат"</string>
diff --git a/packages/CompanionDeviceManager/res/values-lo/strings.xml b/packages/CompanionDeviceManager/res/values-lo/strings.xml
index 7dfcd013b8bc..08ea7a9b82cc 100644
--- a/packages/CompanionDeviceManager/res/values-lo/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-lo/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"ອະນຸຍາດ"</string>
<string name="consent_no" msgid="2640796915611404382">"ບໍ່ອະນຸຍາດ"</string>
<string name="consent_back" msgid="2560683030046918882">"ກັບຄືນ"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"ຂະຫຍາຍ <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"ຫຍໍ້ <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ລົງ"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"ໃຫ້ການອະນຸຍາດແອັບຢູ່ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ເປັນການອະນຸຍາດດຽວກັນກັບຢູ່ &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ບໍ?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"ສິ່ງນີ້ອາດຮວມມີສິດເຂົ້າເຖິງ &lt;strong&gt;ໄມໂຄຣໂຟນ&lt;/strong&gt;, &lt;strong&gt;ກ້ອງຖ່າຍຮູບ&lt;/strong&gt; ແລະ &lt;strong&gt;ສະຖານທີ່&lt;/strong&gt; ພ້ອມທັງການອະນຸຍາດທີ່ລະອຽດອ່ອນອື່ນໆຢູ່ໃນ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;ທ່ານສາມາດປ່ຽນແປງສິດການອະນຸຍາດເຫຼົ່ານີ້ໄດ້ທຸກເວລາໃນການຕັ້ງຄ່າຂອງທ່ານຢູ່ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"ຂໍ້ມູນເພີ່ມເຕີມ"</string>
diff --git a/packages/CompanionDeviceManager/res/values-lt/strings.xml b/packages/CompanionDeviceManager/res/values-lt/strings.xml
index ed503f1eb858..0a800eeb5151 100644
--- a/packages/CompanionDeviceManager/res/values-lt/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-lt/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Leisti"</string>
<string name="consent_no" msgid="2640796915611404382">"Neleisti"</string>
<string name="consent_back" msgid="2560683030046918882">"Atgal"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Išskleisti „<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>“"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Sutraukti „<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>“"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Suteikti &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; esančioms programoms tuos pačius leidimus kaip &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; esančioms programoms?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Tai gali apimti &lt;strong&gt;mikrofono&lt;/strong&gt;, &lt;strong&gt;fotoaparato&lt;/strong&gt;, ir &lt;strong&gt;prieigos prie vietovės&lt;/strong&gt;, leidimus bei kitus leidimus pasiekti neskelbtiną informaciją įrenginyje &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Šiuos leidimus galite bet kada pakeisti įrenginio &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; nustatymų skiltyje."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Daugiau informacijos"</string>
diff --git a/packages/CompanionDeviceManager/res/values-lv/strings.xml b/packages/CompanionDeviceManager/res/values-lv/strings.xml
index d4ae561802b5..43dedbd93578 100644
--- a/packages/CompanionDeviceManager/res/values-lv/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-lv/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Atļaut"</string>
<string name="consent_no" msgid="2640796915611404382">"Neatļaut"</string>
<string name="consent_back" msgid="2560683030046918882">"Atpakaļ"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Izvērst: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Sakļaut: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vai lietotnēm ierīcē &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; piešķirt tādas pašas atļaujas kā ierīcē &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Tās var būt &lt;strong&gt;mikrofona&lt;/strong&gt;, &lt;strong&gt;kameras&lt;/strong&gt;, &lt;strong&gt;atrašanās vietas piekļuves&lt;/strong&gt; atļaujas, kā arī citas sensitīvas atļaujas ierīcē &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Atļaujas varat jebkurā brīdī mainīt ierīces &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; iestatījumos."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Plašāka informācija"</string>
diff --git a/packages/CompanionDeviceManager/res/values-mk/strings.xml b/packages/CompanionDeviceManager/res/values-mk/strings.xml
index c4fdd7df2aa8..7e115c9395b7 100644
--- a/packages/CompanionDeviceManager/res/values-mk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-mk/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Дозволи"</string>
<string name="consent_no" msgid="2640796915611404382">"Не дозволувај"</string>
<string name="consent_back" msgid="2560683030046918882">"Назад"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Прошири <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Собери <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Дасе дадат исти дозволи на апликациите на &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; како на &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Ова може да вклучува дозволи за пристап до &lt;strong&gt;микрофонот&lt;/strong&gt;, &lt;strong&gt;камерата&lt;/strong&gt; и &lt;strong&gt;локацијата&lt;/strong&gt;, како и други чувствителни дозволи на &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Дозволиве може да ги промените во секое време во „Поставки“ на &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Повеќе детали"</string>
diff --git a/packages/CompanionDeviceManager/res/values-mn/strings.xml b/packages/CompanionDeviceManager/res/values-mn/strings.xml
index 576501cd8e61..0c31abf58c98 100644
--- a/packages/CompanionDeviceManager/res/values-mn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-mn/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Зөвшөөрөх"</string>
<string name="consent_no" msgid="2640796915611404382">"Бүү зөвшөөр"</string>
<string name="consent_back" msgid="2560683030046918882">"Буцах"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>-г дэлгэх"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>-г хураах"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; дээрх аппуудад &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; дээрхтэй адил зөвшөөрөл өгөх үү?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Үүнд &lt;strong&gt;Микрофон&lt;/strong&gt;, &lt;strong&gt;Камер&lt;/strong&gt;,, &lt;strong&gt;Байршлын хандалт&lt;/strong&gt; болон &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; дээрх бусад эмзэг зөвшөөрөл багтаж болно. &lt;br/&gt;&lt;br/&gt;Та эдгээр зөвшөөрлийг &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; дээрх Тохиргоондоо хүссэн үедээ өөрчлөх боломжтой."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Дэлгэрэнгүй мэдээлэл"</string>
diff --git a/packages/CompanionDeviceManager/res/values-mr/strings.xml b/packages/CompanionDeviceManager/res/values-mr/strings.xml
index 1aea6e38bf41..b94cfac65698 100644
--- a/packages/CompanionDeviceManager/res/values-mr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-mr/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"अनुमती द्या"</string>
<string name="consent_no" msgid="2640796915611404382">"अनुमती देऊ नका"</string>
<string name="consent_back" msgid="2560683030046918882">"मागे जा"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> चा विस्तार करा"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> कोलॅप्स करा"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; वरील अ‍ॅप्सना &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; प्रमाणेच परवानग्या द्यायच्या आहेत का?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"यामध्ये पुढील गोष्टी समाविष्ट असू शकतात &lt;strong&gt;मायक्रोफोन&lt;/strong&gt;, &lt;strong&gt;कॅमेरा&lt;/strong&gt;, and &lt;strong&gt;स्थान अ‍ॅक्सेस&lt;/strong&gt;, आणि &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; वरील इतर संवेदनशील परवानग्या. &lt;br/&gt;&lt;br/&gt;तुम्ही &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; वर तुमच्या सेटिंग्ज मध्ये कोणत्याही वेळेला या परवानग्या बदलू शकता."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"अधिक माहिती"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ms/strings.xml b/packages/CompanionDeviceManager/res/values-ms/strings.xml
index dcc3e0e50c2d..93745c8a3666 100644
--- a/packages/CompanionDeviceManager/res/values-ms/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ms/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Benarkan"</string>
<string name="consent_no" msgid="2640796915611404382">"Jangan benarkan"</string>
<string name="consent_back" msgid="2560683030046918882">"Kembali"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Kembangkan <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Kuncupkan <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Beri apl pada &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; kebenaran yang sama seperti pada &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Ini mungkin termasuk &lt;strong&gt;Mikrofon&lt;/strong&gt;, &lt;strong&gt;Kamera&lt;/strong&gt; dan &lt;strong&gt;Akses lokasi&lt;/strong&gt; serta kebenaran sensitif lain pada &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Anda boleh menukar kebenaran ini pada bila-bila masa dalam Tetapan anda pada &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Maklumat Lanjut"</string>
diff --git a/packages/CompanionDeviceManager/res/values-nb/strings.xml b/packages/CompanionDeviceManager/res/values-nb/strings.xml
index 9b8563fcedd9..2c794d9c4b46 100644
--- a/packages/CompanionDeviceManager/res/values-nb/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-nb/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Tillat"</string>
<string name="consent_no" msgid="2640796915611404382">"Ikke tillat"</string>
<string name="consent_back" msgid="2560683030046918882">"Tilbake"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Vis <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Skjul <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vil du gi apper på &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; de samme tillatelsene som på &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Dette kan inkludere &lt;strong&gt;mikrofon&lt;/strong&gt;-, &lt;strong&gt;kamera&lt;/strong&gt;- og &lt;strong&gt;posisjonstilgang&lt;/strong&gt; samt andre sensitive tillatelser på &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Du kan når som helst endre disse tillatelsene i innstillingene på &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Mer informasjon"</string>
diff --git a/packages/CompanionDeviceManager/res/values-nl/strings.xml b/packages/CompanionDeviceManager/res/values-nl/strings.xml
index 513399fbe62a..95804742daa6 100644
--- a/packages/CompanionDeviceManager/res/values-nl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-nl/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Toestaan"</string>
<string name="consent_no" msgid="2640796915611404382">"Niet toestaan"</string>
<string name="consent_back" msgid="2560683030046918882">"Terug"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> uitvouwen"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> samenvouwen"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Apps op de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; dezelfde rechten geven als op de &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Dit kan &lt;strong&gt;Microfoon&lt;/strong&gt;, &lt;strong&gt;Camera&lt;/strong&gt; en &lt;strong&gt;Locatietoegang&lt;/strong&gt; en andere gevoelige rechten op de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; omvatten. &lt;br/&gt;&lt;br/&gt;Je kunt deze rechten altijd wijzigen in je Instellingen op de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Meer informatie"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pl/strings.xml b/packages/CompanionDeviceManager/res/values-pl/strings.xml
index d146f7f52e40..b1e564397b90 100644
--- a/packages/CompanionDeviceManager/res/values-pl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pl/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Zezwól"</string>
<string name="consent_no" msgid="2640796915611404382">"Nie zezwalaj"</string>
<string name="consent_back" msgid="2560683030046918882">"Wstecz"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Rozwiń sekcję <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Zwiń sekcję <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Czy aplikacjom na urządzeniu &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; przyznać te same uprawnienia co na urządzeniu &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Wśród nich mogą być dane dostępu do &lt;strong&gt;Mikrofonu&lt;/strong&gt;, &lt;strong&gt;Aparatu&lt;/strong&gt;, i &lt;strong&gt;Lokalizacji&lt;/strong&gt;, i inne uprawnienia newralgiczne na urządzeniu &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Możesz w dowolnym momencie zmienić uprawnienia na urządzeniu &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Więcej informacji"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml b/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml
index 102a4aafe5eb..15980b928ccc 100644
--- a/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Permitir"</string>
<string name="consent_no" msgid="2640796915611404382">"Não permitir"</string>
<string name="consent_back" msgid="2560683030046918882">"Voltar"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Abrir <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Fechar <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Dar aos apps no dispositivo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; as mesmas permissões do dispositivo &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Isso pode incluir acesso ao &lt;strong&gt;Microfone&lt;/strong&gt;, à &lt;strong&gt;Câmera&lt;/strong&gt; e à &lt;strong&gt;Localização&lt;/strong&gt;, além de outras permissões sensíveis no dispositivo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Você pode mudar essas permissões a qualquer momento nas Configurações do dispositivo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Mais informações"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pt/strings.xml b/packages/CompanionDeviceManager/res/values-pt/strings.xml
index 102a4aafe5eb..15980b928ccc 100644
--- a/packages/CompanionDeviceManager/res/values-pt/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pt/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Permitir"</string>
<string name="consent_no" msgid="2640796915611404382">"Não permitir"</string>
<string name="consent_back" msgid="2560683030046918882">"Voltar"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Abrir <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Fechar <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Dar aos apps no dispositivo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; as mesmas permissões do dispositivo &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Isso pode incluir acesso ao &lt;strong&gt;Microfone&lt;/strong&gt;, à &lt;strong&gt;Câmera&lt;/strong&gt; e à &lt;strong&gt;Localização&lt;/strong&gt;, além de outras permissões sensíveis no dispositivo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Você pode mudar essas permissões a qualquer momento nas Configurações do dispositivo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Mais informações"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ru/strings.xml b/packages/CompanionDeviceManager/res/values-ru/strings.xml
index 2e3b2b56e8b0..cdf1668f1fb4 100644
--- a/packages/CompanionDeviceManager/res/values-ru/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ru/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Разрешить"</string>
<string name="consent_no" msgid="2640796915611404382">"Запретить"</string>
<string name="consent_back" msgid="2560683030046918882">"Назад"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Разворачивать список \"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\"."</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Сворачивать список \"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\"."</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Предоставить приложениям на устройстве &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; те же разрешения, что на устройстве &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"У приложений может появиться доступ к &lt;strong&gt;микрофону&lt;/strong&gt;, &lt;strong&gt;камере&lt;/strong&gt;, &lt;strong&gt;местоположению&lt;/strong&gt; и другой конфиденциальной информации на устройстве &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Вы можете в любое время изменить разрешения в настройках на устройстве &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Дополнительная информация"</string>
diff --git a/packages/CompanionDeviceManager/res/values-si/strings.xml b/packages/CompanionDeviceManager/res/values-si/strings.xml
index 501c34bb42fb..41224c6b2b0b 100644
--- a/packages/CompanionDeviceManager/res/values-si/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-si/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"ඉඩ දෙන්න"</string>
<string name="consent_no" msgid="2640796915611404382">"ඉඩ නොදෙන්න"</string>
<string name="consent_back" msgid="2560683030046918882">"ආපසු"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> විදහන්න"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> හකුළන්න"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; the හි යෙදුම්වලට &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; හි අවසරම දෙන්නද?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"මෙයට &lt;strong&gt;මයික්‍රොෆෝනය&lt;/strong&gt;, &lt;strong&gt;කැමරාව&lt;/strong&gt;, සහ &lt;strong&gt;ස්ථාන ප්‍රවේශය&lt;/strong&gt;, සහ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; මත අනෙකුත් සංවේදී අවසර ඇතුළත් විය හැක. &lt;br/&gt;&lt;br/&gt;ඔබට &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; හි ඔබේ සැකසීම් තුළ ඕනෑම වේලාවක මෙම අවසර වෙනස් කළ හැක."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"තව තොරතුරු"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sk/strings.xml b/packages/CompanionDeviceManager/res/values-sk/strings.xml
index 085e7b95feb3..7514ee3157fa 100644
--- a/packages/CompanionDeviceManager/res/values-sk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sk/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Povoliť"</string>
<string name="consent_no" msgid="2640796915611404382">"Nepovoliť"</string>
<string name="consent_back" msgid="2560683030046918882">"Späť"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Rozbaliť sekciu <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Zbaliť sekciu <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Chcete udeliť aplikáciám v zariadení &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; rovnaké povolenia ako v zariadení &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Môžu zahŕňať prístup k &lt;strong&gt;mikrofónu&lt;/strong&gt;, &lt;strong&gt;kamere&lt;/strong&gt; a &lt;strong&gt;polohe&lt;/strong&gt;, a ďalšie citlivé povolenia v zariadení &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Tieto povolenia môžete kedykoľvek zmeniť v nastaveniach zariadenia &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Ďalšie informácie"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sl/strings.xml b/packages/CompanionDeviceManager/res/values-sl/strings.xml
index 54aa85d4bb8a..cfc15a98c686 100644
--- a/packages/CompanionDeviceManager/res/values-sl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sl/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Dovoli"</string>
<string name="consent_no" msgid="2640796915611404382">"Ne dovoli"</string>
<string name="consent_back" msgid="2560683030046918882">"Nazaj"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Razširi dovoljenje »<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>«"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Strni dovoljenje »<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>«"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Ali želite aplikacijam v napravi &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; odobriti enaka dovoljenja kot v napravi &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"To lahko vključuje &lt;strong&gt;dostop do mikrofona&lt;/strong&gt;, &lt;strong&gt;fotoaparata&lt;/strong&gt; in &lt;strong&gt;lokacije&lt;/strong&gt; ter druga občutljiva dovoljenja v napravi &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Ta dovoljenja lahko kadar koli spremenite v nastavitvah v napravi &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Več informacij"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sr/strings.xml b/packages/CompanionDeviceManager/res/values-sr/strings.xml
index f35c28b37862..34d9ca25e22a 100644
--- a/packages/CompanionDeviceManager/res/values-sr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sr/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Дозволи"</string>
<string name="consent_no" msgid="2640796915611404382">"Не дозволи"</string>
<string name="consent_back" msgid="2560683030046918882">"Назад"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Прошири <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Скупи <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Апликцијама на уређају &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; дајете све дозволе као на уређају &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"То може да обухвата приступ &lt;strong&gt;микрофону&lt;/strong&gt;, &lt;strong&gt;камери&lt;/strong&gt;, и &lt;strong&gt;локацији&lt;/strong&gt;, и друге осетљиве дозволе на уређају &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Можете да промените те дозволе у било ком тренутку у Подешавањима на уређају &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Још информација"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sw/strings.xml b/packages/CompanionDeviceManager/res/values-sw/strings.xml
index d0b1ed889f30..6e8c607f3fdf 100644
--- a/packages/CompanionDeviceManager/res/values-sw/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sw/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Ruhusu"</string>
<string name="consent_no" msgid="2640796915611404382">"Usiruhusu"</string>
<string name="consent_back" msgid="2560683030046918882">"Nyuma"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Panua <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Kunja <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Ungependa kuzipa programu katika &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ruhusa ile ile kama kwenye &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Hii ni pamoja na &lt;strong&gt;Maikrofoni&lt;/strong&gt;, &lt;strong&gt;Kamera&lt;/strong&gt;, na &lt;strong&gt;Uwezo wa kufikia mahali&lt;/strong&gt;, na ruhusa nyingine nyeti kwenye &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Unaweza kubadilisha ruhusa hizi wakati wowote katika Mipangilio yako kwenye &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Maelezo Zaidi"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ta/strings.xml b/packages/CompanionDeviceManager/res/values-ta/strings.xml
index def0eca11d77..a31d891eb8d8 100644
--- a/packages/CompanionDeviceManager/res/values-ta/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ta/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"அனுமதி"</string>
<string name="consent_no" msgid="2640796915611404382">"அனுமதிக்க வேண்டாம்"</string>
<string name="consent_back" msgid="2560683030046918882">"பின்செல்"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ஐ விரிவாக்கும்"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ஐச் சுருக்கும்"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; சாதனத்தில் இருக்கும் அதே அனுமதிகளை &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; சாதனத்தில் உள்ள ஆப்ஸுக்கும் வழங்கவா?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"&lt;strong&gt;மைக்ரோஃபோன்&lt;/strong&gt;, &lt;strong&gt;கேமரா&lt;/strong&gt;, &lt;strong&gt;இருப்பிட அணுகல்&lt;/strong&gt;, ஆகியவற்றுக்கான அனுமதிகளும் &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; சாதனத்தில் உள்ள பிற பாதுகாக்கவேண்டிய தகவல்களுக்கான அனுமதிகளும் இதில் அடங்கக்கூடும். &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; &lt;br/&gt;&lt;br/&gt;சாதனத்தில் உள்ள அமைப்புகளில் இந்த அனுமதிகளை எப்போது வேண்டுமானாலும் மாற்றிக்கொள்ளலாம்."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"கூடுதல் தகவல்கள்"</string>
diff --git a/packages/CompanionDeviceManager/res/values-te/strings.xml b/packages/CompanionDeviceManager/res/values-te/strings.xml
index e702b873b996..5e91614b9b59 100644
--- a/packages/CompanionDeviceManager/res/values-te/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-te/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"అనుమతించండి"</string>
<string name="consent_no" msgid="2640796915611404382">"అనుమతించవద్దు"</string>
<string name="consent_back" msgid="2560683030046918882">"వెనుకకు"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>‌ను విస్తరించండి"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>‌ను కుదించండి"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;లోని యాప్‌లకు &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;లో ఉన్న అనుమతులను ఇవ్వాలా?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"వీటిలో భాగంగా &lt;strong&gt;మైక్రోఫోన్&lt;/strong&gt;, &lt;strong&gt;కెమెరా&lt;/strong&gt;, ఇంకా &lt;strong&gt;లొకేషన్ యాక్సెస్&lt;/strong&gt;, అలాగే &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;పై ఇతర గోప్యమైన సమాచార యాక్సెస్ అనుమతులు ఉండవచ్చు. &lt;br/&gt;&lt;br/&gt;ఈ అనుమతులను మీరు &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;లోని మీ సెట్టింగ్‌లలో ఎప్పుడైనా మార్చవచ్చు."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"మరింత సమాచారం"</string>
diff --git a/packages/CompanionDeviceManager/res/values-tr/strings.xml b/packages/CompanionDeviceManager/res/values-tr/strings.xml
index 90fe23dc2eb4..6358f6e21431 100644
--- a/packages/CompanionDeviceManager/res/values-tr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-tr/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"İzin ver"</string>
<string name="consent_no" msgid="2640796915611404382">"İzin verme"</string>
<string name="consent_back" msgid="2560683030046918882">"Geri"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> panelini genişlet"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> panelini daralt"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; cihazındaki uygulamalara, &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; cihazındakiyle aynı izinler verilsin mi?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Bu; &lt;strong&gt;Mikrofon&lt;/strong&gt;, &lt;strong&gt;Kamera&lt;/strong&gt; ve &lt;strong&gt;Konum erişimi&lt;/strong&gt; izinlerinin yanı sıra &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt; cihazındaki diğer hassas bilgilere erişim izinlerini içerebilir. &lt;br/&gt;&lt;br/&gt;&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt; cihazının Ayarlar bölümünden istediğiniz zaman bu izinleri değiştirebilirsiniz."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Daha Fazla Bilgi"</string>
diff --git a/packages/CompanionDeviceManager/res/values-uk/strings.xml b/packages/CompanionDeviceManager/res/values-uk/strings.xml
index 232d3919455b..221a86926d38 100644
--- a/packages/CompanionDeviceManager/res/values-uk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-uk/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Дозволити"</string>
<string name="consent_no" msgid="2640796915611404382">"Не дозволяти"</string>
<string name="consent_back" msgid="2560683030046918882">"Назад"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Розгорнути дозвіл \"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\""</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Згорнути дозвіл \"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\""</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Надати додаткам на пристрої &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; такі самі дозволи, що й на пристрої &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Це можуть бути дозволи &lt;strong&gt;Мікрофон&lt;/strong&gt;, &lt;strong&gt;Камера&lt;/strong&gt;, &lt;strong&gt;Геодані&lt;/strong&gt;, а також інші дозволи на доступ до чутливих даних на пристрої &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Ви можете будь-коли змінити ці дозволи в налаштуваннях на пристрої &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Докладніше"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ur/strings.xml b/packages/CompanionDeviceManager/res/values-ur/strings.xml
index 0a38d0d3a33e..8acfc29b32f6 100644
--- a/packages/CompanionDeviceManager/res/values-ur/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ur/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"اجازت دیں"</string>
<string name="consent_no" msgid="2640796915611404382">"اجازت نہ دیں"</string>
<string name="consent_back" msgid="2560683030046918882">"پیچھے"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> کو پھیلائیں"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> کو سکیڑیں"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"‏ایپس کو &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; پر وہی اجازتیں دیں جو &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; پر دی گئی ہیں؟"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"‏اس میں ‎&lt;strong&gt;‎مائیکروفون‎&lt;/strong&gt; ،&lt;strong&gt;‎کیمرا‎&lt;/strong&gt;‎ اور ‎&lt;strong&gt;‎مقام تک رسائی‎&lt;/strong&gt;‎ اور ‎&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;‎ پر دیگر حساس اجازتیں شامل ہو سکتی ہیں۔ ‎&lt;br/&gt;&lt;br/&gt;‎آپ ‎&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;‎ پر کسی بھی وقت اپنی ترتیبات میں ان اجازتوں کو تبدیل کر سکتے ہیں۔"</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"مزید معلومات"</string>
diff --git a/packages/CompanionDeviceManager/res/values-vi/strings.xml b/packages/CompanionDeviceManager/res/values-vi/strings.xml
index 2210b50e8b24..24fdd4add637 100644
--- a/packages/CompanionDeviceManager/res/values-vi/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-vi/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Cho phép"</string>
<string name="consent_no" msgid="2640796915611404382">"Không cho phép"</string>
<string name="consent_back" msgid="2560683030046918882">"Quay lại"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Mở rộng <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Thu gọn <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Cấp cho các ứng dụng trên &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; các quyền giống như trên &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Những quyền này có thể bao gồm quyền truy cập vào &lt;strong&gt;Micrô&lt;/strong&gt;, &lt;strong&gt;Máy ảnh&lt;/strong&gt;, và &lt;strong&gt;Thông tin vị trí&lt;/strong&gt;, cũng như các quyền truy cập thông tin nhạy cảm khác trên &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Bạn có thể thay đổi những quyền này bất cứ lúc nào trong phần Cài đặt trên &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Thông tin khác"</string>
diff --git a/packages/CompanionDeviceManager/res/values-zh-rCN/strings.xml b/packages/CompanionDeviceManager/res/values-zh-rCN/strings.xml
index 44258997e611..401a263505bf 100644
--- a/packages/CompanionDeviceManager/res/values-zh-rCN/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-zh-rCN/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"允许"</string>
<string name="consent_no" msgid="2640796915611404382">"不允许"</string>
<string name="consent_back" msgid="2560683030046918882">"返回"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"展开<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"收起<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"要让&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;上的应用享有在&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;上的同等权限吗?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"这可能包括&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;的&lt;strong&gt;麦克风&lt;/strong&gt;、&lt;strong&gt;摄像头&lt;/strong&gt;和&lt;strong&gt;位置信息访问权限&lt;/strong&gt;以及其他敏感权限。&lt;br/&gt;&lt;br/&gt;您随时可以在&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;的“设置”中更改这些权限。"</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"更多信息"</string>
diff --git a/packages/CompanionDeviceManager/res/values-zu/strings.xml b/packages/CompanionDeviceManager/res/values-zu/strings.xml
index 164cec7b4e28..22495e285795 100644
--- a/packages/CompanionDeviceManager/res/values-zu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-zu/strings.xml
@@ -43,10 +43,8 @@
<string name="consent_yes" msgid="8344487259618762872">"Vumela"</string>
<string name="consent_no" msgid="2640796915611404382">"Ungavumeli"</string>
<string name="consent_back" msgid="2560683030046918882">"Emuva"</string>
- <!-- no translation found for permission_expand (893185038020887411) -->
- <skip />
- <!-- no translation found for permission_collapse (3320833884220844084) -->
- <skip />
+ <string name="permission_expand" msgid="893185038020887411">"Nweba i-<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
+ <string name="permission_collapse" msgid="3320833884220844084">"Goqa i-<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
<string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Nikeza ama-app &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; izimvume ezifanayot &lt;strong&gt;njengaku-<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
<string name="permission_sync_summary" msgid="765497944331294275">"Lokhu kungahilela &lt;strong&gt;Imakrofoni&lt;/strong&gt;, &lt;strong&gt;Ikhamera&lt;/strong&gt;, kanye &lt;strong&gt;Nokufinyelelwa kwendawo&lt;/strong&gt;, nezinye izimvume ezizwelayo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g>&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Ungakwazi ukushintsha lezi zimvume noma nini Kumasethingi akho ku-&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g>&lt;/strong&gt;."</string>
<string name="vendor_header_button_description" msgid="7994879208461111473">"Olunye ulwazi"</string>
diff --git a/packages/CredentialManager/res/values-af/strings.xml b/packages/CredentialManager/res/values-af/strings.xml
index 5e2807fd427e..0c13cb245cac 100644
--- a/packages/CredentialManager/res/values-af/strings.xml
+++ b/packages/CredentialManager/res/values-af/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Eiebewysbestuurder"</string>
<string name="string_cancel" msgid="6369133483981306063">"Kanselleer"</string>
<string name="string_continue" msgid="1346732695941131882">"Gaan voort"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Meer opsies"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Stoor op ’n ander manier"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Kom meer te wete"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Wys wagwoord"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Versteek wagwoord"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"aanmeldings"</string>
<string name="sign_in_info" msgid="2627704710674232328">"aanmeldinligting"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Stoor <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> in"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Skep wagwoordsleutel op ’n ander toestel?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Stoor wagwoord op ’n ander toestel?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Stoor aanmelding op ’n ander toestel?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Gebruik <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> vir al jou aanmeldings?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Hierdie wagwoordbestuurder vir <xliff:g id="USERNAME">%1$s</xliff:g> sal jou wagwoorde en wagwoordsleutels berg om jou te help om maklik aan te meld"</string>
<string name="set_as_default" msgid="4415328591568654603">"Stel as verstek"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Maak toe"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Maak toe"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Gebruik jou gestoorde wagwoordsleutel vir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Gebruik jou gestoorde wagwoord vir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Gebruik jou aanmelding vir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Ontsluit aanmeldingopsies vir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Kies ’n gestoorde wagwoordsleutel vir <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Kies ’n gestoorde wagwoord vir <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Kies ’n gestoorde aanmelding vir <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Kies ’n aanmelding vir <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Kies ’n opsie vir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Gebruik hierdie inligting op <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-am/strings.xml b/packages/CredentialManager/res/values-am/strings.xml
index 3a3bfb50c1a3..b2628fb4017c 100644
--- a/packages/CredentialManager/res/values-am/strings.xml
+++ b/packages/CredentialManager/res/values-am/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"የመግቢያ ማስረጃ አስተዳዳሪ"</string>
<string name="string_cancel" msgid="6369133483981306063">"ይቅር"</string>
<string name="string_continue" msgid="1346732695941131882">"ቀጥል"</string>
- <string name="string_more_options" msgid="7990658711962795124">"ተጨማሪ አማራጮች"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"በሌላ መንገድ አስቀምጥ"</string>
<string name="string_learn_more" msgid="4541600451688392447">"የበለጠ ለመረዳት"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"የይለፍ ቃል አሳይ"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"የይለፍ ቃል ደብቅ"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"መግቢያዎች"</string>
<string name="sign_in_info" msgid="2627704710674232328">"የመግቢያ መረጃ"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>ን አስቀምጥ ወደ"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"በሌላ መሣሪያ ላይ የይለፍ ቁልፍ ይፈጠር?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"የይለፍ ቃል በሌላ መሣሪያ ላይ ይቀመጥ?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"በመለያ መግቢያ በሌላ መሣሪያ ላይ ይቀመጥ?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"ለሁሉም መግቢያዎችዎ <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>ን ይጠቀሙ?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"ይህ የ<xliff:g id="USERNAME">%1$s</xliff:g> የይለፍ ቃል አስተዳዳሪ በቀላሉ እንዲገቡ ለማገዝ የእርስዎን የይለፍ ቃላት እና የይለፍ ቁልፎች ያከማቻል"</string>
<string name="set_as_default" msgid="4415328591568654603">"እንደ ነባሪ ያዋቅሩ"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"ዝጋ"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"አሰናብት"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"የተቀመጠ የይለፍ ቁልፍዎን ለ<xliff:g id="APP_NAME">%1$s</xliff:g> ይጠቀሙ?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"ለ<xliff:g id="APP_NAME">%1$s</xliff:g> የተቀመጠውን የይለፍ ቃልዎን ይጠቀሙ?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"ለ<xliff:g id="APP_NAME">%1$s</xliff:g> መግቢያዎ ጥቅም ላይ ይዋል?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"ለ<xliff:g id="APP_NAME">%1$s</xliff:g> የመግቢያ አማራጮች ይከፈቱ?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"ለ<xliff:g id="APP_NAME">%1$s</xliff:g> የተቀመጠ የይለፍ ቁልፍ ይምረጡ"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"ለ<xliff:g id="APP_NAME">%1$s</xliff:g> የተቀመጠ የይለፍ ቃል ይምረጡ"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"ለ<xliff:g id="APP_NAME">%1$s</xliff:g> የተቀመጠ መግቢያ ይጠቀሙ"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"ለ<xliff:g id="APP_NAME">%1$s</xliff:g> መግቢያ ይምረጡ"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"ለ<xliff:g id="APP_NAME">%1$s</xliff:g> አማራጭ ይመረጥ?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"ይህን መረጃ በ<xliff:g id="APP_NAME">%1$s</xliff:g> ላይ ይጠቀማሉ?"</string>
diff --git a/packages/CredentialManager/res/values-ar/strings.xml b/packages/CredentialManager/res/values-ar/strings.xml
index 1c4dd7759780..3f85b5827b76 100644
--- a/packages/CredentialManager/res/values-ar/strings.xml
+++ b/packages/CredentialManager/res/values-ar/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"مدير بيانات الاعتماد"</string>
<string name="string_cancel" msgid="6369133483981306063">"إلغاء"</string>
<string name="string_continue" msgid="1346732695941131882">"متابعة"</string>
- <string name="string_more_options" msgid="7990658711962795124">"خيارات إضافية"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"الحفظ بطريقة أخرى"</string>
<string name="string_learn_more" msgid="4541600451688392447">"مزيد من المعلومات"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"عرض كلمة المرور"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"إخفاء كلمة المرور"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"عمليات تسجيل الدخول"</string>
<string name="sign_in_info" msgid="2627704710674232328">"معلومات تسجيل الدخول"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"حفظ <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> في"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"هل تريد إنشاء مفتاح مرور على جهاز آخر؟"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"هل تريد حفظ كلمة المرور على جهاز آخر؟"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"هل تريد حفظ بيانات تسجيل الدخول على جهاز آخر؟"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"هل تريد استخدام \"<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>\" لكل عمليات تسجيل الدخول؟"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"ستخزِّن خدمة \"مدير كلمات المرور\" هذه كلمات المرور ومفاتيح المرور للمستخدم <xliff:g id="USERNAME">%1$s</xliff:g> لمساعدتك في تسجيل الدخول بسهولة."</string>
<string name="set_as_default" msgid="4415328591568654603">"ضبط الخيار كتلقائي"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"إغلاق"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"إغلاق"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"هل تريد استخدام مفتاح المرور المحفوظ لتطبيق \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"؟"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"هل تريد استخدام كلمة المرور المحفوظة لتطبيق \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"؟"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"هل تريد استخدام معلومات تسجيل دخولك لتطبيق \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"؟"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"هل تريد فتح القفل لاستعادة خيارات تسجيل الدخول لتطبيق \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"؟"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"اختيار مفتاح مرور محفوظ لتطبيق \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"اختيار كلمة مرور محفوظة لتطبيق \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"اختيار بيانات اعتماد تسجيل دخول محفوظة لتطبيق \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"اختيار معلومات تسجيل الدخول لتطبيق \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"هل تريد اختيار بيانات الاعتماد لتطبيق \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"؟"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"هل تريد استخدام بيانات الاعتماد هذه في \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"؟"</string>
diff --git a/packages/CredentialManager/res/values-as/strings.xml b/packages/CredentialManager/res/values-as/strings.xml
index 44ff5684dbff..e14b34b83060 100644
--- a/packages/CredentialManager/res/values-as/strings.xml
+++ b/packages/CredentialManager/res/values-as/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"CredentialManager"</string>
<string name="string_cancel" msgid="6369133483981306063">"বাতিল কৰক"</string>
<string name="string_continue" msgid="1346732695941131882">"অব্যাহত ৰাখক"</string>
- <string name="string_more_options" msgid="7990658711962795124">"অধিক বিকল্প"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"অন্য ধৰণে ছেভ কৰক"</string>
<string name="string_learn_more" msgid="4541600451688392447">"অধিক জানক"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"পাছৱৰ্ড দেখুৱাওক"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"পাছৱৰ্ড লুকুৱাওক"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"ছাইন-ইন"</string>
<string name="sign_in_info" msgid="2627704710674232328">"ছাইন ইনৰ তথ্য"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> ইয়াত ছেভ কৰক"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"অন্য কোনো ডিভাইচত পাছকী সৃষ্টি কৰিব নেকি?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"অন্য কোনো ডিভাইচত পাছৱৰ্ড ছেভ কৰিব নেকি?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"অন্য কোনো ডিভাইচত ছাইন-ইন ছেভ কৰিব নেকি?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"আপোনাৰ আটাইবোৰ ছাইন ইনৰ বাবে <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> ব্যৱহাৰ কৰিবনে?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"আপোনাক সহজে ছাইন ইন কৰাত সহায় কৰিবলৈ <xliff:g id="USERNAME">%1$s</xliff:g>ৰ বাবে থকা এই পাছৱৰ্ড পৰিচালকে আপোনাৰ পাছৱৰ্ড আৰু পাছকী ষ্ট’ৰ কৰিব"</string>
<string name="set_as_default" msgid="4415328591568654603">"ডিফ’ল্ট হিচাপে ছেট কৰক"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"বন্ধ কৰক"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"অগ্ৰাহ্য কৰক"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ বাবে আপোনাৰ ছেভ হৈ থকা পাছকী ব্যৱহাৰ কৰিবনে?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ বাবে আপোনাৰ ছেভ কৰি থোৱা পাছৱৰ্ড ব্যৱহাৰ কৰিবনে?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ বাবে ছাইন ইন কৰিবলৈ আপোনাৰ ক্ৰিডেনশ্বিয়েল ব্যৱহাৰ কৰিবনে?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ বাবে ছাইন ইনৰ বিকল্পসমূহ আনলক কৰিবনে?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ বাবে ছেভ হৈ থকা এটা পাছকী বাছনি কৰক"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ বাবে ছেভ হৈ থকা এটা পাছৱৰ্ড বাছনি কৰক"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ বাবে ছেভ হৈ থকা এটা ছাইন ইন বাছনি কৰক"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ বাবে ছাইন ইন কৰিবলৈ এটা ক্ৰিডেনশ্বিয়েল বাছনি কৰক"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ বাবে এটা বিকল্প বাছনি কৰিবনে?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g>ত এই তথ্য ব্যৱহাৰ কৰিবনে?"</string>
diff --git a/packages/CredentialManager/res/values-az/strings.xml b/packages/CredentialManager/res/values-az/strings.xml
index 69f4f84fca27..209c9c2f6e34 100644
--- a/packages/CredentialManager/res/values-az/strings.xml
+++ b/packages/CredentialManager/res/values-az/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Giriş Məlumatları Meneceri"</string>
<string name="string_cancel" msgid="6369133483981306063">"Ləğv edin"</string>
<string name="string_continue" msgid="1346732695941131882">"Davam edin"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Digər seçimlər"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Başqa cür saxlayın"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Ətraflı məlumat"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Parolu göstərin"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Parolu gizlədin"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"girişlər"</string>
<string name="sign_in_info" msgid="2627704710674232328">"Giriş məlumatları"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> harada saxlanılsın?"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Giriş açarı başqa cihazda yaradılsın?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Parol başqa cihazda yadda saxlansın?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Giriş başqa cihazda yadda saxlansın?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Bütün girişlər üçün <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> istifadə edilsin?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> üçün bu parol meneceri asanlıqla daxil olmağınız məqsədilə parol və giriş açarlarını saxlayacaq"</string>
<string name="set_as_default" msgid="4415328591568654603">"Defolt olaraq seçin"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Bağlayın"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"İmtina edin"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> üçün yadda saxlanmış giriş açarı istifadə edilsin?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> üçün yadda saxlanmış parol istifadə edilsin?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> üçün giriş istifadə edilsin?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> üçün giriş seçimləri kiliddən çıxarılsın?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> üçün yadda saxlanmış giriş açarı seçin"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> üçün yadda saxlanmış parol seçin"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> üçün yadda saxlanmış giriş seçin"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> üçün giriş seçin"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> üçün seçim edilsin?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Məlumat <xliff:g id="APP_NAME">%1$s</xliff:g> tətbiqində istifadə edilsin?"</string>
diff --git a/packages/CredentialManager/res/values-b+sr+Latn/strings.xml b/packages/CredentialManager/res/values-b+sr+Latn/strings.xml
index d42b8620d1a4..89e48f96d27b 100644
--- a/packages/CredentialManager/res/values-b+sr+Latn/strings.xml
+++ b/packages/CredentialManager/res/values-b+sr+Latn/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Menadžer akreditiva"</string>
<string name="string_cancel" msgid="6369133483981306063">"Otkaži"</string>
<string name="string_continue" msgid="1346732695941131882">"Nastavi"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Još opcija"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Sačuvaj drugi način"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Saznajte više"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Prikažite lozinku"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Sakrijte lozinku"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"prijavljivanja"</string>
<string name="sign_in_info" msgid="2627704710674232328">"podaci za prijavljivanje"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Sačuvaj <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> u"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Želite da napravite pristupni kôd na drugom uređaju?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Želite da sačuvate lozinku na drugom uređaju?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Želite da sačuvate akreditive za prijavu na drugom uređaju?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Želite da za sva prijavljivanja koristite: <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Ovaj menadžer lozinki za <xliff:g id="USERNAME">%1$s</xliff:g> će čuvati lozinke i pristupne kodove da biste se lako prijavljivali"</string>
<string name="set_as_default" msgid="4415328591568654603">"Podesi kao podrazumevano"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Zatvorite"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Odbaci"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Želite da koristite sačuvani pristupni kôd za: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Želite da koristite sačuvanu lozinku za: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Želite li da koristite svoje podatke za prijavljivanje za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Želite da otključate opcije prijavljivanja za: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Izaberite sačuvan pristupni kôd za: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Izaberite sačuvanu lozinku za: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Izaberite sačuvane podatke za prijavljivanje za: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Odaberite podatke za prijavljivanje za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Želite da odaberete opciju za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Želite da koristite te podatke u aplikaciji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-be/strings.xml b/packages/CredentialManager/res/values-be/strings.xml
index c1f213adbcd9..144bb8661472 100644
--- a/packages/CredentialManager/res/values-be/strings.xml
+++ b/packages/CredentialManager/res/values-be/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Менеджар уліковых даных"</string>
<string name="string_cancel" msgid="6369133483981306063">"Скасаваць"</string>
<string name="string_continue" msgid="1346732695941131882">"Далей"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Дадатковыя параметры"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Захаваць іншы спосаб"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Даведацца больш"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Паказаць пароль"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Схаваць пароль"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"спосабы ўваходу"</string>
<string name="sign_in_info" msgid="2627704710674232328">"інфармацыя пра спосабы ўваходу"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Захаваць <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> сюды:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Стварыць ключ доступу на іншай прыладзе?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Захаваць пароль на іншай прыладзе?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Захаваць спосаб уваходу на іншай прыладзе?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Выкарыстоўваць папку \"<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>\" для ўсіх спосабаў уваходу?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Каб вам было прасцей уваходзіць у сістэму, вашы паролі і ключы доступу будуць захоўвацца ў менеджары пароляў для <xliff:g id="USERNAME">%1$s</xliff:g>."</string>
<string name="set_as_default" msgid="4415328591568654603">"Выкарыстоўваць стандартна"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Закрыць"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Закрыць"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Скарыстаць захаваны ключ доступу для праграмы \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Выкарыстоўваць пароль, захаваны для праграмы \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Скарыстаць ваш спосаб уваходу для праграмы <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Разблакіраваць варыянты ўваходу для праграмы\"<xliff:g id="APP_NAME">%1$s</xliff:g>\"?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Выберыце захаваны ключ доступу для праграмы \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Выберыце захаваны пароль для праграмы \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Выберыце захаваны спосаб уваходу для праграмы \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Выберыце спосаб уваходу для праграмы <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Выберыце ўліковыя даныя для ўваходу ў праграму \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Выкарыстоўваць гэтую інфармацыю на прыладзе <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-bg/strings.xml b/packages/CredentialManager/res/values-bg/strings.xml
index f1a35e0c1ac8..e60420a168d9 100644
--- a/packages/CredentialManager/res/values-bg/strings.xml
+++ b/packages/CredentialManager/res/values-bg/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Мениджър на идентификационни данни"</string>
<string name="string_cancel" msgid="6369133483981306063">"Отказ"</string>
<string name="string_continue" msgid="1346732695941131882">"Напред"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Още опции"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Запазване другояче"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Научете повече"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Показване на паролата"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Скриване на паролата"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"данни за вход"</string>
<string name="sign_in_info" msgid="2627704710674232328">"данните за вход"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Запазване на <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> във:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Да се създаде ли ключ за достъп на друго устройство?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Паролата да се запази ли на друго устройство?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Данните за вход да се запазят ли на друго устройство?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Да се използва ли <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> за всичките ви данни за вход?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Мениджърът на пароли за <xliff:g id="USERNAME">%1$s</xliff:g> ще съхранява вашите пароли и кодове за достъп, за да влизате лесно в профила си"</string>
<string name="set_as_default" msgid="4415328591568654603">"Задаване като основно"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Затваряне"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Отхвърляне"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Да се използва ли запазеният ви код за достъп за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Искате ли да използвате запазената си парола за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Да се използват ли вашите данни за вход за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Искате ли да отключите опциите за влизане в профила за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Изберете запазен ключ за достъп за <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Изберете запазена парола за <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Изберете запазени данни за вход за <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Избиране на данни за вход за <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Искате ли да изберете опция за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Да се използва ли тази информация за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-bn/strings.xml b/packages/CredentialManager/res/values-bn/strings.xml
index ca2f4c092f6e..14f4a9baacd6 100644
--- a/packages/CredentialManager/res/values-bn/strings.xml
+++ b/packages/CredentialManager/res/values-bn/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"CredentialManager"</string>
<string name="string_cancel" msgid="6369133483981306063">"বাতিল করুন"</string>
<string name="string_continue" msgid="1346732695941131882">"চালিয়ে যান"</string>
- <string name="string_more_options" msgid="7990658711962795124">"আরও বিকল্প"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"অন্য উপায়ে সেভ করুন"</string>
<string name="string_learn_more" msgid="4541600451688392447">"আরও জানুন"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"পাসওয়ার্ড দেখুন"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"পাসওয়ার্ড লুকান"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"সাইন-ইন"</string>
<string name="sign_in_info" msgid="2627704710674232328">"সাইন-ইন সংক্রান্ত তথ্য"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> এখানে সেভ করুন"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"অন্য ডিভাইসে \'পাসকী\' তৈরি করবেন?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"অন্য ডিভাইসে পাসওয়ার্ড সেভ করবেন?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"অন্য ডিভাইসে সাইন-ইন ক্রেডেনশিয়াল সেভ করবেন?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"আপনার সব সাইন-ইনের জন্য <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> ব্যবহার করবেন?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g>-এর জন্য এই Password Manager আপনার পাসওয়ার্ড ও \'পাসকী\' সেভ করবে যাতে সহজেই সাইন-ইন করতে পারেন"</string>
<string name="set_as_default" msgid="4415328591568654603">"ডিফল্ট হিসেবে সেট করুন"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"বন্ধ করুন"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"বাতিল করুন"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g>-এর জন্য আপনার সেভ করা পাসকী ব্যবহার করবেন?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"আপনার সেভ করা পাসওয়ার্ড <xliff:g id="APP_NAME">%1$s</xliff:g>-এর জন্য ব্যবহার করবেন?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g>-এর জন্য আপনার সাইন-ইন ক্রেডেনশিয়াল ব্যবহার করবেন?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g>-এর জন্য সাইন-ইন করার বিকল্প আনলক করতে চান?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g>-এর জন্য সেভ করা পাসকী বেছে নিন"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g>-এর জন্য সেভ করা পাসকী বেছে নিন"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g>-এর জন্য সেভ করা ক্রেডেনশিয়াল বেছে নিন"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g>-এর জন্য সাইন-ইন ক্রেডেনশিয়াল বেছে নিন"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g>-এর জন্য বিকল্প বেছে নেবেন?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g>-এ সাইন-ইন করতে এই তথ্য ব্যবহার করবেন?"</string>
diff --git a/packages/CredentialManager/res/values-bs/strings.xml b/packages/CredentialManager/res/values-bs/strings.xml
index 36602e00d6e3..f90db6f2942b 100644
--- a/packages/CredentialManager/res/values-bs/strings.xml
+++ b/packages/CredentialManager/res/values-bs/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Upravitelj akreditiva"</string>
<string name="string_cancel" msgid="6369133483981306063">"Otkaži"</string>
<string name="string_continue" msgid="1346732695941131882">"Nastavi"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Više opcija"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Sačuvaj na drugi način"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Saznajte više"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Prikaži lozinku"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Sakrij lozinku"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"prijave"</string>
<string name="sign_in_info" msgid="2627704710674232328">"informacije o prijavi"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Sačuvaj <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> na"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Kreirati pristupni ključ na drugom uređaju?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Sačuvati lozinku na drugom uređaju?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Sačuvati akreditive za prijavu na drugom uređaju?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Koristiti uslugu <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> za sve vaše prijave?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Ovaj upravitelj lozinki za <xliff:g id="USERNAME">%1$s</xliff:g> će pohraniti vaše lozinke i pristupne ključeve da vam olakša prijavu"</string>
<string name="set_as_default" msgid="4415328591568654603">"Postavi kao zadano"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Zatvaranje"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Odbacivanje"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Koristiti sačuvani pristupni ključ za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Koristiti sačuvanu lozinku za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Koristiti vaše akreditive za prijavu u aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Otključati opcije prijave za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Odaberite sačuvani pristupni ključ za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Odaberite sačuvanu lozinku za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Odaberite sačuvanu prijavu za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Odaberite akreditive za prijavu u aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Odabrati opciju za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Koristiti ove informacije u aplikaciji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-ca/strings.xml b/packages/CredentialManager/res/values-ca/strings.xml
index 2f100a63c9c2..8e3fda8ebf31 100644
--- a/packages/CredentialManager/res/values-ca/strings.xml
+++ b/packages/CredentialManager/res/values-ca/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Gestor de credencials"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancel·la"</string>
<string name="string_continue" msgid="1346732695941131882">"Continua"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Més opcions"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Desa diferent"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Més informació"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Mostra la contrasenya"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Amaga la contrasenya"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"inicis de sessió"</string>
<string name="sign_in_info" msgid="2627704710674232328">"informació d\'inici de sessió"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Desa la <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> a"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Vols crear una clau d\'accés en un altre dispositiu?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Vols desar la contrasenya en un altre dispositiu?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Vols desar l\'inici de sessió en un altre dispositiu?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Vols utilitzar <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> per a tots els teus inicis de sessió?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Aquest gestor de contrasenyes per a <xliff:g id="USERNAME">%1$s</xliff:g> emmagatzemarà les teves contrasenyes i claus d\'accés per ajudar-te a iniciar la sessió fàcilment"</string>
<string name="set_as_default" msgid="4415328591568654603">"Estableix com a predeterminada"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Tanca"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Ignora"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Vols utilitzar la clau d\'accés desada per a <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Vols utilitzar la contrasenya desada per a <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Vols utilitzar el teu inici de sessió per a <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Vols desbloquejar les opcions d\'inici de sessió per a <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Tria una clau d\'accés desada per a <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Tria una clau d\'accés desada per a <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Tria un inici de sessió desat per a <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Tria un inici de sessió per a <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Vols triar una opció per a <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Vols utilitzar aquesta informació a <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-cs/strings.xml b/packages/CredentialManager/res/values-cs/strings.xml
index 8348988e2608..d63b24fac89b 100644
--- a/packages/CredentialManager/res/values-cs/strings.xml
+++ b/packages/CredentialManager/res/values-cs/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Správce oprávnění"</string>
<string name="string_cancel" msgid="6369133483981306063">"Zrušit"</string>
<string name="string_continue" msgid="1346732695941131882">"Pokračovat"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Další možnosti"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Uložit jinak"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Další informace"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Zobrazit heslo"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Skrýt heslo"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"přihlášení"</string>
<string name="sign_in_info" msgid="2627704710674232328">"přihlašovací údaje"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Uložit <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> do"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Vytvořit přístupový klíč na jiném zařízení?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Uložit přístupový klíč na jiném zařízení?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Uložit přihlášení na jiném zařízení?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Používat <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> pro všechna přihlášení?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Správce hesel pro účet <xliff:g id="USERNAME">%1$s</xliff:g> bude ukládat vaše hesla a přístupové klíče, abyste se mohli snadno přihlásit"</string>
<string name="set_as_default" msgid="4415328591568654603">"Nastavit jako výchozí"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Zavřít"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Zavřít"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Použít uložený přístupový klíč pro aplikaci <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Použít pro aplikaci <xliff:g id="APP_NAME">%1$s</xliff:g> uložené heslo?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Použít přihlášení pro <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Odemknout možnosti přihlášení pro aplikaci <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Vyberte uložený přístupový klíč pro aplikaci <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Vyberte uložené heslo pro aplikaci <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Vyberte uložené přihlášení pro aplikaci <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Vyberte přihlášení pro <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Vybrat možnost pro aplikaci <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Použít tyto informace na <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-da/strings.xml b/packages/CredentialManager/res/values-da/strings.xml
index 33f9b1551bcf..c7ee0380a7f6 100644
--- a/packages/CredentialManager/res/values-da/strings.xml
+++ b/packages/CredentialManager/res/values-da/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Loginstyring"</string>
<string name="string_cancel" msgid="6369133483981306063">"Annuller"</string>
<string name="string_continue" msgid="1346732695941131882">"Fortsæt"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Flere valgmuligheder"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Gem på en anden måde"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Få flere oplysninger"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Vis adgangskode"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Skjul adgangskode"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"loginmetoder"</string>
<string name="sign_in_info" msgid="2627704710674232328">"loginoplysninger"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Gem <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> i"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Vil du oprette en adgangsnøgle på en anden enhed?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Vil du gemme adgangskoden på en anden enhed?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Vil du gemme loginmetoden på en anden enhed?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Vil du bruge <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> til alle dine loginmetoder?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Denne adgangskodeadministrator for <xliff:g id="USERNAME">%1$s</xliff:g> gemmer dine adgangskoder og adgangsnøgler for at hjælpe dig med nemt at logge ind"</string>
<string name="set_as_default" msgid="4415328591568654603">"Angiv som standard"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Luk"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Luk"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Vil du bruge din gemte adgangsnøgle til <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Vil du bruge din gemte adgangskode til <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Vil du bruge dine loginoplysninger til <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Vil du låse enheden op for at se loginmetoder for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Vælg en gemt adgangsnøgle til <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Vælg en gemt adgangskode til <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Vælg en gemt loginmetode til <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Vælg loginoplysninger til <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Vil du vælge en mulighed for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Vil du bruge disse oplysninger i <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-de/strings.xml b/packages/CredentialManager/res/values-de/strings.xml
index ac46551c9a4a..29d9a86b5512 100644
--- a/packages/CredentialManager/res/values-de/strings.xml
+++ b/packages/CredentialManager/res/values-de/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Anmeldedaten-Manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Abbrechen"</string>
<string name="string_continue" msgid="1346732695941131882">"Weiter"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Weitere Optionen"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Anders speichern"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Weitere Informationen"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Passwort einblenden"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Passwort ausblenden"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"Anmeldungen"</string>
<string name="sign_in_info" msgid="2627704710674232328">"Anmeldedaten"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> speichern unter"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Passkey auf einem anderen Gerät erstellen?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Passwort auf einem anderen Gerät speichern?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Anmeldedaten auf einem anderen Gerät speichern?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> für alle Anmeldungen verwenden?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Mit diesem Passwortmanager für <xliff:g id="USERNAME">%1$s</xliff:g> werden deine Passwörter und Passkeys gespeichert, damit du dich problemlos anmelden kannst"</string>
<string name="set_as_default" msgid="4415328591568654603">"Als Standard festlegen"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Schließen"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Schließen"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Gespeicherten Passkey für <xliff:g id="APP_NAME">%1$s</xliff:g> verwenden?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Soll dein gespeichertes Passwort für <xliff:g id="APP_NAME">%1$s</xliff:g> verwendet werden?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Anmeldedaten für <xliff:g id="APP_NAME">%1$s</xliff:g> verwenden?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Anmeldeoptionen für <xliff:g id="APP_NAME">%1$s</xliff:g> freischalten?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Einen gespeicherten Passkey für <xliff:g id="APP_NAME">%1$s</xliff:g> auswählen"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Ein gespeichertes Passwort für <xliff:g id="APP_NAME">%1$s</xliff:g> auswählen"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Gespeicherte Anmeldedaten für <xliff:g id="APP_NAME">%1$s</xliff:g> auswählen"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Anmeldedaten für <xliff:g id="APP_NAME">%1$s</xliff:g> auswählen"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Option für <xliff:g id="APP_NAME">%1$s</xliff:g> auswählen?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Diese Infos für <xliff:g id="APP_NAME">%1$s</xliff:g> verwenden?"</string>
diff --git a/packages/CredentialManager/res/values-el/strings.xml b/packages/CredentialManager/res/values-el/strings.xml
index 7cf28c0cdb89..4d97803f4dbb 100644
--- a/packages/CredentialManager/res/values-el/strings.xml
+++ b/packages/CredentialManager/res/values-el/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential Manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Ακύρωση"</string>
<string name="string_continue" msgid="1346732695941131882">"Συνέχεια"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Περισσότερες επιλογές"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Αποθ. με άλλο τρόπο"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Μάθετε περισσότερα"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Εμφάνιση κωδικού πρόσβασης"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Απόκρυψη κωδικού πρόσβασης"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"στοιχεία σύνδεσης"</string>
<string name="sign_in_info" msgid="2627704710674232328">"στοιχεία σύνδεσης"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Αποθήκευση <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> σε"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Θέλετε να δημιουργήσετε ένα κλειδί πρόσβασης σε κάποια άλλη συσκευή;"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Θέλετε να αποθηκεύσετε τον κωδικό πρόσβασης σε κάποια άλλη συσκευή;"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Θέλετε να αποθηκεύσετε τα στοιχεία σύνδεσης σε κάποια άλλη συσκευή;"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Να χρησιμοποιηθεί το <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> για όλες τις συνδέσεις σας;"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Αυτός ο διαχειριστής κωδικών πρόσβασης για τον χρήστη <xliff:g id="USERNAME">%1$s</xliff:g> θα αποθηκεύει τους κωδικούς πρόσβασης και τα κλειδιά πρόσβασης, για πιο εύκολη πρόσβαση"</string>
<string name="set_as_default" msgid="4415328591568654603">"Ορισμός ως προεπιλογής"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Κλείσιμο"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Παράβλεψη"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Να χρησιμοποιηθεί το αποθηκευμένο κλειδί πρόσβασης για την εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>;"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Χρήση του αποθηκευμένου κωδικού πρόσβασης για την εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>;"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Χρήση της σύνδεσής σας για την εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>;"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Ξεκλείδωμα των επιλογών σύνδεσης για την εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>;"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Επιλογή αποθηκευμένου κλειδιού πρόσβασης για την εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Επιλογή αποθηκευμένου κωδικού πρόσβασης για την εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Επιλογή αποθηκευμένων στοιχείων σύνδεσης για την εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Επιλέξτε μια σύνδεση για την εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Επιλογή ενέργειας για την εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>;"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Να χρησιμοποιηθούν αυτές οι πληροφορίες στην εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g>;"</string>
diff --git a/packages/CredentialManager/res/values-en-rAU/strings.xml b/packages/CredentialManager/res/values-en-rAU/strings.xml
index 2da5f404e91d..7b80db05da7c 100644
--- a/packages/CredentialManager/res/values-en-rAU/strings.xml
+++ b/packages/CredentialManager/res/values-en-rAU/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancel"</string>
<string name="string_continue" msgid="1346732695941131882">"Continue"</string>
- <string name="string_more_options" msgid="7990658711962795124">"More options"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Save another way"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Learn more"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Show password"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Hide password"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"sign-ins"</string>
<string name="sign_in_info" msgid="2627704710674232328">"sign-in info"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Save <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> to"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Create passkey on another device?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Save password on another device?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Save sign-in on another device?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Use <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> for all your sign-ins?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"This password manager for <xliff:g id="USERNAME">%1$s</xliff:g> will store your passwords and passkeys to help you easily sign in"</string>
<string name="set_as_default" msgid="4415328591568654603">"Set as default"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Close"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Dismiss"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Use your saved passkey for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Use your saved password for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Use your sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Unlock sign-in options for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Choose a saved passkey for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Choose a saved password for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Choose a saved sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Choose a sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Choose an option for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Use this info for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-en-rCA/strings.xml b/packages/CredentialManager/res/values-en-rCA/strings.xml
index 659952b82e31..b17361635df9 100644
--- a/packages/CredentialManager/res/values-en-rCA/strings.xml
+++ b/packages/CredentialManager/res/values-en-rCA/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential Manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancel"</string>
<string name="string_continue" msgid="1346732695941131882">"Continue"</string>
- <string name="string_more_options" msgid="7990658711962795124">"More options"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Save another way"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Learn more"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Show password"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Hide password"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"sign-ins"</string>
<string name="sign_in_info" msgid="2627704710674232328">"sign-in info"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Save <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> to"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Create passkey on another device?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Save password on another device?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Save sign-in on another device?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Use <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> for all your sign-ins?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"This password manager for <xliff:g id="USERNAME">%1$s</xliff:g> will store your passwords and passkeys to help you easily sign in"</string>
<string name="set_as_default" msgid="4415328591568654603">"Set as default"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Close"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Dismiss"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Use your saved passkey for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Use your saved password for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Use your sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Unlock sign-in options for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Choose a saved passkey for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Choose a saved password for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Choose a saved sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Choose a sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Choose an option for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Use this info on <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-en-rGB/strings.xml b/packages/CredentialManager/res/values-en-rGB/strings.xml
index 2da5f404e91d..7b80db05da7c 100644
--- a/packages/CredentialManager/res/values-en-rGB/strings.xml
+++ b/packages/CredentialManager/res/values-en-rGB/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancel"</string>
<string name="string_continue" msgid="1346732695941131882">"Continue"</string>
- <string name="string_more_options" msgid="7990658711962795124">"More options"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Save another way"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Learn more"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Show password"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Hide password"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"sign-ins"</string>
<string name="sign_in_info" msgid="2627704710674232328">"sign-in info"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Save <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> to"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Create passkey on another device?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Save password on another device?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Save sign-in on another device?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Use <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> for all your sign-ins?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"This password manager for <xliff:g id="USERNAME">%1$s</xliff:g> will store your passwords and passkeys to help you easily sign in"</string>
<string name="set_as_default" msgid="4415328591568654603">"Set as default"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Close"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Dismiss"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Use your saved passkey for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Use your saved password for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Use your sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Unlock sign-in options for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Choose a saved passkey for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Choose a saved password for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Choose a saved sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Choose a sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Choose an option for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Use this info for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-en-rIN/strings.xml b/packages/CredentialManager/res/values-en-rIN/strings.xml
index 2da5f404e91d..7b80db05da7c 100644
--- a/packages/CredentialManager/res/values-en-rIN/strings.xml
+++ b/packages/CredentialManager/res/values-en-rIN/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancel"</string>
<string name="string_continue" msgid="1346732695941131882">"Continue"</string>
- <string name="string_more_options" msgid="7990658711962795124">"More options"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Save another way"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Learn more"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Show password"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Hide password"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"sign-ins"</string>
<string name="sign_in_info" msgid="2627704710674232328">"sign-in info"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Save <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> to"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Create passkey on another device?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Save password on another device?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Save sign-in on another device?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Use <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> for all your sign-ins?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"This password manager for <xliff:g id="USERNAME">%1$s</xliff:g> will store your passwords and passkeys to help you easily sign in"</string>
<string name="set_as_default" msgid="4415328591568654603">"Set as default"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Close"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Dismiss"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Use your saved passkey for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Use your saved password for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Use your sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Unlock sign-in options for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Choose a saved passkey for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Choose a saved password for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Choose a saved sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Choose a sign-in for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Choose an option for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Use this info for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-en-rXC/strings.xml b/packages/CredentialManager/res/values-en-rXC/strings.xml
index 4607821fb59a..c3eeb04148e4 100644
--- a/packages/CredentialManager/res/values-en-rXC/strings.xml
+++ b/packages/CredentialManager/res/values-en-rXC/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‏‏‏‎‎‎‎‎‎‎‎‏‎‏‏‎‎‏‎‏‎‎‏‎‎‎‎‏‎‎‎‏‎‏‎‏‎‏‏‏‎‎‎‏‎‏‏‎‏‎‏‎‎‎‏‎‏‎‎‎Credential Manager‎‏‎‎‏‎"</string>
<string name="string_cancel" msgid="6369133483981306063">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‎‎‎‏‏‎‎‎‏‏‏‎‏‏‎‏‎‏‎‎‏‎‏‎‎‎‏‎‎‏‎‏‏‏‏‏‎‎‎‎‎‎‎‏‏‏‏‎‎‎‏‏‎‎‏‏‏‏‎Cancel‎‏‎‎‏‎"</string>
<string name="string_continue" msgid="1346732695941131882">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‎‏‎‏‎‏‏‎‎‎‎‏‎‎‎‏‏‏‎‎‏‎‎‎‎‎‎‎‏‏‎‏‏‎‎‏‏‏‏‏‎‎‏‏‎‏‎‏‏‏‎‎‏‏‎‏‎‏‎‎Continue‎‏‎‎‏‎"</string>
- <string name="string_more_options" msgid="7990658711962795124">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‏‎‏‏‏‎‎‏‎‎‏‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‎‎‎‏‏‏‏‎‎‎‏‏‏‎‏‎‎‎More options‎‏‎‎‏‎"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‏‏‎‎‏‎‏‏‎‏‏‎‎‏‎‏‏‎‎‏‏‏‏‏‎‏‎‎‏‏‎‎‏‎‏‎‎‎‎‎‎‎‏‎‎‎‎‏‏‏‎‏‎‎‎‎‎‎‎‎Save another way‎‏‎‎‏‎"</string>
<string name="string_learn_more" msgid="4541600451688392447">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‏‏‏‎‎‎‎‎‏‏‏‎‎‎‎‎‎‎‏‏‎‎‎‏‏‎‎‎‏‏‎‎‎‏‎‏‎‏‎‎‎‏‏‏‏‏‎‎‏‏‎‏‏‏‏‏‏‏‏‎Learn more‎‏‎‎‏‎"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‏‎‏‏‎‎‏‎‎‎‏‎‏‎‏‎‏‏‏‏‎‏‎‏‏‏‎‏‎‎‎‎‏‎‎‎‏‏‏‏‏‎‏‎‎‏‎‎‎‏‎‏‎‎‎‎‏‏‏‎Show password‎‏‎‎‏‎"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‏‏‎‏‏‏‏‎‎‎‏‎‏‏‏‎‎‏‏‎‎‏‏‎‎‏‎‏‏‏‏‎‏‎‎‎‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‎‏‏‏‏‎‎‎Hide password‎‏‎‎‏‎"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‎‎‎‏‎‏‎‏‏‏‏‏‏‏‏‎‏‎‎‎‎‏‏‏‏‏‏‏‎‏‏‎‎‏‏‏‏‎‎‏‏‎‏‎‎‎‎‏‎‎‏‎‎‎‎‏‏‎‎‎‎sign-ins‎‏‎‎‏‎"</string>
<string name="sign_in_info" msgid="2627704710674232328">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‏‎‎‎‏‏‏‎‏‏‏‎‏‏‏‏‎‏‏‏‎‎‎‎‎‏‏‎‎‎‏‏‏‏‎‎‏‎‏‏‎‏‏‏‎‏‏‎‏‎‎‎‎‎‎‏‎‎‎‎sign-in info‎‏‎‎‏‎"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‏‎‎‎‎‎‎‏‎‎‎‎‎‎‏‎‏‏‏‎‏‏‎‏‏‎‎‏‎‎‎‎‎‎‏‎‏‎‎‏‎‏‏‏‎‎‏‎‎‎‎‎‏‏‏‏‏‎‏‎Save ‎‏‎‎‏‏‎<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>‎‏‎‎‏‏‏‎ to‎‏‎‎‏‎"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‎‎‎‏‏‎‎‎‎‎‎‏‎‎‏‎‏‏‏‏‏‎‎‏‎‏‎‎‎‎‏‎‏‎‎‏‏‏‎‎‏‎‏‎‎‎‏‏‎‎‎‏‎‏‎‎‏‎‏‎Create passkey on another device?‎‏‎‎‏‎"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‎‎‎‏‏‏‎‎‏‎‏‎‎‎‏‎‎‎‏‏‎‎‎‏‏‎‏‎‏‏‏‎‏‎‎‏‏‎‎‏‎‎‎‎‏‎‏‎‎‎‏‏‎‏‏‎‏‏‏‎Save password on another device?‎‏‎‎‏‎"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‏‏‏‎‎‏‏‏‏‏‏‎‎‎‎‏‎‏‎‎‎‎‎‎‏‏‏‏‎‎‎‏‏‎‏‎‎‎‏‎‏‏‏‎‏‏‏‎‏‏‎‎‎‏‎‎‏‎‎‎Save sign-in on another device?‎‏‎‎‏‎"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‎‏‎‎‏‎‎‏‏‎‏‎‎‎‎‎‏‎‏‏‎‎‏‏‏‎‎‎‎‎‎‎‏‎‎‏‎‏‏‏‎‏‏‏‎‎‏‎‏‏‏‏‎‎‏‎‏‎‏‎Use ‎‏‎‎‏‏‎<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎ for all your sign-ins?‎‏‎‎‏‎"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‏‎‏‏‏‎‏‏‏‏‎‏‎‎‎‏‎‎‎‏‎‎‏‏‎‎‎‏‏‏‏‏‎‎‏‏‏‏‎‏‎‎‎‎‎‏‏‎‎‏‎‏‏‏‎‏‎‏‎‏‎This password manager for ‎‏‎‎‏‏‎<xliff:g id="USERNAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎ will store your passwords and passkeys to help you easily sign in‎‏‎‎‏‎"</string>
<string name="set_as_default" msgid="4415328591568654603">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‏‎‏‎‏‎‎‎‏‏‎‎‏‏‎‎‏‎‏‏‏‏‏‎‏‎‏‏‏‏‎‏‎‏‏‎‎‎‏‎‎‏‏‎‏‎‏‎‎‎‏‎‎‎‎‏‎‏‏‎Set as default‎‏‎‎‏‎"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‎‎‎‎‎‏‎‎‏‎‏‎‏‎‏‏‎‏‎‏‎‎‎‎‎‎‎‏‎‏‏‎‎‏‎‏‎‏‏‎‎‎‎‏‎‏‎‏‎‏‏‏‎‎‏‎‏‏‏‎Close‎‏‎‎‏‎"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‏‏‏‏‏‏‏‏‎‎‎‎‏‎‎‏‏‎‏‏‏‏‎‏‎‎‎‎‏‏‏‎‏‎‏‎‏‎‎‎‎‎‏‏‎‎‎‏‎‎‎‎‏‎‏‏‎‎‎‎Dismiss‎‏‎‎‏‎"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‎‏‎‎‎‏‏‎‎‏‏‏‎‎‎‏‎‏‎‏‏‏‎‏‎‎‎‎‎‏‏‎‎‏‏‎‎‏‏‏‏‏‎‎‏‏‏‏‎‎‎‎‎‎‏‏‏‎Use your saved passkey for ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎?‎‏‎‎‏‎"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‎‎‎‏‎‏‎‏‏‏‏‎‏‏‎‎‎‏‏‎‏‎‎‎‏‎‏‎‏‏‏‎‏‏‏‎‏‎‏‏‏‎‏‏‏‎‏‎‎‎‎‏‎‎‏‎‏‎‎‎Use your saved password for ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎?‎‏‎‎‏‎"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‎‏‎‏‏‏‏‎‏‏‎‏‏‎‏‎‎‏‎‎‎‏‎‏‎‎‏‎‎‎‎‎‏‎‏‎‏‎‏‎‏‏‎‎‏‎‎‎‎‎‏‏‎‎‎‏‎‎‏‎Use your sign-in for ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎?‎‏‎‎‏‎"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‎‎‏‏‎‎‎‏‏‎‎‎‏‏‎‎‏‏‏‏‏‏‏‏‎‎‏‎‎‏‎‏‎‏‏‏‎‎‏‎‏‎‏‎‎‎‏‎‎‎‏‏‎‏‏‎‎‎‏‎Unlock sign-in options for ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎?‎‏‎‎‏‎"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‏‎‏‎‏‏‏‏‎‏‏‎‎‎‏‎‏‎‎‎‏‏‏‏‏‏‎‎‎‎‏‏‎‏‏‏‎‏‎‎‎‎‏‎‏‏‎‏‏‏‏‏‎‏‎‎Choose a saved passkey for ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‏‏‏‏‏‏‎‏‏‏‎‎‏‏‎‏‏‎‏‎‎‏‏‏‏‏‎‏‏‎‎‏‏‎‎‏‏‎‎‏‏‎‎‎‏‎‎‏‎‏‏‎‎‎‏‎‏‎‏‎Choose a saved password for ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‎‎‏‏‎‎‏‎‏‏‎‏‎‏‎‎‎‎‎‏‏‎‎‏‏‎‏‎‏‎‏‎‎‎‏‏‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‏‏‏‏‏‎‎‎‎Choose a saved sign-in for ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‎‏‎‎‏‎‎‏‏‏‏‏‏‎‎‎‎‏‏‏‏‎‎‏‏‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‎‏‏‏‎‎‎‏‏‏‏‎‎‏‎‎‎‏‎‎Choose a sign-in for ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‎‏‎‏‎‎‎‎‏‏‏‏‏‎‏‎‎‏‏‏‎‏‎‎‏‎‎‎‏‏‏‎‎‎‏‎‎‏‎‏‏‏‏‎‏‎‏‏‎‏‎‏‏‏‏‏‎‎‏‏‎Choose an option for ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎?‎‏‎‎‏‎"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‎‎‎‏‏‎‏‏‏‏‏‏‎‎‏‏‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‎‎‎‏‎‏‎‎Use this info on ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎?‎‏‎‎‏‎"</string>
diff --git a/packages/CredentialManager/res/values-es-rUS/strings.xml b/packages/CredentialManager/res/values-es-rUS/strings.xml
index c4ee1de831b2..f6a5dcbc839f 100644
--- a/packages/CredentialManager/res/values-es-rUS/strings.xml
+++ b/packages/CredentialManager/res/values-es-rUS/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential Manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancelar"</string>
<string name="string_continue" msgid="1346732695941131882">"Continuar"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Más opciones"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Guardar otra forma"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Más información"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Mostrar contraseña"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ocultar contraseña"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"accesos"</string>
<string name="sign_in_info" msgid="2627704710674232328">"información de acceso"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Guardar <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> en"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"¿Quieres crear una llave de acceso en otro dispositivo?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"¿Quieres guardar la contraseña en otro dispositivo?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"¿Quieres guardar las credenciales de acceso en otro dispositivo?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"¿Quieres usar <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> para todos tus accesos?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Este administrador de contraseñas para <xliff:g id="USERNAME">%1$s</xliff:g> almacenará tus contraseñas y llaves de acceso para ayudarte a acceder fácilmente"</string>
<string name="set_as_default" msgid="4415328591568654603">"Establecer como predeterminado"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Cerrar"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Descartar"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"¿Quieres usar tu llave de acceso guardada para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"¿Quieres usar la contraseña guardada para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"¿Quieres usar tu acceso para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"¿Quieres desbloquear las opciones de acceso para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Elige una llave de acceso guardada para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Elige una contraseña guardada para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Elige un acceso guardado para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Elige un acceso para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"¿Quieres una opción para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"¿Quieres usar esta información en <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-es/strings.xml b/packages/CredentialManager/res/values-es/strings.xml
index 20d7c8a8a61e..5fdfa5d7679c 100644
--- a/packages/CredentialManager/res/values-es/strings.xml
+++ b/packages/CredentialManager/res/values-es/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Gestor de credenciales"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancelar"</string>
<string name="string_continue" msgid="1346732695941131882">"Continuar"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Más opciones"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Guardar de otra forma"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Más información"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Mostrar contraseña"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ocultar contraseña"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"inicios de sesión"</string>
<string name="sign_in_info" msgid="2627704710674232328">"información de inicio de sesión"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Guardar <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> en"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"¿Crear llave de acceso en otro dispositivo?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"¿Guardar contraseña en otro dispositivo?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"¿Guardar inicio de sesión en otro dispositivo?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"¿Usar <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> para todos tus inicios de sesión?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Este gestor de contraseñas de <xliff:g id="USERNAME">%1$s</xliff:g> almacenará tus contraseñas y llaves de acceso para que puedas iniciar sesión fácilmente"</string>
<string name="set_as_default" msgid="4415328591568654603">"Fijar como predeterminado"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Cerrar"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Cerrar"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"¿Usar la llave de acceso guardada para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"¿Usar la contraseña que tienes guardada para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"¿Usar tu inicio de sesión en <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"¿Desbloquear las opciones de inicio de sesión de <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Elige una llave de acceso guardada para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Elige una contraseña guardada para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Elige un inicio de sesión guardado para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Elige un inicio de sesión para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"¿Elegir una opción para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"¿Usar esta información en <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-et/strings.xml b/packages/CredentialManager/res/values-et/strings.xml
index 15ce37e94abf..97dbe4d19d9e 100644
--- a/packages/CredentialManager/res/values-et/strings.xml
+++ b/packages/CredentialManager/res/values-et/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Mandaatide haldur"</string>
<string name="string_cancel" msgid="6369133483981306063">"Tühista"</string>
<string name="string_continue" msgid="1346732695941131882">"Jätka"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Rohkem valikuid"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Salvesta muul viisil"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Lisateave"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Kuva parool"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Peida parool"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"sisselogimisandmed"</string>
<string name="sign_in_info" msgid="2627704710674232328">"sisselogimisteave"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Salvesta <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Kas luua pääsuvõti teises seadmes?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Kas salvestada parool teises seadmes?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Kas salvestada sisselogimisandmed teises seadmes?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Kas kasutada teenust <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> kõigi teie sisselogimisandmete puhul?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Konto <xliff:g id="USERNAME">%1$s</xliff:g> paroolihaldur salvestab teie paroolid ja pääsuvõtmed, et aidata teil hõlpsalt sisse logida"</string>
<string name="set_as_default" msgid="4415328591568654603">"Määra vaikeseadeks"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Sule"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Loobu"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Kas kasutada rakenduse <xliff:g id="APP_NAME">%1$s</xliff:g> jaoks salvestatud pääsuvõtit?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Kas kasutada rakenduse <xliff:g id="APP_NAME">%1$s</xliff:g> puhul salvestatud parooli?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Kas soovite rakendusse <xliff:g id="APP_NAME">%1$s</xliff:g> sisselogimiseks kasutada oma mandaati?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Kas avada rakenduse <xliff:g id="APP_NAME">%1$s</xliff:g> jaoks sisselogimisvalikud?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Valige rakenduse <xliff:g id="APP_NAME">%1$s</xliff:g> jaoks salvestatud pääsuvõti"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Valige rakenduse <xliff:g id="APP_NAME">%1$s</xliff:g> jaoks salvestatud parool"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Valige rakenduse <xliff:g id="APP_NAME">%1$s</xliff:g> jaoks salvestatud sisselogimisandmed"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Valige rakendusse <xliff:g id="APP_NAME">%1$s</xliff:g> sisselogimiseks mandaat"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Kas teha valik rakendusele <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Kas soovite kasutada seda teavet rakenduses <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-eu/strings.xml b/packages/CredentialManager/res/values-eu/strings.xml
index 3c7c2d5f3754..8316283a83ff 100644
--- a/packages/CredentialManager/res/values-eu/strings.xml
+++ b/packages/CredentialManager/res/values-eu/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Kredentzialen kudeatzailea"</string>
<string name="string_cancel" msgid="6369133483981306063">"Utzi"</string>
<string name="string_continue" msgid="1346732695941131882">"Egin aurrera"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Aukera gehiago"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Gorde beste modu batera"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Lortu informazio gehiago"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Erakutsi pasahitza"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ezkutatu pasahitza"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"kredentzialak"</string>
<string name="sign_in_info" msgid="2627704710674232328">"saioa hasteko informazioa"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Gorde <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> hemen:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Beste gailu batean sarbide-gako bat sortu nahi duzu?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Beste gailu batean pasahitza gorde nahi duzu?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Beste gailu batean saioa hasteko modua gorde nahi duzu?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> erabili nahi duzu kredentzial guztietarako?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> erabiltzailearen pasahitz-kudeatzaile honek pasahitzak eta sarbide-gakoak gordeko ditu saioa erraz has dezazun"</string>
<string name="set_as_default" msgid="4415328591568654603">"Ezarri lehenetsi gisa"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Itxi"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Baztertu"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> aplikaziorako gorde duzun sarbide-gakoa erabili nahi duzu?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> aplikaziorako gordetako pasahitza erabili nahi duzu?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> zerbitzuan saioa hasteko kredentzialak erabili nahi dituzu?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> aplikazioan saioa hasteko aukerak desblokeatu nahi dituzu?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Aukeratu <xliff:g id="APP_NAME">%1$s</xliff:g> aplikaziorako gordetako sarbide-gakoa"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Aukeratu <xliff:g id="APP_NAME">%1$s</xliff:g> aplikaziorako gordetako pasahitza"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Aukeratu <xliff:g id="APP_NAME">%1$s</xliff:g> aplikaziorako gordetako kredentzialak"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Aukeratu <xliff:g id="APP_NAME">%1$s</xliff:g> zerbitzuan saioa hasteko kredentzialak"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> aplikaziorako aukera bat hautatu nahi duzu?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> aplikazioan erabili nahi duzu informazio hori?"</string>
diff --git a/packages/CredentialManager/res/values-fa/strings.xml b/packages/CredentialManager/res/values-fa/strings.xml
index 5ce9678482ae..cee37bb50d68 100644
--- a/packages/CredentialManager/res/values-fa/strings.xml
+++ b/packages/CredentialManager/res/values-fa/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"مدیر اطلاعات اعتباری"</string>
<string name="string_cancel" msgid="6369133483981306063">"لغو"</string>
<string name="string_continue" msgid="1346732695941131882">"ادامه"</string>
- <string name="string_more_options" msgid="7990658711962795124">"گزینه‌های بیشتر"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"ذخیره به روشی دیگر"</string>
<string name="string_learn_more" msgid="4541600451688392447">"بیشتر بدانید"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"نمایش گذرواژه"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"پنهان کردن گذرواژه"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"ورود به سیستم‌ها"</string>
<string name="sign_in_info" msgid="2627704710674232328">"اطلاعات ورود به سیستم"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"ذخیره <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> در"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"گذرکلید در دستگاه دیگری ایجاد شود؟"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"گذرواژه در دستگاه دیگری ذخیره شود؟"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"اطلاعات ورود به سیستم در دستگاه دیگری ذخیره شود؟"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"از <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> برای همه ورود به سیستم‌ها استفاده شود؟"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"این مدیر گذرواژه برای <xliff:g id="USERNAME">%1$s</xliff:g> گذرکلیدها و گذرواژه‌های شما را ذخیره می‌کند تا به‌راحتی بتوانید به سیستم وارد شوید"</string>
<string name="set_as_default" msgid="4415328591568654603">"تنظیم به‌عنوان پیش‌فرض"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"بستن"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"بستن"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"از گذرکلید ذخیره‌شده برای «<xliff:g id="APP_NAME">%1$s</xliff:g>» استفاده شود؟"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"از گذرواژه ذخیره‌شده‌تان برای <xliff:g id="APP_NAME">%1$s</xliff:g> استفاده شود؟"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"از روش ورود به سیستم شما برای <xliff:g id="APP_NAME">%1$s</xliff:g> استفاده شود؟"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"گزینه‌های ورود به سیستم برای <xliff:g id="APP_NAME">%1$s</xliff:g> باز شود؟"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"گذرکلید ذخیره‌شده‌ای را برای <xliff:g id="APP_NAME">%1$s</xliff:g> انتخاب کنید"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"گذرواژه ذخیره‌شده‌ای را برای <xliff:g id="APP_NAME">%1$s</xliff:g> انتخاب کنید"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"اطلاعات ورود به سیستم ذخیره‌شده‌ای را برای <xliff:g id="APP_NAME">%1$s</xliff:g> انتخاب کنید"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"انتخاب روش ورود به سیستم برای <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"گزینه‌ای را برای <xliff:g id="APP_NAME">%1$s</xliff:g> انتخاب کنید؟"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"از این اطلاعات در <xliff:g id="APP_NAME">%1$s</xliff:g> استفاده شود؟"</string>
diff --git a/packages/CredentialManager/res/values-fi/strings.xml b/packages/CredentialManager/res/values-fi/strings.xml
index 9da4cd9353ea..fff45c9df29d 100644
--- a/packages/CredentialManager/res/values-fi/strings.xml
+++ b/packages/CredentialManager/res/values-fi/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Kirjautumistietojen hallinta"</string>
<string name="string_cancel" msgid="6369133483981306063">"Peru"</string>
<string name="string_continue" msgid="1346732695941131882">"Jatka"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Lisäasetukset"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Tallenna eri tavalla"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Lue lisää"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Näytä salasana"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Piilota salasana"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"sisäänkirjautumiset"</string>
<string name="sign_in_info" msgid="2627704710674232328">"kirjautumistiedot"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Tallenna <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> tänne:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Luodaanko avainkoodi toisella laitteella?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Tallennetaanko salasana toisella laitteella?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Tallennetaanko sisäänkirjautuminen toisella laitteella?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Otetaanko <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> käyttöön kaikissa sisäänkirjautumisissa?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Tämä salasanojen ylläpitotyökalu, jota <xliff:g id="USERNAME">%1$s</xliff:g> käyttää, tallentaa salasanat ja avainkoodit, jotta voit kirjautua helposti sisään"</string>
<string name="set_as_default" msgid="4415328591568654603">"Aseta oletukseksi"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Sulje"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Sulje"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Käytetäänkö tallennettua avainkoodiasi täällä: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Käytetäänkö tallennettua salasanaasi sovelluksessa <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Käytetäänkö kirjautumistapaa: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Avataanko kirjautumisvaihtoehdot (<xliff:g id="APP_NAME">%1$s</xliff:g>)?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g>: valitse tallennettu avainkoodi"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g>: valitse tallennettu salasana"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g>: valitse tallennetut kirjautumistiedot"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Valitse kirjautumistapa: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Valitaanko vaihtoehto, jota <xliff:g id="APP_NAME">%1$s</xliff:g> käyttää?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Saako <xliff:g id="APP_NAME">%1$s</xliff:g> käyttää näitä tietoja?"</string>
diff --git a/packages/CredentialManager/res/values-fr-rCA/strings.xml b/packages/CredentialManager/res/values-fr-rCA/strings.xml
index 79e2d0a1b22c..3e72a11865c5 100644
--- a/packages/CredentialManager/res/values-fr-rCA/strings.xml
+++ b/packages/CredentialManager/res/values-fr-rCA/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Gestionnaire d\'identifiants"</string>
<string name="string_cancel" msgid="6369133483981306063">"Annuler"</string>
<string name="string_continue" msgid="1346732695941131882">"Continuer"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Autres options"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Enregistrer autrement"</string>
<string name="string_learn_more" msgid="4541600451688392447">"En savoir plus"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Afficher le mot de passe"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Masquer le mot de passe"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"connexions"</string>
<string name="sign_in_info" msgid="2627704710674232328">"renseignements de connexion"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Enregistrer la <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> dans"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Créer une clé d\'accès sur un autre appareil?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Enregistrer le mot de passe sur un autre appareil?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Enregistrer l\'authentifiant de connexion sur un autre appareil?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Utiliser <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> pour toutes vos connexions?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Ce gestionnaire de mots de passe de <xliff:g id="USERNAME">%1$s</xliff:g> stockera vos mots de passe et vos clés d\'accès pour vous permettre de vous connecter facilement"</string>
<string name="set_as_default" msgid="4415328591568654603">"Définir par défaut"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Fermer"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Fermer"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Utiliser votre clé d\'accès enregistrée pour <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Utiliser votre mot de passe enregistré pour <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Utiliser votre identifiant de connexion pour <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Déverrouiller les options de connexion pour <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Choisissez une clé d\'accès enregistrée pour <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Choisissez un mot de passe enregistré pour <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Choisissez une connexion enregistrée pour <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Choisir un identifiant de connexion pour <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Choisir une option pour <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Utiliser ces renseignements dans <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-fr/strings.xml b/packages/CredentialManager/res/values-fr/strings.xml
index 9f42a04da6cd..e042815a0452 100644
--- a/packages/CredentialManager/res/values-fr/strings.xml
+++ b/packages/CredentialManager/res/values-fr/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Gestionnaire d\'identifiants"</string>
<string name="string_cancel" msgid="6369133483981306063">"Annuler"</string>
<string name="string_continue" msgid="1346732695941131882">"Continuer"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Autres options"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Sauver autrement"</string>
<string name="string_learn_more" msgid="4541600451688392447">"En savoir plus"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Afficher le mot de passe"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Masquer le mot de passe"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"connexions"</string>
<string name="sign_in_info" msgid="2627704710674232328">"informations de connexion"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Enregistrer la <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> dans"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Créer une clé d\'accès sur un autre appareil ?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Enregistrer le mot de passe sur un autre appareil ?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Enregistrer les identifiants de connexion sur un autre appareil ?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Utiliser <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> pour toutes vos connexions ?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Ce gestionnaire de mots de passe pour <xliff:g id="USERNAME">%1$s</xliff:g> stockera vos mots de passe et clés d\'accès pour vous permettre de vous connecter facilement"</string>
<string name="set_as_default" msgid="4415328591568654603">"Définir par défaut"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Fermer"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Fermer"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Utiliser votre clé d\'accès enregistrée pour <xliff:g id="APP_NAME">%1$s</xliff:g> ?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Utiliser votre mot de passe enregistré pour <xliff:g id="APP_NAME">%1$s</xliff:g> ?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Utiliser vos infos de connexion pour <xliff:g id="APP_NAME">%1$s</xliff:g> ?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Déverrouiller les options de connexion pour <xliff:g id="APP_NAME">%1$s</xliff:g> ?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Choisir une clé d\'accès enregistrée pour <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Choisir un mot de passe enregistré pour <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Choisir des informations de connexion enregistrées pour <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Choisir des infos de connexion pour <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Choisir une option pour <xliff:g id="APP_NAME">%1$s</xliff:g> ?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Utiliser ces informations dans <xliff:g id="APP_NAME">%1$s</xliff:g> ?"</string>
diff --git a/packages/CredentialManager/res/values-gl/strings.xml b/packages/CredentialManager/res/values-gl/strings.xml
index 66df54d097a2..79e0b5e97f60 100644
--- a/packages/CredentialManager/res/values-gl/strings.xml
+++ b/packages/CredentialManager/res/values-gl/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Xestor de credenciais"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancelar"</string>
<string name="string_continue" msgid="1346732695941131882">"Continuar"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Máis opcións"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Gardar doutro xeito"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Máis información"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Mostrar contrasinal"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ocultar contrasinal"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"métodos de inicio de sesión"</string>
<string name="sign_in_info" msgid="2627704710674232328">"información de inicio de sesión"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Gardar <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> en"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Queres crear unha clave de acceso noutro dispositivo?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Queres gardar o contrasinal noutro dispositivo?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Queres gardar o inicio de sesión noutro dispositivo?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Queres usar <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> cada vez que inicies sesión?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Este xestor de contrasinais de <xliff:g id="USERNAME">%1$s</xliff:g> almacenará os teus contrasinais e claves de acceso para axudarche a iniciar sesión facilmente"</string>
<string name="set_as_default" msgid="4415328591568654603">"Establecer como predeterminado"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Pechar"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Pechar"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Queres usar a clave de acceso gardada para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Queres usar o contrasinal gardado para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Queres usar o teu inicio de sesión para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Queres desbloquear as opcións de inicio de sesión para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Escolle unha clave de acceso gardada para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Escolle un contrasinal gardado para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Escolle un método de inicio de sesión gardado para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Escolle un inicio de sesión para <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Queres escoller unha opción para <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Queres usar esta información en <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-gu/strings.xml b/packages/CredentialManager/res/values-gu/strings.xml
index 3f9754c2d47d..c3c5b629a83b 100644
--- a/packages/CredentialManager/res/values-gu/strings.xml
+++ b/packages/CredentialManager/res/values-gu/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"લૉગ ઇન વિગતોના મેનેજર"</string>
<string name="string_cancel" msgid="6369133483981306063">"રદ કરો"</string>
<string name="string_continue" msgid="1346732695941131882">"ચાલુ રાખો"</string>
- <string name="string_more_options" msgid="7990658711962795124">"વધુ વિકલ્પો"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"અન્ય રીતે સાચવો"</string>
<string name="string_learn_more" msgid="4541600451688392447">"વધુ જાણો"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"પાસવર્ડ બતાવો"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"પાસવર્ડ છુપાવો"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"સાઇન-ઇન"</string>
<string name="sign_in_info" msgid="2627704710674232328">"સાઇન-ઇન કરવાની માહિતી"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>ને આમાં સાચવો"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"બીજા કોઈ ડિવાઇસ પર પાસકી બનાવીએ?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"બીજા કોઈ ડિવાઇસ પર પાસવર્ડ સાચવીએ?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"બીજા કોઈ ડિવાઇસ પર સાઇન-ઇન સાચવીએ?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"શું તમારા બધા સાઇન-ઇન માટે <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>નો ઉપયોગ કરીએ?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> માટેના આ પાસવર્ડ મેનેજર તમને સરળતાથી સાઇન ઇન કરવામાં સહાય કરવા માટે, તમારા પાસવર્ડ અને પાસકી સ્ટોર કરશે"</string>
<string name="set_as_default" msgid="4415328591568654603">"ડિફૉલ્ટ તરીકે સેટ કરો"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"બંધ કરો"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"છોડી દો"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> માટે શું તમારી સાચવેલી પાસકીનો ઉપયોગ કરીએ?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"શું <xliff:g id="APP_NAME">%1$s</xliff:g> માટે તમારા સાચવેલા પાસવર્ડનો ઉપયોગ કરીએ?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"શું <xliff:g id="APP_NAME">%1$s</xliff:g>માં સાઇન ઇન કરવા માટે તમારી આ લૉગ ઇન વિગતોનો ઉપયોગ કરીએ?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> માટે સાઇન ઇન વિકલ્પો અનલૉક કરીએ?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> માટે કોઈ સાચવેલી પાસકી પસંદ કરો"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> માટે કોઈ સાચવેલો પાસવર્ડ પસંદ કરો"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> માટે કોઈ સાચવેલું સાઇન-ઇન પસંદ કરો"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g>માં સાઇન ઇન કરવાની કોઈ રીત પસંદ કરો"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g>નો વિકલ્પ પસંદ કરીએ?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> પર આ માહિતીનો ઉપયોગ કરીએ?"</string>
diff --git a/packages/CredentialManager/res/values-hi/strings.xml b/packages/CredentialManager/res/values-hi/strings.xml
index dcb039b44b32..d986a935fad4 100644
--- a/packages/CredentialManager/res/values-hi/strings.xml
+++ b/packages/CredentialManager/res/values-hi/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"CredentialManager"</string>
<string name="string_cancel" msgid="6369133483981306063">"रद्द करें"</string>
<string name="string_continue" msgid="1346732695941131882">"जारी रखें"</string>
- <string name="string_more_options" msgid="7990658711962795124">"ज़्यादा विकल्प"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"दूसरा तरीका सेव करें"</string>
<string name="string_learn_more" msgid="4541600451688392447">"ज़्यादा जानें"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"पासवर्ड दिखाएं"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"पासवर्ड छिपाएं"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"साइन इन"</string>
<string name="sign_in_info" msgid="2627704710674232328">"साइन-इन की जानकारी"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> को यहां सेव करें"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"क्या आपको किसी दूसरे डिवाइस में पासकी बनानी है?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"क्या आपको किसी दूसरे डिवाइस में पासवर्ड सेव करना है?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"क्या आपको किसी दूसरे डिवाइस में साइन इन क्रेडेंशियल सेव करने हैं?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"क्या आपको साइन इन से जुड़ी सारी जानकारी सेव करने के लिए, <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> का इस्तेमाल करना है?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> के लिए यह पासवर्ड मैनेजर, आपके पासवर्ड और पासकी सेव करेगा, ताकि आपको साइन इन करने में आसानी हो"</string>
<string name="set_as_default" msgid="4415328591568654603">"डिफ़ॉल्ट के तौर पर सेट करें"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"बंद करें"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"खारिज करें"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"क्या आपको <xliff:g id="APP_NAME">%1$s</xliff:g> पर साइन इन करने के लिए, सेव की गई पासकी का इस्तेमाल करना है?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"क्या आपको <xliff:g id="APP_NAME">%1$s</xliff:g> के लिए सेव किया हुआ पासवर्ड इस्तेमाल करना है?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"क्या आपको <xliff:g id="APP_NAME">%1$s</xliff:g> के लिए अपने साइन-इन क्रेडेंशियल का इस्तेमाल करना है?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"क्या आपको <xliff:g id="APP_NAME">%1$s</xliff:g> में साइन इन करने के विकल्पों को अनलॉक करना है?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> के लिए सेव की गई पासकी चुनें"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> के लिए सेव किया गया पासवर्ड चुनें"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> के लिए सेव किया गया साइन इन क्रेडेंशियल चुनें"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> के लिए साइन-इन क्रेडेंशियल चुनें"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> में साइन इन करने के लिए सेव किए गए विकल्पों में से किसी को चुनना है?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> के लिए, क्या इस जानकारी का इस्तेमाल करना है?"</string>
diff --git a/packages/CredentialManager/res/values-hr/strings.xml b/packages/CredentialManager/res/values-hr/strings.xml
index a337799431d9..9565e3191f45 100644
--- a/packages/CredentialManager/res/values-hr/strings.xml
+++ b/packages/CredentialManager/res/values-hr/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Upravitelj vjerodajnicama"</string>
<string name="string_cancel" msgid="6369133483981306063">"Odustani"</string>
<string name="string_continue" msgid="1346732695941131882">"Nastavi"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Više opcija"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Spremi drugi način"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Saznajte više"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Prikaži zaporku"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Sakrij zaporku"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"prijave"</string>
<string name="sign_in_info" msgid="2627704710674232328">"informacije o prijavi"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Spremi <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> u"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Izraditi pristupni ključ na drugom uređaju?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Spremiti zaporku na drugom uređaju?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Spremiti prijavu na drugom uređaju?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Želite li upotrebljavati uslugu <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> za sve prijave?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Upravitelj zaporki za korisničko ime <xliff:g id="USERNAME">%1$s</xliff:g> pohranit će vaše zaporke i pristupne ključeve radi jednostavnije prijave"</string>
<string name="set_as_default" msgid="4415328591568654603">"Postavi kao zadano"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Zatvori"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Odbaci"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Želite li upotrijebiti spremljeni pristupni ključ za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Želite li upotrijebiti spremljenu zaporku za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Želite li upotrijebiti prijavu za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Želite li otključati opcije za prijavu za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Odaberite spremljeni pristupni ključ za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Odaberite spremljenu zaporku za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Odaberite spremljene podatke za prijavu za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Odaberite prijavu za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Želite li odabrati opciju za <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Želite li koristiti te podatke u aplikaciji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-hu/strings.xml b/packages/CredentialManager/res/values-hu/strings.xml
index e9a03cf5133a..118a77c2f73c 100644
--- a/packages/CredentialManager/res/values-hu/strings.xml
+++ b/packages/CredentialManager/res/values-hu/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Tanúsítványkezelő"</string>
<string name="string_cancel" msgid="6369133483981306063">"Mégse"</string>
<string name="string_continue" msgid="1346732695941131882">"Folytatás"</string>
- <string name="string_more_options" msgid="7990658711962795124">"További lehetőségek"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Mentés más módon"</string>
<string name="string_learn_more" msgid="4541600451688392447">"További információ"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Jelszó megjelenítése"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Jelszó elrejtése"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"bejelentkezési adatok"</string>
<string name="sign_in_info" msgid="2627704710674232328">"bejelentkezési adatok"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> mentése ide:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Létrehoz egy azonosítókulcsot másik eszközön?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Elmenti a jelszót másik eszközön?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Elmenti a bejelentkezési adatokat másik eszközön?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Szeretné a következőt használni az összes bejelentkezési adatához: <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Ez a jelszókezelő fogja tárolni a(z) <xliff:g id="USERNAME">%1$s</xliff:g> fiókhoz tartozó jelszavait és azonosítókulcsait a bejelentkezés megkönnyítése érdekében."</string>
<string name="set_as_default" msgid="4415328591568654603">"Beállítás alapértelmezettként"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Bezárás"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Elvetés"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Szeretné a(z) <xliff:g id="APP_NAME">%1$s</xliff:g> alkalmazáshoz mentett azonosítókulcsot használni?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Szeretné az elmentett jelszavát használni a(z) <xliff:g id="APP_NAME">%1$s</xliff:g> alkalmazáshoz?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Szeretné használni a következőhöz tartozó bejelentkezési adatait: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Feloldja a(z) <xliff:g id="APP_NAME">%1$s</xliff:g> bejelentkezési lehetőségeit?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Mentett azonosítókulcs kiválasztása a(z) <xliff:g id="APP_NAME">%1$s</xliff:g> alkalmazáshoz"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Mentett jelszó kiválasztása a(z) <xliff:g id="APP_NAME">%1$s</xliff:g> alkalmazáshoz"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Mentett bejelentkezési adatok kiválasztása a(z) <xliff:g id="APP_NAME">%1$s</xliff:g> alkalmazáshoz"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Válasszon bejelentkezési adatokat – <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Kiválaszt egy lehetőséget a következőbe való bejelentkezéshez: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Használni szeretná ezt az információt a(z) <xliff:g id="APP_NAME">%1$s</xliff:g> alkalmazásban?"</string>
diff --git a/packages/CredentialManager/res/values-hy/strings.xml b/packages/CredentialManager/res/values-hy/strings.xml
index b63a13f60521..a6bda50717cd 100644
--- a/packages/CredentialManager/res/values-hy/strings.xml
+++ b/packages/CredentialManager/res/values-hy/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Մուտքի տվյալների կառավարիչ"</string>
<string name="string_cancel" msgid="6369133483981306063">"Չեղարկել"</string>
<string name="string_continue" msgid="1346732695941131882">"Շարունակել"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Այլ տարբերակներ"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Պահել մեկ այլ եղանակ"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Իմանալ ավելին"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Ցուցադրել գաղտնաբառը"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Թաքցնել գաղտնաբառը"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"մուտք"</string>
<string name="sign_in_info" msgid="2627704710674232328">"մուտքի տվյալներ"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Պահել <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>ն այստեղ՝"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Ստեղծե՞լ անցաբառ այլ սարքում"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Պահե՞լ գաղտնաբառն այլ սարքում"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Պահե՞լ մուտքի տվյալներն այլ սարքում"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Միշտ մուտք գործե՞լ <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> հավելվածի միջոցով"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Այս գաղտնաբառերի կառավարչում <xliff:g id="USERNAME">%1$s</xliff:g> օգտատերը կկարողանա պահել իր գաղտնաբառերն ու անցաբառերը, որպեսզի հետագայում ավելի արագ մուտք գործի հաշիվ"</string>
<string name="set_as_default" msgid="4415328591568654603">"Նշել որպես կանխադրված"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Փակել"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Փակել"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Օգտագործե՞լ պահված անցաբառը <xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածի համար"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Օգտագործե՞լ <xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածի համար պահված ձեր գաղտնաբառը"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Օգտագործե՞լ այս տվյալները <xliff:g id="APP_NAME">%1$s</xliff:g> հավելված մուտք գործելու համար"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Ապակողպե՞լ մուտքի տարբերակներ <xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածի համար"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Ընտրեք պահված անցաբառ <xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածի համար"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Ընտրեք պահված գաղտնաբառ <xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածի համար"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Ընտրեք մուտքի պահված տվյալներ <xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածի համար"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Ընտրեք, թե ինչպես եք ուզում մուտք գործել <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Ընտրե՞լ տարբերակ <xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածի համար"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Օգտագործե՞լ այս տեղեկությունները <xliff:g id="APP_NAME">%1$s</xliff:g> մտնելու համար"</string>
diff --git a/packages/CredentialManager/res/values-in/strings.xml b/packages/CredentialManager/res/values-in/strings.xml
index 9fc5a26938f8..e47cf7b2c75e 100644
--- a/packages/CredentialManager/res/values-in/strings.xml
+++ b/packages/CredentialManager/res/values-in/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Pengelola Kredensial"</string>
<string name="string_cancel" msgid="6369133483981306063">"Batal"</string>
<string name="string_continue" msgid="1346732695941131882">"Lanjutkan"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Opsi lainnya"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Simpan dengan cara lain"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Pelajari lebih lanjut"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Tampilkan sandi"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Sembunyikan sandi"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"login"</string>
<string name="sign_in_info" msgid="2627704710674232328">"info login"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Simpan <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> ke"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Buat kunci sandi di perangkat lain?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Simpan sandi di perangkat lain?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Simpan info login di perangkat lain?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Gunakan <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> untuk semua info login Anda?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Pengelola sandi untuk <xliff:g id="USERNAME">%1$s</xliff:g> ini akan menyimpan sandi dan kunci sandi guna membantu Anda login dengan mudah"</string>
<string name="set_as_default" msgid="4415328591568654603">"Setel sebagai default"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Tutup"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Tutup"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Gunakan kunci sandi tersimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Gunakan sandi tersimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Gunakan login Anda untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Autentikasi opsi login untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Pilih kunci sandi tersimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Pilih sandi tersimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Pilih info login tersimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Pilih login untuk <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Pilih opsi untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Gunakan info ini di <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-is/strings.xml b/packages/CredentialManager/res/values-is/strings.xml
index 544116411aa7..76a869f505bf 100644
--- a/packages/CredentialManager/res/values-is/strings.xml
+++ b/packages/CredentialManager/res/values-is/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Skilríkjastjórnun"</string>
<string name="string_cancel" msgid="6369133483981306063">"Hætta við"</string>
<string name="string_continue" msgid="1346732695941131882">"Áfram"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Fleiri valkostir"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Vista á annan hátt"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Nánar"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Sýna aðgangsorð"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Fela aðgangsorð"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"innskráningar"</string>
<string name="sign_in_info" msgid="2627704710674232328">"innskráningarupplýsingar"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Vista <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> í"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Búa til aðgangslykil í öðru tæki?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Vista aðgangsorð í öðru tæki?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Vista innskráningu í öðru tæki?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Nota <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> fyrir allar innskráningar?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Þessi aðgangsorðastjórnun fyrir <xliff:g id="USERNAME">%1$s</xliff:g> vistar aðgangsorð og aðgangslykla til að auðvelda þér að skrá þig inn"</string>
<string name="set_as_default" msgid="4415328591568654603">"Stilla sem sjálfgefið"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Loka"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Hunsa"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Nota vistaðan aðgangslykil fyrir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Nota vistaða aðgangsorðið þitt fyrir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Nota innskráningu fyrir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Opna fyrir innskráningarvalkosti fyrir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Veldu vistaðan aðgangslykil fyrir <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Veldu vistað aðgangsorð fyrir <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Veldu vistaða innskráningu fyrir <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Veldu innskráningu fyrir <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Velja valkost fyrir <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Nota þessar upplýsingar í <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-it/strings.xml b/packages/CredentialManager/res/values-it/strings.xml
index d282102425ad..87045cb689ea 100644
--- a/packages/CredentialManager/res/values-it/strings.xml
+++ b/packages/CredentialManager/res/values-it/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Gestore delle credenziali"</string>
<string name="string_cancel" msgid="6369133483981306063">"Annulla"</string>
<string name="string_continue" msgid="1346732695941131882">"Continua"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Altre opzioni"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Salva un altro modo"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Scopri di più"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Mostra password"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Nascondi password"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"accessi"</string>
<string name="sign_in_info" msgid="2627704710674232328">"dati di accesso"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Salva <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> in"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Vuoi creare la passkey su un altro dispositivo?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Vuoi salvare la password su un altro dispositivo?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Vuoi salvare la credenziale di accesso su un altro dispositivo?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Vuoi usare <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> per tutti gli accessi?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Questo gestore delle password di <xliff:g id="USERNAME">%1$s</xliff:g> archivierà le password e le passkey per aiutarti ad accedere facilmente"</string>
<string name="set_as_default" msgid="4415328591568654603">"Imposta come valore predefinito"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Chiudi"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Chiudi"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Vuoi usare la passkey salvata per <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Vuoi usare la password salvata per <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Vuoi usare il tuo accesso per <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Vuoi sbloccare le opzioni di accesso per <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Scegli una passkey salvata per <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Scegli una password salvata per <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Scegli un accesso salvato per <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Scegli un accesso per <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Vuoi scegliere un\'opzione per <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Vuoi usare questi dati su <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-iw/strings.xml b/packages/CredentialManager/res/values-iw/strings.xml
index 63812b006522..064356831e3d 100644
--- a/packages/CredentialManager/res/values-iw/strings.xml
+++ b/packages/CredentialManager/res/values-iw/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"מנהל פרטי הכניסה"</string>
<string name="string_cancel" msgid="6369133483981306063">"ביטול"</string>
<string name="string_continue" msgid="1346732695941131882">"המשך"</string>
- <string name="string_more_options" msgid="7990658711962795124">"אפשרויות נוספות"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"שמירה בדרך אחרת"</string>
<string name="string_learn_more" msgid="4541600451688392447">"מידע נוסף"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"הצגת הסיסמה"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"הסתרת הסיסמה"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"פרטי כניסה"</string>
<string name="sign_in_info" msgid="2627704710674232328">"פרטי הכניסה"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"שמירת <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> ב-"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"ליצור מפתח גישה במכשיר אחר?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"לשמור את הסיסמה במכשיר אחר?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"לשמור את פרטי הכניסה במכשיר אחר?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"להשתמש ב-<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> בכל הכניסות?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"מנהל הסיסמאות הזה של <xliff:g id="USERNAME">%1$s</xliff:g> יאחסן את הסיסמאות ומפתחות הגישה שלך, כדי לעזור לך להיכנס לחשבון בקלות"</string>
<string name="set_as_default" msgid="4415328591568654603">"הגדרה כברירת מחדל"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"סגירה"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"סגירה"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"להשתמש במפתח גישה שנשמר עבור <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"להשתמש בסיסמה השמורה של <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"להשתמש בחשבון שלך כדי להיכנס אל <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"לבטל את הנעילה של אפשרויות הכניסה אל <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"בחירת מפתח גישה שמור ל-<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"בחירת סיסמה שמורה ל-<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"בחירת פרטי כניסה שמורים ל-<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"בחירת חשבון לכניסה אל <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"רוצה לבחור אפשרות עבור <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"להשתמש במידע הזה בשביל <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-ja/strings.xml b/packages/CredentialManager/res/values-ja/strings.xml
index 64e2fce7c7df..afbff9042a53 100644
--- a/packages/CredentialManager/res/values-ja/strings.xml
+++ b/packages/CredentialManager/res/values-ja/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"認証情報マネージャー"</string>
<string name="string_cancel" msgid="6369133483981306063">"キャンセル"</string>
<string name="string_continue" msgid="1346732695941131882">"続行"</string>
- <string name="string_more_options" msgid="7990658711962795124">"その他のオプション"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"別の方法を保存"</string>
<string name="string_learn_more" msgid="4541600451688392447">"詳細"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"パスワードを表示する"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"パスワードを表示しない"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"ログイン"</string>
<string name="sign_in_info" msgid="2627704710674232328">"ログイン情報"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>の保存先"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"別のデバイスでパスキーを作成しますか?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"別のデバイスでパスワードを保存しますか?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"別のデバイスでログインを保存しますか?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"ログインのたびに <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> を使用しますか?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> のパスワード マネージャーにパスワードやパスキーが保存され、簡単にログインできるようになります"</string>
<string name="set_as_default" msgid="4415328591568654603">"デフォルトに設定"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"閉じる"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"閉じる"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> の保存したパスキーを使用しますか?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> の保存したパスワードを使用しますか?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"この認証情報を使用して <xliff:g id="APP_NAME">%1$s</xliff:g> にログインしますか?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> がログイン方法を使用できるようにしますか?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> に使用するパスキーを選択してください"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> に使用するパスワードを選択してください"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> に使用するログイン情報を選択してください"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> のログインに使用する認証情報の選択"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> のオプションを選択しますか?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> でこの情報を使用しますか?"</string>
diff --git a/packages/CredentialManager/res/values-ka/strings.xml b/packages/CredentialManager/res/values-ka/strings.xml
index 0133c307cb1a..b597a9a227eb 100644
--- a/packages/CredentialManager/res/values-ka/strings.xml
+++ b/packages/CredentialManager/res/values-ka/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"ავტორიზაციის მონაცემების მმართველი"</string>
<string name="string_cancel" msgid="6369133483981306063">"გაუქმება"</string>
<string name="string_continue" msgid="1346732695941131882">"გაგრძელება"</string>
- <string name="string_more_options" msgid="7990658711962795124">"სხვა ვარიანტები"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"სხვაგვარად შენახვა"</string>
<string name="string_learn_more" msgid="4541600451688392447">"შეიტყვეთ მეტი"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"პაროლის ჩვენება"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"პაროლის დამალვა"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"სისტემაში შესვლა"</string>
<string name="sign_in_info" msgid="2627704710674232328">"შესვლის ინფორმაცია"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>-ის შენახვა"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"გსურთ სხვა მოწყობილობაზე წვდომის გასაღებების შექმნა?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"გსურთ სხვა მოწყობილობაზე პაროლის შენახვა?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"გსურთ სხვა მოწყობილობაზე ავტორიზაციის მონაცემების შენახვა?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"გსურთ, გამოიყენოთ<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> სისტემაში ყველა შესვლისთვის?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"მოცემული პაროლების მმართველი <xliff:g id="USERNAME">%1$s</xliff:g>-ისთვის შეინახავს თქვენს პაროლებს და წვდომის გასაღებს, რომლებიც დაგეხმარებათ სისტემაში მარტივად შესვლაში"</string>
<string name="set_as_default" msgid="4415328591568654603">"ნაგულისხმევად დაყენება"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"დახურვა"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"დახურვა"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"გსურთ თქვენი დამახსოვრებული წვდომის გასაღების გამოყენება აპისთვის: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"გამოიყენებთ შენახულ პაროლს <xliff:g id="APP_NAME">%1$s</xliff:g>-სთვის?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"გსურთ შესვლის <xliff:g id="APP_NAME">%1$s</xliff:g>-სთვის გამოყენება?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"გსურთ შესვლის ვარიანტების განბლოკვა <xliff:g id="APP_NAME">%1$s</xliff:g>-სთვის?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"აირჩიეთ შენახული წვდომის გასაღები <xliff:g id="APP_NAME">%1$s</xliff:g>-სთვის"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"აირჩიეთ შენახული პაროლი <xliff:g id="APP_NAME">%1$s</xliff:g>-სთვის"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"აირჩიეთ სისტემაში შესვლის ინფორმაცია <xliff:g id="APP_NAME">%1$s</xliff:g>-სთვის"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"აირჩიეთ შესვლა <xliff:g id="APP_NAME">%1$s</xliff:g>-სთვის"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"გსურთ აირჩიოთ ვარიანტი <xliff:g id="APP_NAME">%1$s</xliff:g>-ისთვის?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"გსურთ ამ ინფორმაციის გამოყენება <xliff:g id="APP_NAME">%1$s</xliff:g>-ში?"</string>
diff --git a/packages/CredentialManager/res/values-kk/strings.xml b/packages/CredentialManager/res/values-kk/strings.xml
index ca5cc80e8a48..4ed616a1be4c 100644
--- a/packages/CredentialManager/res/values-kk/strings.xml
+++ b/packages/CredentialManager/res/values-kk/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Тіркелу деректері менеджері"</string>
<string name="string_cancel" msgid="6369133483981306063">"Бас тарту"</string>
<string name="string_continue" msgid="1346732695941131882">"Жалғастыру"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Басқа опциялар"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Басқаша сақтау"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Толық ақпарат"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Құпия сөзді көрсету"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Құпия сөзді жасыру"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"кіру әрекеттері"</string>
<string name="sign_in_info" msgid="2627704710674232328">"кіру мәліметі"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> дерегін сақтау орны:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Кіру кілті басқа құрылғыда жасалсын ба?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Құпия сөз басқа құрылғыда сақталсын ба?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Кіру басқа құрылғыда сақталсын ба?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Барлық кіру әрекеті үшін <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> пайдаланылсын ба?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> аккаунтына оңай кіру үшін құпия сөз менеджері құпия сөздер мен кіру кілттерін сақтайды."</string>
<string name="set_as_default" msgid="4415328591568654603">"Әдепкі етіп орнату"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Жабу"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Жабу"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> үшін сақталған кіру кілті пайдаланылсын ба?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> үшін сақталған құпия сөзіңізді пайдаланасыз ба?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> қолданбасына кіру деректерін пайдаланасыз ба?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> үшін кіру опциялары ашылсын ба?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> үшін сақталған кіру кілтін таңдаңыз"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> үшін сақталған құпия сөзді таңдаңыз"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> үшін сақталған тіркелу деректерін таңдаңыз"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> қолданбасына кіру деректерін таңдаңыз"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> үшін опция таңдайсыз ба?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Бұл ақпарат <xliff:g id="APP_NAME">%1$s</xliff:g> қолданбасында сақталсын ба?"</string>
diff --git a/packages/CredentialManager/res/values-km/strings.xml b/packages/CredentialManager/res/values-km/strings.xml
index b50c5c50f34b..2ebb3847b8c0 100644
--- a/packages/CredentialManager/res/values-km/strings.xml
+++ b/packages/CredentialManager/res/values-km/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"កម្មវិធី​គ្រប់គ្រង​ព័ត៌មាន​ផ្ទៀងផ្ទាត់"</string>
<string name="string_cancel" msgid="6369133483981306063">"បោះបង់"</string>
<string name="string_continue" msgid="1346732695941131882">"បន្ត"</string>
- <string name="string_more_options" msgid="7990658711962795124">"ជម្រើសច្រើនទៀត"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"រក្សាទុកតាមវិធីផ្សេង"</string>
<string name="string_learn_more" msgid="4541600451688392447">"ស្វែងយល់បន្ថែម"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"បង្ហាញពាក្យសម្ងាត់"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"លាក់​ពាក្យ​សម្ងាត់"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"ការចូល​គណនី"</string>
<string name="sign_in_info" msgid="2627704710674232328">"ព័ត៌មានអំពី​ការចូលគណនី"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"រក្សាទុក​<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>​ទៅកាន់"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"បង្កើត​កូដសម្ងាត់​នៅលើឧបករណ៍​ផ្សេងទៀតឬ?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"រក្សាទុក​ពាក្យសម្ងាត់​នៅលើឧបករណ៍​ផ្សេងទៀតឬ?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"រក្សាទុក​ការចូលគណនី​នៅលើឧបករណ៍​ផ្សេងទៀតឬ?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"ប្រើ <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> សម្រាប់ការចូលគណនីទាំងអស់របស់អ្នកឬ?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"កម្មវិធីគ្រប់គ្រងពាក្យសម្ងាត់សម្រាប់ <xliff:g id="USERNAME">%1$s</xliff:g> ​នេះនឹងរក្សាទុកពាក្យសម្ងាត់ និងកូដសម្ងាត់​របស់អ្នក ដើម្បីជួយឱ្យអ្នក​ចូលគណនី​បានយ៉ាងងាយស្រួល"</string>
<string name="set_as_default" msgid="4415328591568654603">"កំណត់ជាលំនាំដើម"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"បិទ"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"ច្រានចោល"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"ប្រើកូដសម្ងាត់ដែលបានរក្សាទុករបស់អ្នកសម្រាប់ <xliff:g id="APP_NAME">%1$s</xliff:g> ឬ?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"ប្រើពាក្យសម្ងាត់​ដែលអ្នកបាន​រក្សាទុកសម្រាប់ <xliff:g id="APP_NAME">%1$s</xliff:g> ឬ?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"ប្រើការចូលគណនីរបស់អ្នកសម្រាប់ <xliff:g id="APP_NAME">%1$s</xliff:g> ឬ?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"ដោះ​សោជម្រើសចូល​គណនីសម្រាប់ <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"ជ្រើសរើសកូដសម្ងាត់ដែលបានរក្សាទុកសម្រាប់ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"ជ្រើសរើសពាក្យ​សម្ងាត់ដែលបានរក្សាទុកសម្រាប់ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"ជ្រើសរើសការចូលគណនីដែលបានរក្សាទុកសម្រាប់ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"ជ្រើសរើសការចូលគណនីសម្រាប់ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"ជ្រើសរើសជម្រើសសម្រាប់ <xliff:g id="APP_NAME">%1$s</xliff:g> ឬ?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"ប្រើព័ត៌មាននេះ​នៅលើ <xliff:g id="APP_NAME">%1$s</xliff:g> ឬ?"</string>
diff --git a/packages/CredentialManager/res/values-kn/strings.xml b/packages/CredentialManager/res/values-kn/strings.xml
index ab228aee578c..ae680a068933 100644
--- a/packages/CredentialManager/res/values-kn/strings.xml
+++ b/packages/CredentialManager/res/values-kn/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"ರುಜುವಾತು ನಿರ್ವಾಹಕ"</string>
<string name="string_cancel" msgid="6369133483981306063">"ರದ್ದುಗೊಳಿಸಿ"</string>
<string name="string_continue" msgid="1346732695941131882">"ಮುಂದುವರಿಸಿ"</string>
- <string name="string_more_options" msgid="7990658711962795124">"ಇನ್ನಷ್ಟು ಆಯ್ಕೆಗಳು"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"ಬೇರೆ ವಿಧಾನದಲ್ಲಿ ಉಳಿಸಿ"</string>
<string name="string_learn_more" msgid="4541600451688392447">"ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"ಪಾಸ್‌ವರ್ಡ್ ತೋರಿಸಿ"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"ಪಾಸ್‌ವರ್ಡ್ ಅನ್ನು ಮರೆಮಾಡಿ"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"ಸೈನ್-ಇನ್‌ಗಳು"</string>
<string name="sign_in_info" msgid="2627704710674232328">"ಸೈನ್-ಇನ್ ಮಾಹಿತಿ"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"ಇಲ್ಲಿಗೆ <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> ಅನ್ನು ಉಳಿಸಿ"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"ಇನ್ನೊಂದು ಸಾಧನದಲ್ಲಿ ಪಾಸ್‌ಕೀ ಅನ್ನು ರಚಿಸಬೇಕೆ?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"ಇನ್ನೊಂದು ಸಾಧನದಲ್ಲಿ ಪಾಸ್‌ವರ್ಡ್ ಉಳಿಸಬೇಕೆ?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"ಮತ್ತೊಂದು ಸಾಧನದಲ್ಲಿ ಸೈನ್-ಇನ್ ಅನ್ನು ಉಳಿಸಬೇಕೆ?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"ನಿಮ್ಮ ಎಲ್ಲಾ ಸೈನ್-ಇನ್‌ಗಳಿಗಾಗಿ <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> ಅನ್ನು ಬಳಸುವುದೇ?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> ಗಾಗಿ ಈ ಪಾಸ್‌ವರ್ಡ್ ನಿರ್ವಾಹಕವು ನಿಮಗೆ ಸುಲಭವಾಗಿ ಸೈನ್ ಇನ್ ಮಾಡುವುದಕ್ಕೆ ಸಹಾಯ ಮಾಡಲು ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ಗಳು ಮತ್ತು ಪಾಸ್‌ಕೀಗಳನ್ನು ಸಂಗ್ರಹಿಸುತ್ತದೆ"</string>
<string name="set_as_default" msgid="4415328591568654603">"ಡೀಫಾಲ್ಟ್ ಆಗಿ ಸೆಟ್ ಮಾಡಿ"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"ಮುಚ್ಚಿರಿ"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"ವಜಾಗೊಳಿಸಿ"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಗಾಗಿ ಉಳಿಸಲಾದ ನಿಮ್ಮ ಪಾಸ್‌ಕೀ ಅನ್ನು ಬಳಸಬೇಕೆ?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಗಾಗಿ ನಿಮ್ಮ ಉಳಿಸಲಾದ ಪಾಸ್‌ವರ್ಡ್ ಅನ್ನು ಬಳಸಬೇಕೇ?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಗಾಗಿ ನಿಮ್ಮ ಸೈನ್ ಇನ್ ಅನ್ನು ಬಳಸಬೇಕೇ?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಗಾಗಿ ಸೈನ್-ಇನ್ ಆಯ್ಕೆಗಳನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಬೇಕೇ?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಗಾಗಿ ಉಳಿಸಲಾದ ಪಾಸ್‌ಕೀ ಅನ್ನು ಆರಿಸಿ"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಗಾಗಿ ಉಳಿಸಲಾದ ಪಾಸ್‌ವರ್ಡ್ ಅನ್ನು ಆರಿಸಿ"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಗಾಗಿ ಉಳಿಸಲಾದ ಸೈನ್-ಇನ್ ಮಾಹಿತಿಯನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಗಾಗಿ ಸೈನ್ ಇನ್ ಅನ್ನು ಆರಿಸಿ"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಗಾಗಿ ಆಯ್ಕೆಯನ್ನು ಆರಿಸಬೇಕೆ?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"ಈ ಮಾಹಿತಿಯನ್ನು <xliff:g id="APP_NAME">%1$s</xliff:g> ನಲ್ಲಿ ಬಳಸಬೇಕೆ?"</string>
diff --git a/packages/CredentialManager/res/values-ko/strings.xml b/packages/CredentialManager/res/values-ko/strings.xml
index 42b99fa0a097..07a7fbc30946 100644
--- a/packages/CredentialManager/res/values-ko/strings.xml
+++ b/packages/CredentialManager/res/values-ko/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"인증서 관리자"</string>
<string name="string_cancel" msgid="6369133483981306063">"취소"</string>
<string name="string_continue" msgid="1346732695941131882">"계속"</string>
- <string name="string_more_options" msgid="7990658711962795124">"옵션 더보기"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"다른 방법 저장하기"</string>
<string name="string_learn_more" msgid="4541600451688392447">"자세히 알아보기"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"비밀번호 표시"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"비밀번호 숨기기"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"로그인 정보"</string>
<string name="sign_in_info" msgid="2627704710674232328">"로그인 정보"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> 저장 위치"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"다른 기기에서 패스키를 만드시겠습니까?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"다른 기기에서 비밀번호를 저장하시겠습니까?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"다른 기기에서 로그인 정보를 저장하시겠습니까?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"모든 로그인에 <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>을(를) 사용하시겠습니까?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g>님을 위한 이 비밀번호 관리자는 비밀번호와 패스키를 저장하여 사용자가 간편하게 로그인할 수 있도록 돕습니다."</string>
<string name="set_as_default" msgid="4415328591568654603">"기본값으로 설정"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"닫기"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"닫기"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> 앱용으로 저장된 패스키를 사용하시겠습니까?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"저장된 비밀번호를 <xliff:g id="APP_NAME">%1$s</xliff:g>에 사용할까요?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g>에 로그인을 사용하시겠습니까?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g>에 대해 로그인 옵션을 잠금 해제하시겠습니까?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g>에 대해 저장된 패스키 선택"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g>에 대해 저장된 비밀번호 선택"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g>에 대해 저장된 로그인 정보 선택"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g>에 사용할 로그인 선택"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> 앱의 옵션을 선택하시겠습니까?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g>에서 이 정보를 사용하시나요?"</string>
diff --git a/packages/CredentialManager/res/values-ky/strings.xml b/packages/CredentialManager/res/values-ky/strings.xml
index 25fc2f601083..af332e1b181f 100644
--- a/packages/CredentialManager/res/values-ky/strings.xml
+++ b/packages/CredentialManager/res/values-ky/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential Manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Жок"</string>
<string name="string_continue" msgid="1346732695941131882">"Улантуу"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Башка варианттар"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Башка жолду сактоо"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Кеңири маалымат"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Сырсөздү көрсөтүү"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Сырсөздү жашыруу"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"кирүүлөр"</string>
<string name="sign_in_info" msgid="2627704710674232328">"кирүү маалыматы"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> төмөнкүгө сакталсын:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Башка түзмөктө киргизүүчү ачкычты түзөсүзбү?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Сырсөздү башка түзмөктө сактайсызбы?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Кирүү маалыматын башка түзмөктө сактайсызбы?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> бардык аккаунттарга кирүү үчүн колдонулсунбу?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Сырсөздөрүңүздү жана ачкычтарыңызды <xliff:g id="USERNAME">%1$s</xliff:g> аккаунтуңуздагы сырсөздөрдү башкаргычка сактап коюп, каалаган убакта колдоно берсеңиз болот"</string>
<string name="set_as_default" msgid="4415328591568654603">"Демейки катары коюу"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Жабуу"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Жабуу"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> колдонмосуна кирүү үчүн сакталган ачкычты колдоносузбу?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> үчүн сакталган сырсөздү колдоносузбу?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> колдонмосуна кирүү жолун тандайсызбы?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> үчүн кирүү параметрлеринин кулпусу ачылсынбы?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> үчүн сакталган киргизүүчү ачкычты тандаңыз"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> үчүн сакталган сырсөздү тандаңыз"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> үчүн кирүү маалыматын тандаңыз"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> колдонмосуна кирүү жолун тандаңыз"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> үчүн параметр тандайсызбы?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Бул маалыматты <xliff:g id="APP_NAME">%1$s</xliff:g> колдонмосунда пайдаланасызбы?"</string>
diff --git a/packages/CredentialManager/res/values-lo/strings.xml b/packages/CredentialManager/res/values-lo/strings.xml
index 65b5784ab3d3..3b2e2aa08737 100644
--- a/packages/CredentialManager/res/values-lo/strings.xml
+++ b/packages/CredentialManager/res/values-lo/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"ຕົວຈັດການຂໍ້ມູນການເຂົ້າສູ່ລະບົບ"</string>
<string name="string_cancel" msgid="6369133483981306063">"ຍົກເລີກ"</string>
<string name="string_continue" msgid="1346732695941131882">"ສືບຕໍ່"</string>
- <string name="string_more_options" msgid="7990658711962795124">"ຕົວເລືອກເພີ່ມເຕີມ"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"ບັນທຶກດ້ວຍວິທີອື່ນ"</string>
<string name="string_learn_more" msgid="4541600451688392447">"ສຶກສາເພີ່ມເຕີມ"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"ສະແດງລະຫັດຜ່ານ"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"ເຊື່ອງລະຫັດຜ່ານ"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"ການເຂົ້າສູ່ລະບົບ"</string>
<string name="sign_in_info" msgid="2627704710674232328">"ຂໍ້ມູນການເຂົ້າສູ່ລະບົບ"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"ບັນທຶກ <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> ໃສ່"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"ສ້າງກະແຈຜ່ານຢູ່ອຸປະກອນອື່ນບໍ?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"ບັນທຶກລະຫັດຜ່ານຢູ່ອຸປະກອນອື່ນບໍ?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"ບັນທຶກການເຂົ້າສູ່ລະບົບຢູ່ອຸປະກອນອື່ນບໍ?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"ໃຊ້ <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> ສຳລັບການເຂົ້າສູ່ລະບົບທັງໝົດຂອງທ່ານບໍ?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"ຕົວຈັດການລະຫັດຜ່ານນີ້ສຳລັບ <xliff:g id="USERNAME">%1$s</xliff:g> ຈະຈັດເກັບລະຫັດຜ່ານ ແລະ ກະແຈຜ່ານຂອງທ່ານໄວ້ເພື່ອຊ່ວຍໃຫ້ທ່ານເຂົ້າສູ່ລະບົບໄດ້ຢ່າງງ່າຍດາຍ"</string>
<string name="set_as_default" msgid="4415328591568654603">"ຕັ້ງເປັນຄ່າເລີ່ມຕົ້ນ"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"ປິດ"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"ປິດໄວ້"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"ໃຊ້ກະແຈຜ່ານທີ່ບັນທຶກໄວ້ຂອງທ່ານສຳລັບ <xliff:g id="APP_NAME">%1$s</xliff:g> ບໍ?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"ໃຊ້ລະຫັດຜ່ານທີ່ບັນທຶກໄວ້ຂອງທ່ານສຳລັບ <xliff:g id="APP_NAME">%1$s</xliff:g> ບໍ?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"ເລືອກການເຂົ້າສູ່ລະບົບຂອງທ່ານສຳລັບ <xliff:g id="APP_NAME">%1$s</xliff:g> ບໍ?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"ປົດລັອກຕົວເລືອກການເຂົ້າສູ່ລະບົບສຳລັບ <xliff:g id="APP_NAME">%1$s</xliff:g> ບໍ?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"ເລືອກກະແຈຜ່ານທີ່ບັນທຶກໄວ້ສຳລັບ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"ເລືອກລະຫັດຜ່ານທີ່ບັນທຶກໄວ້ສຳລັບ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"ເລືອກການເຂົ້າສູ່ລະບົບທີ່ບັນທຶກໄວ້ສຳລັບ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"ເລືອກການເຂົ້າສູ່ລະບົບສຳລັບ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"ເລືອກຕົວເລືອກສຳລັບ <xliff:g id="APP_NAME">%1$s</xliff:g> ບໍ?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"ໃຊ້ຂໍ້ມູນນີ້ຢູ່ <xliff:g id="APP_NAME">%1$s</xliff:g> ບໍ?"</string>
diff --git a/packages/CredentialManager/res/values-lt/strings.xml b/packages/CredentialManager/res/values-lt/strings.xml
index 901228a50574..173b2b16a8c4 100644
--- a/packages/CredentialManager/res/values-lt/strings.xml
+++ b/packages/CredentialManager/res/values-lt/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Prisijungimo duomenų tvarkytuvė"</string>
<string name="string_cancel" msgid="6369133483981306063">"Atšaukti"</string>
<string name="string_continue" msgid="1346732695941131882">"Tęsti"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Daugiau parinkčių"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Išsaugoti kitu būdu"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Sužinokite daugiau"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Rodyti slaptažodį"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Slėpti slaptažodį"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"prisijungimo informacija"</string>
<string name="sign_in_info" msgid="2627704710674232328">"prisijungimo informaciją"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Išsaugoti <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Sukurti „passkey“ kitame įrenginyje?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Išsaugoti slaptažodį kitame įrenginyje?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Išsaugoti prisijungimo duomenis kitame įrenginyje?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Naudoti <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> visada prisijungiant?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Šioje <xliff:g id="USERNAME">%1$s</xliff:g> Slaptažodžių tvarkyklėje bus saugomi jūsų slaptažodžiai ir „passkey“, kad galėtumėte lengvai prisijungti"</string>
<string name="set_as_default" msgid="4415328591568654603">"Nustatyti kaip numatytąjį"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Uždaryti"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Atsisakyti"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Naudoti išsaugotą „passkey“ programai „<xliff:g id="APP_NAME">%1$s</xliff:g>“?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Naudoti išsaugotą slaptažodį programai „<xliff:g id="APP_NAME">%1$s</xliff:g>“?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Naudoti prisijungimo informaciją programai „<xliff:g id="APP_NAME">%1$s</xliff:g>“?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Atrakinti prisijungimo prie „<xliff:g id="APP_NAME">%1$s</xliff:g>“ parinktis?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Išsaugoto prieigos rakto, skirto „<xliff:g id="APP_NAME">%1$s</xliff:g>“, pasirinkimas"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Išsaugoto slaptažodžio, skirto „<xliff:g id="APP_NAME">%1$s</xliff:g>“, pasirinkimas"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Pasirinkite išsaugotą prisijungimo informaciją programai „<xliff:g id="APP_NAME">%1$s</xliff:g>“"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Pasirinkite prisijungimo informaciją programai „<xliff:g id="APP_NAME">%1$s</xliff:g>“"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Pasirinkti parinktį programai „<xliff:g id="APP_NAME">%1$s</xliff:g>“?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Naudoti šią informaciją programoje „<xliff:g id="APP_NAME">%1$s</xliff:g>“?"</string>
diff --git a/packages/CredentialManager/res/values-lv/strings.xml b/packages/CredentialManager/res/values-lv/strings.xml
index 13f0d6d6d701..27115caa1802 100644
--- a/packages/CredentialManager/res/values-lv/strings.xml
+++ b/packages/CredentialManager/res/values-lv/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Akreditācijas datu pārvaldnieks"</string>
<string name="string_cancel" msgid="6369133483981306063">"Atcelt"</string>
<string name="string_continue" msgid="1346732695941131882">"Turpināt"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Citas opcijas"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Saglabāt citā veidā"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Uzzināt vairāk"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Rādīt paroli"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Slēpt paroli"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"pierakstīšanās informācija"</string>
<string name="sign_in_info" msgid="2627704710674232328">"pierakstīšanās informācija"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Kur jāsaglabā <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Vai izveidot piekļuves atslēgu citā ierīcē?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Vai saglabāt paroli citā ierīcē?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Vai saglabāt pierakstīšanās datus citā ierīcē?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Vai vienmēr izmantot <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>, lai pierakstītos?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Šis paroļu pārvaldnieks glabās konta <xliff:g id="USERNAME">%1$s</xliff:g> paroles un piekļuves atslēgas, lai atvieglotu pierakstīšanos."</string>
<string name="set_as_default" msgid="4415328591568654603">"Iestatīt kā noklusējumu"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Aizvērt"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Nerādīt"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Vai izmantot saglabāto piekļuves atslēgu lietotnei <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Vai izmantot jūsu saglabāto paroli lietotnei <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Vai izmantot jūsu pierakstīšanās informāciju lietotnei <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Vai vēlaties atbloķēt lietotnes <xliff:g id="APP_NAME">%1$s</xliff:g> pierakstīšanās opcijas?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Saglabātas piekļuves atslēgas izvēle lietotnei <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Saglabātas paroles izvēle lietotnei <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Saglabātas pierakstīšanās informācijas izvēle lietotnei <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Pierakstīšanās informācijas izvēle lietotnei <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Vai izvēlēties opciju lietotnei <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Vai izmantot šo informāciju lietotnē <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-mk/strings.xml b/packages/CredentialManager/res/values-mk/strings.xml
index 59b8210485b6..9bea6ac3652c 100644
--- a/packages/CredentialManager/res/values-mk/strings.xml
+++ b/packages/CredentialManager/res/values-mk/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Управник на акредитиви"</string>
<string name="string_cancel" msgid="6369133483981306063">"Откажи"</string>
<string name="string_continue" msgid="1346732695941131882">"Продолжи"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Повеќе опции"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Зачувајте поинаку"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Дознајте повеќе"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Прикажи ја лозинката"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Скриј ја лозинката"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"најавувања"</string>
<string name="sign_in_info" msgid="2627704710674232328">"податоци за најавување"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Зачувајте <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> во"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Да се создаде криптографски клуч на друг уред?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Да се зачува лозинката на друг уред?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Да се зачува најавувањето на друг уред?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Да се користи <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> за сите ваши најавувања?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Овој управник со лозинки за <xliff:g id="USERNAME">%1$s</xliff:g> ќе ги складира вашите лозинки и криптографски клучеви за да ви помогне лесно да се најавите"</string>
<string name="set_as_default" msgid="4415328591568654603">"Постави како стандардна опција"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Затвори"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Отфрли"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Да се користи вашиот зачуван криптографски клуч за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Да се користат зачуваните лозинки за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Да се користи вашето најавување за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Да се отклучат опциите за најавување за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Изберете зачуван криптографски клуч за <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Изберете зачувана лозинка за <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Изберете зачувано најавување за <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Изберете најавување за <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Избери опција за <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Да се користат овие информации на <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-ml/strings.xml b/packages/CredentialManager/res/values-ml/strings.xml
index c5d05b1bde34..07fea3825a28 100644
--- a/packages/CredentialManager/res/values-ml/strings.xml
+++ b/packages/CredentialManager/res/values-ml/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"ക്രെഡൻഷ്യൽ മാനേജർ"</string>
<string name="string_cancel" msgid="6369133483981306063">"റദ്ദാക്കുക"</string>
<string name="string_continue" msgid="1346732695941131882">"തുടരുക"</string>
- <string name="string_more_options" msgid="7990658711962795124">"കൂടുതൽ ഓപ്‌ഷനുകൾ"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"മറ്റ് രീതിയിൽ സംരക്ഷിക്കൂ"</string>
<string name="string_learn_more" msgid="4541600451688392447">"കൂടുതലറിയുക"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"പാസ്‌വേഡ് കാണിക്കുക"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"പാസ്‌വേഡ് മറയ്ക്കുക"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"സൈൻ ഇന്നുകൾ"</string>
<string name="sign_in_info" msgid="2627704710674232328">"സൈൻ ഇൻ വിവരങ്ങൾ"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> ഇനിപ്പറയുന്നതിലേക്ക് സംരക്ഷിക്കുക"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"മറ്റൊരു ഉപകരണത്തിൽ പാസ്‌കീ സൃഷ്ടിക്കണോ?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"മറ്റൊരു ഉപകരണത്തിൽ പാസ്‌വേഡ് സംരക്ഷിക്കണോ?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"മറ്റൊരു ഉപകരണത്തിൽ സൈൻ ഇൻ ക്രെഡൻഷ്യൽ സംരക്ഷിക്കണോ?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"നിങ്ങളുടെ എല്ലാ സൈൻ ഇന്നുകൾക്കും <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> ഉപയോഗിക്കണോ?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"എളുപ്പത്തിൽ സൈൻ ഇൻ ചെയ്യാൻ സഹായിക്കുന്നതിന്, <xliff:g id="USERNAME">%1$s</xliff:g> എന്ന വിലാസത്തിന്റെ ഈ Password Manager നിങ്ങളുടെ പാസ്‌വേഡുകളും പാസ്‌കീകളും സംഭരിക്കും"</string>
<string name="set_as_default" msgid="4415328591568654603">"ഡിഫോൾട്ടായി സജ്ജീകരിക്കുക"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"അടയ്ക്കുക"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"ഡിസ്‌മിസ് ചെയ്യുക"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> എന്നതിനായി നിങ്ങൾ സംരക്ഷിച്ച പാസ്‌കീ ഉപയോഗിക്കണോ?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> എന്നതിനായി നിങ്ങളുടെ സംരക്ഷിച്ച പാസ്‌വേഡ് ഉപയോഗിക്കണോ?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> ആപ്പിനുള്ള നിങ്ങളുടെ സൈൻ ഇൻ ക്രെഡൻഷ്യലുകൾ ഉപയോഗിക്കണോ?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> എന്നതിനായി സൈൻ ഇൻ ഓപ്‌ഷനുകൾ അൺലോക്ക് ചെയ്യണോ?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> എന്നതിനായി ഒരു സംരക്ഷിച്ച പാസ്‌കീ തിരഞ്ഞെടുക്കുക"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> എന്നതിനായി ഒരു സംരക്ഷിച്ച പാസ്‌വേഡ് തിരഞ്ഞെടുക്കുക"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> എന്നതിനായി ഒരു സംരക്ഷിച്ച സൈൻ ഇൻ തിരഞ്ഞെടുക്കുക"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> ആപ്പിനുള്ള സൈൻ ഇൻ ക്രെഡൻഷ്യലുകൾ തിരഞ്ഞെടുക്കുക"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> എന്ന ആപ്പിനായി ഒരു ഓപ്‌ഷൻ തിരഞ്ഞെടുക്കണോ?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> എന്നതിൽ ഈ വിവരങ്ങൾ ഉപയോഗിക്കണോ?"</string>
diff --git a/packages/CredentialManager/res/values-mn/strings.xml b/packages/CredentialManager/res/values-mn/strings.xml
index 8116c907958b..03da287be80b 100644
--- a/packages/CredentialManager/res/values-mn/strings.xml
+++ b/packages/CredentialManager/res/values-mn/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Мандат үнэмлэхийн менежер"</string>
<string name="string_cancel" msgid="6369133483981306063">"Цуцлах"</string>
<string name="string_continue" msgid="1346732695941131882">"Үргэлжлүүлэх"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Бусад сонголт"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Өөр аргаар хадгалах"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Нэмэлт мэдээлэл авах"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Нууц үгийг харуулах"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Нууц үгийг нуух"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"нэвтрэлт"</string>
<string name="sign_in_info" msgid="2627704710674232328">"нэвтрэх мэдээлэл"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>-г дараахад хадгалах"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Өөр төхөөрөмжид нэвтрэх түлхүүр үүсгэх үү?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Өөр төхөөрөмжид нууц үг хадгалах уу?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Өөр төхөөрөмжид нэвтрэлт хадгалах уу?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>-г бүх нэвтрэлтдээ ашиглах уу?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Танд хялбархан нэвтрэхэд туслахын тулд <xliff:g id="USERNAME">%1$s</xliff:g>-н энэ нууц үгний менежер таны нууц үг болон passkey-г хадгална"</string>
<string name="set_as_default" msgid="4415328591568654603">"Өгөгдмөлөөр тохируулах"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Хаах"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Хаах"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g>-д өөрийн хадгалсан passkey-г ашиглах уу?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g>-д хадгалсан нууц үгээ ашиглах уу?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g>-н нэвтрэлтээ ашиглах уу?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g>-д нэвтрэлтийн сонголтын түгжээг тайлах уу?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g>-д хадгалсан нэвтрэх түлхүүр сонгоно уу"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g>-д хадгалсан нууц үг сонгоно уу"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g>-д хадгалсан нэвтрэх мэдээллийг сонгоно уу"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g>-н нэвтрэлтийг сонгоно уу"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g>-д сонголт хийх үү?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Энэ мэдээллийг <xliff:g id="APP_NAME">%1$s</xliff:g>-д ашиглах уу?"</string>
diff --git a/packages/CredentialManager/res/values-mr/strings.xml b/packages/CredentialManager/res/values-mr/strings.xml
index ce97791554a3..ceba10185989 100644
--- a/packages/CredentialManager/res/values-mr/strings.xml
+++ b/packages/CredentialManager/res/values-mr/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"क्रेडेंशियल व्यवस्थापक"</string>
<string name="string_cancel" msgid="6369133483981306063">"रद्द करा"</string>
<string name="string_continue" msgid="1346732695941131882">"पुढे सुरू ठेवा"</string>
- <string name="string_more_options" msgid="7990658711962795124">"आणखी पर्याय"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"दुसऱ्या पद्धतीने सेव्ह करा"</string>
<string name="string_learn_more" msgid="4541600451688392447">"अधिक जाणून घ्या"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"पासवर्ड दाखवा"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"पासवर्ड लपवा"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"साइन-इन"</string>
<string name="sign_in_info" msgid="2627704710674232328">"साइन-इनसंबंधित माहिती"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> येथे सेव्ह करा"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"दुसऱ्या डिव्हाइसवर पासकी तयार करायची आहे का?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"दुसऱ्या डिव्हाइसवर पासवर्ड सेव्ह करायचा आहे का?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"दुसऱ्या डिव्हाइसवर साइन-इन सेव्ह करायचे आहे का?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"तुमच्या सर्व साइन-इन साठी <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>वापरायचे का?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"तुम्हाला सहजरीत्या साइन इन करण्यात मदत करण्यासाठी हा <xliff:g id="USERNAME">%1$s</xliff:g> चा पासवर्ड व्यवस्थापक तुमचे पासवर्ड आणि पासकी स्टोअर करेल"</string>
<string name="set_as_default" msgid="4415328591568654603">"डिफॉल्ट म्हणून सेट करा"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"बंद करा"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"डिसमिस करा"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> साठी तुमची सेव्ह केलेली पासकी वापरायची का?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"तुमचा सेव्ह केलेला पासवर्ड <xliff:g id="APP_NAME">%1$s</xliff:g> साठी वापरायचा आहे का?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> साठी तुमचे साइन-इन वापरायचे आहे का?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> साठी साइन-इन पर्याय अनलॉक करायचे आहेत का?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> साठी सेव्ह केलेली पासकी निवडा"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> साठी सेव्ह केलेला पासवर्ड निवडा"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> साठी सेव्ह केलेले साइन-इन निवडा"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> साठी साइन-इन निवडा"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> साठी पर्याय निवडा?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"ही माहिती <xliff:g id="APP_NAME">%1$s</xliff:g> वर वापरायची का?"</string>
diff --git a/packages/CredentialManager/res/values-ms/strings.xml b/packages/CredentialManager/res/values-ms/strings.xml
index 3fa31714763d..da87fcd426b4 100644
--- a/packages/CredentialManager/res/values-ms/strings.xml
+++ b/packages/CredentialManager/res/values-ms/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Pengurus Bukti Kelayakan"</string>
<string name="string_cancel" msgid="6369133483981306063">"Batal"</string>
<string name="string_continue" msgid="1346732695941131882">"Teruskan"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Lagi pilihan"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Simpan cara lain"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Ketahui lebih lanjut"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Tunjukkan kata laluan"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Sembunyikan kata laluan"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"log masuk"</string>
<string name="sign_in_info" msgid="2627704710674232328">"maklumat log masuk"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Simpan <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> pada"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Buat kunci laluan pada peranti lain?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Simpan kata laluan pada peranti lain?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Simpan log masuk pada peranti lain?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Gunakan <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> untuk semua log masuk anda?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Password Manager untuk <xliff:g id="USERNAME">%1$s</xliff:g> akan menyimpan kata laluan dan kunci laluan anda untuk membantu anda log masuk dengan mudah"</string>
<string name="set_as_default" msgid="4415328591568654603">"Tetapkan sebagai lalai"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Tutup"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Ketepikan"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Gunakan kunci laluan anda yang telah disimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Gunakan kata laluan anda yang disimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Gunakan log masuk anda untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Buka kunci pilihan log masuk untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Pilih kunci laluan yang disimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Pilih kata laluan yang disimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Pilih log masuk yang disimpan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Pilih log masuk untuk <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Pilih satu pilihan untuk <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Gunakan maklumat ini pada <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-my/strings.xml b/packages/CredentialManager/res/values-my/strings.xml
index fc16d3cafe27..c359ce19504f 100644
--- a/packages/CredentialManager/res/values-my/strings.xml
+++ b/packages/CredentialManager/res/values-my/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"အထောက်အထားမန်နေဂျာ"</string>
<string name="string_cancel" msgid="6369133483981306063">"မလုပ်တော့"</string>
<string name="string_continue" msgid="1346732695941131882">"ရှေ့ဆက်ရန်"</string>
- <string name="string_more_options" msgid="7990658711962795124">"နောက်ထပ်ရွေးစရာများ"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"အခြားနည်း သိမ်းရန်"</string>
<string name="string_learn_more" msgid="4541600451688392447">"ပိုမိုလေ့လာရန်"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"စကားဝှက်ကို ပြရန်"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"စကားဝှက်ကို ဖျောက်ရန်"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"လက်မှတ်ထိုးဝင်မှုများ"</string>
<string name="sign_in_info" msgid="2627704710674232328">"လက်မှတ်ထိုးဝင်သည့် အချက်အလက်"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> သိမ်းမည့်နေရာ"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"စက်နောက်တစ်ခုတွင် လျှို့ဝှက်ကီးလုပ်မလား။"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"စက်နောက်တစ်ခုတွင် စကားဝှက်ကို သိမ်းမလား။"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"စက်နောက်တစ်ခုတွင် လက်မှတ်ထိုးဝင်ရန် အထောက်အထားကို သိမ်းမလား။"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"သင်၏လက်မှတ်ထိုးဝင်မှု အားလုံးအတွက် <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> သုံးမလား။"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"သင်အလွယ်တကူ လက်မှတ်ထိုးဝင်နိုင်ရန် <xliff:g id="USERNAME">%1$s</xliff:g> အတွက် ဤစကားဝှက်မန်နေဂျာက စကားဝှက်နှင့် လျှို့ဝှက်ကီးများကို သိမ်းမည်"</string>
<string name="set_as_default" msgid="4415328591568654603">"မူရင်းအဖြစ် သတ်မှတ်ရန်"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"ပိတ်ရန်"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"ပယ်ရန်"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"သိမ်းထားသောလျှို့ဝှက်ကီးကို <xliff:g id="APP_NAME">%1$s</xliff:g> အတွက် သုံးမလား။"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> အတွက် သိမ်းထားသောစကားဝှက် သုံးမလား။"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> အတွက် သင့်လက်မှတ်ထိုးဝင်မှုကို သုံးမလား။"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> အတွက် လက်မှတ်ထိုးဝင်မှု ရွေးစရာကို ဖွင့်မလား။"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> အတွက် သိမ်းထားသော လျှို့ဝှက်ကီး ရွေးပါ"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> အတွက် သိမ်းထားသော စကားဝှက် ရွေးပါ"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> အတွက် သိမ်းထားသော လက်မှတ်ထိုးဝင်မှုကို ရွေးပါ"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> အတွက် လက်မှတ်ထိုးဝင်မှု ရွေးခြင်း"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> အတွက် တစ်ခုကိုရွေးမလား။"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> တွင် ဤအချက်အလက်ကို သုံးမလား။"</string>
diff --git a/packages/CredentialManager/res/values-nb/strings.xml b/packages/CredentialManager/res/values-nb/strings.xml
index 5ad2ae385d6a..a041c81be5ea 100644
--- a/packages/CredentialManager/res/values-nb/strings.xml
+++ b/packages/CredentialManager/res/values-nb/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Legitimasjonslagring"</string>
<string name="string_cancel" msgid="6369133483981306063">"Avbryt"</string>
<string name="string_continue" msgid="1346732695941131882">"Fortsett"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Flere alternativer"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Lagre annerledes"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Finn ut mer"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Vis passordet"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Skjul passordet"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"pålogginger"</string>
<string name="sign_in_info" msgid="2627704710674232328">"påloggingsinformasjon"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Lagre <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> i"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Vil du opprette passnøkkelen på en annen enhet?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Vil du lagre passordet på en annen enhet?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Vil du lagre pålogging på en annen enhet?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Vil du bruke <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> for alle pålogginger?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Dette verktøyet for passordlagring for <xliff:g id="USERNAME">%1$s</xliff:g> lagrer passord og tilgangsnøkler, så det blir lett å logge på"</string>
<string name="set_as_default" msgid="4415328591568654603">"Angi som standard"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Lukk"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Lukk"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Vil du bruke den lagrede tilgangsnøkkelen for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Vil du bruke det lagrede passordet ditt for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Vil du bruke påloggingen for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Vil du låse opp påloggingsalternativene for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Velg en lagret passnøkkel for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Velg et lagret passord for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Velg en lagret pålogging for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Velg pålogging for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Vil du velge et alternativ for <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Vil du bruke denne informasjonen i <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-ne/strings.xml b/packages/CredentialManager/res/values-ne/strings.xml
index 428aec00692f..042ed62be9e0 100644
--- a/packages/CredentialManager/res/values-ne/strings.xml
+++ b/packages/CredentialManager/res/values-ne/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"क्रिडेन्सियल म्यानेजर"</string>
<string name="string_cancel" msgid="6369133483981306063">"रद्द गर्नुहोस्"</string>
<string name="string_continue" msgid="1346732695941131882">"जारी राख्नुहोस्"</string>
- <string name="string_more_options" msgid="7990658711962795124">"थप विकल्पहरू"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"अर्को तरिकाले सेभ गर्नुहोस्"</string>
<string name="string_learn_more" msgid="4541600451688392447">"थप जान्नुहोस्"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"पासवर्ड देखाइयोस्"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"पासवर्ड लुकाइयोस्"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"साइन इनसम्बन्धी जानकारी"</string>
<string name="sign_in_info" msgid="2627704710674232328">"साइन इन गर्न प्रयोग गरिने जानकारी"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> यहाँ सेभ गर्नुहोस्:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"अर्को डिभाइसमा पासकी बनाउने हो?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"अर्को डिभाइसमा पासवर्ड सेभ गर्ने हो?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"साइन इन गर्न प्रयोग गरिने युजरनेम र पासवर्ड अर्को डिभाइसमा सेभ गर्ने हो?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"तपाईंले साइन इन गर्ने सबै डिभाइसहरूमा <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> प्रयोग गर्ने हो?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"तपाईं सजिलैसँग साइन इन गर्न सक्नुहोस् भन्नाका लागि <xliff:g id="USERNAME">%1$s</xliff:g> को यो पासवर्ड म्यानेजरले तपाईंका पासवर्ड र पासकीहरू सेभ गर्छ"</string>
<string name="set_as_default" msgid="4415328591568654603">"डिफल्ट जानकारीका रूपमा सेट गर्नुहोस्"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"बन्द गर्नुहोस्"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"हटाउनुहोस्"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"आफूले सेभ गरेको पासकी प्रयोग गरी <xliff:g id="APP_NAME">%1$s</xliff:g> मा साइन इन गर्ने हो?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> मा साइन इन गर्न सेभ गरिएको पासवर्ड प्रयोग गर्ने हो?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> मा साइन इन गर्नका लागि तपाईंका क्रिडेन्सियलहरू प्रयोग गर्ने हो?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> का साइन इनसम्बन्धी विकल्पहरू अनलक गर्ने हो?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> मा साइन इन गर्न सेभ गरिएको पासकी छनौट गर्नुहोस्"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> मा साइन इन गर्न सेभ गरिएको पासवर्ड छनौट गर्नुहोस्"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> मा साइन इन गर्न सेभ गरिएका क्रिडेन्सियल छनौट गर्नुहोस्"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> मा साइन इन गर्न प्रयोग गरिने क्रिडेन्सियलहरू छनौट गर्नुहोस्"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> मा साइन गर्न प्रयोग गरिने क्रिडेन्सियल छनौट गर्ने हो?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> मा साइन गर्न गर्नका निम्ति यो जानकारी प्रयोग गर्ने हो?"</string>
diff --git a/packages/CredentialManager/res/values-nl/strings.xml b/packages/CredentialManager/res/values-nl/strings.xml
index d7be3dff144a..68f95a7552e7 100644
--- a/packages/CredentialManager/res/values-nl/strings.xml
+++ b/packages/CredentialManager/res/values-nl/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential Manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Annuleren"</string>
<string name="string_continue" msgid="1346732695941131882">"Doorgaan"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Meer opties"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Op een andere manier opslaan"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Meer informatie"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Wachtwoord tonen"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Wachtwoord verbergen"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"inloggegevens"</string>
<string name="sign_in_info" msgid="2627704710674232328">"inloggegevens"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> opslaan in"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Toegangssleutel maken op een ander apparaat?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Wachtwoord opslaan op een ander apparaat?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Login opslaan op een ander apparaat?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> elke keer gebruiken als je inlogt?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Deze wachtwoordmanager voor <xliff:g id="USERNAME">%1$s</xliff:g> slaat je wachtwoorden en toegangssleutels op zodat je makkelijk kunt inloggen"</string>
<string name="set_as_default" msgid="4415328591568654603">"Instellen als standaard"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Sluiten"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Sluiten"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Je opgeslagen toegangssleutel gebruiken voor <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Je opgeslagen wachtwoord voor <xliff:g id="APP_NAME">%1$s</xliff:g> gebruiken?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Je login voor <xliff:g id="APP_NAME">%1$s</xliff:g> gebruiken?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Inlogopties voor <xliff:g id="APP_NAME">%1$s</xliff:g> ontgrendelen?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Opgeslagen toegangssleutel kiezen voor <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Opgeslagen wachtwoord kiezen voor <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Opgeslagen login kiezen voor <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Kies een login voor <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Een optie kiezen voor <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Deze informatie gebruiken in <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-or/strings.xml b/packages/CredentialManager/res/values-or/strings.xml
index 93045d6c1991..5670dcbc9ba7 100644
--- a/packages/CredentialManager/res/values-or/strings.xml
+++ b/packages/CredentialManager/res/values-or/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"କ୍ରେଡେନସିଆଲ ମେନେଜର"</string>
<string name="string_cancel" msgid="6369133483981306063">"ବାତିଲ କରନ୍ତୁ"</string>
<string name="string_continue" msgid="1346732695941131882">"ଜାରି ରଖନ୍ତୁ"</string>
- <string name="string_more_options" msgid="7990658711962795124">"ଅଧିକ ବିକଳ୍ପ"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"ଅନ୍ୟ ଉପାୟରେ ସେଭ କର"</string>
<string name="string_learn_more" msgid="4541600451688392447">"ଅଧିକ ଜାଣନ୍ତୁ"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"ପାସୱାର୍ଡ ଦେଖାନ୍ତୁ"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"ପାସୱାର୍ଡ ଲୁଚାନ୍ତୁ"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"ସାଇନ-ଇନ"</string>
<string name="sign_in_info" msgid="2627704710674232328">"ସାଇନ-ଇନ ସୂଚନା"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>କୁ ଏଥିରେ ସେଭ କରନ୍ତୁ"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"ଅନ୍ୟ ଏକ ଡିଭାଇସରେ ପାସକୀ ତିଆରି କରିବେ?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"ଅନ୍ୟ ଏକ ଡିଭାଇସରେ ପାସୱାର୍ଡ ସେଭ କରିବେ?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"ଅନ୍ୟ ଏକ ଡିଭାଇସରେ ସାଇନ-ଇନ ସେଭ କରିବେ?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"ଆପଣଙ୍କ ସମସ୍ତ ସାଇନ-ଇନ ପାଇଁ <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> ବ୍ୟବହାର କରିବେ?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"ସହଜରେ ସାଇନ ଇନ କରିବାରେ ଆପଣଙ୍କୁ ସାହାଯ୍ୟ କରିବାକୁ <xliff:g id="USERNAME">%1$s</xliff:g>ଙ୍କ ପାଇଁ ଏହି Password Manager ଆପଣଙ୍କ ପାସୱାର୍ଡ ଏବଂ ପାସକୀଗୁଡ଼ିକୁ ଷ୍ଟୋର କରିବ"</string>
<string name="set_as_default" msgid="4415328591568654603">"ଡିଫଲ୍ଟ ଭାବେ ସେଟ କରନ୍ତୁ"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"ବନ୍ଦ କରନ୍ତୁ"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"ଖାରଜ କରନ୍ତୁ"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> ପାଇଁ ସେଭ କରାଯାଇଥିବା ଆପଣଙ୍କ ପାସକୀ ବ୍ୟବହାର କରିବେ?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> ପାଇଁ ଆପଣଙ୍କ ସେଭ କରାଯାଇଥିବା ପାସୱାର୍ଡକୁ ବ୍ୟବହାର କରିବେ?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> ପାଇଁ ଆପଣଙ୍କ ସାଇନ-ଇନ ବ୍ୟବହାର କରିବେ?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> ପାଇଁ ସାଇନ-ଇନ ବିକଳ୍ପଗୁଡ଼ିକୁ ଅନଲକ କରିବେ?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> ପାଇଁ ସେଭ କରାଯାଇଥିବା ଏକ ପାସକୀ ବାଛନ୍ତୁ"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> ପାଇଁ ସେଭ କରାଯାଇଥିବା ଏକ ପାସୱାର୍ଡ ବାଛନ୍ତୁ"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> ପାଇଁ ସେଭ କରାଯାଇଥିବା ଏକ ସାଇନ-ଇନ ବାଛନ୍ତୁ"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> ପାଇଁ ଏକ ସାଇନ-ଇନ ବାଛନ୍ତୁ"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> ପାଇଁ ଏକ ବିକଳ୍ପ ବାଛିବେ?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g>ରେ ଏହି ସୂଚନାକୁ ବ୍ୟବହାର କରିବେ?"</string>
diff --git a/packages/CredentialManager/res/values-pa/strings.xml b/packages/CredentialManager/res/values-pa/strings.xml
index 6824c5017871..10ff1ad3dabc 100644
--- a/packages/CredentialManager/res/values-pa/strings.xml
+++ b/packages/CredentialManager/res/values-pa/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"ਕ੍ਰੀਡੈਂਸ਼ੀਅਲ ਪ੍ਰਬੰਧਕ"</string>
<string name="string_cancel" msgid="6369133483981306063">"ਰੱਦ ਕਰੋ"</string>
<string name="string_continue" msgid="1346732695941131882">"ਜਾਰੀ ਰੱਖੋ"</string>
- <string name="string_more_options" msgid="7990658711962795124">"ਹੋਰ ਵਿਕਲਪ"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"ਹੋਰ ਤਰੀਕੇ ਰੱਖਿਅਤ ਕਰੋ"</string>
<string name="string_learn_more" msgid="4541600451688392447">"ਹੋਰ ਜਾਣੋ"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"ਪਾਸਵਰਡ ਦਿਖਾਓ"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"ਪਾਸਵਰਡ ਲੁਕਾਓ"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"ਸਾਈਨ-ਇਨਾਂ ਦੀ ਜਾਣਕਾਰੀ"</string>
<string name="sign_in_info" msgid="2627704710674232328">"ਸਾਈਨ-ਇਨ ਜਾਣਕਾਰੀ"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> ਨੂੰ ਇੱਥੇ ਰੱਖਿਅਤ ਕਰੋ"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"ਕੀ ਕਿਸੇ ਹੋਰ ਡੀਵਾਈਸ \'ਤੇ ਪਾਸਕੀ ਬਣਾਉਣੀ ਹੈ?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"ਕੀ ਕਿਸੇ ਹੋਰ ਡੀਵਾਈਸ \'ਤੇ ਪਾਸਵਰਡ ਰੱਖਿਅਤ ਕਰਨਾ ਹੈ?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"ਕੀ ਕਿਸੇ ਹੋਰ ਡੀਵਾਈਸ \'ਤੇ ਸਾਈਨ-ਇਨ ਕ੍ਰੀਡੈਂਸ਼ੀਅਲ ਰੱਖਿਅਤ ਕਰਨੇ ਹਨ?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"ਕੀ ਆਪਣੇ ਸਾਰੇ ਸਾਈਨ-ਇਨਾਂ ਲਈ<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> ਦੀ ਵਰਤੋਂ ਕਰਨੀ ਹੈ?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> ਦਾ ਇਹ Password Manager ਆਸਾਨੀ ਨਾਲ ਸਾਈਨ-ਇਨ ਕਰਨ ਵਿੱਚ ਤੁਹਾਡੀ ਮਦਦ ਕਰਨ ਲਈ ਤੁਹਾਡੇ ਪਾਸਵਰਡਾਂ ਅਤੇ ਪਾਸਕੀਆਂ ਨੂੰ ਸਟੋਰ ਕਰੇਗਾ"</string>
<string name="set_as_default" msgid="4415328591568654603">"ਪੂਰਵ-ਨਿਰਧਾਰਿਤ ਵਜੋਂ ਸੈੱਟ ਕਰੋ"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"ਬੰਦ ਕਰੋ"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"ਖਾਰਜ ਕਰੋ"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"ਕੀ <xliff:g id="APP_NAME">%1$s</xliff:g> ਲਈ ਆਪਣੀ ਰੱਖਿਅਤ ਕੀਤੀ ਪਾਸਕੀ ਦੀ ਵਰਤੋਂ ਕਰਨੀ ਹੈ?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"ਕੀ <xliff:g id="APP_NAME">%1$s</xliff:g> ਲਈ ਤੁਹਾਡਾ ਰੱਖਿਅਤ ਕੀਤਾ ਪਾਸਵਰਡ ਵਰਤਣਾ ਹੈ?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"ਕੀ <xliff:g id="APP_NAME">%1$s</xliff:g> ਲਈ ਆਪਣਾ ਸਾਈਨ-ਇਨ ਕਰਨ ਦਾ ਵਿਕਲਪ ਵਰਤਣਾ ਹੈ?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"ਕੀ <xliff:g id="APP_NAME">%1$s</xliff:g> ਲਈ ਸਾਈਨ-ਇਨ ਵਿਕਲਪਾਂ ਨੂੰ ਅਣਲਾਕ ਕਰਨਾ ਹੈ?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> ਲਈ ਕੋਈ ਰੱਖਿਅਤ ਕੀਤੀ ਪਾਸਕੀ ਚੁਣੋ"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> ਲਈ ਕੋਈ ਰੱਖਿਅਤ ਕੀਤਾ ਪਾਸਵਰਡ ਚੁਣੋ"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> ਲਈ ਕੋਈ ਰੱਖਿਅਤ ਕੀਤੀ ਸਾਈਨ-ਇਨ ਜਾਣਕਾਰੀ ਚੁਣੋ"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> ਲਈ ਸਾਈਨ-ਇਨ ਕਰਨ ਦਾ ਵਿਕਲਪ ਚੁਣੋ"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"ਕੀ <xliff:g id="APP_NAME">%1$s</xliff:g> ਲਈ ਕਿਸੇ ਵਿਕਲਪ ਦੀ ਚੋਣ ਕਰਨੀ ਹੈ?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"ਕੀ <xliff:g id="APP_NAME">%1$s</xliff:g> \'ਤੇ ਇਸ ਜਾਣਕਾਰੀ ਦੀ ਵਰਤੋਂ ਕਰਨੀ ਹੈ?"</string>
diff --git a/packages/CredentialManager/res/values-pl/strings.xml b/packages/CredentialManager/res/values-pl/strings.xml
index 412eaf2db825..be60af589d3e 100644
--- a/packages/CredentialManager/res/values-pl/strings.xml
+++ b/packages/CredentialManager/res/values-pl/strings.xml
@@ -20,23 +20,23 @@
<string name="app_name" msgid="4539824758261855508">"Menedżer danych logowania"</string>
<string name="string_cancel" msgid="6369133483981306063">"Anuluj"</string>
<string name="string_continue" msgid="1346732695941131882">"Dalej"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Więcej opcji"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Zapisz inny sposób"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Więcej informacji"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Pokaż hasło"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ukryj hasło"</string>
- <string name="passkey_creation_intro_title" msgid="4251037543787718844">"Klucze zwiększają Twoje bezpieczeństwo"</string>
- <string name="passkey_creation_intro_body_password" msgid="8825872426579958200">"Dzięki kluczom nie musisz tworzyć ani zapamiętywać skomplikowanych haseł"</string>
- <string name="passkey_creation_intro_body_fingerprint" msgid="7331338631826254055">"Klucze są szyfrowanymi kluczami cyfrowymi, które tworzysz za pomocą blokady ekranu bądź funkcji rozpoznawania twarzy lub odcisku palca"</string>
+ <string name="passkey_creation_intro_title" msgid="4251037543787718844">"Klucze dostępu zwiększają Twoje bezpieczeństwo"</string>
+ <string name="passkey_creation_intro_body_password" msgid="8825872426579958200">"Dzięki kluczom dostępu nie musisz tworzyć ani zapamiętywać skomplikowanych haseł"</string>
+ <string name="passkey_creation_intro_body_fingerprint" msgid="7331338631826254055">"Klucze dostępu są szyfrowanymi kluczami cyfrowymi, które tworzysz za pomocą blokady ekranu bądź funkcji rozpoznawania twarzy lub odcisku palca"</string>
<string name="passkey_creation_intro_body_device" msgid="1203796455762131631">"Klucze są zapisane w menedżerze haseł, dzięki czemu możesz logować się na innych urządzeniach"</string>
- <string name="more_about_passkeys_title" msgid="7797903098728837795">"Więcej informacji o kluczach"</string>
+ <string name="more_about_passkeys_title" msgid="7797903098728837795">"Więcej informacji o kluczach dostępu"</string>
<string name="passwordless_technology_title" msgid="2497513482056606668">"Technologia niewymagająca haseł"</string>
- <string name="passwordless_technology_detail" msgid="6853928846532955882">"Klucze umożliwiają logowanie się bez konieczności stosowania haseł. Wystarczy użyć odcisku palca, rozpoznawania twarzy, kodu PIN lub wzoru, aby potwierdzić tożsamość i utworzyć klucz."</string>
+ <string name="passwordless_technology_detail" msgid="6853928846532955882">"Klucze dostępu umożliwiają logowanie się bez konieczności stosowania haseł. Wystarczy użyć odcisku palca, rozpoznawania twarzy, kodu PIN lub wzoru, aby potwierdzić tożsamość i utworzyć klucz dostępu."</string>
<string name="public_key_cryptography_title" msgid="6751970819265298039">"Kryptografia klucza publicznego"</string>
- <string name="public_key_cryptography_detail" msgid="6937631710280562213">"Zgodnie z zasadami FIDO Alliance (stowarzyszenia zrzeszającego m.in. Google, Apple i Microsoft) oraz standardami W3C klucze opierają się na kluczach kryptograficznych. W odróżnieniu od nazw użytkownika i ciągów znaków stanowiących hasła pary kluczy prywatnych i publicznych są tworzone dla konkretnych aplikacji i stron. Klucz prywatny jest bezpiecznie przechowywany na urządzeniu lub w menedżerze haseł i potwierdza Twoją tożsamość. Klucz publiczny jest udostępniany serwerowi aplikacji lub strony. Mając odpowiednie klucze, od razu się zarejestrujesz i zalogujesz."</string>
+ <string name="public_key_cryptography_detail" msgid="6937631710280562213">"Zgodnie z zasadami FIDO Alliance (stowarzyszenia zrzeszającego m.in. Google, Apple i Microsoft) oraz standardami W3C klucze dostępu opierają się na kluczach kryptograficznych. W odróżnieniu od nazw użytkownika i ciągów znaków stanowiących hasła pary kluczy prywatnych i publicznych są tworzone dla konkretnych aplikacji i stron. Klucz prywatny jest bezpiecznie przechowywany na urządzeniu lub w menedżerze haseł i potwierdza Twoją tożsamość. Klucz publiczny jest udostępniany serwerowi aplikacji lub strony. Mając odpowiednie klucze, od razu się zarejestrujesz i zalogujesz."</string>
<string name="improved_account_security_title" msgid="1069841917893513424">"Zwiększone bezpieczeństwo konta"</string>
<string name="improved_account_security_detail" msgid="9123750251551844860">"Każdy klucz jest połączony wyłącznie z aplikacją lub stroną, dla której został utworzony, więc nie zalogujesz się przypadkowo w fałszywej aplikacji ani na fałszywej stronie. Ponadto na serwerach są przechowywane wyłącznie klucze publiczne, co znacznie utrudnia hakowanie."</string>
<string name="seamless_transition_title" msgid="5335622196351371961">"Płynne przechodzenie"</string>
- <string name="seamless_transition_detail" msgid="4475509237171739843">"W czasie przechodzenia na technologie niewymagające haseł możliwość stosowania haseł – niezależnie od kluczy – wciąż będzie dostępna."</string>
+ <string name="seamless_transition_detail" msgid="4475509237171739843">"W czasie przechodzenia na technologie niewymagające haseł możliwość stosowania haseł – niezależnie od kluczy dostępu – wciąż będzie dostępna."</string>
<string name="choose_provider_title" msgid="8870795677024868108">"Wybierz, gdzie zapisywać <xliff:g id="CREATETYPES">%1$s</xliff:g>"</string>
<string name="choose_provider_body" msgid="4967074531845147434">"Wybierz menedżera haseł, aby zapisywać informacje i logować się szybciej"</string>
<string name="choose_create_option_passkey_title" msgid="5220979185879006862">"Utworzyć klucz dla aplikacji <xliff:g id="APPNAME">%1$s</xliff:g>?"</string>
@@ -44,25 +44,22 @@
<string name="choose_create_option_sign_in_title" msgid="4124872317613421249">"Zapisać dane logowania do aplikacji <xliff:g id="APPNAME">%1$s</xliff:g>?"</string>
<string name="passkey" msgid="632353688396759522">"klucz"</string>
<string name="password" msgid="6738570945182936667">"hasło"</string>
- <string name="passkeys" msgid="5733880786866559847">"klucze"</string>
+ <string name="passkeys" msgid="5733880786866559847">"klucze dostępu"</string>
<string name="passwords" msgid="5419394230391253816">"hasła"</string>
<string name="sign_ins" msgid="4710739369149469208">"dane logowania"</string>
<string name="sign_in_info" msgid="2627704710674232328">"dane logowania"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Zapisać <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> w:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Utworzyć klucz dostępu na innym urządzeniu?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Zapisać hasło na innym urządzeniu?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Zapisać sposób logowania się na innym urządzeniu?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Używać usługi <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> w przypadku wszystkich danych logowania?"</string>
- <string name="use_provider_for_all_description" msgid="1998772715863958997">"Menedżer haseł na koncie <xliff:g id="USERNAME">%1$s</xliff:g> będzie zapisywał Twoje hasła i klucze, aby ułatwić Ci logowanie"</string>
+ <string name="use_provider_for_all_description" msgid="1998772715863958997">"Menedżer haseł na koncie <xliff:g id="USERNAME">%1$s</xliff:g> będzie zapisywał Twoje hasła i klucze dostępu, aby ułatwić Ci logowanie"</string>
<string name="set_as_default" msgid="4415328591568654603">"Ustaw jako domyślną"</string>
<string name="settings" msgid="6536394145760913145">"Ustawienia"</string>
<string name="use_once" msgid="9027366575315399714">"Użyj raz"</string>
- <string name="more_options_usage_passwords_passkeys" msgid="3470113942332934279">"Hasła: <xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g> • Klucze: <xliff:g id="PASSKEYSNUMBER">%2$s</xliff:g>"</string>
+ <string name="more_options_usage_passwords_passkeys" msgid="3470113942332934279">"Hasła: <xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g> • Klucze dostępu: <xliff:g id="PASSKEYSNUMBER">%2$s</xliff:g>"</string>
<string name="more_options_usage_passwords" msgid="1632047277723187813">"Hasła: <xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g>"</string>
- <string name="more_options_usage_passkeys" msgid="5390320437243042237">"Klucze: <xliff:g id="PASSKEYSNUMBER">%1$s</xliff:g>"</string>
+ <string name="more_options_usage_passkeys" msgid="5390320437243042237">"Klucze dostępu: <xliff:g id="PASSKEYSNUMBER">%1$s</xliff:g>"</string>
<string name="more_options_usage_credentials" msgid="1785697001787193984">"Dane logowania: <xliff:g id="TOTALCREDENTIALSNUMBER">%1$s</xliff:g>"</string>
<string name="passkey_before_subtitle" msgid="2448119456208647444">"Klucz"</string>
<string name="another_device" msgid="5147276802037801217">"Inne urządzenie"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Zamknij"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Zamknij"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Użyć zapisanego klucza dla aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Użyć zapisanego hasła do aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Użyć tych danych logowania do aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Odblokować opcje logowania do aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Wybierz zapisany klucz dostępu do aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Wybierz zapisane hasło do aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Wybierz zapisane dane logowania do aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Wybierz dane logowania do aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Wybrać opcję dla aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Użyć tych informacji w aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-pt-rBR/strings.xml b/packages/CredentialManager/res/values-pt-rBR/strings.xml
index e31f4744c90a..5a838ae9ce25 100644
--- a/packages/CredentialManager/res/values-pt-rBR/strings.xml
+++ b/packages/CredentialManager/res/values-pt-rBR/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Gerenciador de credenciais"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancelar"</string>
<string name="string_continue" msgid="1346732695941131882">"Continuar"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Mais opções"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Salvar de outra forma"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Saiba mais"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Mostrar senha"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ocultar senha"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"logins"</string>
<string name="sign_in_info" msgid="2627704710674232328">"informações de login"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Salvar <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> em"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Criar chave de acesso em outro dispositivo?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Salvar senha em outro dispositivo?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Salvar credenciais de login em outro dispositivo?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Usar <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> para todos os seus logins?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Esse gerenciador vai armazenar as senhas e chaves de acesso para facilitar o processo de login de <xliff:g id="USERNAME">%1$s</xliff:g>"</string>
<string name="set_as_default" msgid="4415328591568654603">"Definir como padrão"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Fechar"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Dispensar"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Usar sua chave de acesso salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Usar a senha salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Usar seu login para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Desbloquear opções de login para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Escolha uma chave de acesso salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Escolha uma senha salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Escolha uma credencial de login salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Escolha uma opção de login para o app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Escolher uma opção para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Usar estas informações no app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-pt-rPT/strings.xml b/packages/CredentialManager/res/values-pt-rPT/strings.xml
index d21e44f22fc2..27b84aa96d3c 100644
--- a/packages/CredentialManager/res/values-pt-rPT/strings.xml
+++ b/packages/CredentialManager/res/values-pt-rPT/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential Manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancelar"</string>
<string name="string_continue" msgid="1346732695941131882">"Continuar"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Mais opções"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Guardar outra forma"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Saber mais"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Mostrar palavra-passe"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ocultar palavra-passe"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"inícios de sessão"</string>
<string name="sign_in_info" msgid="2627704710674232328">"informações de início de sessão"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Guardar <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> em:"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Criar uma chave de acesso noutro dispositivo?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Guardar a palavra-passe noutro dispositivo?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Guardar o início de sessão noutro dispositivo?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Usar <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> para todos os seus inícios de sessão?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Este gestor de palavras-passe de <xliff:g id="USERNAME">%1$s</xliff:g> armazena as suas palavras-passe e chaves de acesso para ajudar a iniciar sessão facilmente"</string>
<string name="set_as_default" msgid="4415328591568654603">"Definir como predefinição"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Fechar"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Ignorar"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Usar a sua chave de acesso guardada na app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Usar a sua palavra-passe guardada para a app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Usar o seu início de sessão para a app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Desbloquear as opções de início de sessão para a app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Escolha uma chave de acesso guardada para a app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Escolha uma palavra-passe guardada para a app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Escolha um início de sessão guardado para a app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Escolha um início de sessão para a app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Escolher uma opção para a app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Usar estas informações na app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-pt/strings.xml b/packages/CredentialManager/res/values-pt/strings.xml
index e31f4744c90a..5a838ae9ce25 100644
--- a/packages/CredentialManager/res/values-pt/strings.xml
+++ b/packages/CredentialManager/res/values-pt/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Gerenciador de credenciais"</string>
<string name="string_cancel" msgid="6369133483981306063">"Cancelar"</string>
<string name="string_continue" msgid="1346732695941131882">"Continuar"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Mais opções"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Salvar de outra forma"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Saiba mais"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Mostrar senha"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ocultar senha"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"logins"</string>
<string name="sign_in_info" msgid="2627704710674232328">"informações de login"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Salvar <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> em"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Criar chave de acesso em outro dispositivo?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Salvar senha em outro dispositivo?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Salvar credenciais de login em outro dispositivo?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Usar <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> para todos os seus logins?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Esse gerenciador vai armazenar as senhas e chaves de acesso para facilitar o processo de login de <xliff:g id="USERNAME">%1$s</xliff:g>"</string>
<string name="set_as_default" msgid="4415328591568654603">"Definir como padrão"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Fechar"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Dispensar"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Usar sua chave de acesso salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Usar a senha salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Usar seu login para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Desbloquear opções de login para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Escolha uma chave de acesso salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Escolha uma senha salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Escolha uma credencial de login salva para o app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Escolha uma opção de login para o app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Escolher uma opção para o app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Usar estas informações no app <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-ro/strings.xml b/packages/CredentialManager/res/values-ro/strings.xml
index caae5dac5c08..5292ecaa754d 100644
--- a/packages/CredentialManager/res/values-ro/strings.xml
+++ b/packages/CredentialManager/res/values-ro/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Manager de date de conectare"</string>
<string name="string_cancel" msgid="6369133483981306063">"Anulează"</string>
<string name="string_continue" msgid="1346732695941131882">"Continuă"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Mai multe opțiuni"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Salvează altfel"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Află mai multe"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Afișează parola"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ascunde parola"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"date de conectare"</string>
<string name="sign_in_info" msgid="2627704710674232328">"informațiile de conectare"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Salvează <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> în"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Creezi o cheie de acces pe alt dispozitiv?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Salvezi parola pe alt dispozitiv?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Salvezi datele de conectare pe alt dispozitiv?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Folosești <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> pentru toate conectările?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Managerul de parole pentru <xliff:g id="USERNAME">%1$s</xliff:g> îți va stoca parolele și cheile de acces, pentru a te ajuta să te conectezi cu ușurință"</string>
<string name="set_as_default" msgid="4415328591568654603">"Setează ca prestabilite"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Închide"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Închide"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Folosești cheia de acces salvată pentru <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Folosești parola salvată pentru <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Folosești datele de conectare pentru <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Deblochezi opțiunile de conectare pentru <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Alege o cheie de acces salvată pentru <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Alege o parolă salvată pentru <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Alege o conectare salvată pentru <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Alege un set de date conectare pentru <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Alegi o opțiune pentru <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Folosești aceste informații în <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-ru/strings.xml b/packages/CredentialManager/res/values-ru/strings.xml
index 9e0751a45cb7..99d2d7cc39f8 100644
--- a/packages/CredentialManager/res/values-ru/strings.xml
+++ b/packages/CredentialManager/res/values-ru/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Менеджер учетных данных"</string>
<string name="string_cancel" msgid="6369133483981306063">"Отмена"</string>
<string name="string_continue" msgid="1346732695941131882">"Продолжить"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Другие варианты"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Сохранить"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Подробнее"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Показать пароль"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Скрыть пароль"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"входы"</string>
<string name="sign_in_info" msgid="2627704710674232328">"учетные данные"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Где сохранить <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Создать ключ доступа на другом устройстве?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Сохранить пароль на другом устройстве?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Сохранить учетные данные на другом устройстве?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Всегда входить с помощью приложения \"<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>\"?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"В этом менеджере паролей пользователь <xliff:g id="USERNAME">%1$s</xliff:g> сможет сохранять пароли и ключи доступа для быстрого входа."</string>
<string name="set_as_default" msgid="4415328591568654603">"Использовать по умолчанию"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Закрыть"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Закрыть"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Использовать сохраненный ключ доступа для приложения \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Использовать сохраненный пароль для приложения \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Войти в приложение \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" с этими данными?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Разблокировать варианты входа для приложения \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Выберите сохраненный ключ доступа для приложения \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Выберите сохраненный пароль для приложения \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Выберите сохраненные учетные данные для приложения \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Как вы хотите войти в приложение \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"?"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Выберите данные для входа в приложение \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Использовать эту информацию для входа в приложение \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"?"</string>
diff --git a/packages/CredentialManager/res/values-si/strings.xml b/packages/CredentialManager/res/values-si/strings.xml
index d293dce3333c..79eaa1390c91 100644
--- a/packages/CredentialManager/res/values-si/strings.xml
+++ b/packages/CredentialManager/res/values-si/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"අක්තපත්‍ර කළමනාකරු"</string>
<string name="string_cancel" msgid="6369133483981306063">"අවලංගු කරන්න"</string>
<string name="string_continue" msgid="1346732695941131882">"ඉදිරියට යන්න"</string>
- <string name="string_more_options" msgid="7990658711962795124">"තවත් විකල්ප"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"වෙන මාර්ගයක සුරකින්න"</string>
<string name="string_learn_more" msgid="4541600451688392447">"තව දැන ගන්න"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"මුරපදය පෙන්වන්න"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"මුරපදය සඟවන්න"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"පුරනය වීම්"</string>
<string name="sign_in_info" msgid="2627704710674232328">"පුරනය වීමේ තතු"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"වෙත <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> සුරකින්න"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"වෙනත් උපාංගයක මුරයතුර තනන්න ද?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"වෙනත් උපාංගයක මුරපදය සුරකින්න ද?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"වෙනත් උපාංගයක පුරනය වීම සුරකින්න ද?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"ඔබේ සියලු පුරනය වීම් සඳහා <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> භාවිතා කරන්න ද?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> සඳහා මෙම මුරපද කළමනාකරු ඔබට පහසුවෙන් පුරනය වීමට උදවු කිරීම සඳහා ඔබේ මුරපද සහ මුරයතුරු ගබඩා කරනු ඇත"</string>
<string name="set_as_default" msgid="4415328591568654603">"පෙරනිමි ලෙස සකසන්න"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"වසන්න"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"අස් කරන්න"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> සඳහා ඔබේ සුරැකි මුරයතුර භාවිතා කරන්න ද?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> සඳහා ඔබේ සුරැකි මුරපදය භාවිත කරන්න ද?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> සඳහා ඔබේ පුරනය වීම භාවිතා කරන්න ද?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> සඳහා පුරන විකල්ප අගුලු හරින්න ද?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> සඳහා සුරකින ලද මුරයතුරක් තෝරන්න"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> සඳහා සුරකින ලද මුරපදයක් තෝරන්න"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> සඳහා සුරැකි පුරනයක් තෝරා ගන්න"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> සඳහා පුරනය වීමක් තෝරා ගන්න"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> සඳහා විකල්පයක් තෝරන්නද?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> මත මෙම තතු භාවිතා කරන්න ද?"</string>
diff --git a/packages/CredentialManager/res/values-sk/strings.xml b/packages/CredentialManager/res/values-sk/strings.xml
index fe1af111a387..8168b5178f80 100644
--- a/packages/CredentialManager/res/values-sk/strings.xml
+++ b/packages/CredentialManager/res/values-sk/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Správca prihlasovacích údajov"</string>
<string name="string_cancel" msgid="6369133483981306063">"Zrušiť"</string>
<string name="string_continue" msgid="1346732695941131882">"Pokračovať"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Ďalšie možnosti"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Uložiť inak"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Ďalšie informácie"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Zobraziť heslo"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Skryť heslo"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"prihlasovacie údaje"</string>
<string name="sign_in_info" msgid="2627704710674232328">"prihlasovacie údaje"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Uložiť <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> do"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Chcete vytvoriť prístupový kľúč v inom zariadení?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Chcete uložiť heslo v inom zariadení?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Chcete uložiť prihlasovacie údaje v inom zariadení?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Chcete pre všetky svoje prihlasovacie údaje použiť <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Tento správca hesiel poskytovateľa <xliff:g id="USERNAME">%1$s</xliff:g> uchová vaše heslá a prístupové kľúče, aby vám pomohol ľahšie sa prihlasovať"</string>
<string name="set_as_default" msgid="4415328591568654603">"Nastaviť ako predvolené"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Zavrieť"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Zavrieť"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Chcete pre aplikáciu <xliff:g id="APP_NAME">%1$s</xliff:g> použiť uložený prístupový kľúč?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Chcete použiť uložené heslo aplikácie <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Chcete použiť svoje prihlásenie pre aplikáciu <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Chcete odomknúť možnosti prihlásenia pre aplikáciu <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Vyberte uložený prístupový kľúč pre aplikáciu <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Vyberte uložené heslo pre aplikáciu <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Vyberte uložené prihlasovacie údaje pre aplikáciu <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Vyberte prihlásenie pre aplikáciu <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Chcete pre aplikáciu <xliff:g id="APP_NAME">%1$s</xliff:g> vybrať možnosť?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Chcete použiť tieto informácie v aplikácii <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-sl/strings.xml b/packages/CredentialManager/res/values-sl/strings.xml
index 7e4678204cf1..c0a9064eea01 100644
--- a/packages/CredentialManager/res/values-sl/strings.xml
+++ b/packages/CredentialManager/res/values-sl/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Upravitelj poverilnic"</string>
<string name="string_cancel" msgid="6369133483981306063">"Prekliči"</string>
<string name="string_continue" msgid="1346732695941131882">"Naprej"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Več možnosti"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Shrani na drug način"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Več o tem"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Prikaz gesla"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Skrivanje gesla"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"prijave"</string>
<string name="sign_in_info" msgid="2627704710674232328">"podatkov za prijavo"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Mesto shranjevanja: <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Želite ustvariti ključ za dostop v drugi napravi?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Želite shraniti geslo v drugi napravi?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Želite shraniti prijavo v drugi napravi?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Želite za vse prijave uporabiti »<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>«?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"V tem upravitelju gesel za uporabnika <xliff:g id="USERNAME">%1$s</xliff:g> bodo shranjeni gesla in ključi za dostop, kar vam bo olajšalo prijavo."</string>
<string name="set_as_default" msgid="4415328591568654603">"Nastavi kot privzeto"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Zapri"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Opusti"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Želite uporabiti shranjeni ključ za dostop do aplikacije <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Ali želite uporabiti shranjeno geslo za aplikacijo <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Želite uporabiti svojo prijavo za aplikacijo <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Želite odkleniti možnosti prijave za aplikacijo <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Izberite shranjeni ključ za dostop za aplikacijo <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Izberite shranjeno geslo za aplikacijo <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Izberite shranjene podatke za prijavo za aplikacijo <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Izberite prijavo za aplikacijo <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Izberite možnost za aplikacijo <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Želite te podatke uporabiti v aplikaciji <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-sq/strings.xml b/packages/CredentialManager/res/values-sq/strings.xml
index 32352bd16e91..d70cf4dcffa1 100644
--- a/packages/CredentialManager/res/values-sq/strings.xml
+++ b/packages/CredentialManager/res/values-sq/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Menaxheri i kredencialeve"</string>
<string name="string_cancel" msgid="6369133483981306063">"Anulo"</string>
<string name="string_continue" msgid="1346732695941131882">"Vazhdo"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Opsione të tjera"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Ruaje ndryshe"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Mëso më shumë"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Shfaq fjalëkalimin"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Fshih fjalëkalimin"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"identifikimet"</string>
<string name="sign_in_info" msgid="2627704710674232328">"informacionet e identifikimit"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Ruaj <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> te"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Të krijohet çelësi i kalimit në një pajisje tjetër?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Të ruhet fjalëkalimi në një pajisje tjetër?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Të ruhet identifikimi në një pajisje tjetër?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Të përdoret <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> për të gjitha identifikimet?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Ky menaxher i fjalëkalimeve për <xliff:g id="USERNAME">%1$s</xliff:g> do të ruajë fjalëkalimet dhe çelësat e kalimit për të të ndihmuar të identifikohesh me lehtësi"</string>
<string name="set_as_default" msgid="4415328591568654603">"Cakto si parazgjedhje"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Mbyll"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Hiq"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Të përdoret fjalëkalimi yt i ruajtur për <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Të përdoret fjalëkalimi i ruajtur për <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Të përdoret identifikimi yt për <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Të shkyçen opsionet e identifikimit për <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Zgjidh një çelës kalimi të ruajtur për <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Zgjidh një fjalëkalim të ruajtur për <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Zgjidh një identifikim të ruajtur për <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Zgjidh një identifikim për <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Të zgjidhet një opsion për <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Të përdoren këto informacione në <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-sr/strings.xml b/packages/CredentialManager/res/values-sr/strings.xml
index f7f3a220b78c..f5a29a212a61 100644
--- a/packages/CredentialManager/res/values-sr/strings.xml
+++ b/packages/CredentialManager/res/values-sr/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Менаџер акредитива"</string>
<string name="string_cancel" msgid="6369133483981306063">"Откажи"</string>
<string name="string_continue" msgid="1346732695941131882">"Настави"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Још опција"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Сачувај други начин"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Сазнајте више"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Прикажите лозинку"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Сакријте лозинку"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"пријављивања"</string>
<string name="sign_in_info" msgid="2627704710674232328">"подаци за пријављивање"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Сачувај <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> у"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Желите да направите приступни кôд на другом уређају?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Желите да сачувате лозинку на другом уређају?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Желите да сачувате акредитиве за пријаву на другом уређају?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Желите да за сва пријављивања користите: <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Овај менаџер лозинки за <xliff:g id="USERNAME">%1$s</xliff:g> ће чувати лозинке и приступне кодове да бисте се лако пријављивали"</string>
<string name="set_as_default" msgid="4415328591568654603">"Подеси као подразумевано"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Затворите"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Одбаци"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Желите да користите сачувани приступни кôд за: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Желите да користите сачувану лозинку за: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Желите ли да користите своје податке за пријављивање за апликацију <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Желите да откључате опције пријављивања за: <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Изаберите сачуван приступни кôд за: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Изаберите сачувану лозинку за: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Изаберите сачуване податке за пријављивање за: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Одаберите податке за пријављивање за апликацију <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Желите да одаберете опцију за апликацију <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Желите да користите те податке у апликацији <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-sv/strings.xml b/packages/CredentialManager/res/values-sv/strings.xml
index 95bcc2611920..65319b089825 100644
--- a/packages/CredentialManager/res/values-sv/strings.xml
+++ b/packages/CredentialManager/res/values-sv/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential Manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"Avbryt"</string>
<string name="string_continue" msgid="1346732695941131882">"Fortsätt"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Fler alternativ"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Spara på ett annat sätt"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Läs mer"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Visa lösenord"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Dölj lösenord"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"inloggningar"</string>
<string name="sign_in_info" msgid="2627704710674232328">"inloggningsuppgifter"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Spara <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> i"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Vill du skapa en nyckel på en annan enhet?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Vill du spara lösenordet på en annan enhet?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Vill du spara inloggningen på en annan enhet?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Vill du använda <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> för alla dina inloggningar?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Den här lösenordshanteraren för <xliff:g id="USERNAME">%1$s</xliff:g> sparar dina lösenord och nycklar för att underlätta inloggning"</string>
<string name="set_as_default" msgid="4415328591568654603">"Ange som standard"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Stäng"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Stäng"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Vill du använda din sparade nyckel för <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Vill du använda det sparade lösenordet för <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Vill du använda din inloggning för <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Vill du låsa upp inloggningsalternativ för <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Välj en sparad nyckel för <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Välj ett sparat lösenord för <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Välj en sparad inloggning för <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Välj en inloggning för <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Vill du välja ett alternativ för <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Vill du använda den här informationen på <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-sw/strings.xml b/packages/CredentialManager/res/values-sw/strings.xml
index ebe3b4b902af..56e743daa351 100644
--- a/packages/CredentialManager/res/values-sw/strings.xml
+++ b/packages/CredentialManager/res/values-sw/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Kidhibiti cha Vitambulisho"</string>
<string name="string_cancel" msgid="6369133483981306063">"Ghairi"</string>
<string name="string_continue" msgid="1346732695941131882">"Endelea"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Chaguo zaidi"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Hifadhi vingine"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Pata maelezo zaidi"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Onyesha nenosiri"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ficha nenosiri"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"michakato ya kuingia katika akaunti"</string>
<string name="sign_in_info" msgid="2627704710674232328">"maelezo ya kuingia katika akaunti"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Hifadhi <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> kwenye"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Ungependa kuunda ufunguo wa siri kwenye kifaa kingine?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Ungependa kuhifadhi nenosiri kwenye kifaa kingine?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Ungependa kuhifadhi kitambulisho cha kuingia katika akaunti kwenye kifaa kingine?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Ungependa kutumia <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> kwa ajili ya michakato yako yote ya kuingia katika akaunti?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Kidhibiti hiki cha manenosiri cha <xliff:g id="USERNAME">%1$s</xliff:g> kitahifadhi manenosiri na funguo zako za siri ili kukusaidia uingie katika akaunti kwa urahisi"</string>
<string name="set_as_default" msgid="4415328591568654603">"Weka iwe chaguomsingi"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Funga"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Ondoa"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Ungependa kutumia ufunguo wa siri uliohifadhiwa wa <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Je, ungependa kutumia nenosiri lako lililohifadhiwa kuingia katika <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Ungependa kutumia kitambulisho chako cha kuingia katika akaunti ya <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Je, ungependa kuona chaguo za kuingia katika <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Chagua ufunguo wa siri uliohifadhiwa ambao ungependa kutumia kuingia katika <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Chagua nenosiri lililohifadhiwa ambalo ungependa kutumia kuingia katika <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Chagua vitambulisho vilivyohifadhiwa ambavyo ungependa kutumia kuingia katika <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Chagua kitambulisho cha kuingia katika akaunti ya <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Ungependa kuteua chaguo la <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Ungependa kutumia maelezo haya kwenye <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-ta/strings.xml b/packages/CredentialManager/res/values-ta/strings.xml
index 1b606033af0e..fba0f3c9b72d 100644
--- a/packages/CredentialManager/res/values-ta/strings.xml
+++ b/packages/CredentialManager/res/values-ta/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"அனுமதிச் சான்று நிர்வாகி"</string>
<string name="string_cancel" msgid="6369133483981306063">"ரத்துசெய்"</string>
<string name="string_continue" msgid="1346732695941131882">"தொடர்க"</string>
- <string name="string_more_options" msgid="7990658711962795124">"கூடுதல் விருப்பங்கள்"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"வேறு வழியில் சேமி"</string>
<string name="string_learn_more" msgid="4541600451688392447">"மேலும் அறிக"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"கடவுச்சொல்லைக் காட்டும்"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"கடவுச்சொல்லை மறைக்கும்"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"உள்நுழைவுகள்"</string>
<string name="sign_in_info" msgid="2627704710674232328">"உள்நுழைவு விவரங்கள்"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> ஐ இதில் சேமியுங்கள்"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"வேறொரு சாதனத்தில் கடவுச்சாவியை உருவாக்கவா?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"வேறொரு சாதனத்தில் கடவுச்சொல்லைச் சேமிக்கவா?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"வேறொரு சாதனத்தில் உள்நுழைவைச் சேமிக்கவா?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"உங்கள் அனைத்து உள்நுழைவுகளுக்கும் <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>ஐப் பயன்படுத்தவா?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> என்ற மின்னஞ்சல் முகவரிக்கான இந்தக் கடவுச்சொல் நிர்வாகி உங்கள் கடவுச்சொற்களையும் கடவுச்சாவிகளையும் சேமித்து நீங்கள் எளிதாக உள்நுழைய உதவும்"</string>
<string name="set_as_default" msgid="4415328591568654603">"இயல்பானதாக அமை"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"மூடும்"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"நிராகரிக்கும்"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸுக்கு ஏற்கெனவே சேமிக்கப்பட்ட கடவுக்குறியீட்டைப் பயன்படுத்தவா?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸுக்குச் சேமித்த கடவுச்சொல்லைப் பயன்படுத்தவா?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸுக்கு உங்கள் உள்நுழைவு விவரங்களைப் பயன்படுத்தவா?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸுக்கான உள்நுழைவு விருப்பங்களை அன்லாக் செய்யவா?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸுக்கான சேமிக்கப்பட்ட கடவுச்சாவியைத் தேர்ந்தெடுங்கள்"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸுக்கான சேமிக்கப்பட்ட கடவுச்சொல்லைத் தேர்ந்தெடுங்கள்"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸுக்கான சேமிக்கப்பட்ட உள்நுழைவுத் தகவல்களைத் தேர்ந்தெடுங்கள்"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸுக்கான உள்நுழைவு விவரங்களைத் தேர்வுசெய்யுங்கள்"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸுக்கான விருப்பத்தைத் தேர்வுசெய்யவா?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> ஆப்ஸில் இந்தத் தகவல்களைப் பயன்படுத்தவா?"</string>
diff --git a/packages/CredentialManager/res/values-te/strings.xml b/packages/CredentialManager/res/values-te/strings.xml
index 1e6750f46791..047d49851e4c 100644
--- a/packages/CredentialManager/res/values-te/strings.xml
+++ b/packages/CredentialManager/res/values-te/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"డాక్యుమెంట్ ప్రూఫ్ మేనేజర్"</string>
<string name="string_cancel" msgid="6369133483981306063">"రద్దు చేయండి"</string>
<string name="string_continue" msgid="1346732695941131882">"కొనసాగించండి"</string>
- <string name="string_more_options" msgid="7990658711962795124">"మరిన్ని ఆప్షన్‌లు"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"మరోలా సేవ్ చేయండి"</string>
<string name="string_learn_more" msgid="4541600451688392447">"మరింత తెలుసుకోండి"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"పాస్‌వర్డ్‌ను చూపండి"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"పాస్‌వర్డ్‌ను చూపవద్దు"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"సైన్‌ ఇన్‌లు"</string>
<string name="sign_in_info" msgid="2627704710674232328">"సైన్ ఇన్ సమాచారం"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>‌లో సేవ్ చేయండి"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"మరొక పరికరంలో పాస్-కీని క్రియేట్ చేయాలా?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"మరొక పరికరంలో పాస్‌వర్డ్‌ను సేవ్ చేయాలా?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"మరో పరికరంలో సైన్-ఇన్‌ని సేవ్ చేయాలా?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"మీ అన్ని సైన్-ఇన్ వివరాల కోసం <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>ను ఉపయోగించాలా?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> కోసం ఈ పాస్‌వర్డ్ మేనేజర్ మీకు సులభంగా సైన్ ఇన్ చేయడంలో సహాయపడటానికి మీ పాస్‌వర్డ్‌లు, పాస్-కీలను స్టోర్ చేస్తుంది"</string>
<string name="set_as_default" msgid="4415328591568654603">"ఆటోమేటిక్ సెట్టింగ్‌గా సెట్ చేయండి"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"మూసివేయండి"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"విస్మరించండి"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> కోసం మీ సేవ్ చేసిన పాస్-కీని ఉపయోగించాలా?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> కోసం మీ సేవ్ చేసిన పాస్‌వర్డ్‌ను ఉపయోగించాలా?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> కోసం మీ సైన్ ఇన్ వివరాలను ఉపయోగించాలా?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> కోసం సైన్ ఇన్ ఆప్షన్‌లను అన్‌లాక్ చేయాలా?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> కోసం సేవ్ చేసిన పాస్-కీని ఎంచుకోండి"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> కోసం సేవ్ చేసిన పాస్‌వర్డ్‌ను ఎంచుకోండి"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> కోసం సేవ్ చేసిన సైన్ ఇన్ వివరాలను ఎంచుకోండి"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> కోసం సైన్ ఇన్ వివరాలను ఎంచుకోండి"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> కోసం ఏదైనా ఆప్షన్‌ను ఎంచుకోవాలనుకుంటున్నారా?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"ఈ సమాచారాన్ని <xliff:g id="APP_NAME">%1$s</xliff:g>లో ఉపయోగించాలా?"</string>
diff --git a/packages/CredentialManager/res/values-th/strings.xml b/packages/CredentialManager/res/values-th/strings.xml
index 61322c980931..249bd882b694 100644
--- a/packages/CredentialManager/res/values-th/strings.xml
+++ b/packages/CredentialManager/res/values-th/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"เครื่องมือจัดการข้อมูลเข้าสู่ระบบ"</string>
<string name="string_cancel" msgid="6369133483981306063">"ยกเลิก"</string>
<string name="string_continue" msgid="1346732695941131882">"ต่อไป"</string>
- <string name="string_more_options" msgid="7990658711962795124">"ตัวเลือกเพิ่มเติม"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"บันทึกด้วยวิธีอื่น"</string>
<string name="string_learn_more" msgid="4541600451688392447">"ดูข้อมูลเพิ่มเติม"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"แสดงรหัสผ่าน"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"ซ่อนรหัสผ่าน"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"การลงชื่อเข้าใช้"</string>
<string name="sign_in_info" msgid="2627704710674232328">"ข้อมูลการลงชื่อเข้าใช้"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"บันทึก<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>ไปยัง"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"สร้างพาสคีย์ในอุปกรณ์อื่นใช่ไหม"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"บันทึกรหัสผ่านในอุปกรณ์อื่นใช่ไหม"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"บันทึกการลงชื่อเข้าใช้ในอุปกรณ์อื่นใช่ไหม"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"ใช้ <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> สำหรับการลงชื่อเข้าใช้ทั้งหมดใช่ไหม"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"เครื่องมือจัดการรหัสผ่านสำหรับ <xliff:g id="USERNAME">%1$s</xliff:g> นี้จะจัดเก็บรหัสผ่านและพาสคีย์ไว้เพื่อช่วยให้คุณลงชื่อเข้าใช้ได้โดยง่าย"</string>
<string name="set_as_default" msgid="4415328591568654603">"ตั้งเป็นค่าเริ่มต้น"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"ปิด"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"ปิด"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"ใช้พาสคีย์ที่บันทึกไว้สำหรับ <xliff:g id="APP_NAME">%1$s</xliff:g> ใช่ไหม"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"ใช้รหัสผ่านที่บันทึกไว้สำหรับ <xliff:g id="APP_NAME">%1$s</xliff:g> ใช่ไหม"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"ใช้การลงชื่อเข้าใช้สำหรับ <xliff:g id="APP_NAME">%1$s</xliff:g> ใช่ไหม"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"ปลดล็อกตัวเลือกการลงชื่อเข้าใช้สำหรับ <xliff:g id="APP_NAME">%1$s</xliff:g> ใช่ไหม"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"เลือกพาสคีย์ที่บันทึกไว้สำหรับ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"เลือกรหัสผ่านที่บันทึกไว้สำหรับ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"เลือกการลงชื่อเข้าใช้ที่บันทึกไว้สำหรับ \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"เลือกการลงชื่อเข้าใช้สำหรับ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"ต้องการเลือกตัวเลือกสำหรับ <xliff:g id="APP_NAME">%1$s</xliff:g> ไหม"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"ใช้ข้อมูลนี้กับ <xliff:g id="APP_NAME">%1$s</xliff:g> ไหม"</string>
diff --git a/packages/CredentialManager/res/values-tl/strings.xml b/packages/CredentialManager/res/values-tl/strings.xml
index 714fccb9032f..6cd134d06e7f 100644
--- a/packages/CredentialManager/res/values-tl/strings.xml
+++ b/packages/CredentialManager/res/values-tl/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Manager ng Kredensyal"</string>
<string name="string_cancel" msgid="6369133483981306063">"Kanselahin"</string>
<string name="string_continue" msgid="1346732695941131882">"Magpatuloy"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Higit pang opsyon"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"I-save sa ibang paraan"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Matuto pa"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Ipakita ang password"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Itago ang password"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"mga sign-in"</string>
<string name="sign_in_info" msgid="2627704710674232328">"impormasyon sa pag-sign in"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"I-save ang <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> sa"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Gumawa ng passkey sa ibang device?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"I-save ang password sa ibang device?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"I-save ang pag-sign in sa ibang device?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Gamitin ang <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> para sa lahat ng iyong pag-sign in?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Iso-store ng password manager na ito para sa <xliff:g id="USERNAME">%1$s</xliff:g> ang iyong mga password at passkey para madali kang makapag-sign in"</string>
<string name="set_as_default" msgid="4415328591568654603">"Itakda bilang default"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Isara"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"I-dismiss"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Gamitin ang iyong naka-save na passkey para sa <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Gamitin ang iyong naka-save na password para sa <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Gamitin ang iyong sign-in para sa <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"I-unlock ang mga opsyon sa pag-sign in para sa <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Pumili ng naka-save na passkey para sa <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Pumili ng naka-save na password para sa <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Pumili ng naka-save na sign-in para sa <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Pumili ng sign-in para sa <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Pumili ng opsyon para sa <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Gamitin ang impormasyong ito sa <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-tr/strings.xml b/packages/CredentialManager/res/values-tr/strings.xml
index c49cf39a36a4..a3b72d57d250 100644
--- a/packages/CredentialManager/res/values-tr/strings.xml
+++ b/packages/CredentialManager/res/values-tr/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Kimlik Bilgisi Yöneticisi"</string>
<string name="string_cancel" msgid="6369133483981306063">"İptal"</string>
<string name="string_continue" msgid="1346732695941131882">"Devam"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Diğer seçenekler"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Başka şekilde kaydet"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Daha fazla bilgi"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Şifreyi göster"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Şifreyi gizle"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"oturum aç"</string>
<string name="sign_in_info" msgid="2627704710674232328">"Oturum açma bilgileri"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> nereye kaydedilsin?"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Başka bir cihazda geçiş anahtarı oluşturulsun mu?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Şifre başka bir cihaza kaydedilsin mi?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Oturum açma bilgileri başka bir cihaza kaydedilsin mi?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Tüm oturum açma işlemlerinizde <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> kullanılsın mı?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> için bu şifre yöneticisi, şifrelerinizi ve şifre anahtarlarınızı saklayarak kolayca oturum açmanıza yardımcı olur"</string>
<string name="set_as_default" msgid="4415328591568654603">"Varsayılan olarak ayarla"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Kapat"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Kapat"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> için kayıtlı şifre anahtarınız kullanılsın mı?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> için kayıtlı şifreniz kullanılsın mı?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> için oturum açma bilgileriniz kullanılsın mı?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> için oturum açma seçeneklerine izin verilsin mi?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> için kayıtlı bir geçiş anahtarı kullanın"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> için kayıtlı bir şifre kullanın"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> için kayıtlı oturum açma bilgilerini kullanın"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> için oturum açma bilgilerini seçin"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> için bir seçim yapmak ister misiniz?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Bu bilgiler <xliff:g id="APP_NAME">%1$s</xliff:g> uygulamasında kullanılsın mı?"</string>
diff --git a/packages/CredentialManager/res/values-uk/strings.xml b/packages/CredentialManager/res/values-uk/strings.xml
index ce550026e42b..c672385c1691 100644
--- a/packages/CredentialManager/res/values-uk/strings.xml
+++ b/packages/CredentialManager/res/values-uk/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Диспетчер облікових даних"</string>
<string name="string_cancel" msgid="6369133483981306063">"Скасувати"</string>
<string name="string_continue" msgid="1346732695941131882">"Продовжити"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Інші опції"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Зберегти інший спосіб"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Докладніше"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Показати пароль"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Сховати пароль"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"дані для входу"</string>
<string name="sign_in_info" msgid="2627704710674232328">"дані для входу"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Зберегти <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> в"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Створити ключ доступу на іншому пристрої?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Зберегти пароль на іншому пристрої?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Зберегти дані для входу на іншому пристрої?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Використовувати сервіс <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> в усіх випадках входу?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Цей менеджер паролів для користувача <xliff:g id="USERNAME">%1$s</xliff:g> зберігатиме ваші паролі й ключі доступу, щоб ви могли легко входити в облікові записи"</string>
<string name="set_as_default" msgid="4415328591568654603">"Вибрати за умовчанням"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Закрити"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Закрити"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Використати збережений ключ доступу для додатка <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Використати ваш збережений пароль для додатка <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Використовувати ваші дані для входу в додаток <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Розблокувати опції входу для додатка <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Виберіть збережений ключ доступу для додатка <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Виберіть збережений пароль для додатка <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Виберіть збережені дані для входу в додаток <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Виберіть дані для входу в додаток <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Вибрати варіант для додатка <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Використовувати ці дані в додатку <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-ur/strings.xml b/packages/CredentialManager/res/values-ur/strings.xml
index 089440fabdd4..11cba46c153e 100644
--- a/packages/CredentialManager/res/values-ur/strings.xml
+++ b/packages/CredentialManager/res/values-ur/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"سند سے متعلق مینیجر"</string>
<string name="string_cancel" msgid="6369133483981306063">"منسوخ کریں"</string>
<string name="string_continue" msgid="1346732695941131882">"جاری رکھیں"</string>
- <string name="string_more_options" msgid="7990658711962795124">"مزید اختیارات"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"دوسرے طریقے سے محفوظ کریں"</string>
<string name="string_learn_more" msgid="4541600451688392447">"مزید جانیں"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"پاس ورڈ دکھائیں"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"پاس ورڈ چھپائیں"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"سائن انز"</string>
<string name="sign_in_info" msgid="2627704710674232328">"سائن ان کی معلومات"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> کو اس میں محفوظ کریں"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"کسی دوسرے آلے پر پاسکی بنائیں؟"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"کسی دوسرے آلے پر پاس ورڈ محفوظ کریں؟"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"کسی دوسرے آلے پر سائن ان کو محفوظ کریں؟"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"اپنے سبھی سائن انز کے لیے <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> کا استعمال کریں؟"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"آسانی سے سائن ان کرنے میں آپ کی مدد کرنے کے لیے یہ پاس ورڈ مینیجر <xliff:g id="USERNAME">%1$s</xliff:g> کے لیے آپ کے پاس ورڈز اور پاس کیز کو اسٹور کرے گا"</string>
<string name="set_as_default" msgid="4415328591568654603">"بطور ڈیفالٹ سیٹ کریں"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"بند کریں"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"برخاست کریں"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے لیے اپنی محفوظ کردہ پاس کی استعمال کریں؟"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے لیے آپ کا محفوظ کردہ پاس ورڈ استعمال کریں؟"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے لیے اپنے سائن ان کی اسناد کا استعمال کرنا؟"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے لیے سائن ان کے اختیارات کو غیر مقفل کریں؟"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے لیے ایک محفوظ کردہ پاس کی منتخب کریں"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے لیے ایک محفوظ کردہ پاس ورڈ منتخب کریں"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے لیے محفوظ کردہ سائن ان منتخب کریں"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے لیے سائن ان کی اسناد کا انتخاب کرنا"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے لیے ایک اختیار منتخب کریں؟"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"<xliff:g id="APP_NAME">%1$s</xliff:g> پر اس معلومات کا استعمال کریں؟"</string>
diff --git a/packages/CredentialManager/res/values-uz/strings.xml b/packages/CredentialManager/res/values-uz/strings.xml
index 30bf3d3084c7..5797121d2c45 100644
--- a/packages/CredentialManager/res/values-uz/strings.xml
+++ b/packages/CredentialManager/res/values-uz/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Hisob maʼlumotlari menejeri"</string>
<string name="string_cancel" msgid="6369133483981306063">"Bekor qilish"</string>
<string name="string_continue" msgid="1346732695941131882">"Davom etish"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Boshqa parametrlar"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Boshqa usulda saqlang"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Batafsil"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Parolni koʻrsatish"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Parolni berkitish"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"kirishlar"</string>
<string name="sign_in_info" msgid="2627704710674232328">"kirish maʼlumoti"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Bu <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>ni saqlash"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Kalit boshqa qurilmada yaratilsinmi?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Parol boshqa qurilmaga saqlansinmi?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Kirish maʼlumotlari boshqa qurilmaga saqlansinmi?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Hamma kirishlarda <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> ishlatilsinmi?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> uchun bu parollar menejerida hisobga oson kirishga yordam beruvchi parol va kalitlar saqlanadi"</string>
<string name="set_as_default" msgid="4415328591568654603">"Birlamchi deb belgilash"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Yopish"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Yopish"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"<xliff:g id="APP_NAME">%1$s</xliff:g> uchun saqlangan kalit ishlatilsinmi?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"<xliff:g id="APP_NAME">%1$s</xliff:g> uchun saqlangan parol ishlatilsinmi?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"<xliff:g id="APP_NAME">%1$s</xliff:g> ilovasiga bu maʼlumotlar bilan kirilsinmi?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"<xliff:g id="APP_NAME">%1$s</xliff:g> uchun kirish usullari ochilsinmi?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"<xliff:g id="APP_NAME">%1$s</xliff:g> uchun saqlangan kalitni tanlang"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"<xliff:g id="APP_NAME">%1$s</xliff:g> uchun saqlangan parolni tanlang"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"<xliff:g id="APP_NAME">%1$s</xliff:g> uchun hisob maʼlumotlarini tanlang"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"<xliff:g id="APP_NAME">%1$s</xliff:g> ilovasiga qanday kirishni tanlang"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"<xliff:g id="APP_NAME">%1$s</xliff:g> ilovasiga kirish uchun maʼlumotlar tanlansinmi?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Bu axborotdan <xliff:g id="APP_NAME">%1$s</xliff:g> ilovasiga kirish uchun foydalanilsinmi?"</string>
diff --git a/packages/CredentialManager/res/values-vi/strings.xml b/packages/CredentialManager/res/values-vi/strings.xml
index 29ad19e096eb..67b0e887deac 100644
--- a/packages/CredentialManager/res/values-vi/strings.xml
+++ b/packages/CredentialManager/res/values-vi/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Trình quản lý thông tin xác thực"</string>
<string name="string_cancel" msgid="6369133483981306063">"Huỷ"</string>
<string name="string_continue" msgid="1346732695941131882">"Tiếp tục"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Tuỳ chọn khác"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Lưu theo cách khác"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Tìm hiểu thêm"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Hiện mật khẩu"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Ẩn mật khẩu"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"thông tin đăng nhập"</string>
<string name="sign_in_info" msgid="2627704710674232328">"thông tin đăng nhập"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Lưu <xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> vào"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Tạo khoá truy cập trên một thiết bị khác?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Lưu mật khẩu trên một thiết bị khác?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Lưu thông tin đăng nhập trên một thiết bị khác?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Dùng <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> cho mọi thông tin đăng nhập của bạn?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Trình quản lý mật khẩu này cho <xliff:g id="USERNAME">%1$s</xliff:g> sẽ lưu trữ mật khẩu và khoá đăng nhập để bạn dễ dàng đăng nhập"</string>
<string name="set_as_default" msgid="4415328591568654603">"Đặt làm mặc định"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Đóng"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Đóng"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Dùng khoá đăng nhập bạn đã lưu cho <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Sử dụng mật khẩu bạn đã lưu cho <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Dùng thông tin đăng nhập của bạn cho <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Mở khoá các tuỳ chọn đăng nhập cho <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Chọn khoá truy cập đã lưu cho <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Chọn mật khẩu đã lưu cho <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Chọn thông tin đăng nhập đã lưu cho <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Chọn thông tin đăng nhập cho <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Chọn một lựa chọn cho <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Sử dụng thông tin này trên <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/res/values-zh-rCN/strings.xml b/packages/CredentialManager/res/values-zh-rCN/strings.xml
index 0d9ab17c54e1..42eaf00a5a07 100644
--- a/packages/CredentialManager/res/values-zh-rCN/strings.xml
+++ b/packages/CredentialManager/res/values-zh-rCN/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Credential Manager"</string>
<string name="string_cancel" msgid="6369133483981306063">"取消"</string>
<string name="string_continue" msgid="1346732695941131882">"继续"</string>
- <string name="string_more_options" msgid="7990658711962795124">"更多选项"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"换一种方式保存"</string>
<string name="string_learn_more" msgid="4541600451688392447">"了解详情"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"显示密码"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"隐藏密码"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"登录"</string>
<string name="sign_in_info" msgid="2627704710674232328">"登录信息"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"将<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>保存到"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"在其他设备上创建通行密钥?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"在其他设备上保存密码?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"在其他设备上保存登录凭据?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"将“<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>”用于您的所有登录信息?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"此 <xliff:g id="USERNAME">%1$s</xliff:g> 密码管理工具将会存储您的密码和通行密钥,帮助您轻松登录"</string>
<string name="set_as_default" msgid="4415328591568654603">"设为默认项"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"关闭"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"忽略"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"要使用您为“<xliff:g id="APP_NAME">%1$s</xliff:g>”保存的通行密钥吗?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"要使用已保存的密码登录“<xliff:g id="APP_NAME">%1$s</xliff:g>”吗?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"使用您的<xliff:g id="APP_NAME">%1$s</xliff:g>登录凭据?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"要解锁“<xliff:g id="APP_NAME">%1$s</xliff:g>”的登录选项吗?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"选择一个已保存的通行密钥来登录“<xliff:g id="APP_NAME">%1$s</xliff:g>”"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"选择一个已保存的密码来登录“<xliff:g id="APP_NAME">%1$s</xliff:g>”"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"选择一种已保存的登录方式来登录“<xliff:g id="APP_NAME">%1$s</xliff:g>”"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"选择一种登录<xliff:g id="APP_NAME">%1$s</xliff:g>的方式"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"要为“<xliff:g id="APP_NAME">%1$s</xliff:g>”选择一个选项吗?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"要将此信息用于“<xliff:g id="APP_NAME">%1$s</xliff:g>”吗?"</string>
diff --git a/packages/CredentialManager/res/values-zh-rHK/strings.xml b/packages/CredentialManager/res/values-zh-rHK/strings.xml
index ca14917ef8eb..f786254b00d1 100644
--- a/packages/CredentialManager/res/values-zh-rHK/strings.xml
+++ b/packages/CredentialManager/res/values-zh-rHK/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"憑證管理工具"</string>
<string name="string_cancel" msgid="6369133483981306063">"取消"</string>
<string name="string_continue" msgid="1346732695941131882">"繼續"</string>
- <string name="string_more_options" msgid="7990658711962795124">"更多選項"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"儲存其他方式"</string>
<string name="string_learn_more" msgid="4541600451688392447">"瞭解詳情"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"顯示密碼"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"隱藏密碼"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"登入資料"</string>
<string name="sign_in_info" msgid="2627704710674232328">"登入資料"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"將<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>儲存至"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"要在其他裝置上建立密鑰嗎?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"要在其他裝置上儲存密碼嗎?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"要在其他裝置上儲存登入資料嗎?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"要將「<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>」用於所有的登入資料嗎?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"此密碼管理工具將儲存「<xliff:g id="USERNAME">%1$s</xliff:g>」的密碼和密鑰,協助你輕鬆登入"</string>
<string name="set_as_default" msgid="4415328591568654603">"設定為預設"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"關閉"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"關閉"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"要使用已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」密鑰嗎?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"要使用已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」密碼嗎?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"要以此登入方式使用「<xliff:g id="APP_NAME">%1$s</xliff:g>」嗎?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"要解鎖「<xliff:g id="APP_NAME">%1$s</xliff:g>」的登入選項嗎?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"選擇已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」密鑰"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"選擇已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」密碼"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"選擇已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」登入資料"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"選擇用於「<xliff:g id="APP_NAME">%1$s</xliff:g>」的登入方式"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"要選擇適用於「<xliff:g id="APP_NAME">%1$s</xliff:g>」的項目嗎?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"要在「<xliff:g id="APP_NAME">%1$s</xliff:g>」上使用這些資料嗎?"</string>
diff --git a/packages/CredentialManager/res/values-zh-rTW/strings.xml b/packages/CredentialManager/res/values-zh-rTW/strings.xml
index 190bdb6f8700..f14a5ce3bfd0 100644
--- a/packages/CredentialManager/res/values-zh-rTW/strings.xml
+++ b/packages/CredentialManager/res/values-zh-rTW/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"憑證管理工具"</string>
<string name="string_cancel" msgid="6369133483981306063">"取消"</string>
<string name="string_continue" msgid="1346732695941131882">"繼續"</string>
- <string name="string_more_options" msgid="7990658711962795124">"更多選項"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"儲存其他方式"</string>
<string name="string_learn_more" msgid="4541600451688392447">"瞭解詳情"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"顯示密碼"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"隱藏密碼"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"登入資訊"</string>
<string name="sign_in_info" msgid="2627704710674232328">"登入資訊"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"選擇儲存<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g>的位置"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"要在另一部裝置上建立密碼金鑰嗎?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"要將密碼儲存在另一部裝置上嗎?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"要將登入憑證儲存在另一部裝置上嗎?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"要將「<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g>」用於所有的登入資訊嗎?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> 的密碼管理工具會儲存密碼和密碼金鑰,協助你輕鬆登入"</string>
<string name="set_as_default" msgid="4415328591568654603">"設為預設"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"關閉"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"關閉"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"要使用已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」密碼金鑰嗎?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"要使用已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」密碼嗎?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"要使用你的憑證登入「<xliff:g id="APP_NAME">%1$s</xliff:g>」嗎?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"要解鎖「<xliff:g id="APP_NAME">%1$s</xliff:g>」的登入選項嗎?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"選擇已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」密碼金鑰"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"選擇已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」密碼"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"選擇已儲存的「<xliff:g id="APP_NAME">%1$s</xliff:g>」登入資訊"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"選擇用於登入「<xliff:g id="APP_NAME">%1$s</xliff:g>」的憑證"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"要選擇適用於「<xliff:g id="APP_NAME">%1$s</xliff:g>」的項目嗎?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"要在「<xliff:g id="APP_NAME">%1$s</xliff:g>」上使用這項資訊嗎?"</string>
diff --git a/packages/CredentialManager/res/values-zu/strings.xml b/packages/CredentialManager/res/values-zu/strings.xml
index d80610968f90..91f93e26d811 100644
--- a/packages/CredentialManager/res/values-zu/strings.xml
+++ b/packages/CredentialManager/res/values-zu/strings.xml
@@ -20,7 +20,7 @@
<string name="app_name" msgid="4539824758261855508">"Umphathi Wezimfanelo"</string>
<string name="string_cancel" msgid="6369133483981306063">"Khansela"</string>
<string name="string_continue" msgid="1346732695941131882">"Qhubeka"</string>
- <string name="string_more_options" msgid="7990658711962795124">"Okunye okungakukhethwa kukho"</string>
+ <string name="string_more_options" msgid="2763852250269945472">"Londoloza ngenye indlela"</string>
<string name="string_learn_more" msgid="4541600451688392447">"Funda kabanzi"</string>
<string name="content_description_show_password" msgid="3283502010388521607">"Bonisa iphasiwedi"</string>
<string name="content_description_hide_password" msgid="6841375971631767996">"Fihla iphasiwedi"</string>
@@ -49,12 +49,9 @@
<string name="sign_ins" msgid="4710739369149469208">"ukungena ngemvume"</string>
<string name="sign_in_info" msgid="2627704710674232328">"ulwazi lokungena ngemvume"</string>
<string name="save_credential_to_title" msgid="3172811692275634301">"Londoloza i-<xliff:g id="CREDENTIALTYPES">%1$s</xliff:g> ku-"</string>
- <!-- no translation found for create_passkey_in_other_device_title (2360053098931886245) -->
- <skip />
- <!-- no translation found for save_password_on_other_device_title (5829084591948321207) -->
- <skip />
- <!-- no translation found for save_sign_in_on_other_device_title (2827990118560134692) -->
- <skip />
+ <string name="create_passkey_in_other_device_title" msgid="2360053098931886245">"Sungula ukhiye wokudlula kwenye idivayisi?"</string>
+ <string name="save_password_on_other_device_title" msgid="5829084591948321207">"Londoloza iphasiwedi kwenye idivayisi?"</string>
+ <string name="save_sign_in_on_other_device_title" msgid="2827990118560134692">"Londoloza ukungena ngemvume kwenye idivayisi?"</string>
<string name="use_provider_for_all_title" msgid="4201020195058980757">"Sebenzisa i-<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> kukho konke ukungena kwakho ngemvume?"</string>
<string name="use_provider_for_all_description" msgid="1998772715863958997">"Lesi siphathi sephasiwedi sika-<xliff:g id="USERNAME">%1$s</xliff:g> sizogcina amaphasiwedi akho nezikhiye zokungena ukuze zikusize ungene ngemvume kalula."</string>
<string name="set_as_default" msgid="4415328591568654603">"Setha njengokuzenzakalelayo"</string>
@@ -72,7 +69,12 @@
<string name="accessibility_close_button" msgid="1163435587545377687">"Vala"</string>
<string name="accessibility_snackbar_dismiss" msgid="3456598374801836120">"Chitha"</string>
<string name="get_dialog_title_use_passkey_for" msgid="6236608872708021767">"Sebenzisa ukhiye wakho wokungena olondoloziwe <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_use_password_for" msgid="625828023234318484">"Sebenzisa iphasiwedi yakho elondoloziwe ye-<xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_sign_in_for" msgid="790049858275131785">"Sebenzisa ukungena kwakho ngemvume ku-<xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_unlock_options_for" msgid="7605568190597632433">"Vula ukungena ngemvume okukhethwa kukho kwe-<xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
+ <string name="get_dialog_title_choose_passkey_for" msgid="9175997688078538490">"Khetha ukhiye wokudlula olondoloziwe we-<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_password_for" msgid="1724435823820819221">"Khetha iphasiwedi elondoloziwe ye-<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+ <string name="get_dialog_title_choose_saved_sign_in_for" msgid="2420298653461652728">"Khetha ukungena ngemvume okulondoloziwe kwe-<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_sign_in_for" msgid="3048870756117876514">"Khetha ukungenangemvume ku-<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="get_dialog_title_choose_option_for" msgid="4976380044745029107">"Khetha ongakhetha kukho kwe-<xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
<string name="get_dialog_title_use_info_on" msgid="8863708099535435146">"Sebenzisa lolu lwazi ku-<xliff:g id="APP_NAME">%1$s</xliff:g>?"</string>
diff --git a/packages/CredentialManager/src/com/android/credentialmanager/createflow/CreateCredentialComponents.kt b/packages/CredentialManager/src/com/android/credentialmanager/createflow/CreateCredentialComponents.kt
index a3087cf8004c..d45b6f687193 100644
--- a/packages/CredentialManager/src/com/android/credentialmanager/createflow/CreateCredentialComponents.kt
+++ b/packages/CredentialManager/src/com/android/credentialmanager/createflow/CreateCredentialComponents.kt
@@ -43,6 +43,7 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.asImageBitmap
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
import androidx.core.graphics.drawable.toBitmap
import com.android.credentialmanager.CredentialSelectorViewModel
@@ -50,6 +51,7 @@ import com.android.credentialmanager.R
import com.android.credentialmanager.common.BaseEntry
import com.android.credentialmanager.common.CredentialType
import com.android.credentialmanager.common.ProviderActivityState
+import com.android.credentialmanager.common.material.ModalBottomSheetDefaults
import com.android.credentialmanager.common.ui.ActionButton
import com.android.credentialmanager.common.ui.BodyMediumText
import com.android.credentialmanager.common.ui.BodySmallText
@@ -148,6 +150,13 @@ fun CreateCredentialScreen(
}
}
ProviderActivityState.READY_TO_LAUNCH -> {
+ // This is a native bug from ModalBottomSheet. For now, use the temporary
+ // solution of not having an empty state.
+ if (viewModel.uiState.isAutoSelectFlow) {
+ Divider(
+ thickness = Dp.Hairline, color = ModalBottomSheetDefaults.scrimColor
+ )
+ }
// Launch only once per providerActivityState change so that the provider
// UI will not be accidentally launched twice.
LaunchedEffect(viewModel.uiState.providerActivityState) {
@@ -158,6 +167,11 @@ fun CreateCredentialScreen(
.CREDMAN_CREATE_CRED_PROVIDER_ACTIVITY_READY_TO_LAUNCH)
}
ProviderActivityState.PENDING -> {
+ if (viewModel.uiState.isAutoSelectFlow) {
+ Divider(
+ thickness = Dp.Hairline, color = ModalBottomSheetDefaults.scrimColor
+ )
+ }
// Hide our content when the provider activity is active.
viewModel.uiMetrics.log(
CreateCredentialEvent.CREDMAN_CREATE_CRED_PROVIDER_ACTIVITY_PENDING)
diff --git a/packages/CredentialManager/src/com/android/credentialmanager/getflow/GetCredentialComponents.kt b/packages/CredentialManager/src/com/android/credentialmanager/getflow/GetCredentialComponents.kt
index 934b0aebf417..72d030b3e657 100644
--- a/packages/CredentialManager/src/com/android/credentialmanager/getflow/GetCredentialComponents.kt
+++ b/packages/CredentialManager/src/com/android/credentialmanager/getflow/GetCredentialComponents.kt
@@ -43,6 +43,7 @@ import androidx.compose.ui.graphics.asImageBitmap
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.TextLayoutResult
+import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
import androidx.core.graphics.drawable.toBitmap
import com.android.credentialmanager.CredentialSelectorViewModel
@@ -50,6 +51,7 @@ import com.android.credentialmanager.R
import com.android.credentialmanager.common.BaseEntry
import com.android.credentialmanager.common.CredentialType
import com.android.credentialmanager.common.ProviderActivityState
+import com.android.credentialmanager.common.material.ModalBottomSheetDefaults
import com.android.credentialmanager.common.ui.ActionButton
import com.android.credentialmanager.common.ui.ActionEntry
import com.android.credentialmanager.common.ui.ConfirmButton
@@ -132,6 +134,13 @@ fun GetCredentialScreen(
}
}
ProviderActivityState.READY_TO_LAUNCH -> {
+ // This is a native bug from ModalBottomSheet. For now, use the temporary
+ // solution of not having an empty state.
+ if (viewModel.uiState.isAutoSelectFlow) {
+ Divider(
+ thickness = Dp.Hairline, color = ModalBottomSheetDefaults.scrimColor
+ )
+ }
// Launch only once per providerActivityState change so that the provider
// UI will not be accidentally launched twice.
LaunchedEffect(viewModel.uiState.providerActivityState) {
@@ -141,6 +150,11 @@ fun GetCredentialScreen(
.CREDMAN_GET_CRED_PROVIDER_ACTIVITY_READY_TO_LAUNCH)
}
ProviderActivityState.PENDING -> {
+ if (viewModel.uiState.isAutoSelectFlow) {
+ Divider(
+ thickness = Dp.Hairline, color = ModalBottomSheetDefaults.scrimColor
+ )
+ }
// Hide our content when the provider activity is active.
viewModel.uiMetrics.log(GetCredentialEvent
.CREDMAN_GET_CRED_PROVIDER_ACTIVITY_PENDING)
diff --git a/packages/CtsShim/apk/arm/CtsShim.apk b/packages/CtsShim/apk/arm/CtsShim.apk
index af306a504d30..38a6d131d7e6 100644
--- a/packages/CtsShim/apk/arm/CtsShim.apk
+++ b/packages/CtsShim/apk/arm/CtsShim.apk
Binary files differ
diff --git a/packages/CtsShim/apk/arm/CtsShimPriv.apk b/packages/CtsShim/apk/arm/CtsShimPriv.apk
index 98c535127e7e..bcd9836733d3 100644
--- a/packages/CtsShim/apk/arm/CtsShimPriv.apk
+++ b/packages/CtsShim/apk/arm/CtsShimPriv.apk
Binary files differ
diff --git a/packages/CtsShim/apk/x86/CtsShim.apk b/packages/CtsShim/apk/x86/CtsShim.apk
index af306a504d30..38a6d131d7e6 100644
--- a/packages/CtsShim/apk/x86/CtsShim.apk
+++ b/packages/CtsShim/apk/x86/CtsShim.apk
Binary files differ
diff --git a/packages/CtsShim/apk/x86/CtsShimPriv.apk b/packages/CtsShim/apk/x86/CtsShimPriv.apk
index 29ad4786e3c7..f77890457975 100644
--- a/packages/CtsShim/apk/x86/CtsShimPriv.apk
+++ b/packages/CtsShim/apk/x86/CtsShimPriv.apk
Binary files differ
diff --git a/packages/InputDevices/res/values-es/strings.xml b/packages/InputDevices/res/values-es/strings.xml
index 22c9c0132a1a..216e79fb2599 100644
--- a/packages/InputDevices/res/values-es/strings.xml
+++ b/packages/InputDevices/res/values-es/strings.xml
@@ -4,7 +4,7 @@
<string name="app_label" msgid="8016145283189546017">"Dispositivos de introducción de datos"</string>
<string name="keyboard_layouts_label" msgid="6688773268302087545">"Teclado de Android"</string>
<string name="keyboard_layout_english_uk_label" msgid="6664258463319999632">"Inglés (Reino Unido)"</string>
- <string name="keyboard_layout_english_us_label" msgid="8994890249649106291">"Inglés (EE.UU.)"</string>
+ <string name="keyboard_layout_english_us_label" msgid="8994890249649106291">"Inglés (EE. UU.)"</string>
<string name="keyboard_layout_english_us_intl" msgid="3705168594034233583">"Inglés (EE.UU.), estilo internacional"</string>
<string name="keyboard_layout_english_us_colemak_label" msgid="4194969610343455380">"Inglés (EE.UU.), estilo Colemak"</string>
<string name="keyboard_layout_english_us_dvorak_label" msgid="793528923171145202">"Inglés (EE.UU.), estilo Dvorak"</string>
diff --git a/packages/PackageInstaller/res/values-uk/strings.xml b/packages/PackageInstaller/res/values-uk/strings.xml
index e0e7d8841de4..ec10962641b7 100644
--- a/packages/PackageInstaller/res/values-uk/strings.xml
+++ b/packages/PackageInstaller/res/values-uk/strings.xml
@@ -26,7 +26,7 @@
<string name="install_done" msgid="5987363587661783896">"Програму встановлено."</string>
<string name="install_confirm_question" msgid="7663733664476363311">"Установити цей додаток?"</string>
<string name="install_confirm_question_update" msgid="3348888852318388584">"Оновити цей додаток?"</string>
- <string name="install_confirm_question_update_owner_reminder" msgid="3750986542284587290">"Оновити цей додаток від <xliff:g id="NEW_UPDATE_OWNER">%1$s</xliff:g>?\n\nЗазвичай цей додаток отримує оновлення від <xliff:g id="EXISTING_UPDATE_OWNER">%2$s</xliff:g>. Якщо встановити оновлення з іншого джерела, надалі на ваш телефон зможуть надходити оновлення з будь-яких джерел. Це може змінити функції додатка."</string>
+ <string name="install_confirm_question_update_owner_reminder" msgid="3750986542284587290">"Оновити цей додаток через <xliff:g id="NEW_UPDATE_OWNER">%1$s</xliff:g>?\n\nЗазвичай цей додаток отримує оновлення в інший спосіб (<xliff:g id="EXISTING_UPDATE_OWNER">%2$s</xliff:g>). Якщо встановити оновлення з іншого джерела, надалі на ваш телефон зможуть надходити оновлення з будь-яких джерел. Це може змінити функції додатка."</string>
<string name="install_failed" msgid="5777824004474125469">"Програму не встановлено."</string>
<string name="install_failed_blocked" msgid="8512284352994752094">"Встановлення пакета заблоковано."</string>
<string name="install_failed_conflict" msgid="3493184212162521426">"Додаток не встановлено, оскільки пакет конфліктує з наявним пакетом."</string>
diff --git a/packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java b/packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java
index 3f98867cb267..229b7a73a2a3 100644
--- a/packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java
+++ b/packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java
@@ -20,6 +20,8 @@ import static com.android.packageinstaller.PackageUtil.getMaxTargetSdkVersionFor
import android.Manifest;
import android.app.Activity;
+import android.app.DialogFragment;
+import android.app.admin.DevicePolicyManager;
import android.content.ContentResolver;
import android.content.Intent;
import android.content.pm.ApplicationInfo;
@@ -31,6 +33,8 @@ import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Process;
+import android.os.UserManager;
+import android.provider.Settings;
import android.text.TextUtils;
import android.util.EventLog;
import android.util.Log;
@@ -45,16 +49,24 @@ import java.util.Arrays;
* it.
*/
public class InstallStart extends Activity {
- private static final String LOG_TAG = InstallStart.class.getSimpleName();
+ private static final String TAG = InstallStart.class.getSimpleName();
private static final String DOWNLOADS_AUTHORITY = "downloads";
+
+ private static final int DLG_INSTALL_APPS_RESTRICTED_FOR_USER = 1;
+ private static final int DLG_UNKNOWN_SOURCES_RESTRICTED_FOR_USER = 2;
private PackageManager mPackageManager;
+ private UserManager mUserManager;
private boolean mAbortInstall = false;
+ private final boolean mLocalLOGV = false;
+
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mPackageManager = getPackageManager();
+ mUserManager = getSystemService(UserManager.class);
+
Intent intent = getIntent();
String callingPackage = getCallingPackage();
String callingAttributionTag = null;
@@ -80,8 +92,7 @@ public class InstallStart extends Activity {
// Uid of the source package, coming from ActivityManager
int callingUid = getLaunchedFromUid();
if (callingUid == Process.INVALID_UID) {
- // Cannot reach ActivityManager. Aborting install.
- Log.e(LOG_TAG, "Could not determine the launching uid.");
+ Log.e(TAG, "Could not determine the launching uid.");
}
// Uid of the source package, with a preference to uid from ApplicationInfo
final int originatingUid = sourceInfo != null ? sourceInfo.uid : callingUid;
@@ -104,12 +115,12 @@ public class InstallStart extends Activity {
&& originatingUid != Process.INVALID_UID) {
final int targetSdkVersion = getMaxTargetSdkVersionForUid(this, originatingUid);
if (targetSdkVersion < 0) {
- Log.w(LOG_TAG, "Cannot get target sdk version for uid " + originatingUid);
+ Log.w(TAG, "Cannot get target sdk version for uid " + originatingUid);
// Invalid originating uid supplied. Abort install.
mAbortInstall = true;
} else if (targetSdkVersion >= Build.VERSION_CODES.O && !isUidRequestingPermission(
originatingUid, Manifest.permission.REQUEST_INSTALL_PACKAGES)) {
- Log.e(LOG_TAG, "Requesting uid " + originatingUid + " needs to declare permission "
+ Log.e(TAG, "Requesting uid " + originatingUid + " needs to declare permission "
+ Manifest.permission.REQUEST_INSTALL_PACKAGES);
mAbortInstall = true;
}
@@ -119,6 +130,8 @@ public class InstallStart extends Activity {
mAbortInstall = true;
}
+ checkDevicePolicyRestriction();
+
final String installerPackageNameFromIntent = getIntent().getStringExtra(
Intent.EXTRA_INSTALLER_PACKAGE_NAME);
if (installerPackageNameFromIntent != null) {
@@ -126,7 +139,7 @@ public class InstallStart extends Activity {
if (!TextUtils.equals(installerPackageNameFromIntent, callingPkgName)
&& mPackageManager.checkPermission(Manifest.permission.INSTALL_PACKAGES,
callingPkgName) != PackageManager.PERMISSION_GRANTED) {
- Log.e(LOG_TAG, "The given installer package name " + installerPackageNameFromIntent
+ Log.e(TAG, "The given installer package name " + installerPackageNameFromIntent
+ " is invalid. Remove it.");
EventLog.writeEvent(0x534e4554, "236687884", getLaunchedFromUid(),
"Invalid EXTRA_INSTALLER_PACKAGE_NAME");
@@ -270,4 +283,97 @@ public class InstallStart extends Activity {
int installerUid = packageInstaller.getSessionInfo(sessionId).getInstallerUid();
return (originatingUid == Process.ROOT_UID) || (originatingUid == installerUid);
}
+
+ private void checkDevicePolicyRestriction() {
+ // Check for install apps user restriction first.
+ final int installAppsRestrictionSource = mUserManager.getUserRestrictionSource(
+ UserManager.DISALLOW_INSTALL_APPS, Process.myUserHandle());
+ if ((installAppsRestrictionSource & UserManager.RESTRICTION_SOURCE_SYSTEM) != 0) {
+ if (mLocalLOGV) Log.i(TAG, "install not allowed: " + UserManager.DISALLOW_INSTALL_APPS);
+ mAbortInstall = true;
+ showDialogInner(DLG_INSTALL_APPS_RESTRICTED_FOR_USER);
+ return;
+ } else if (installAppsRestrictionSource != UserManager.RESTRICTION_NOT_SET) {
+ if (mLocalLOGV) {
+ Log.i(TAG, "install not allowed by admin; showing "
+ + Settings.ACTION_SHOW_ADMIN_SUPPORT_DETAILS);
+ }
+ mAbortInstall = true;
+ startActivity(new Intent(Settings.ACTION_SHOW_ADMIN_SUPPORT_DETAILS));
+ return;
+ }
+
+ final int unknownSourcesRestrictionSource = mUserManager.getUserRestrictionSource(
+ UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES, Process.myUserHandle());
+ final int unknownSourcesGlobalRestrictionSource = mUserManager.getUserRestrictionSource(
+ UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES_GLOBALLY, Process.myUserHandle());
+ final int systemRestriction = UserManager.RESTRICTION_SOURCE_SYSTEM
+ & (unknownSourcesRestrictionSource | unknownSourcesGlobalRestrictionSource);
+ if (systemRestriction != 0) {
+ if (mLocalLOGV) Log.i(TAG, "Showing DLG_UNKNOWN_SOURCES_RESTRICTED_FOR_USER");
+ mAbortInstall = true;
+ showDialogInner(DLG_UNKNOWN_SOURCES_RESTRICTED_FOR_USER);
+ } else if (unknownSourcesRestrictionSource != UserManager.RESTRICTION_NOT_SET) {
+ mAbortInstall = true;
+ startAdminSupportDetailsActivity(UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES);
+ } else if (unknownSourcesGlobalRestrictionSource != UserManager.RESTRICTION_NOT_SET) {
+ mAbortInstall = true;
+ startAdminSupportDetailsActivity(UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES_GLOBALLY);
+ }
+ }
+
+ /**
+ * Replace any dialog shown by the dialog with the one for the given {@link #createDialog(int)}.
+ *
+ * @param id The dialog type to add
+ */
+ private void showDialogInner(int id) {
+ if (mLocalLOGV) Log.i(TAG, "showDialogInner(" + id + ")");
+ DialogFragment currentDialog =
+ (DialogFragment) getFragmentManager().findFragmentByTag("dialog");
+ if (currentDialog != null) {
+ currentDialog.dismissAllowingStateLoss();
+ }
+
+ DialogFragment newDialog = createDialog(id);
+ if (newDialog != null) {
+ getFragmentManager().beginTransaction()
+ .add(newDialog, "dialog").commitAllowingStateLoss();
+ }
+ }
+
+ /**
+ * Create a new dialog.
+ *
+ * @param id The id of the dialog (determines dialog type)
+ *
+ * @return The dialog
+ */
+ private DialogFragment createDialog(int id) {
+ if (mLocalLOGV) Log.i(TAG, "createDialog(" + id + ")");
+ switch (id) {
+ case DLG_INSTALL_APPS_RESTRICTED_FOR_USER:
+ return PackageUtil.SimpleErrorDialog.newInstance(
+ R.string.install_apps_user_restriction_dlg_text);
+ case DLG_UNKNOWN_SOURCES_RESTRICTED_FOR_USER:
+ return PackageUtil.SimpleErrorDialog.newInstance(
+ R.string.unknown_apps_user_restriction_dlg_text);
+ }
+ return null;
+ }
+
+ private void startAdminSupportDetailsActivity(String restriction) {
+ if (mLocalLOGV) Log.i(TAG, "startAdminSupportDetailsActivity(): " + restriction);
+
+ // If the given restriction is set by an admin, display information about the
+ // admin enforcing the restriction for the affected user.
+ final DevicePolicyManager dpm = getSystemService(DevicePolicyManager.class);
+ final Intent showAdminSupportDetailsIntent = dpm.createAdminSupportIntent(restriction);
+ if (showAdminSupportDetailsIntent != null) {
+ if (mLocalLOGV) Log.i(TAG, "starting " + showAdminSupportDetailsIntent);
+ startActivity(showAdminSupportDetailsIntent);
+ } else {
+ if (mLocalLOGV) Log.w(TAG, "not intent for " + restriction);
+ }
+ }
}
diff --git a/packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java b/packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java
index 7e294eee024f..d1541569bc55 100644
--- a/packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java
+++ b/packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java
@@ -26,7 +26,6 @@ import android.app.AlertDialog;
import android.app.AppOpsManager;
import android.app.Dialog;
import android.app.DialogFragment;
-import android.app.admin.DevicePolicyManager;
import android.content.ActivityNotFoundException;
import android.content.ContentResolver;
import android.content.Context;
@@ -56,7 +55,6 @@ import android.widget.Button;
import android.widget.TextView;
import androidx.annotation.NonNull;
-import androidx.annotation.StringRes;
import java.io.File;
import java.util.ArrayList;
@@ -123,13 +121,11 @@ public class PackageInstallerActivity extends AlertActivity {
// Dialog identifiers used in showDialog
private static final int DLG_BASE = 0;
- private static final int DLG_PACKAGE_ERROR = DLG_BASE + 2;
- private static final int DLG_OUT_OF_SPACE = DLG_BASE + 3;
- private static final int DLG_INSTALL_ERROR = DLG_BASE + 4;
- private static final int DLG_UNKNOWN_SOURCES_RESTRICTED_FOR_USER = DLG_BASE + 5;
- private static final int DLG_ANONYMOUS_SOURCE = DLG_BASE + 6;
- private static final int DLG_EXTERNAL_SOURCE_BLOCKED = DLG_BASE + 7;
- private static final int DLG_INSTALL_APPS_RESTRICTED_FOR_USER = DLG_BASE + 8;
+ private static final int DLG_PACKAGE_ERROR = DLG_BASE + 1;
+ private static final int DLG_OUT_OF_SPACE = DLG_BASE + 2;
+ private static final int DLG_INSTALL_ERROR = DLG_BASE + 3;
+ private static final int DLG_ANONYMOUS_SOURCE = DLG_BASE + 4;
+ private static final int DLG_EXTERNAL_SOURCE_BLOCKED = DLG_BASE + 5;
// If unknown sources are temporary allowed
private boolean mAllowUnknownSources;
@@ -218,19 +214,13 @@ public class PackageInstallerActivity extends AlertActivity {
if (mLocalLOGV) Log.i(TAG, "createDialog(" + id + ")");
switch (id) {
case DLG_PACKAGE_ERROR:
- return SimpleErrorDialog.newInstance(R.string.Parse_error_dlg_text);
+ return PackageUtil.SimpleErrorDialog.newInstance(R.string.Parse_error_dlg_text);
case DLG_OUT_OF_SPACE:
return OutOfSpaceDialog.newInstance(
mPm.getApplicationLabel(mPkgInfo.applicationInfo));
case DLG_INSTALL_ERROR:
return InstallErrorDialog.newInstance(
mPm.getApplicationLabel(mPkgInfo.applicationInfo));
- case DLG_INSTALL_APPS_RESTRICTED_FOR_USER:
- return SimpleErrorDialog.newInstance(
- R.string.install_apps_user_restriction_dlg_text);
- case DLG_UNKNOWN_SOURCES_RESTRICTED_FOR_USER:
- return SimpleErrorDialog.newInstance(
- R.string.unknown_apps_user_restriction_dlg_text);
case DLG_EXTERNAL_SOURCE_BLOCKED:
return ExternalSourcesBlockedDialog.newInstance(mOriginatingPackage);
case DLG_ANONYMOUS_SOURCE:
@@ -524,67 +514,15 @@ public class PackageInstallerActivity extends AlertActivity {
}
/**
- * Check if it is allowed to install the package and initiate install if allowed. If not allowed
- * show the appropriate dialog.
+ * Check if it is allowed to install the package and initiate install if allowed.
*/
private void checkIfAllowedAndInitiateInstall() {
- // Check for install apps user restriction first.
- final int installAppsRestrictionSource = mUserManager.getUserRestrictionSource(
- UserManager.DISALLOW_INSTALL_APPS, Process.myUserHandle());
- if ((installAppsRestrictionSource & UserManager.RESTRICTION_SOURCE_SYSTEM) != 0) {
- if (mLocalLOGV) Log.i(TAG, "install not allowed: " + UserManager.DISALLOW_INSTALL_APPS);
- showDialogInner(DLG_INSTALL_APPS_RESTRICTED_FOR_USER);
- return;
- } else if (installAppsRestrictionSource != UserManager.RESTRICTION_NOT_SET) {
- if (mLocalLOGV) {
- Log.i(TAG, "install not allowed by admin; showing "
- + Settings.ACTION_SHOW_ADMIN_SUPPORT_DETAILS);
- }
- startActivity(new Intent(Settings.ACTION_SHOW_ADMIN_SUPPORT_DETAILS));
- finish();
- return;
- }
-
if (mAllowUnknownSources || !isInstallRequestFromUnknownSource(getIntent())) {
if (mLocalLOGV) Log.i(TAG, "install allowed");
initiateInstall();
} else {
- // Check for unknown sources restrictions.
- final int unknownSourcesRestrictionSource = mUserManager.getUserRestrictionSource(
- UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES, Process.myUserHandle());
- final int unknownSourcesGlobalRestrictionSource = mUserManager.getUserRestrictionSource(
- UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES_GLOBALLY, Process.myUserHandle());
- final int systemRestriction = UserManager.RESTRICTION_SOURCE_SYSTEM
- & (unknownSourcesRestrictionSource | unknownSourcesGlobalRestrictionSource);
- if (systemRestriction != 0) {
- if (mLocalLOGV) Log.i(TAG, "Showing DLG_UNKNOWN_SOURCES_RESTRICTED_FOR_USER");
- showDialogInner(DLG_UNKNOWN_SOURCES_RESTRICTED_FOR_USER);
- } else if (unknownSourcesRestrictionSource != UserManager.RESTRICTION_NOT_SET) {
- startAdminSupportDetailsActivity(UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES);
- } else if (unknownSourcesGlobalRestrictionSource != UserManager.RESTRICTION_NOT_SET) {
- startAdminSupportDetailsActivity(
- UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES_GLOBALLY);
- } else {
- handleUnknownSources();
- }
- }
- }
-
- private void startAdminSupportDetailsActivity(String restriction) {
- if (mLocalLOGV) Log.i(TAG, "startAdminSupportDetailsActivity(): " + restriction);
-
- // If the given restriction is set by an admin, display information about the
- // admin enforcing the restriction for the affected user.
- final DevicePolicyManager dpm = getSystemService(DevicePolicyManager.class);
- final Intent showAdminSupportDetailsIntent = dpm.createAdminSupportIntent(restriction);
- if (showAdminSupportDetailsIntent != null) {
- if (mLocalLOGV) Log.i(TAG, "starting " + showAdminSupportDetailsIntent);
- startActivity(showAdminSupportDetailsIntent);
- } else {
- if (mLocalLOGV) Log.w(TAG, "not intent for " + restriction);
+ handleUnknownSources();
}
-
- finish();
}
private void handleUnknownSources() {
@@ -762,38 +700,6 @@ public class PackageInstallerActivity extends AlertActivity {
}
/**
- * A simple error dialog showing a message
- */
- public static class SimpleErrorDialog extends DialogFragment {
- private static final String MESSAGE_KEY =
- SimpleErrorDialog.class.getName() + "MESSAGE_KEY";
-
- static SimpleErrorDialog newInstance(@StringRes int message) {
- SimpleErrorDialog dialog = new SimpleErrorDialog();
-
- Bundle args = new Bundle();
- args.putInt(MESSAGE_KEY, message);
- dialog.setArguments(args);
-
- return dialog;
- }
-
- @Override
- public Dialog onCreateDialog(Bundle savedInstanceState) {
- return new AlertDialog.Builder(getActivity())
- .setMessage(getArguments().getInt(MESSAGE_KEY))
- .setPositiveButton(R.string.ok, (dialog, which) -> getActivity().finish())
- .create();
- }
-
- @Override
- public void onCancel(DialogInterface dialog) {
- getActivity().setResult(Activity.RESULT_CANCELED);
- getActivity().finish();
- }
- }
-
- /**
* Dialog to show when the source of apk can not be identified
*/
public static class AnonymousSourceDialog extends DialogFragment {
diff --git a/packages/PackageInstaller/src/com/android/packageinstaller/PackageUtil.java b/packages/PackageInstaller/src/com/android/packageinstaller/PackageUtil.java
index 0270591acceb..ff0e5fb296b1 100644
--- a/packages/PackageInstaller/src/com/android/packageinstaller/PackageUtil.java
+++ b/packages/PackageInstaller/src/com/android/packageinstaller/PackageUtil.java
@@ -18,12 +18,17 @@
package com.android.packageinstaller;
import android.app.Activity;
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.app.DialogFragment;
import android.content.Context;
+import android.content.DialogInterface;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.graphics.drawable.Drawable;
+import android.os.Bundle;
import android.os.UserHandle;
import android.util.Log;
import android.view.View;
@@ -32,6 +37,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.StringRes;
import java.io.Closeable;
import java.io.File;
@@ -207,4 +213,36 @@ public class PackageUtil {
}
}
}
+
+ /**
+ * A simple error dialog showing a message
+ */
+ public static class SimpleErrorDialog extends DialogFragment {
+ private static final String MESSAGE_KEY =
+ SimpleErrorDialog.class.getName() + "MESSAGE_KEY";
+
+ static SimpleErrorDialog newInstance(@StringRes int message) {
+ SimpleErrorDialog dialog = new SimpleErrorDialog();
+
+ Bundle args = new Bundle();
+ args.putInt(MESSAGE_KEY, message);
+ dialog.setArguments(args);
+
+ return dialog;
+ }
+
+ @Override
+ public Dialog onCreateDialog(Bundle savedInstanceState) {
+ return new AlertDialog.Builder(getActivity())
+ .setMessage(getArguments().getInt(MESSAGE_KEY))
+ .setPositiveButton(R.string.ok, (dialog, which) -> getActivity().finish())
+ .create();
+ }
+
+ @Override
+ public void onCancel(DialogInterface dialog) {
+ getActivity().setResult(Activity.RESULT_CANCELED);
+ getActivity().finish();
+ }
+ }
}
diff --git a/packages/SettingsLib/Spa/spa/build.gradle b/packages/SettingsLib/Spa/spa/build.gradle
index fb945a3d697d..a591366cd63f 100644
--- a/packages/SettingsLib/Spa/spa/build.gradle
+++ b/packages/SettingsLib/Spa/spa/build.gradle
@@ -83,7 +83,7 @@ dependencies {
androidTestImplementation project(":testutils")
androidTestImplementation 'androidx.lifecycle:lifecycle-runtime-testing'
- androidTestImplementation "com.linkedin.dexmaker:dexmaker-mockito:2.28.1"
+ androidTestImplementation "com.linkedin.dexmaker:dexmaker-mockito:2.28.3"
}
task coverageReport(type: JacocoReport, dependsOn: "connectedDebugAndroidTest") {
diff --git a/packages/SettingsLib/res/values-af/strings.xml b/packages/SettingsLib/res/values-af/strings.xml
index 36e5f64f9854..ecbda9f816f0 100644
--- a/packages/SettingsLib/res/values-af/strings.xml
+++ b/packages/SettingsLib/res/values-af/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-oudio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD oudio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Gehoortoestelle"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE-oudio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Gekoppel aan gehoortoestelle"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Gekoppel aan LE-oudio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Gekoppel aan media-oudio"</string>
diff --git a/packages/SettingsLib/res/values-am/strings.xml b/packages/SettingsLib/res/values-am/strings.xml
index de7144c1435d..06ae97cc2ed6 100644
--- a/packages/SettingsLib/res/values-am/strings.xml
+++ b/packages/SettingsLib/res/values-am/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"ኤችዲ ኦዲዮ፦ <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"ኤችዲ ኦዲዮ"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"አጋዥ መስሚያዎች"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE ኦዲዮ"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"ከአጋዥ መስሚያዎች ጋር ተገናኝቷል"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"ከLE ኦዲዮ ጋር ተገናኝቷል"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"ወደ ማህደረ መረጃ አውዲዮ ተያይዟል"</string>
diff --git a/packages/SettingsLib/res/values-ar/strings.xml b/packages/SettingsLib/res/values-ar/strings.xml
index 7cf1f0cc400c..52393417b397 100644
--- a/packages/SettingsLib/res/values-ar/strings.xml
+++ b/packages/SettingsLib/res/values-ar/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"صوت عالي الدقة: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"صوت عالي الدقة"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"سماعات الأذن الطبية"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"تمّ التوصيل بسماعات الأذن الطبية"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"‏متصل بـ LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"متصل بالإعدادات الصوتية للوسائط"</string>
diff --git a/packages/SettingsLib/res/values-as/strings.xml b/packages/SettingsLib/res/values-as/strings.xml
index 81faf0927436..79e652fec995 100644
--- a/packages/SettingsLib/res/values-as/strings.xml
+++ b/packages/SettingsLib/res/values-as/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"এইচ্ছডি অডি\'অ: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"এইচ্ছডি অডিঅ’"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"শ্ৰৱণ যন্ত্ৰ"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE অডিঅ’"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"শ্ৰৱণ যন্ত্ৰলৈ সংযোগ কৰা হৈছে"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE অডিঅ’ৰ সৈতে সংযোগ কৰক"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"মিডিয়া অডিঅ’লৈ সংযোগ হৈছে"</string>
diff --git a/packages/SettingsLib/res/values-az/strings.xml b/packages/SettingsLib/res/values-az/strings.xml
index 41039b2dd1ee..21ad49aadd9f 100644
--- a/packages/SettingsLib/res/values-az/strings.xml
+++ b/packages/SettingsLib/res/values-az/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Eşitmə cihazları"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Eşitmə Aparatlarına qoşuldu"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE audiosuna qoşulub"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Media audioya birləşdirilib"</string>
diff --git a/packages/SettingsLib/res/values-b+sr+Latn/strings.xml b/packages/SettingsLib/res/values-b+sr+Latn/strings.xml
index b8f9a6026a4a..e8fff508b40d 100644
--- a/packages/SettingsLib/res/values-b+sr+Latn/strings.xml
+++ b/packages/SettingsLib/res/values-b+sr+Latn/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD zvuk: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD zvuk"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Slušni aparati"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Povezano sa slušnim aparatima"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Povezano sa LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Povezano sa zvukom medija"</string>
diff --git a/packages/SettingsLib/res/values-be/strings.xml b/packages/SettingsLib/res/values-be/strings.xml
index 02b428dbd2fa..13d3bbf302fe 100644
--- a/packages/SettingsLib/res/values-be/strings.xml
+++ b/packages/SettingsLib/res/values-be/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Аўдыя ў HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Аўдыя ў HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Слыхавыя апараты"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Le audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Падключана да слыхавых апаратаў"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Падключана да LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Падключана да аўдыё медыа"</string>
diff --git a/packages/SettingsLib/res/values-bg/strings.xml b/packages/SettingsLib/res/values-bg/strings.xml
index 8a08f5160bea..717c565b0fa6 100644
--- a/packages/SettingsLib/res/values-bg/strings.xml
+++ b/packages/SettingsLib/res/values-bg/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Висококачествено аудио: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Висококачествено аудио"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Слухови апарати"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Установена е връзка със слухов апарат"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Свързано с LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Установена е връзка с медийно аудио"</string>
diff --git a/packages/SettingsLib/res/values-bn/strings.xml b/packages/SettingsLib/res/values-bn/strings.xml
index e285ffbb778a..7051a26eabb4 100644
--- a/packages/SettingsLib/res/values-bn/strings.xml
+++ b/packages/SettingsLib/res/values-bn/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD অডিও: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD অডিও"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"হিয়ারিং এড"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE অডিও"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"হিয়ারিং এডের সাথে কানেক্ট করা হয়েছে"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE অডিও কানেক্ট করা হয়েছে"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"মিডিয়া অডিওতে কানেক্ট রয়েছে"</string>
@@ -337,7 +338,7 @@
<string name="hdcp_checking_dialog_title" msgid="7691060297616217781">"HDCP চেক করার আচরণ সেট করুন"</string>
<string name="debug_debugging_category" msgid="535341063709248842">"ডিবাগিং"</string>
<string name="debug_app" msgid="8903350241392391766">"ডিবাগ অ্যাপ বেছে নিন"</string>
- <string name="debug_app_not_set" msgid="1934083001283807188">"ডিবাগ অ্যাপ্লিকেশান সেট করা নেই"</string>
+ <string name="debug_app_not_set" msgid="1934083001283807188">"ডিবাগ অ্যাপ সেট করা নেই"</string>
<string name="debug_app_set" msgid="6599535090477753651">"ডিবাগিং অ্যাপ্লিকেশান: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="select_application" msgid="2543228890535466325">"অ্যাপ্লিকেশান বেছে নিন"</string>
<string name="no_application" msgid="9038334538870247690">"কিছুই না"</string>
@@ -349,7 +350,7 @@
<string name="media_category" msgid="8122076702526144053">"মিডিয়া"</string>
<string name="debug_monitoring_category" msgid="1597387133765424994">"পর্যবেক্ষণে রাখা"</string>
<string name="strict_mode" msgid="889864762140862437">"স্ট্রিক্ট মোড চালু আছে"</string>
- <string name="strict_mode_summary" msgid="1838248687233554654">"মুখ্য থ্রেডে অ্যাপ্লিকেশানগুলির দীর্ঘ অ্যাক্টিভিটির সময় স্ক্রিন ফ্ল্যাশ করে"</string>
+ <string name="strict_mode_summary" msgid="1838248687233554654">"মুখ্য থ্রেডে অ্যাপগুলির দীর্ঘ কার্যকলাপের ক্ষেত্রে স্ক্রিন ফ্ল্যাশ করে"</string>
<string name="pointer_location" msgid="7516929526199520173">"পয়েন্টারের লোকেশন"</string>
<string name="pointer_location_summary" msgid="957120116989798464">"স্ক্রিন ওভারলে বর্তমান স্পর্শ ডেটা দেখাচ্ছে"</string>
<string name="show_touches" msgid="8437666942161289025">"আলতো চাপ দেখান"</string>
@@ -366,7 +367,7 @@
<string name="simulate_color_space" msgid="1206503300335835151">"রঙ স্থান নকল করুন"</string>
<string name="enable_opengl_traces_title" msgid="4638773318659125196">"OpenGL ট্রেসগুলি সক্ষম করুন"</string>
<string name="usb_audio_disable_routing" msgid="3367656923544254975">"USB অডিও রাউটিং বন্ধ করুন"</string>
- <string name="usb_audio_disable_routing_summary" msgid="8768242894849534699">"USB অডিও যন্ত্রানুষঙ্গে অটোমেটিক রাউটিং অক্ষম করুন"</string>
+ <string name="usb_audio_disable_routing_summary" msgid="8768242894849534699">"USB অডিও পেরিফেরালে অটোমেটিক রাউটিং বন্ধ করুন"</string>
<string name="debug_layout" msgid="1659216803043339741">"লেআউট সীমাগুলি দেখান"</string>
<string name="debug_layout_summary" msgid="8825829038287321978">"ক্লিপ বাউন্ড, মার্জিন ইত্যাদি দেখান"</string>
<string name="force_rtl_layout_all_locales" msgid="8690762598501599796">"RTL লেআউট দিকনির্দেশ জোর দিন"</string>
@@ -395,10 +396,10 @@
<string name="show_notification_channel_warnings" msgid="3448282400127597331">"বিজ্ঞপ্তির সতর্কতা দেখুন"</string>
<string name="show_notification_channel_warnings_summary" msgid="68031143745094339">"অ্যাপ সঠিক চ্যানেল ছাড়া বিজ্ঞপ্তি দেখালে সতর্ক করে"</string>
<string name="force_allow_on_external" msgid="9187902444231637880">"বহিরাগততে বলপূর্বক মঞ্জুরি"</string>
- <string name="force_allow_on_external_summary" msgid="8525425782530728238">"ম্যানিফেস্ট মানগুলি নির্বিশেষে যেকোনো অ্যাপ্লিকেশানকে বাহ্যিক সঞ্চয়স্থানে লেখার উপযুক্ত বানায়"</string>
+ <string name="force_allow_on_external_summary" msgid="8525425782530728238">"ম্যানিফেস্ট মানের নির্বিশেষে যেকোনও অ্যাপকে এক্সটারনাল স্টোরেজে ইনস্টল করার উপযুক্ত বানায়"</string>
<string name="force_resizable_activities" msgid="7143612144399959606">"আকার পরিবর্তনযোগ্য করার জন্য ক্রিয়াকলাপগুলিকে জোর করুন"</string>
<string name="force_resizable_activities_summary" msgid="2490382056981583062">"ম্যানিফেস্ট মানগুলির নির্বিশেষে মাল্টি-উইন্ডোর জন্য সমস্ত ক্রিয়াকলাপগুলির আকার পরিবর্তনযোগ্য করুন৷"</string>
- <string name="enable_freeform_support" msgid="7599125687603914253">"ফ্রি-ফর্ম উইন্ডোগুলি সক্ষম করুন"</string>
+ <string name="enable_freeform_support" msgid="7599125687603914253">"ফ্রি-ফর্ম উইন্ডো চালু করুন"</string>
<string name="enable_freeform_support_summary" msgid="1822862728719276331">"পরীক্ষামূলক ফ্রি-ফর্ম উইন্ডোগুলির জন্য সহায়তা সক্ষম করুন৷"</string>
<string name="desktop_mode" msgid="2389067840550544462">"\'ডেস্কটপ\' মোড"</string>
<string name="local_backup_password_title" msgid="4631017948933578709">"ডেস্কটপ ব্যাকআপ পাসওয়ার্ড"</string>
diff --git a/packages/SettingsLib/res/values-bs/strings.xml b/packages/SettingsLib/res/values-bs/strings.xml
index c42160cb2f74..d7dddcdfa6d6 100644
--- a/packages/SettingsLib/res/values-bs/strings.xml
+++ b/packages/SettingsLib/res/values-bs/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Slušni aparati"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE zvuk"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Povezan na slušne aparate"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Povezano s LE zvukom"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Povezano sa zvukom medija"</string>
@@ -597,8 +598,8 @@
<string name="add_user_failed" msgid="4809887794313944872">"Kreiranje novog korisnika nije uspjelo"</string>
<string name="add_guest_failed" msgid="8074548434469843443">"Kreiranje novog gosta nije uspjelo"</string>
<string name="user_nickname" msgid="262624187455825083">"Nadimak"</string>
- <string name="user_add_user" msgid="7876449291500212468">"Dodajte korisnika"</string>
- <string name="guest_new_guest" msgid="3482026122932643557">"Dodajte gosta"</string>
+ <string name="user_add_user" msgid="7876449291500212468">"Dodavanje korisnika"</string>
+ <string name="guest_new_guest" msgid="3482026122932643557">"Dodavanje gosta"</string>
<string name="guest_exit_guest" msgid="5908239569510734136">"Ukloni gosta"</string>
<string name="guest_reset_guest" msgid="6110013010356013758">"Poništi sesiju gosta"</string>
<string name="guest_reset_guest_dialog_title" msgid="8047270010895437534">"Poništiti sesiju gosta?"</string>
diff --git a/packages/SettingsLib/res/values-ca/strings.xml b/packages/SettingsLib/res/values-ca/strings.xml
index dc2930c42da4..f06a48b40547 100644
--- a/packages/SettingsLib/res/values-ca/strings.xml
+++ b/packages/SettingsLib/res/values-ca/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Àudio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Àudio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Audiòfons"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"S\'ha connectat als audiòfons"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Connectat a LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Connectat a l\'àudio del mitjà"</string>
diff --git a/packages/SettingsLib/res/values-cs/strings.xml b/packages/SettingsLib/res/values-cs/strings.xml
index 3b61b9d7a83b..9b7d40fa4167 100644
--- a/packages/SettingsLib/res/values-cs/strings.xml
+++ b/packages/SettingsLib/res/values-cs/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD zvuk: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD zvuk"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Naslouchátka"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Připojeno k naslouchátkům"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Připojeno k LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Připojeno ke zvukovému médiu"</string>
diff --git a/packages/SettingsLib/res/values-da/strings.xml b/packages/SettingsLib/res/values-da/strings.xml
index 0397f4367047..c6ae90940891 100644
--- a/packages/SettingsLib/res/values-da/strings.xml
+++ b/packages/SettingsLib/res/values-da/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-lyd: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-lyd"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Høreapparater"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Forbundet til høreapparater"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Forbundet med LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Forbundet til medielyd"</string>
diff --git a/packages/SettingsLib/res/values-de/strings.xml b/packages/SettingsLib/res/values-de/strings.xml
index 122757649f3c..3d6e8e9ee576 100644
--- a/packages/SettingsLib/res/values-de/strings.xml
+++ b/packages/SettingsLib/res/values-de/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-Audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-Audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Hörhilfen"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Mit Hörhilfen verbunden"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Mit LE Audio verbunden"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Verbunden mit Medien-Audio"</string>
diff --git a/packages/SettingsLib/res/values-el/strings.xml b/packages/SettingsLib/res/values-el/strings.xml
index fa1b8866a5f3..a7a410c7bcfc 100644
--- a/packages/SettingsLib/res/values-el/strings.xml
+++ b/packages/SettingsLib/res/values-el/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Ήχος HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Ήχος HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Βοηθήματα ακοής"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Έγινε σύνδεση σε βοηθήματα ακοής"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Συνδέθηκε σε LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Συνδέθηκε σε ήχο πολυμέσων"</string>
diff --git a/packages/SettingsLib/res/values-en-rAU/strings.xml b/packages/SettingsLib/res/values-en-rAU/strings.xml
index 1d0d2cbdc7c5..1173eaab47b2 100644
--- a/packages/SettingsLib/res/values-en-rAU/strings.xml
+++ b/packages/SettingsLib/res/values-en-rAU/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Hearing Aids"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Connected to Hearing Aids"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Connected to LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Connected to media audio"</string>
diff --git a/packages/SettingsLib/res/values-en-rCA/strings.xml b/packages/SettingsLib/res/values-en-rCA/strings.xml
index e793fb72825c..bfec094f05b4 100644
--- a/packages/SettingsLib/res/values-en-rCA/strings.xml
+++ b/packages/SettingsLib/res/values-en-rCA/strings.xml
@@ -115,7 +115,7 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Hearing Aids"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <string name="bluetooth_profile_le_audio" msgid="6125267378720026515">"LE audio (experimental)"</string>
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Connected to Hearing Aids"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Connected to LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Connected to media audio"</string>
diff --git a/packages/SettingsLib/res/values-en-rGB/strings.xml b/packages/SettingsLib/res/values-en-rGB/strings.xml
index 1d0d2cbdc7c5..1173eaab47b2 100644
--- a/packages/SettingsLib/res/values-en-rGB/strings.xml
+++ b/packages/SettingsLib/res/values-en-rGB/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Hearing Aids"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Connected to Hearing Aids"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Connected to LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Connected to media audio"</string>
diff --git a/packages/SettingsLib/res/values-en-rIN/strings.xml b/packages/SettingsLib/res/values-en-rIN/strings.xml
index 1d0d2cbdc7c5..1173eaab47b2 100644
--- a/packages/SettingsLib/res/values-en-rIN/strings.xml
+++ b/packages/SettingsLib/res/values-en-rIN/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Hearing Aids"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Connected to Hearing Aids"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Connected to LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Connected to media audio"</string>
diff --git a/packages/SettingsLib/res/values-en-rXC/strings.xml b/packages/SettingsLib/res/values-en-rXC/strings.xml
index cfa2df54250c..f9b646c46695 100644
--- a/packages/SettingsLib/res/values-en-rXC/strings.xml
+++ b/packages/SettingsLib/res/values-en-rXC/strings.xml
@@ -115,7 +115,7 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‎‎‏‏‏‎‎‎‏‎‏‏‏‏‎‎‎‎‎‎‏‏‎‏‏‎‎‏‏‏‎‏‏‎‏‏‎‎‏‏‎‏‏‎‏‏‏‎‎‏‏‏‏‎‎‎‏‏‏‎HD audio: ‎‏‎‎‏‏‎<xliff:g id="CODEC_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‎‎‏‎‎‏‏‎‎‎‏‎‎‏‎‏‎‏‏‏‏‎‏‎‎‎‎‏‏‎‏‎‏‏‎‎‏‎‎‏‎‎‏‎‏‎‎‏‏‎‏‏‎‎‎‎‎‏‏‎‎HD audio‎‏‎‎‏‎"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‎‎‏‏‎‎‏‏‏‎‏‎‎‏‏‎‏‏‎‏‎‎‎‏‏‏‎‏‎‎‎‎‏‏‎‎‏‎‎‏‏‎‏‎‏‎‎‏‏‎‏‎‎‏‎‎‏‎‎Hearing Aids‎‏‎‎‏‎"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‏‎‎‏‏‏‎‏‏‏‏‎‎‏‎‏‎‏‏‏‏‏‏‎‏‎‎‏‏‏‏‏‎‏‎‏‎‎‏‎‎‎‏‏‎‏‎‎‎‏‏‎‎‏‏‎‏‎‏‎LE audio‎‏‎‎‏‎"</string>
+ <string name="bluetooth_profile_le_audio" msgid="6125267378720026515">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‎‏‎‏‎‎‎‎‎‎‎‏‎‏‎‏‎‎‏‎‎‎‏‏‏‎‏‎‎‏‎‏‎‏‏‎‏‏‏‎‎‏‎‏‎‎‏‎‏‏‏‏‏‎‎‏‎‎‏‏‎LE audio (experimental)‎‏‎‎‏‎"</string>
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‎‏‏‎‏‎‏‏‎‏‎‎‏‏‏‏‏‏‏‎‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‏‏‏‎‎‎‏‏‎‏‏‎‎‏‏‏‏‏‏‏‏‎‎Connected to Hearing Aids‎‏‎‎‏‎"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‏‏‏‏‏‏‏‏‎‏‏‎‏‎‏‏‏‏‏‏‏‎‎‏‎‏‎‎‎‎‏‏‏‏‎‎‏‎‎‎‏‏‎‎‎‏‏‏‏‎‎‏‏‎‎‏‎‏‎‎Connected to LE audio‎‏‎‎‏‎"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‏‏‏‎‎‎‎‎‎‏‎‎‏‏‎‎‏‏‎‏‎‎‏‏‏‏‏‎‏‎‎‎‏‎‏‏‎‏‏‎‏‏‎‏‏‎‏‏‏‎‏‏‎‏‏‏‎‎‏‎Connected to media audio‎‏‎‎‏‎"</string>
diff --git a/packages/SettingsLib/res/values-es-rUS/strings.xml b/packages/SettingsLib/res/values-es-rUS/strings.xml
index 559483b121f6..904e7c386e06 100644
--- a/packages/SettingsLib/res/values-es-rUS/strings.xml
+++ b/packages/SettingsLib/res/values-es-rUS/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio en HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio en HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Audífonos"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Audio de bajo consumo"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Conectado a audífonos"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Conectado a audio de bajo consumo"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Conectado al audio multimedia"</string>
diff --git a/packages/SettingsLib/res/values-es/strings.xml b/packages/SettingsLib/res/values-es/strings.xml
index f12cbf6f6e95..e2f2d9b98e59 100644
--- a/packages/SettingsLib/res/values-es/strings.xml
+++ b/packages/SettingsLib/res/values-es/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Audífonos"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Le Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Conectado a audífonos"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Conectado a LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Conectado al audio del medio"</string>
@@ -360,7 +361,7 @@
<string name="show_hw_screen_updates_summary" msgid="3539770072741435691">"Hacer parpadear las vistas dentro de las ventanas cuando se dibujan"</string>
<string name="show_hw_layers_updates" msgid="5268370750002509767">"Ver actualizaciones de capas de hardware"</string>
<string name="show_hw_layers_updates_summary" msgid="5850955890493054618">"Hacer parpadear las capas de hardware en verde cuando se actualizan"</string>
- <string name="debug_hw_overdraw" msgid="8944851091008756796">"Depurar sobredibujos de GPU"</string>
+ <string name="debug_hw_overdraw" msgid="8944851091008756796">"Depurar overdraw de GPU"</string>
<string name="disable_overlays" msgid="4206590799671557143">"Inhabilitar superposiciones de hardware"</string>
<string name="disable_overlays_summary" msgid="1954852414363338166">"Usa siempre la GPU para componer pantallas"</string>
<string name="simulate_color_space" msgid="1206503300335835151">"Simular espacio de color"</string>
@@ -592,7 +593,7 @@
<string name="user_need_lock_message" msgid="4311424336209509301">"Para poder crear un perfil restringido, debes configurar una pantalla de bloqueo que proteja tus aplicaciones y datos personales."</string>
<string name="user_set_lock_button" msgid="1427128184982594856">"Establecer bloqueo"</string>
<string name="user_switch_to_user" msgid="6975428297154968543">"Cambiar a <xliff:g id="USER_NAME">%s</xliff:g>"</string>
- <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"Creando usuario nuevo…"</string>
+ <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"Creando nuevo usuario…"</string>
<string name="creating_new_guest_dialog_message" msgid="1114905602181350690">"Creando nuevo invitado…"</string>
<string name="add_user_failed" msgid="4809887794313944872">"No se ha podido crear el usuario"</string>
<string name="add_guest_failed" msgid="8074548434469843443">"No se ha podido crear un nuevo invitado"</string>
diff --git a/packages/SettingsLib/res/values-et/strings.xml b/packages/SettingsLib/res/values-et/strings.xml
index 431f6efaecb7..e047ae580531 100644
--- a/packages/SettingsLib/res/values-et/strings.xml
+++ b/packages/SettingsLib/res/values-et/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-heli: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-heli"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Kuuldeaparaadid"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Kuuldeaparaatidega ühendatud"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Ühendatud üksusega LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Ühendatud meediumiheliga"</string>
diff --git a/packages/SettingsLib/res/values-eu/strings.xml b/packages/SettingsLib/res/values-eu/strings.xml
index ffde0e05e32f..68bf78175d00 100644
--- a/packages/SettingsLib/res/values-eu/strings.xml
+++ b/packages/SettingsLib/res/values-eu/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Kalitate handiko audioa: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Kalitate handiko audioa"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Audifonoak"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Audifonoetara konektatuta"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE audio-ra konektatuta"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Euskarriaren audiora konektatuta"</string>
@@ -220,7 +221,7 @@
<string name="development_settings_summary" msgid="8718917813868735095">"Ezarri aplikazioak garatzeko aukerak"</string>
<string name="development_settings_not_available" msgid="355070198089140951">"Erabiltzaile honek ez ditu garatzaileen aukerak"</string>
<string name="vpn_settings_not_available" msgid="2894137119965668920">"Erabiltzaile honek ezin ditu VPN ezarpenak atzitu"</string>
- <string name="tethering_settings_not_available" msgid="266821736434699780">"Erabiltzaile honek ezin ditu konexioa partekatzeko ezarpenak atzitu"</string>
+ <string name="tethering_settings_not_available" msgid="266821736434699780">"Erabiltzaile honek ezin ditu konexioa partekatzeko aukeraren ezarpenak atzitu"</string>
<string name="apn_settings_not_available" msgid="1147111671403342300">"Erabiltzaile honek ezin ditu APN ezarpenak atzitu"</string>
<string name="enable_adb" msgid="8072776357237289039">"USB bidezko arazketa"</string>
<string name="enable_adb_summary" msgid="3711526030096574316">"Gaitu arazketa modua USBa konektatzean"</string>
@@ -269,7 +270,7 @@
<string name="debug_networking_category" msgid="6829757985772659599">"Sareak"</string>
<string name="wifi_display_certification" msgid="1805579519992520381">"Hari gabe bistaratzeko ziurtagiria"</string>
<string name="wifi_verbose_logging" msgid="1785910450009679371">"Gaitu wifi-sareetan saioa hasteko modu xehatua"</string>
- <string name="wifi_scan_throttling" msgid="2985624788509913617">"Wifi-sareen bilaketaren muga"</string>
+ <string name="wifi_scan_throttling" msgid="2985624788509913617">"Wifi-sareen bilaketaren moteltzea"</string>
<string name="wifi_non_persistent_mac_randomization" msgid="7482769677894247316">"Wifi-konexioetan iraunkorrak ez diren MAC helbideak ausaz antolatzea"</string>
<string name="mobile_data_always_on" msgid="8275958101875563572">"Datu-konexioa beti aktibo"</string>
<string name="tethering_hardware_offload" msgid="4116053719006939161">"Konexioa partekatzeko hardwarearen azelerazioa"</string>
diff --git a/packages/SettingsLib/res/values-fa/strings.xml b/packages/SettingsLib/res/values-fa/strings.xml
index 7c500ec43270..e7a65527ad49 100644
--- a/packages/SettingsLib/res/values-fa/strings.xml
+++ b/packages/SettingsLib/res/values-fa/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"‏صدای HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"‏صدای HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"سمعک"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"صدای کم‌مصرف"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"به سمعک متصل شد"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"به «صدای کم‌مصرف» وصل است"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"به رسانه صوتی متصل شد"</string>
diff --git a/packages/SettingsLib/res/values-fi/strings.xml b/packages/SettingsLib/res/values-fi/strings.xml
index 28adf976f727..c2f69263bb57 100644
--- a/packages/SettingsLib/res/values-fi/strings.xml
+++ b/packages/SettingsLib/res/values-fi/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-ääni: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-ääni"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Kuulolaitteet"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Yhdistetty kuulolaitteisiin"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE Audio yhdistetty"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Yhdistetty median ääneen"</string>
diff --git a/packages/SettingsLib/res/values-fr-rCA/strings.xml b/packages/SettingsLib/res/values-fr-rCA/strings.xml
index ff30bd9eae71..0561c286f337 100644
--- a/packages/SettingsLib/res/values-fr-rCA/strings.xml
+++ b/packages/SettingsLib/res/values-fr-rCA/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio HD : <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Prothèses auditives"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Connecté aux prothèses auditives"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Connecté par LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Connecté aux paramètres audio du média"</string>
diff --git a/packages/SettingsLib/res/values-fr/strings.xml b/packages/SettingsLib/res/values-fr/strings.xml
index e02642b8d8ca..66482e24e284 100644
--- a/packages/SettingsLib/res/values-fr/strings.xml
+++ b/packages/SettingsLib/res/values-fr/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio HD : <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Appareils auditifs"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Connexion établie avec les appareils auditifs"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Connecté à LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Connecté aux paramètres audio du média"</string>
@@ -532,7 +533,7 @@
<string name="zen_mode_enable_dialog_turn_on" msgid="6418297231575050426">"Activer"</string>
<string name="zen_mode_settings_turn_on_dialog_title" msgid="2760567063190790696">"Activer le mode Ne pas déranger"</string>
<string name="zen_mode_settings_summary_off" msgid="3832876036123504076">"Jamais"</string>
- <string name="zen_interruption_level_priority" msgid="5392140786447823299">"Prioritaires uniquement"</string>
+ <string name="zen_interruption_level_priority" msgid="5392140786447823299">"Prioritaire uniquement"</string>
<string name="zen_mode_and_condition" msgid="8877086090066332516">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="zen_alarm_warning_indef" msgid="4146527909616457163">"Vous n\'entendrez pas votre prochaine alarme <xliff:g id="WHEN">%1$s</xliff:g>, sauf si vous désactivez cette option avant"</string>
<string name="zen_alarm_warning" msgid="245729928048586280">"Vous n\'entendrez pas votre prochaine alarme <xliff:g id="WHEN">%1$s</xliff:g>"</string>
diff --git a/packages/SettingsLib/res/values-gl/strings.xml b/packages/SettingsLib/res/values-gl/strings.xml
index ec0fba963f94..f717e7eb1020 100644
--- a/packages/SettingsLib/res/values-gl/strings.xml
+++ b/packages/SettingsLib/res/values-gl/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio en HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio en HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Audiófonos"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Audio de baixo consumo"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Conectado a audiófonos"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Estableceuse conexión co audio de baixo consumo"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Conectado ao audio multimedia"</string>
diff --git a/packages/SettingsLib/res/values-gu/strings.xml b/packages/SettingsLib/res/values-gu/strings.xml
index b5c073158e3a..0eb03d3eaecb 100644
--- a/packages/SettingsLib/res/values-gu/strings.xml
+++ b/packages/SettingsLib/res/values-gu/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ઑડિયો: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ઑડિયો"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"શ્રવણ યંત્રો"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE ઑડિયો"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"શ્રવણ યંત્રો સાથે કનેક્ટ કરેલું છે"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE ઑડિયોથી કનેક્ટેડ"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"મીડિયા ઑડિઓ સાથે કનેક્ટ કર્યુ"</string>
diff --git a/packages/SettingsLib/res/values-hi/strings.xml b/packages/SettingsLib/res/values-hi/strings.xml
index e74c92d66199..1af8706dcb4b 100644
--- a/packages/SettingsLib/res/values-hi/strings.xml
+++ b/packages/SettingsLib/res/values-hi/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"एचडी ऑडियो: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"एचडी ऑडियो"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"कान की मशीन"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"सुनने में मदद करने वाले डिवाइस से कनेक्ट है"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE Audio से कनेक्ट किया गया"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"मीडिया ऑडियो से कनेक्‍ट किया गया"</string>
@@ -592,7 +593,7 @@
<string name="user_need_lock_message" msgid="4311424336209509301">"इससे पहले कि आप कोई प्रतिबंधित प्रोफ़ाइल बनाएं, आपको अपने ऐप्लिकेशन और व्यक्तिगत डेटा की सुरक्षा करने के लिए एक स्क्रीन लॉक सेट करना होगा."</string>
<string name="user_set_lock_button" msgid="1427128184982594856">"लॉक सेट करें"</string>
<string name="user_switch_to_user" msgid="6975428297154968543">"<xliff:g id="USER_NAME">%s</xliff:g> पर जाएं"</string>
- <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"नया उपयोगकर्ता बनाया जा रहा है…"</string>
+ <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"नए उपयोगकर्ता को जोड़ा जा रहा है…"</string>
<string name="creating_new_guest_dialog_message" msgid="1114905602181350690">"नया मेहमान खाता बनाया जा रहा है…"</string>
<string name="add_user_failed" msgid="4809887794313944872">"नया उपयोगकर्ता जोड़ा नहीं जा सका"</string>
<string name="add_guest_failed" msgid="8074548434469843443">"नया मेहमान खाता नहीं बनाया जा सका"</string>
diff --git a/packages/SettingsLib/res/values-hr/strings.xml b/packages/SettingsLib/res/values-hr/strings.xml
index ef091b461b37..7ef4f205d46e 100644
--- a/packages/SettingsLib/res/values-hr/strings.xml
+++ b/packages/SettingsLib/res/values-hr/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Slušni aparati"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE_AUDIO"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Povezano sa Slušnim aparatima"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Povezano s profilom LE_AUDIO"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Povezano s medijskim zvukom"</string>
@@ -613,7 +614,7 @@
<string name="grant_admin" msgid="4323199171790522574">"Da, dodijeli status administratora"</string>
<string name="not_grant_admin" msgid="3557849576157702485">"Ne, nemoj dodijeliti status administratora"</string>
<string name="guest_exit_dialog_button" msgid="1736401897067442044">"Izlaz"</string>
- <string name="guest_exit_dialog_title_non_ephemeral" msgid="7675327443743162986">"Spremiti aktivnosti gosta?"</string>
+ <string name="guest_exit_dialog_title_non_ephemeral" msgid="7675327443743162986">"Želite li spremiti aktivnosti gosta?"</string>
<string name="guest_exit_dialog_message_non_ephemeral" msgid="223385323235719442">"Možete spremiti aktivnosti iz ove sesije ili izbrisati sve aplikacije i podatke"</string>
<string name="guest_exit_clear_data_button" msgid="3425812652180679014">"Izbriši"</string>
<string name="guest_exit_save_data_button" msgid="3690974510644963547">"Spremi"</string>
@@ -621,7 +622,7 @@
<string name="guest_reset_button" msgid="2515069346223503479">"Poništi gostujuću sesiju"</string>
<string name="guest_exit_quick_settings_button" msgid="1912362095913765471">"Izlaz iz gostujuće sesije"</string>
<string name="guest_notification_ephemeral" msgid="7263252466950923871">"Sve će se aktivnosti izbrisati na izlasku"</string>
- <string name="guest_notification_non_ephemeral" msgid="6843799963012259330">"Svoje aktivnosti možete spremiti ili izbrisati na izlasku."</string>
+ <string name="guest_notification_non_ephemeral" msgid="6843799963012259330">"Svoje aktivnosti možete spremiti ili izbrisati na izlasku"</string>
<string name="guest_notification_non_ephemeral_non_first_login" msgid="8009307983766934876">"Poništite da odmah izbrišete aktivnost sesije. Inače je možete spremiti ili izbrisati na izlasku."</string>
<string name="user_image_take_photo" msgid="467512954561638530">"Fotografiraj"</string>
<string name="user_image_choose_photo" msgid="1363820919146782908">"Odaberi sliku"</string>
diff --git a/packages/SettingsLib/res/values-hu/strings.xml b/packages/SettingsLib/res/values-hu/strings.xml
index ebe757697170..7862891d3395 100644
--- a/packages/SettingsLib/res/values-hu/strings.xml
+++ b/packages/SettingsLib/res/values-hu/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Hallókészülékek"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Alacsony energiaszintű hangátvitel"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Hallókészülékhez csatlakoztatva"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Csatlakoztatva az alacsony energiaszintű hangátvitelhez"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Csatlakoztatva az eszköz hangjához"</string>
diff --git a/packages/SettingsLib/res/values-hy/strings.xml b/packages/SettingsLib/res/values-hy/strings.xml
index d8f4e0eda2ae..517721f90200 100644
--- a/packages/SettingsLib/res/values-hy/strings.xml
+++ b/packages/SettingsLib/res/values-hy/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD աուդիո՝ <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD աուդիո"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Լսողական ապարատ"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Լսողական ապարատը միացված է"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Միացած է LE audio-ին"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Միացված է մեդիա աուդիոյին"</string>
diff --git a/packages/SettingsLib/res/values-in/strings.xml b/packages/SettingsLib/res/values-in/strings.xml
index 2fd0f542e8fc..84681aeb8a4f 100644
--- a/packages/SettingsLib/res/values-in/strings.xml
+++ b/packages/SettingsLib/res/values-in/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Alat Bantu Dengar"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Terhubung ke Alat Bantu Dengar"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Terhubung ke LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Terhubung ke media audio"</string>
diff --git a/packages/SettingsLib/res/values-is/strings.xml b/packages/SettingsLib/res/values-is/strings.xml
index 151b82f48060..fe545761db94 100644
--- a/packages/SettingsLib/res/values-is/strings.xml
+++ b/packages/SettingsLib/res/values-is/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-hljóð: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-hljóð"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Heyrnartæki"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE-hljóð"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Tengt við heyrnartæki"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Tengt við LE-hljóð"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Tengt við hljóðspilun efnis"</string>
diff --git a/packages/SettingsLib/res/values-it/strings.xml b/packages/SettingsLib/res/values-it/strings.xml
index 7829bd231851..91bacd9509d3 100644
--- a/packages/SettingsLib/res/values-it/strings.xml
+++ b/packages/SettingsLib/res/values-it/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Apparecchi acustici"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Connessione con gli apparecchi acustici stabilita"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Connesso a LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Collegato ad audio media"</string>
diff --git a/packages/SettingsLib/res/values-iw/strings.xml b/packages/SettingsLib/res/values-iw/strings.xml
index 1a3a4f3c0c64..71be2dcf59d1 100644
--- a/packages/SettingsLib/res/values-iw/strings.xml
+++ b/packages/SettingsLib/res/values-iw/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"‏אודיו באיכות HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"‏אודיו באיכות HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"מכשירי שמיעה"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"מחובר אל מכשירי שמיעה"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"‏מחובר אל LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"מחובר לאודיו של מדיה"</string>
diff --git a/packages/SettingsLib/res/values-ja/strings.xml b/packages/SettingsLib/res/values-ja/strings.xml
index 73bd10ee21f8..4f5539b471c0 100644
--- a/packages/SettingsLib/res/values-ja/strings.xml
+++ b/packages/SettingsLib/res/values-ja/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD オーディオ: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD オーディオ"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"補聴器"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"補聴器に接続"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE Audio に接続"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"メディアの音声に接続"</string>
diff --git a/packages/SettingsLib/res/values-ka/strings.xml b/packages/SettingsLib/res/values-ka/strings.xml
index 6e0bfec3d96e..6f186815be6e 100644
--- a/packages/SettingsLib/res/values-ka/strings.xml
+++ b/packages/SettingsLib/res/values-ka/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD აუდიო: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD აუდიო"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"სმენის მოწყობილობები"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE აუდიო"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"დაკავშირებულია სმენის მოწყობილობებთან"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"დაკავშირებულია LE აუდიოსთან"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"დაკავშირებულია აუდიო მულტიმედიურ სისტემასთან"</string>
diff --git a/packages/SettingsLib/res/values-kk/strings.xml b/packages/SettingsLib/res/values-kk/strings.xml
index e721ef5fecb4..c9563ed2e203 100644
--- a/packages/SettingsLib/res/values-kk/strings.xml
+++ b/packages/SettingsLib/res/values-kk/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD форматты аудио: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD форматты аудио"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Есту аппараттары"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Есту аппараттарына жалғанған"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE Audio-ға жалғанды."</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Медиа аудиосына жалғанған"</string>
@@ -592,7 +593,7 @@
<string name="user_need_lock_message" msgid="4311424336209509301">"Шектелген профайл жасақтауға дейін қолданбалар мен жеке деректерді қорғау үшін экран бекітпесін тағайындау қажет."</string>
<string name="user_set_lock_button" msgid="1427128184982594856">"Бекітпе тағайындау"</string>
<string name="user_switch_to_user" msgid="6975428297154968543">"Пайдаланушыны ауыстыру: <xliff:g id="USER_NAME">%s</xliff:g>"</string>
- <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"Жаңа пайдаланушы профилі жасалуда…"</string>
+ <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"Жаңа пайдаланушы профилі жасалып жатыр…"</string>
<string name="creating_new_guest_dialog_message" msgid="1114905602181350690">"Жаңа қонақ профилі жасалып жатыр…"</string>
<string name="add_user_failed" msgid="4809887794313944872">"Жаңа пайдаланушы жасалмады."</string>
<string name="add_guest_failed" msgid="8074548434469843443">"Жаңа қонақ профилі жасалмады."</string>
@@ -614,7 +615,7 @@
<string name="not_grant_admin" msgid="3557849576157702485">"Жоқ, пайдаланушы әкімші етілмесін"</string>
<string name="guest_exit_dialog_button" msgid="1736401897067442044">"Шығу"</string>
<string name="guest_exit_dialog_title_non_ephemeral" msgid="7675327443743162986">"Қонақ әрекетін сақтау керек пе?"</string>
- <string name="guest_exit_dialog_message_non_ephemeral" msgid="223385323235719442">"Ағымдағы сеанстағы әрекетті сақтай не барлық қолданба мен деректі жоя аласыз."</string>
+ <string name="guest_exit_dialog_message_non_ephemeral" msgid="223385323235719442">"Ағымдағы сеанс тарихын сақтауға не барлық қолданба мен деректі жоюға болады."</string>
<string name="guest_exit_clear_data_button" msgid="3425812652180679014">"Жою"</string>
<string name="guest_exit_save_data_button" msgid="3690974510644963547">"Сақтау"</string>
<string name="guest_exit_button" msgid="5774985819191803960">"Қонақ режимінен шығу"</string>
@@ -660,7 +661,7 @@
<string name="accessibility_data_one_bar" msgid="6892888138070752480">"Дерекқор бір баған."</string>
<string name="accessibility_data_two_bars" msgid="9202641507241802499">"Дерекқор екі баған."</string>
<string name="accessibility_data_three_bars" msgid="2813876214466722413">"Дерекқор үш баған."</string>
- <string name="accessibility_data_signal_full" msgid="1808301899314382337">"Дерекқор сигналы толы."</string>
+ <string name="accessibility_data_signal_full" msgid="1808301899314382337">"Дерек сигналы толы."</string>
<string name="accessibility_ethernet_disconnected" msgid="2832501530856497489">"Ethernet ажыратылған."</string>
<string name="accessibility_ethernet_connected" msgid="6175942685957461563">"Ethernet."</string>
<string name="accessibility_no_calling" msgid="3540827068323895748">"Қоңырау шалу мүмкін емес."</string>
diff --git a/packages/SettingsLib/res/values-km/strings.xml b/packages/SettingsLib/res/values-km/strings.xml
index 73cdef1ef48d..93a1e0834980 100644
--- a/packages/SettingsLib/res/values-km/strings.xml
+++ b/packages/SettingsLib/res/values-km/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"សំឡេងកម្រិត HD៖ <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"សំឡេងកម្រិត HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"ឧបករណ៍​ជំនួយការ​ស្ដាប់"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"បាន​ភ្ជាប់ទៅ​ឧបករណ៍​ជំនួយការ​ស្ដាប់"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"បានភ្ជាប់​ទៅ LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"បា​ន​ភ្ជាប់​ទៅ​អូឌីយ៉ូ​មេឌៀ"</string>
diff --git a/packages/SettingsLib/res/values-kn/strings.xml b/packages/SettingsLib/res/values-kn/strings.xml
index 2384795fe353..5f777f537910 100644
--- a/packages/SettingsLib/res/values-kn/strings.xml
+++ b/packages/SettingsLib/res/values-kn/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ಆಡಿಯೋ: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ಆಡಿಯೋ"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"ಶ್ರವಣ ಸಾಧನಗಳು"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE ಆಡಿಯೋ"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"ಶ್ರವಣ ಸಾಧನಗಳಿಗೆ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE ಆಡಿಯೋಗೆ ಕನೆಕ್ಟ್ ಮಾಡಲಾಗಿದೆ"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"ಮಾಧ್ಯಮ ಆಡಿಯೋಗೆ ಸಂಪರ್ಕಗೊಂಡಿದೆ"</string>
diff --git a/packages/SettingsLib/res/values-ko/strings.xml b/packages/SettingsLib/res/values-ko/strings.xml
index cfc61d2df2a2..f80bba78c850 100644
--- a/packages/SettingsLib/res/values-ko/strings.xml
+++ b/packages/SettingsLib/res/values-ko/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD 오디오: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD 오디오"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"보청기"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE 오디오"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"보청기에 연결됨"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE 오디오에 연결됨"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"미디어 오디오에 연결됨"</string>
diff --git a/packages/SettingsLib/res/values-ky/strings.xml b/packages/SettingsLib/res/values-ky/strings.xml
index 269b0808c9ec..d2fe7f7955bc 100644
--- a/packages/SettingsLib/res/values-ky/strings.xml
+++ b/packages/SettingsLib/res/values-ky/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD форматындагы аудио: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD форматындагы аудио"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Угуу аппараттары"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE аудио"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Угуу аппараттарына туташып турат"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE аудио менен туташты"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Медиа аудиого туташты"</string>
diff --git a/packages/SettingsLib/res/values-lo/strings.xml b/packages/SettingsLib/res/values-lo/strings.xml
index b93c5417c2fa..6f5b3ff9ad66 100644
--- a/packages/SettingsLib/res/values-lo/strings.xml
+++ b/packages/SettingsLib/res/values-lo/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"ສຽງ HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"ສຽງ HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"ອຸປະກອນຊ່ວຍຟັງ"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"ສຽງ LE"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"ເຊື່ອມຕໍ່ຫາອຸປະກອນຊ່ວຍຟັງແລ້ວ"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"ເຊື່ອມຕໍ່ຫາສຽງ LE ແລ້ວ"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"ເຊື່ອມຕໍ່ກັບສື່ດ້ານສຽງແລ້ວ"</string>
diff --git a/packages/SettingsLib/res/values-lt/strings.xml b/packages/SettingsLib/res/values-lt/strings.xml
index bac6306260bd..645fba178b61 100644
--- a/packages/SettingsLib/res/values-lt/strings.xml
+++ b/packages/SettingsLib/res/values-lt/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD garsas: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD garsas"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Klausos aparatai"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Prisijungta prie klausos aparatų"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Prisijungta prie „LE Audio“"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Prijungta prie medijos garso įrašo"</string>
diff --git a/packages/SettingsLib/res/values-lv/strings.xml b/packages/SettingsLib/res/values-lv/strings.xml
index d2d38fcf8998..429c74482525 100644
--- a/packages/SettingsLib/res/values-lv/strings.xml
+++ b/packages/SettingsLib/res/values-lv/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Dzirdes aparāti"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Izveidots savienojums ar dzirdes aparātiem"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Izveidots savienojums ar LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Savienots ar multivides audio"</string>
diff --git a/packages/SettingsLib/res/values-mk/arrays.xml b/packages/SettingsLib/res/values-mk/arrays.xml
index da5c6ebd3974..6cf933e05c02 100644
--- a/packages/SettingsLib/res/values-mk/arrays.xml
+++ b/packages/SettingsLib/res/values-mk/arrays.xml
@@ -55,12 +55,12 @@
</string-array>
<string-array name="hdcp_checking_summaries">
<item msgid="4045840870658484038">"Никогаш не користи HDCP проверка"</item>
- <item msgid="8254225038262324761">"Користи HDCP-проверка само за DRM-содржини"</item>
+ <item msgid="8254225038262324761">"Користи проверка со HDCP само за DRM-содржини"</item>
<item msgid="6421717003037072581">"Секогаш користи HDCP проверка"</item>
</string-array>
<string-array name="bt_hci_snoop_log_entries">
<item msgid="695678520785580527">"Оневозможено"</item>
- <item msgid="6336372935919715515">"Овозможено е филтрирано"</item>
+ <item msgid="6336372935919715515">"Овозможено филтрирање"</item>
<item msgid="2779123106632690576">"Овозможено"</item>
</string-array>
<string-array name="bt_hci_snoop_log_filters_entries">
diff --git a/packages/SettingsLib/res/values-mk/strings.xml b/packages/SettingsLib/res/values-mk/strings.xml
index ef8cfb4aa2d8..1b851b5d9b17 100644
--- a/packages/SettingsLib/res/values-mk/strings.xml
+++ b/packages/SettingsLib/res/values-mk/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-аудио: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-аудио"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Слушни помагала"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE-аудио"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Поврзано со слушни помагала"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Поврзано на LE-аудио"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Поврзан со аудио на медиуми"</string>
@@ -224,7 +225,7 @@
<string name="apn_settings_not_available" msgid="1147111671403342300">"Поставките за името на пристапната точка не се достапни за овој корисник"</string>
<string name="enable_adb" msgid="8072776357237289039">"Отстранување грешки преку USB"</string>
<string name="enable_adb_summary" msgid="3711526030096574316">"Режим за отстранување грешки кога е поврзано USB"</string>
- <string name="clear_adb_keys" msgid="3010148733140369917">"Отповикај овластувања за отстранување грешки преку USB"</string>
+ <string name="clear_adb_keys" msgid="3010148733140369917">"Повлечи овластувања за отстранување грешки преку USB"</string>
<string name="enable_adb_wireless" msgid="6973226350963971018">"Безжично отстранување грешки"</string>
<string name="enable_adb_wireless_summary" msgid="7344391423657093011">"Режим за отстранување грешки кога е поврзано Wi‑Fi"</string>
<string name="adb_wireless_error" msgid="721958772149779856">"Грешка"</string>
@@ -253,13 +254,13 @@
<string name="adb_wireless_qrcode_pairing_description" msgid="6014121407143607851">"Скенирајте QR-код за да го спарите уредот преку Wi‑Fi"</string>
<string name="adb_wireless_no_network_msg" msgid="2365795244718494658">"Поврзете се на Wi-Fi мрежа"</string>
<string name="keywords_adb_wireless" msgid="6507505581882171240">"adb, отстранува грешка, програмер"</string>
- <string name="bugreport_in_power" msgid="8664089072534638709">"Кратенка за извештај за грешка"</string>
- <string name="bugreport_in_power_summary" msgid="1885529649381831775">"Прикажи копче во менито за вклучување за да се направи извештај за грешка"</string>
+ <string name="bugreport_in_power" msgid="8664089072534638709">"Кратенка за извештај за грешки"</string>
+ <string name="bugreport_in_power_summary" msgid="1885529649381831775">"Прикажи копче за создавање извештај за грешки во менито на копчето за вклучување"</string>
<string name="keep_screen_on" msgid="1187161672348797558">"Остани во активен режим"</string>
<string name="keep_screen_on_summary" msgid="1510731514101925829">"Екранот никогаш нема да биде во режим на спиење додека се полни"</string>
- <string name="bt_hci_snoop_log" msgid="7291287955649081448">"Овозможи Bluetooth HCI за евиденција на пресретнување пакети"</string>
+ <string name="bt_hci_snoop_log" msgid="7291287955649081448">"Овозможи евиденција за Bluetooth HCI"</string>
<string name="bt_hci_snoop_log_summary" msgid="6808538971394092284">"Снимај Bluetooth-пакети. (Вклучи Bluetooth по промената на поставкава)"</string>
- <string name="oem_unlock_enable" msgid="5334869171871566731">"Отклучување со OEM"</string>
+ <string name="oem_unlock_enable" msgid="5334869171871566731">"Отклучување OEM"</string>
<string name="oem_unlock_enable_summary" msgid="5857388174390953829">"Дозволи да се отклучи подигнувачот"</string>
<string name="confirm_enable_oem_unlock_title" msgid="8249318129774367535">"Дозволете отклучување со OEM?"</string>
<string name="confirm_enable_oem_unlock_text" msgid="854131050791011970">"ПРЕДУПРЕДУВАЊЕ: функциите за заштита на уредот нема да работат на овој уред додека е вклучена оваа поставка."</string>
@@ -322,7 +323,7 @@
<string name="adb_warning_message" msgid="8145270656419669221">"Отстранувањето грешки на USB е наменето само за целите на развој. Користете го за копирање податоци меѓу вашиот компјутер и вашиот уред, за инсталирање апликации на вашиот уред без известување и за читање евиденција на податоци."</string>
<string name="adbwifi_warning_title" msgid="727104571653031865">"Да се дозволи безжично отстранување грешки?"</string>
<string name="adbwifi_warning_message" msgid="8005936574322702388">"Безжичното отстранување грешки е наменето само за програмирање. Користете го за копирање податоци помеѓу компјутерот и уредот, за инсталирање апликации на уредот без известување и за читање податоци од евиденцијата."</string>
- <string name="adb_keys_warning_message" msgid="2968555274488101220">"Отповикај пристап кон отстранување грешка од USB од сите претходно овластени компјутери?"</string>
+ <string name="adb_keys_warning_message" msgid="2968555274488101220">"Да се повлече пристапот за сите компјутери што претходно сте ги овластиле за отстранување грешки преку USB?"</string>
<string name="dev_settings_warning_title" msgid="8251234890169074553">"Дозволи поставки за развој?"</string>
<string name="dev_settings_warning_message" msgid="37741686486073668">"Овие поставки се наменети само за употреба за развој. Тие може да предизвикаат уредот и апликациите во него да се расипат или да се однесуваат необично."</string>
<string name="verify_apps_over_usb_title" msgid="6031809675604442636">"Потврди апликации преку USB"</string>
@@ -333,7 +334,7 @@
<string name="enhanced_connectivity_summary" msgid="1576414159820676330">"Ја овозможува функцијата „Подобрена поврзливост“."</string>
<string name="enable_terminal_title" msgid="3834790541986303654">"Локален терминал"</string>
<string name="enable_terminal_summary" msgid="2481074834856064500">"Овозможи апликација на терминал што овозможува локален пристап кон школка."</string>
- <string name="hdcp_checking_title" msgid="3155692785074095986">"Проверување HDCP"</string>
+ <string name="hdcp_checking_title" msgid="3155692785074095986">"Проверка со HDCP"</string>
<string name="hdcp_checking_dialog_title" msgid="7691060297616217781">"Постави однесување на проверка на HDCP"</string>
<string name="debug_debugging_category" msgid="535341063709248842">"Отстранување грешки"</string>
<string name="debug_app" msgid="8903350241392391766">"Изберете апликација за отстранување грешки"</string>
@@ -356,10 +357,10 @@
<string name="show_touches_summary" msgid="3692861665994502193">"Прикажувај визуелни повратни информации за допири"</string>
<string name="show_screen_updates" msgid="2078782895825535494">"Прикажи ажурир. површина"</string>
<string name="show_screen_updates_summary" msgid="2126932969682087406">"Осветли површ. на прозорци при нивно ажурирање"</string>
- <string name="show_hw_screen_updates" msgid="2021286231267747506">"Прикажи ажурирања на прегледи"</string>
- <string name="show_hw_screen_updates_summary" msgid="3539770072741435691">"Осветли прегледи во прозорците при цртање"</string>
- <string name="show_hw_layers_updates" msgid="5268370750002509767">"Ажурир. слоеви на хардвер"</string>
- <string name="show_hw_layers_updates_summary" msgid="5850955890493054618">"Осветли слоеви на хардвер со зелено кога се ажур."</string>
+ <string name="show_hw_screen_updates" msgid="2021286231267747506">"Покажувај ажурирања на приказот"</string>
+ <string name="show_hw_screen_updates_summary" msgid="3539770072741435691">"Осветлувај го приказот при повлекување во прозорците"</string>
+ <string name="show_hw_layers_updates" msgid="5268370750002509767">"Покажувај ажурирања на хардверски слоеви"</string>
+ <string name="show_hw_layers_updates_summary" msgid="5850955890493054618">"Осветлувај ги хардверските слоеви со зелено кога се ажурираат"</string>
<string name="debug_hw_overdraw" msgid="8944851091008756796">"Отстр. греш. на GPU"</string>
<string name="disable_overlays" msgid="4206590799671557143">"Оневозможи HW-преклопувања"</string>
<string name="disable_overlays_summary" msgid="1954852414363338166">"Секогаш користи GPU за составување екран"</string>
@@ -613,15 +614,15 @@
<string name="grant_admin" msgid="4323199171790522574">"Да, направи да биде администратор"</string>
<string name="not_grant_admin" msgid="3557849576157702485">"Не, не прави да биде администратори"</string>
<string name="guest_exit_dialog_button" msgid="1736401897067442044">"Излези"</string>
- <string name="guest_exit_dialog_title_non_ephemeral" msgid="7675327443743162986">"Да се зачува активност на гостин?"</string>
- <string name="guest_exit_dialog_message_non_ephemeral" msgid="223385323235719442">"Може да зачувате активност од тековната сесија или да ги избришете сите апликации и податоци"</string>
+ <string name="guest_exit_dialog_title_non_ephemeral" msgid="7675327443743162986">"Да се зачува гостинската активност?"</string>
+ <string name="guest_exit_dialog_message_non_ephemeral" msgid="223385323235719442">"Може да ја зачувате активноста од тековната сесија или да ги избришете сите апликации и податоци"</string>
<string name="guest_exit_clear_data_button" msgid="3425812652180679014">"Избриши"</string>
<string name="guest_exit_save_data_button" msgid="3690974510644963547">"Зачувај"</string>
<string name="guest_exit_button" msgid="5774985819191803960">"Излези од режим на гостин"</string>
<string name="guest_reset_button" msgid="2515069346223503479">"Ресетирај ја гостинската сесија"</string>
<string name="guest_exit_quick_settings_button" msgid="1912362095913765471">"Излези од режим на гостин"</string>
<string name="guest_notification_ephemeral" msgid="7263252466950923871">"Целата активност ќе се избрише при излегувањето"</string>
- <string name="guest_notification_non_ephemeral" msgid="6843799963012259330">"Можете да ја зачувате или избришете вашата активност при излегувањето"</string>
+ <string name="guest_notification_non_ephemeral" msgid="6843799963012259330">"Може да ја зачувате или избришете вашата активност при излегувањето"</string>
<string name="guest_notification_non_ephemeral_non_first_login" msgid="8009307983766934876">"Ресетирајте за да ја избришете активноста на сесијата сега или може да ја зачувате или избришете активноста при излегувањето"</string>
<string name="user_image_take_photo" msgid="467512954561638530">"Фотографирајте"</string>
<string name="user_image_choose_photo" msgid="1363820919146782908">"Одберете слика"</string>
diff --git a/packages/SettingsLib/res/values-ml/strings.xml b/packages/SettingsLib/res/values-ml/strings.xml
index ac4b0770b6ae..f9c2c0058c84 100644
--- a/packages/SettingsLib/res/values-ml/strings.xml
+++ b/packages/SettingsLib/res/values-ml/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ഓഡിയോ: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ഓഡിയോ"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"ശ്രവണ സഹായികൾ"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE ഓഡിയോ"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"ശ്രവണ സഹായികളിലേക്ക് കണക്‌റ്റ് ചെയ്‌തു"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE ഓഡിയോയിലേക്ക് കണക്‌റ്റ് ചെയ്‌തു"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"മീഡിയ ഓഡിയോയിലേക്ക് കണ‌ക്റ്റുചെയ്‌തു"</string>
diff --git a/packages/SettingsLib/res/values-mn/strings.xml b/packages/SettingsLib/res/values-mn/strings.xml
index 2c068146105c..47bd47415f4c 100644
--- a/packages/SettingsLib/res/values-mn/strings.xml
+++ b/packages/SettingsLib/res/values-mn/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD аудио: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD аудио"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Сонсголын төхөөрөмж"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE аудио"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Сонсголын төхөөрөмжтэй холбосон"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE аудионд холбогдсон"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Медиа аудиод холбогдсон"</string>
diff --git a/packages/SettingsLib/res/values-mr/strings.xml b/packages/SettingsLib/res/values-mr/strings.xml
index 79daf336b94b..f1b104643488 100644
--- a/packages/SettingsLib/res/values-mr/strings.xml
+++ b/packages/SettingsLib/res/values-mr/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ऑडिओ: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ऑडिओ"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"श्रवणयंत्रे"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE ऑडिओ"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"श्रवण यंत्रांशी कनेक्ट केले आहे"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE ऑडिओशी कनेक्ट केले आहे"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"मीडिया ऑडिओवर कनेक्ट केले"</string>
diff --git a/packages/SettingsLib/res/values-ms/strings.xml b/packages/SettingsLib/res/values-ms/strings.xml
index 203de8c7c180..0237e8704fef 100644
--- a/packages/SettingsLib/res/values-ms/strings.xml
+++ b/packages/SettingsLib/res/values-ms/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Alat Bantu Dengar"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Disambungkan pada Alat Bantu Dengar"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Disambungkan kepada LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Disambungkan ke audio media"</string>
@@ -592,7 +593,7 @@
<string name="user_need_lock_message" msgid="4311424336209509301">"Sebelum anda boleh membuat profil yang terhad, anda perlu menyediakan kunci skrin untuk melindungi apl dan data peribadi anda."</string>
<string name="user_set_lock_button" msgid="1427128184982594856">"Tetapkan kunci"</string>
<string name="user_switch_to_user" msgid="6975428297154968543">"Tukar kepada <xliff:g id="USER_NAME">%s</xliff:g>"</string>
- <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"Mencipta pengguna baharu…"</string>
+ <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"Membuat pengguna baharu…"</string>
<string name="creating_new_guest_dialog_message" msgid="1114905602181350690">"Membuat tetamu baharu…"</string>
<string name="add_user_failed" msgid="4809887794313944872">"Gagal membuat pengguna baharu"</string>
<string name="add_guest_failed" msgid="8074548434469843443">"Gagal membuat tetamu baharu"</string>
diff --git a/packages/SettingsLib/res/values-my/strings.xml b/packages/SettingsLib/res/values-my/strings.xml
index 17166c7199f2..50badf5cd911 100644
--- a/packages/SettingsLib/res/values-my/strings.xml
+++ b/packages/SettingsLib/res/values-my/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD အသံ- <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD အသံ"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"နားကြားကိရိယာ"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE အသံ"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"နားကြားကိရိယာနှင့် ချိတ်ဆက်ပြီးပါပြီ"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE အသံနှင့် ချိတ်ဆက်ထားသည်"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"မီဒီယာအသံအား ချိတ်ဆက်ရန်"</string>
diff --git a/packages/SettingsLib/res/values-nb/strings.xml b/packages/SettingsLib/res/values-nb/strings.xml
index 3051c8e46a5e..a3c1fa462262 100644
--- a/packages/SettingsLib/res/values-nb/strings.xml
+++ b/packages/SettingsLib/res/values-nb/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-lyd: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-lyd"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Høreapparater"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE-lyd"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Koblet til høreapparater"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Koblet til LE-lyd"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Koblet til medielyd"</string>
diff --git a/packages/SettingsLib/res/values-ne/strings.xml b/packages/SettingsLib/res/values-ne/strings.xml
index 687ff7910e63..a60d602bf85d 100644
--- a/packages/SettingsLib/res/values-ne/strings.xml
+++ b/packages/SettingsLib/res/values-ne/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD अडियो: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD अडियो"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"श्रवण यन्त्रहरू"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE अडियो"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"श्रवण यन्त्रहरूमा जडान गरियो"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE अडियोमा कनेक्ट गरिएको छ"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"मिडिया अडियोसँग जडित"</string>
@@ -592,7 +593,7 @@
<string name="user_need_lock_message" msgid="4311424336209509301">"निषेधयुक्त प्रोफाइल बनाउनु अघि तपाईँको एप र व्यक्तिगत डेटा सुरक्षा गर्नाका लागि तपाईँले स्क्रिन लक सेटअप गर्नु पर्दछ ।"</string>
<string name="user_set_lock_button" msgid="1427128184982594856">"लक सेट गर्नुहोस्"</string>
<string name="user_switch_to_user" msgid="6975428297154968543">"प्रयोगकर्ता बदलेर <xliff:g id="USER_NAME">%s</xliff:g> पार्नुहोस्"</string>
- <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"नयाँ प्रयोगकर्ता बनाउँदै…"</string>
+ <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"नयाँ प्रयोगकर्ता बनाइँदै छ…"</string>
<string name="creating_new_guest_dialog_message" msgid="1114905602181350690">"नयाँ अतिथि बनाइँदै छ…"</string>
<string name="add_user_failed" msgid="4809887794313944872">"नयाँ प्रयोगकर्ता सिर्जना गर्न सकिएन"</string>
<string name="add_guest_failed" msgid="8074548434469843443">"नयाँ अतिथि बनाउन सकिएन"</string>
diff --git a/packages/SettingsLib/res/values-nl/strings.xml b/packages/SettingsLib/res/values-nl/strings.xml
index 9133cb2eb66b..4a8dfb011e2e 100644
--- a/packages/SettingsLib/res/values-nl/strings.xml
+++ b/packages/SettingsLib/res/values-nl/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Hoortoestellen"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Le Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Verbonden met hoortoestellen"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Verbonden met LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Verbonden met audio van medium"</string>
diff --git a/packages/SettingsLib/res/values-or/strings.xml b/packages/SettingsLib/res/values-or/strings.xml
index 79cd5b846ae8..3c4c67feb4e9 100644
--- a/packages/SettingsLib/res/values-or/strings.xml
+++ b/packages/SettingsLib/res/values-or/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ଅଡିଓ: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ଅଡିଓ"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"ଶ୍ରବଣ ଯନ୍ତ୍ର"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE ଅଡିଓ"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"ଶ୍ରବଣ ଯନ୍ତ୍ରକୁ ସଂଯୋଗ ହୋଇଛି"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE ଅଡିଓ ସହ କନେକ୍ଟ କରାଯାଇଛି"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"ମିଡିଆ ଅଡିଓ ସହ ସଂଯୁକ୍ତ"</string>
@@ -287,7 +288,7 @@
<string name="bluetooth_select_a2dp_codec_type_help_info" msgid="8647200416514412338">"ଗ୍ରେ-ଆଉଟ୍ ଅର୍ଥ ଫୋନ୍ କିମ୍ବା ହେଡ୍‌ସେଟ୍‌ରେ ସମର୍ଥନ କରୁନାହିଁ"</string>
<string name="bluetooth_select_a2dp_codec_bits_per_sample" msgid="6253965294594390806">"ନମୁନା ପିଛା ବ୍ଲୁଟୂଥ୍‍‌ ଅଡିଓ ବିଟ୍ସ"</string>
<string name="bluetooth_select_a2dp_codec_bits_per_sample_dialog_title" msgid="4898693684282596143">"ବ୍ଲୁଟୂଥ୍‍ ଅଡିଓ କୋଡେକ୍\nସିଲେକ୍ସନ୍‌କୁ ଗତିଶୀଳ କରନ୍ତୁ: ନମୁନା ପିଛା ବିଟ୍ସ"</string>
- <string name="bluetooth_select_a2dp_codec_channel_mode" msgid="364277285688014427">"ବ୍ଲୁଟୂଥ୍‍‌ ଅଡିଓ ଚ୍ୟାନେଲ୍‌ ମୋଡ୍"</string>
+ <string name="bluetooth_select_a2dp_codec_channel_mode" msgid="364277285688014427">"ବ୍ଲୁଟୁଥ ଅଡିଓ ଚେନେଲ ମୋଡ"</string>
<string name="bluetooth_select_a2dp_codec_channel_mode_dialog_title" msgid="2076949781460359589">"ବ୍ଲୁଟୂଥ୍‍ ଅଡିଓ କୋଡେକ୍\nସିଲେକ୍ସନ୍‌କୁ ଗତିଶୀଳ କରନ୍ତୁ: ଚ୍ୟାନେଲ୍ ମୋଡ୍"</string>
<string name="bluetooth_select_a2dp_codec_ldac_playback_quality" msgid="3233402355917446304">"ବ୍ଲୁଟୂଥ୍‍‌ ଅଡିଓ LDAC କୋଡେକ୍‌: ପ୍ଲେବ୍ୟାକ୍‌ ଗୁଣବତ୍ତା"</string>
<string name="bluetooth_select_a2dp_codec_ldac_playback_quality_dialog_title" msgid="7274396574659784285">"ବ୍ଲୁ-ଟୁଥ୍‌ ଅଡିଓ LDAC\nକୋଡେକ୍‌ ଚୟନକୁ ଗତିଶୀଳ କରନ୍ତୁ: ପ୍ଲେବ୍ୟାକ୍‌ କ୍ୱାଲିଟୀ"</string>
@@ -389,7 +390,7 @@
<string name="debug_applications_category" msgid="5394089406638954196">"ଆପ୍ସ"</string>
<string name="immediately_destroy_activities" msgid="1826287490705167403">"କାର୍ଯ୍ୟକଳାପଗୁଡ଼ିକୁ ରଖନ୍ତୁ ନାହିଁ"</string>
<string name="immediately_destroy_activities_summary" msgid="6289590341144557614">"ୟୁଜର୍ ଏହାକୁ ଛାଡ଼ିବା କ୍ଷଣି ସମସ୍ତ କାର୍ଯ୍ୟକଳାପ ନଷ୍ଟ କରିଦିଅନ୍ତୁ"</string>
- <string name="app_process_limit_title" msgid="8361367869453043007">"ବ୍ୟାକ୍‌ଗ୍ରାଉଣ୍ଡ ପ୍ରୋସେସ୍ ସୀମା"</string>
+ <string name="app_process_limit_title" msgid="8361367869453043007">"ବେକଗ୍ରାଉଣ୍ଡ ପ୍ରୋସେସ ସୀମା"</string>
<string name="show_all_anrs" msgid="9160563836616468726">"ବ୍ୟାକଗ୍ରାଉଣ୍ଡରେ ଥିବା ANRଗୁଡ଼ିକୁ ଦେଖାନ୍ତୁ"</string>
<string name="show_all_anrs_summary" msgid="8562788834431971392">"ବ୍ୟାକ୍‌ଗ୍ରାଉଣ୍ଡ ଆପ୍‌ଗୁଡ଼ିକ ପାଇଁ \"ଆପ୍‌ ଉତ୍ତର ଦେଉନାହିଁ\" ଡାୟଲଗ୍‌ ଦେଖାନ୍ତୁ"</string>
<string name="show_notification_channel_warnings" msgid="3448282400127597331">"ବିଜ୍ଞପ୍ତି ଚ୍ୟାନେଲ୍ ଚେତାବନୀ ଦେଖାନ୍ତୁ"</string>
@@ -397,11 +398,11 @@
<string name="force_allow_on_external" msgid="9187902444231637880">"ଆପ୍‌କୁ ଏକ୍ସଟର୍ନଲ୍ ମେମୋରୀରେ ଫୋର୍ସ୍ ଅନୁମତି ଦିଅନ୍ତୁ"</string>
<string name="force_allow_on_external_summary" msgid="8525425782530728238">"ଯେକୌଣସି ଆପ୍‌କୁ ଏକ୍ସଟର୍ନଲ୍ ଷ୍ଟୋରେଜ୍‌ରେ ଲେଖାଯୋଗ୍ୟ କରନ୍ତୁ, ମେନିଫେଷ୍ଟ ମୂଲ୍ୟ ଯାହା ହୋଇଥାଉ ନା କାହିଁକି"</string>
<string name="force_resizable_activities" msgid="7143612144399959606">"ୱିଣ୍ଡୋ ହିସାବରେ କାର୍ଯ୍ୟକଳାପର ଆକାର ବଦଳାନ୍ତୁ"</string>
- <string name="force_resizable_activities_summary" msgid="2490382056981583062">"ୱିଣ୍ଡୋ ହିସାବରେ କାର୍ଯ୍ୟକଳାପଗୁଡ଼ିକୁ ବଦଳାନ୍ତୁ, ସେଗୁଡ଼ିକର ମାନିଫେଷ୍ଟ ଭାଲ୍ୟୁ ଯାହା ହୋଇଥାଉ ନା କାହିଁକି"</string>
- <string name="enable_freeform_support" msgid="7599125687603914253">"ଫ୍ରୀଫର୍ମ ୱିଣ୍ଡୋ ସକ୍ଷମ କରନ୍ତୁ"</string>
- <string name="enable_freeform_support_summary" msgid="1822862728719276331">"ପରୀକ୍ଷାମୂଳକ ଫ୍ରୀଫର୍ମ ୱିଣ୍ଡୋସ୍‌ ପାଇଁ ସପୋର୍ଟ ସକ୍ଷମ କରନ୍ତୁ।"</string>
+ <string name="force_resizable_activities_summary" msgid="2490382056981583062">"ମାନିଫେଷ୍ଟ ମୂଲ୍ୟ ଯାହା ହୋଇଥାଉ ନା କାହିଁକି, ଏକାଧିକ-ୱିଣ୍ଡୋ ପାଇଁ ସମସ୍ତ କାର୍ଯ୍ୟକଳାପକୁ ରିସାଇଜ କରନ୍ତୁ।"</string>
+ <string name="enable_freeform_support" msgid="7599125687603914253">"ଫ୍ରିଫର୍ମ ୱିଣ୍ଡୋକୁ ସକ୍ଷମ କରନ୍ତୁ"</string>
+ <string name="enable_freeform_support_summary" msgid="1822862728719276331">"ପରୀକ୍ଷାମୂଳକ ଫ୍ରିଫର୍ମ ୱିଣ୍ଡୋଗୁଡ଼ିକ ପାଇଁ ସପୋର୍ଟକୁ ସକ୍ଷମ କରନ୍ତୁ।"</string>
<string name="desktop_mode" msgid="2389067840550544462">"ଡେସ୍କଟପ ମୋଡ"</string>
- <string name="local_backup_password_title" msgid="4631017948933578709">"ଡେସ୍କଟପ୍‌ ବ୍ୟାକଅପ୍‌ ପାସ୍‌ୱର୍ଡ"</string>
+ <string name="local_backup_password_title" msgid="4631017948933578709">"ଡେସ୍କଟପ ବେକଅପ ପାସୱାର୍ଡ"</string>
<string name="local_backup_password_summary_none" msgid="7646898032616361714">"ଡେସ୍କଟପ୍‌ର ସମ୍ପୂର୍ଣ୍ଣ ବ୍ୟାକଅପ୍‌ଗୁଡ଼ିକ ବର୍ତ୍ତମାନ ସୁରକ୍ଷିତ ନୁହେଁ"</string>
<string name="local_backup_password_summary_change" msgid="1707357670383995567">"ଡେସ୍କଟପ୍‌ର ସମ୍ପୂର୍ଣ୍ଣ ବ୍ୟାକ୍‌ଅପ୍‌ ପାଇଁ ପାସ୍‌ୱର୍ଡ ବଦଳାଇବା କିମ୍ୱା କାଢ଼ିଦେବା ନିମନ୍ତେ ଟାପ୍‌ କରନ୍ତୁ"</string>
<string name="local_backup_password_toast_success" msgid="4891666204428091604">"ନୂଆ ବ୍ୟାକ୍‌ଅପ୍‌ ପାସ୍‌ୱର୍ଡ ସେଟ୍‌ କରିଦିଆଗଲା"</string>
@@ -574,7 +575,7 @@
<string name="user_add_user_item_title" msgid="2394272381086965029">"ଉପଯୋଗକର୍ତ୍ତା"</string>
<string name="user_add_profile_item_title" msgid="3111051717414643029">"ସୀମିତ ସୁବିଧା ଥିବା ପ୍ରୋଫାଇଲ୍‌"</string>
<string name="user_add_user_title" msgid="5457079143694924885">"ନୂଆ ୟୁଜରଙ୍କୁ ଯୋଗ କରିବେ?"</string>
- <string name="user_add_user_message_long" msgid="1527434966294733380">"ଅତିରିକ୍ତ ଉପଯୋଗକର୍ତ୍ତା ଯୋଗ କରି ଆପଣ ଏହି ଡିଭାଇସକୁ ଅନ୍ୟ ଲୋକମାନଙ୍କ ସହିତ ସେୟାର କରିପାରିବେ। ପ୍ରତ୍ୟେକ ଉପଯୋଗକର୍ତ୍ତାଙ୍କ ନିଜର ସ୍ପେସ୍ ଅଛି ଯାହାକୁ ସେମାନେ ଆପ, ୱାଲପେପର୍ ଓ ଏପରି ଅନେକ କିଛି ସହିତ କଷ୍ଟମାଇଜ କରିପାରିବେ। ଉପଯୋଗକର୍ତ୍ତା ୱାଇ-ଫାଇ ଭଳି ଡିଭାଇସ ସେଟିଂସକୁ ମଧ୍ୟ ଆଡଜଷ୍ଟ କରିପାରିବେ ଯାହା ସମସ୍ତଙ୍କୁ ପ୍ରଭାବିତ କରିଥାଏ। \n\nଯେତେବେଳେ ଆପଣ ଗୋଟିଏ ନୂଆ ଉପଯୋଗକର୍ତ୍ତାଙ୍କୁ ଯୋଗ କରିବେ, ସେତେବେଳେ ସେହି ବ୍ୟକ୍ତିଙ୍କୁ ନିଜର ସ୍ପେସ୍‌କୁ ସେଟ‌ଅପ କରିବାକୁ ପଡ଼ିବ। \n\nଅନ୍ୟ ଉପଯୋଗକର୍ତ୍ତାଙ୍କ ପାଇଁ ଯେ କୌଣସି ଉପଯୋଗକର୍ତ୍ତା ଆପକୁ ଅପଡେଟ କରିପାରିବେ। ଆକ୍ସେସିବିଲିଟୀ ସେଟିଂସ ଏବଂ ସେବାଗୁଡ଼ିକ ନୂଆ ଉପଯୋଗକର୍ତ୍ତାଙ୍କୁ ସ୍ଥାନାନ୍ତର ହୋ‌ଇନପାରେ।"</string>
+ <string name="user_add_user_message_long" msgid="1527434966294733380">"ଅତିରିକ୍ତ ୟୁଜରଙ୍କୁ ଯୋଗ କରି ଆପଣ ଏହି ଡିଭାଇସକୁ ଅନ୍ୟ ଲୋକମାନଙ୍କ ସହିତ ସେୟାର କରିପାରିବେ। ପ୍ରତ୍ୟେକ ୟୁଜରଙ୍କ ନିଜର ସ୍ପେସ ଅଛି ଯାହାକୁ ସେମାନେ ଆପ, ୱାଲପେପର ଓ ଏପରି ଅନେକ କିଛି ସହିତ କଷ୍ଟମାଇଜ କରିପାରିବେ। ୟୁଜର ୱାଇ-ଫାଇ ଭଳି ଡିଭାଇସ ସେଟିଂସକୁ ମଧ୍ୟ ଆଡଜଷ୍ଟ କରିପାରିବେ ଯାହା ସମସ୍ତଙ୍କୁ ପ୍ରଭାବିତ କରିଥାଏ। \n\nଯେତେବେଳେ ଆପଣ ଜଣେ ନୂଆ ୟୁଜରଙ୍କୁ ଯୋଗ କରିବେ, ସେତେବେଳେ ସେହି ବ୍ୟକ୍ତିଙ୍କୁ ନିଜର ସ୍ପେସକୁ ସେଟ‌ଅପ କରିବାକୁ ପଡ଼ିବ। \n\nଅନ୍ୟ ୟୁଜରଙ୍କ ପାଇଁ ଯେ କୌଣସି ୟୁଜର ଆପକୁ ଅପଡେଟ କରିପାରିବେ। ଆକ୍ସେସିବିଲିଟୀ ସେଟିଂସ ଏବଂ ସେବାଗୁଡ଼ିକ ନୂଆ ୟୁଜରଙ୍କୁ ସ୍ଥାନାନ୍ତର ହୋ‌ଇନପାରେ।"</string>
<string name="user_add_user_message_short" msgid="3295959985795716166">"ଆପଣ ଜଣେ ନୂଆ ୟୁଜରଙ୍କୁ ଯୋଗ କରିବା ବେଳେ, ସେହି ବ୍ୟକ୍ତିଙ୍କୁ ତାଙ୍କ ସ୍ପେସ ସେଟ ଅପ କରିବାକୁ ପଡ଼ିବ।\n\nଅନ୍ୟ ସମସ୍ତ ୟୁଜରଙ୍କ ପାଇଁ ଆପ୍ସକୁ ଯେ କୌଣସି ୟୁଜର ଅପଡେଟ କରିପାରିବେ।"</string>
<string name="user_grant_admin_title" msgid="5157031020083343984">"ଏହି ୟୁଜରଙ୍କୁ ଜଣେ ଆଡମିନ କରିବେ?"</string>
<string name="user_grant_admin_message" msgid="1673791931033486709">"ଆଡମିନମାନଙ୍କର ବିଶେଷ ଅଧିକାରଗୁଡ଼ିକ ଥାଏ ଯାହା ଅନ୍ୟ ୟୁଜରମାନଙ୍କର ନଥାଏ। ଜଣେ ଆଡମିନ ସମସ୍ତ ୟୁଜରଙ୍କୁ ପରିଚାଳନା କରିପାରିବେ, ଏହି ଡିଭାଇସକୁ ଅପଡେଟ କିମ୍ବା ରିସେଟ କରିପାରିବେ, ସେଟିଂସ ପରିବର୍ତ୍ତନ କରିପାରିବେ, ଇନଷ୍ଟଲ କରାଯାଇଥିବା ସମସ୍ତ ଆପ୍ସ ଦେଖିପାରିବେ ଏବଂ ଅନ୍ୟମାନଙ୍କ ପାଇଁ ଆଡମିନ ବିଶେଷ ଅଧିକାରଗୁଡ଼ିକୁ ଅନୁମତି ଦେଇପାରିବେ କିମ୍ବା ପ୍ରତ୍ୟାହାର କରିପାରିବେ।"</string>
@@ -592,7 +593,7 @@
<string name="user_need_lock_message" msgid="4311424336209509301">"ପ୍ରତିବନ୍ଧିତ ପ୍ରୋଫାଇଲ୍‌ ତିଆରି କରିବାବେଳେ, ନିଜ ଆପ୍‌ ଓ ବ୍ୟକ୍ତିଗତ ତଥ୍ୟର ସୁରକ୍ଷା ପାଇଁ ଏକ ସ୍କ୍ରୀନ୍‌ ଲକ୍‌ ସେଟ୍‌ କରନ୍ତୁ।"</string>
<string name="user_set_lock_button" msgid="1427128184982594856">"ଲକ୍‌ ସେଟ୍‌ କରନ୍ତୁ"</string>
<string name="user_switch_to_user" msgid="6975428297154968543">"<xliff:g id="USER_NAME">%s</xliff:g>କୁ ସ୍ୱିଚ୍ କରନ୍ତୁ"</string>
- <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"ନୂଆ ଉପଯୋଗକର୍ତ୍ତା ତିଆରି କରାଯାଉଛି…"</string>
+ <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"ନୂଆ ୟୁଜର ତିଆରି କରାଯାଉଛି…"</string>
<string name="creating_new_guest_dialog_message" msgid="1114905602181350690">"ନୂଆ ଅତିଥି ତିଆରି କରାଯାଉଛି…"</string>
<string name="add_user_failed" msgid="4809887794313944872">"ନୂଆ ଉପଯୋଗକର୍ତ୍ତା ତିଆରି କରିବାକୁ ବିଫଳ ହେଲା"</string>
<string name="add_guest_failed" msgid="8074548434469843443">"ଜଣେ ନୂଆ ଅତିଥି ତିଆରି କରିବାରେ ବିଫଳ ହୋଇଛି"</string>
@@ -676,8 +677,8 @@
<string name="bt_le_audio_broadcast_dialog_sub_title" msgid="268234802198852753">"ଯଦି ଆପଣ <xliff:g id="SWITCHAPP">%1$s</xliff:g> ବ୍ରଡକାଷ୍ଟ କରନ୍ତି କିମ୍ବା ଆଉଟପୁଟ ବଦଳାନ୍ତି, ତେବେ ଆପଣଙ୍କ ବର୍ତ୍ତମାନର ବ୍ରଡକାଷ୍ଟ ବନ୍ଦ ହୋଇଯିବ"</string>
<string name="bt_le_audio_broadcast_dialog_switch_app" msgid="5749813313369517812">"<xliff:g id="SWITCHAPP">%1$s</xliff:g> ବ୍ରଡକାଷ୍ଟ କରନ୍ତୁ"</string>
<string name="bt_le_audio_broadcast_dialog_different_output" msgid="2638402023060391333">"ଆଉଟପୁଟ ବଦଳାନ୍ତୁ"</string>
- <string name="back_navigation_animation" msgid="8105467568421689484">"ପ୍ରେଡିକ୍ଟିଭ ବ୍ୟାକ ଆନିମେସନ"</string>
- <string name="back_navigation_animation_summary" msgid="741292224121599456">"ପ୍ରେଡିକ୍ଟିଭ ବ୍ୟାକ ପାଇଁ ସିଷ୍ଟମ ଆନିମେସନଗୁଡ଼ିକୁ ସକ୍ଷମ କରନ୍ତୁ।"</string>
+ <string name="back_navigation_animation" msgid="8105467568421689484">"ପ୍ରେଡିକ୍ଟିଭ ବେକ ଆନିମେସନ"</string>
+ <string name="back_navigation_animation_summary" msgid="741292224121599456">"ପ୍ରେଡିକ୍ଟିଭ ବେକ ପାଇଁ ସିଷ୍ଟମ ଆନିମେସନଗୁଡ଼ିକୁ ସକ୍ଷମ କରନ୍ତୁ।"</string>
<string name="back_navigation_animation_dialog" msgid="8696966520944625596">"ଏହି ସେଟିଂ ପ୍ରେଡିକ୍ଟିଭ ଜେଶ୍ଚର ଆନିମେସନ ପାଇଁ ସିଷ୍ଟମ ଆନିମେସନଗୁଡ଼ିକୁ ସକ୍ଷମ କରେ। ଏଥିପାଇଁ ମାନିଫେଷ୍ଟ ଫାଇଲରେ ପ୍ରତି-ଆପ enableOnBackInvokedCallbackକୁ \"ଠିକ\"ରେ ସେଟ କରିବା ଆବଶ୍ୟକ।"</string>
<string-array name="udfps_accessibility_touch_hints">
<item msgid="1737722959616802157">"ବାମକୁ ମୁଭ କରନ୍ତୁ"</item>
diff --git a/packages/SettingsLib/res/values-pa/strings.xml b/packages/SettingsLib/res/values-pa/strings.xml
index d1906aa4cbe8..ce2617a52754 100644
--- a/packages/SettingsLib/res/values-pa/strings.xml
+++ b/packages/SettingsLib/res/values-pa/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ਆਡੀਓ: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ਆਡੀਓ"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"ਸੁਣਨ ਦੇ ਸਾਧਨ"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE ਆਡੀਓ"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"ਸੁਣਨ ਦੇ ਸਾਧਨਾਂ ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ ਗਿਆ"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE ਆਡੀਓ ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ ਗਿਆ"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"ਮੀਡੀਆ ਆਡੀਓ ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ"</string>
diff --git a/packages/SettingsLib/res/values-pl/strings.xml b/packages/SettingsLib/res/values-pl/strings.xml
index 47077646b41d..bcf7f247b5f9 100644
--- a/packages/SettingsLib/res/values-pl/strings.xml
+++ b/packages/SettingsLib/res/values-pl/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Dźwięk HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Dźwięk HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Aparaty słuchowe"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Połączono z aparatami słuchowymi"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Połączono z LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Połączono z funkcją audio multimediów"</string>
diff --git a/packages/SettingsLib/res/values-pt-rBR/strings.xml b/packages/SettingsLib/res/values-pt-rBR/strings.xml
index af751db2dd78..f9375547112d 100644
--- a/packages/SettingsLib/res/values-pt-rBR/strings.xml
+++ b/packages/SettingsLib/res/values-pt-rBR/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Áudio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Áudio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Aparelhos auditivos"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Áudio de baixa energia"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Conectado a aparelhos auditivos"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Conectado ao perfil Áudio de baixa energia"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Conectado ao áudio da mídia"</string>
diff --git a/packages/SettingsLib/res/values-pt-rPT/strings.xml b/packages/SettingsLib/res/values-pt-rPT/strings.xml
index 76c9b4765d83..441fe552f5cc 100644
--- a/packages/SettingsLib/res/values-pt-rPT/strings.xml
+++ b/packages/SettingsLib/res/values-pt-rPT/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Áudio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Áudio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Aparelhos auditivos"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Ligado a aparelhos auditivos"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Ligado a LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Ligado ao áudio de multimédia"</string>
diff --git a/packages/SettingsLib/res/values-pt/strings.xml b/packages/SettingsLib/res/values-pt/strings.xml
index af751db2dd78..f9375547112d 100644
--- a/packages/SettingsLib/res/values-pt/strings.xml
+++ b/packages/SettingsLib/res/values-pt/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Áudio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Áudio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Aparelhos auditivos"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Áudio de baixa energia"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Conectado a aparelhos auditivos"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Conectado ao perfil Áudio de baixa energia"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Conectado ao áudio da mídia"</string>
diff --git a/packages/SettingsLib/res/values-ro/strings.xml b/packages/SettingsLib/res/values-ro/strings.xml
index bdfe888bc287..1803a8777a0c 100644
--- a/packages/SettingsLib/res/values-ro/strings.xml
+++ b/packages/SettingsLib/res/values-ro/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Aparate auditive"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Conectat la aparatul auditiv"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Conectat la LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Conectat la profilul pentru conținut media audio"</string>
diff --git a/packages/SettingsLib/res/values-ru/strings.xml b/packages/SettingsLib/res/values-ru/strings.xml
index 1dc2f23cced6..3b6956c78607 100644
--- a/packages/SettingsLib/res/values-ru/strings.xml
+++ b/packages/SettingsLib/res/values-ru/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD Audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD Audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Слуховые аппараты"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Слуховой аппарат подключен"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Подключено к LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Подключено к мультимедийному аудиоустройству"</string>
diff --git a/packages/SettingsLib/res/values-si/strings.xml b/packages/SettingsLib/res/values-si/strings.xml
index 609d47a98dc1..5c00c7493757 100644
--- a/packages/SettingsLib/res/values-si/strings.xml
+++ b/packages/SettingsLib/res/values-si/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ශ්‍රව්‍යය: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ශ්‍රව්‍යය"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"ශ්‍රවණාධාරක"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE ශ්‍රව්‍ය"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"ශ්‍රවණාධාරක වෙත සම්බන්ධ කළා"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE ශ්‍රව්‍ය වෙත සම්බන්ධ විය"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"මාධ්‍ය ශ්‍රව්‍යට සම්බන්ධ විය"</string>
diff --git a/packages/SettingsLib/res/values-sk/strings.xml b/packages/SettingsLib/res/values-sk/strings.xml
index 90053567b0af..6702d17093b3 100644
--- a/packages/SettingsLib/res/values-sk/strings.xml
+++ b/packages/SettingsLib/res/values-sk/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD zvuk: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD zvuk"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Načúvadlá"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Pripojené k načúvadlám"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Pripojené k systému LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Pripojené ku zvukovému médiu"</string>
diff --git a/packages/SettingsLib/res/values-sl/strings.xml b/packages/SettingsLib/res/values-sl/strings.xml
index 689962a83b43..a504fe9c2814 100644
--- a/packages/SettingsLib/res/values-sl/strings.xml
+++ b/packages/SettingsLib/res/values-sl/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Zvok visoke kakovosti: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Zvok visoke kakovosti"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Slušni pripomočki"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Povezava s slušnimi pripomočki je vzpostavljena"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Povezano s profilom LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Povezan s profilom za predstavnostni zvok"</string>
diff --git a/packages/SettingsLib/res/values-sq/strings.xml b/packages/SettingsLib/res/values-sq/strings.xml
index d32539c70eda..70f463c9ea81 100644
--- a/packages/SettingsLib/res/values-sq/strings.xml
+++ b/packages/SettingsLib/res/values-sq/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Audio HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Audio HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Aparatet e dëgjimit"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Audioja LE"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Lidhur me aparatet e dëgjimit"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"U lidh me audion LE"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"U lidh me audion e medias"</string>
diff --git a/packages/SettingsLib/res/values-sr/strings.xml b/packages/SettingsLib/res/values-sr/strings.xml
index 986a79fcd5e1..38d7bcaedc81 100644
--- a/packages/SettingsLib/res/values-sr/strings.xml
+++ b/packages/SettingsLib/res/values-sr/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD звук: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD звук"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Слушни апарати"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Повезано са слушним апаратима"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Повезано са LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Повезано са звуком медија"</string>
diff --git a/packages/SettingsLib/res/values-sv/strings.xml b/packages/SettingsLib/res/values-sv/strings.xml
index c8ae7e213d35..66d219388f63 100644
--- a/packages/SettingsLib/res/values-sv/strings.xml
+++ b/packages/SettingsLib/res/values-sv/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-ljud: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-ljud"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Hörapparater"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Ansluten till hörapparater"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Ansluten till LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Ansluten till medialjud"</string>
diff --git a/packages/SettingsLib/res/values-sw/strings.xml b/packages/SettingsLib/res/values-sw/strings.xml
index ebbe3a2a072d..c95dd618be03 100644
--- a/packages/SettingsLib/res/values-sw/strings.xml
+++ b/packages/SettingsLib/res/values-sw/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Sauti ya HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Sauti ya HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Vifaa vya Kusaidia Kusikia"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Imeunganishwa kwenye Vifaa vya Kusaidia Kusikia"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Imeunganishwa kwenye LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Imeunganishwa kwenye sikika ya njia ya mawasiliano"</string>
diff --git a/packages/SettingsLib/res/values-ta/strings.xml b/packages/SettingsLib/res/values-ta/strings.xml
index f0e69b3ed7e6..9a1a21a82661 100644
--- a/packages/SettingsLib/res/values-ta/strings.xml
+++ b/packages/SettingsLib/res/values-ta/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ஆடியோ: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ஆடியோ"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"செவித்துணை கருவிகள்"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE ஆடியோ"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"செவித்துணை கருவிகளுடன் இணைக்கப்பட்டது"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE ஆடியோவுடன் இணைக்கப்பட்டுள்ளது"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"மீடியா ஆடியோவுடன் இணைக்கப்பட்டது"</string>
@@ -336,7 +337,7 @@
<string name="hdcp_checking_title" msgid="3155692785074095986">"HDCP சரிபார்ப்பு"</string>
<string name="hdcp_checking_dialog_title" msgid="7691060297616217781">"HDCP சரிபார்க்கும் செயல்பாடுகளை அமை"</string>
<string name="debug_debugging_category" msgid="535341063709248842">"பிழைதிருத்தம்"</string>
- <string name="debug_app" msgid="8903350241392391766">"பிழைத்திருத்தப் பயன்பாட்டைத் தேர்ந்தெடுக்கவும்"</string>
+ <string name="debug_app" msgid="8903350241392391766">"பிழைத்திருத்த ஆப்ஸைத் தேர்ந்தெடுக்கவும்"</string>
<string name="debug_app_not_set" msgid="1934083001283807188">"பிழைத்திருத்த ஆப்ஸ் அமைக்கப்படவில்லை"</string>
<string name="debug_app_set" msgid="6599535090477753651">"பிழைதிருத்தும் ஆப்ஸ்: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="select_application" msgid="2543228890535466325">"பயன்பாட்டைத் தேர்ந்தெடுக்கவும்"</string>
@@ -347,7 +348,7 @@
<string name="debug_drawing_category" msgid="5066171112313666619">"வரைபொருள்"</string>
<string name="debug_hw_drawing_category" msgid="5830815169336975162">"வன்பொருள் முடுக்கத்துடன் கூடிய காட்சியாக்கம்"</string>
<string name="media_category" msgid="8122076702526144053">"மீடியா"</string>
- <string name="debug_monitoring_category" msgid="1597387133765424994">"கண்காணி"</string>
+ <string name="debug_monitoring_category" msgid="1597387133765424994">"கண்காணித்தல்"</string>
<string name="strict_mode" msgid="889864762140862437">"நிலையான பயன்முறை இயக்கப்பட்டது"</string>
<string name="strict_mode_summary" msgid="1838248687233554654">"முக்கியத் தொடரிழையில் நீண்ட நேரம் செயல்படும்போது திரையைக் காட்சிப்படுத்தும்"</string>
<string name="pointer_location" msgid="7516929526199520173">"குறிப்பான் இடம்"</string>
diff --git a/packages/SettingsLib/res/values-te/strings.xml b/packages/SettingsLib/res/values-te/strings.xml
index c63468f4ab69..cd0b98379228 100644
--- a/packages/SettingsLib/res/values-te/strings.xml
+++ b/packages/SettingsLib/res/values-te/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ఆడియో: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ఆడియో"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"వినికిడి మద్దతు ఉపకరణాలు"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Le ఆడియో"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"వినికిడి మద్దతు ఉపకరణాలకు కనెక్ట్ చేయబడింది"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE ఆడియోకు కనెక్ట్ చేయబడింది"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"మీడియా ఆడియోకు కనెక్ట్ చేయబడింది"</string>
@@ -621,7 +622,7 @@
<string name="guest_reset_button" msgid="2515069346223503479">"గెస్ట్ సెషన్‌ను రీసెట్ చేయండి"</string>
<string name="guest_exit_quick_settings_button" msgid="1912362095913765471">"గెస్ట్ మోడ్ నుండి వైదొలగండి"</string>
<string name="guest_notification_ephemeral" msgid="7263252466950923871">"వైదొలగినప్పుడు యాక్టివిటీ అంతా తొలగించబడుతుంది"</string>
- <string name="guest_notification_non_ephemeral" msgid="6843799963012259330">"మీ నిష్క్రమణలో, యాక్టివిటీని సేవ్ చేయవచ్చు లేదా తొలగించవచ్చు"</string>
+ <string name="guest_notification_non_ephemeral" msgid="6843799963012259330">"మీరు వైదొలగేటప్పుడు, యాక్టివిటీని సేవ్ చేయవచ్చు లేదా తొలగించవచ్చు"</string>
<string name="guest_notification_non_ephemeral_non_first_login" msgid="8009307983766934876">"సెషన్ యాక్టివిటీని తొలగించడానికి ఇప్పుడే రీసెట్ చేయండి లేదా మీరు నిష్క్రమించేటప్పుడు యాక్టివిటీని సేవ్ చేయవచ్చు లేదా తొలగించవచ్చు"</string>
<string name="user_image_take_photo" msgid="467512954561638530">"ఒక ఫోటో తీయండి"</string>
<string name="user_image_choose_photo" msgid="1363820919146782908">"ఇమేజ్‌ను ఎంచుకోండి"</string>
diff --git a/packages/SettingsLib/res/values-th/strings.xml b/packages/SettingsLib/res/values-th/strings.xml
index 7ac679034d63..1bbfb6d04d7b 100644
--- a/packages/SettingsLib/res/values-th/strings.xml
+++ b/packages/SettingsLib/res/values-th/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"เสียง HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"เสียง HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"เครื่องช่วยฟัง"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"เชื่อมต่อกับเครื่องช่วยฟังแล้ว"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"เชื่อมต่อกับ LE Audio แล้ว"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"เชื่อมต่อกับระบบเสียงของสื่อแล้ว"</string>
diff --git a/packages/SettingsLib/res/values-tl/strings.xml b/packages/SettingsLib/res/values-tl/strings.xml
index 4b20c8a77ad8..75da2c7e4fc0 100644
--- a/packages/SettingsLib/res/values-tl/strings.xml
+++ b/packages/SettingsLib/res/values-tl/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Mga Hearing Aid"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Nakakonekta sa Mga Hearing Aid"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Nakakonekta sa LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Konektado sa media audio"</string>
diff --git a/packages/SettingsLib/res/values-tr/strings.xml b/packages/SettingsLib/res/values-tr/strings.xml
index b751241e67e3..10414dadb01b 100644
--- a/packages/SettingsLib/res/values-tr/strings.xml
+++ b/packages/SettingsLib/res/values-tr/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD ses: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD ses"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"İşitme Cihazları"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"İşitme Cihazlarına Bağlandı"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE Audio\'ya bağlandı"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Medya sesine bağlanıldı"</string>
diff --git a/packages/SettingsLib/res/values-uk/strings.xml b/packages/SettingsLib/res/values-uk/strings.xml
index 5d994e382c4c..6404e3a81c36 100644
--- a/packages/SettingsLib/res/values-uk/strings.xml
+++ b/packages/SettingsLib/res/values-uk/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD-аудіо: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-аудіо"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Слухові апарати"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Підключено до слухових апаратів"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Підключено до LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Підключено до аудіоджерела"</string>
diff --git a/packages/SettingsLib/res/values-ur/strings.xml b/packages/SettingsLib/res/values-ur/strings.xml
index 83a65e667174..3e8700d68a5e 100644
--- a/packages/SettingsLib/res/values-ur/strings.xml
+++ b/packages/SettingsLib/res/values-ur/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"‏HD آڈیو: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"‏HD آڈیو"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"سماعتی آلات"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"‏LE آڈیو"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"سماعتی آلات سے منسلک ہے"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"‏LE آڈیو سے منسلک ہے"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"میڈیا آڈیو سے مربوط"</string>
diff --git a/packages/SettingsLib/res/values-uz/strings.xml b/packages/SettingsLib/res/values-uz/strings.xml
index e5bca65fd2d3..67a5ec8f58d6 100644
--- a/packages/SettingsLib/res/values-uz/strings.xml
+++ b/packages/SettingsLib/res/values-uz/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD audio: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD audio"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Eshitish apparatlari"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Eshitish apparatlariga ulangan"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE audioga ulandi"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Audio qurilmasiga ulangan"</string>
diff --git a/packages/SettingsLib/res/values-vi/strings.xml b/packages/SettingsLib/res/values-vi/strings.xml
index 2d8d9b485df1..4a0f3be5ef3b 100644
--- a/packages/SettingsLib/res/values-vi/strings.xml
+++ b/packages/SettingsLib/res/values-vi/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Âm thanh HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Âm thanh HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Thiết bị trợ thính"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Âm thanh LE"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Đã kết nối với Thiết bị trợ thính"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Đã kết nối với âm thanh LE"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Đã kết nối với âm thanh nội dung nghe nhìn"</string>
diff --git a/packages/SettingsLib/res/values-zh-rCN/strings.xml b/packages/SettingsLib/res/values-zh-rCN/strings.xml
index f6ebe7ccd0b9..d51ecb595a2e 100644
--- a/packages/SettingsLib/res/values-zh-rCN/strings.xml
+++ b/packages/SettingsLib/res/values-zh-rCN/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD 音频:<xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD 音频"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"助听器"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE 音频"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"已连接到助听器"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"已连接到 LE 音频"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"已连接到媒体音频"</string>
@@ -613,15 +614,15 @@
<string name="grant_admin" msgid="4323199171790522574">"是,将其设为管理员"</string>
<string name="not_grant_admin" msgid="3557849576157702485">"不,不要将其设为管理员"</string>
<string name="guest_exit_dialog_button" msgid="1736401897067442044">"退出"</string>
- <string name="guest_exit_dialog_title_non_ephemeral" msgid="7675327443743162986">"要保存访客活动记录吗?"</string>
- <string name="guest_exit_dialog_message_non_ephemeral" msgid="223385323235719442">"您可以保存当前会话中的活动记录,也可以删除所有应用和数据"</string>
+ <string name="guest_exit_dialog_title_non_ephemeral" msgid="7675327443743162986">"要保存访客活动吗?"</string>
+ <string name="guest_exit_dialog_message_non_ephemeral" msgid="223385323235719442">"您可以保存当前会话中的活动,也可以删除所有应用和数据"</string>
<string name="guest_exit_clear_data_button" msgid="3425812652180679014">"删除"</string>
<string name="guest_exit_save_data_button" msgid="3690974510644963547">"保存"</string>
<string name="guest_exit_button" msgid="5774985819191803960">"退出访客模式"</string>
<string name="guest_reset_button" msgid="2515069346223503479">"重置访客会话"</string>
<string name="guest_exit_quick_settings_button" msgid="1912362095913765471">"退出访客模式"</string>
<string name="guest_notification_ephemeral" msgid="7263252466950923871">"退出时所有活动都将被删除"</string>
- <string name="guest_notification_non_ephemeral" msgid="6843799963012259330">"您可以在退出时保存或删除您的活动记录"</string>
+ <string name="guest_notification_non_ephemeral" msgid="6843799963012259330">"您可以在退出时保存或删除您的活动"</string>
<string name="guest_notification_non_ephemeral_non_first_login" msgid="8009307983766934876">"请立即重置以删除会话活动记录;或者,您也可以在退出时保存或删除活动记录"</string>
<string name="user_image_take_photo" msgid="467512954561638530">"拍摄照片"</string>
<string name="user_image_choose_photo" msgid="1363820919146782908">"选择图片"</string>
diff --git a/packages/SettingsLib/res/values-zh-rHK/strings.xml b/packages/SettingsLib/res/values-zh-rHK/strings.xml
index 9d7050c9ff6d..177cebc59b2b 100644
--- a/packages/SettingsLib/res/values-zh-rHK/strings.xml
+++ b/packages/SettingsLib/res/values-zh-rHK/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"高清音訊:<xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"高清音訊"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"助聽器"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE Audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"已連接助聽器"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"已連接 LE Audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"已連接媒體音頻裝置"</string>
diff --git a/packages/SettingsLib/res/values-zh-rTW/strings.xml b/packages/SettingsLib/res/values-zh-rTW/strings.xml
index 168a8b79522d..843c1bfc269a 100644
--- a/packages/SettingsLib/res/values-zh-rTW/strings.xml
+++ b/packages/SettingsLib/res/values-zh-rTW/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"HD 高解析音訊:<xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD 高解析音訊"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"助聽器"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"LE audio"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"已連接到助聽器"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"已連上 LE audio"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"連接至媒體音訊"</string>
diff --git a/packages/SettingsLib/res/values-zu/strings.xml b/packages/SettingsLib/res/values-zu/strings.xml
index aa8426a4a63c..5ff1917b1520 100644
--- a/packages/SettingsLib/res/values-zu/strings.xml
+++ b/packages/SettingsLib/res/values-zu/strings.xml
@@ -115,7 +115,8 @@
<string name="bluetooth_profile_a2dp_high_quality" msgid="4739440941324792775">"Umsindo we-HD: <xliff:g id="CODEC_NAME">%1$s</xliff:g>"</string>
<string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"Umsindo we-HD"</string>
<string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Izinsiza zokuzwa"</string>
- <string name="bluetooth_profile_le_audio" msgid="3237854988278539061">"Umsindo we-LE"</string>
+ <!-- no translation found for bluetooth_profile_le_audio (6125267378720026515) -->
+ <skip />
<string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Kuxhumeke kwizinsiza zokuzwa"</string>
<string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"Kuxhunywe kumsindo we-LE"</string>
<string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Ixhume emsindweni wemidiya"</string>
diff --git a/packages/SettingsLib/res/values/strings.xml b/packages/SettingsLib/res/values/strings.xml
index 4e7579277aee..f581091f0f3e 100644
--- a/packages/SettingsLib/res/values/strings.xml
+++ b/packages/SettingsLib/res/values/strings.xml
@@ -244,7 +244,7 @@
<!-- Bluetooth settings. The user-visible string that is used whenever referring to the Hearing Aid profile. -->
<string name="bluetooth_profile_hearing_aid">Hearing Aids</string>
<!-- Bluetooth settings. The user-visible string that is used whenever referring to the LE audio profile. -->
- <string name="bluetooth_profile_le_audio">LE audio (experimental)</string>
+ <string name="bluetooth_profile_le_audio">LE Audio</string>
<!-- Bluetooth settings. Connection options screen. The summary for the Hearing Aid checkbox preference when Hearing Aid is connected. -->
<string name="bluetooth_hearing_aid_profile_summary_connected">Connected to Hearing Aids</string>
<!-- Bluetooth settings. Connection options screen. The summary for the LE audio checkbox preference when LE audio is connected. -->
@@ -516,6 +516,9 @@
<string name="category_personal">Personal</string>
<!-- Header for items under the work user [CHAR LIMIT=30] -->
<string name="category_work">Work</string>
+ <!-- Header for items under the clone user [CHAR LIMIT=30] -->
+ <string name="category_clone">Clone</string>
+
<!-- Full package name of OEM preferred device feedback reporter. Leave this blank, overlaid in Settings/TvSettings [DO NOT TRANSLATE] -->
<string name="oem_preferred_feedback_reporter" translatable="false" />
diff --git a/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java b/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java
index 73123c20ded2..9d3620eb29a9 100644
--- a/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java
+++ b/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java
@@ -112,6 +112,7 @@ public class SettingsBackupTest {
Settings.Global.ADB_ALLOWED_CONNECTION_TIME,
Settings.Global.ADB_ENABLED,
Settings.Global.ADB_WIFI_ENABLED,
+ Settings.Global.ADB_DISCONNECT_SESSIONS_ON_REVOKE,
Settings.Global.ADD_USERS_WHEN_LOCKED,
Settings.Global.AIRPLANE_MODE_ON,
Settings.Global.AIRPLANE_MODE_RADIOS,
diff --git a/packages/SoundPicker/res/values-or/strings.xml b/packages/SoundPicker/res/values-or/strings.xml
index f4bf3cd3a3b8..45ce594c9ce3 100644
--- a/packages/SoundPicker/res/values-or/strings.xml
+++ b/packages/SoundPicker/res/values-or/strings.xml
@@ -22,7 +22,7 @@
<string name="add_ringtone_text" msgid="6642389991738337529">"ରିଙ୍ଗଟୋନ୍‍ ଯୋଡ଼ନ୍ତୁ"</string>
<string name="add_alarm_text" msgid="3545497316166999225">"ଆଲାର୍ମ ଯୋଗ କରନ୍ତୁ"</string>
<string name="add_notification_text" msgid="4431129543300614788">"ବିଜ୍ଞପ୍ତି ଯୋଗ କରନ୍ତୁ"</string>
- <string name="delete_ringtone_text" msgid="201443984070732499">"ଡିଲିଟ୍‌ କରନ୍ତୁ"</string>
+ <string name="delete_ringtone_text" msgid="201443984070732499">"ଡିଲିଟ କରନ୍ତୁ"</string>
<string name="unable_to_add_ringtone" msgid="4583511263449467326">"କଷ୍ଟମ୍‍ ରିଙ୍ଗଟୋନ୍‍ ଯୋଡ଼ିପାରିବ ନାହିଁ"</string>
<string name="unable_to_delete_ringtone" msgid="6792301380142859496">"କଷ୍ଟମ୍‍ ରିଙ୍ଗଟୋନ୍‍ ଡିଲିଟ୍‍ କରିପାରିବ ନାହିଁ"</string>
<string name="app_label" msgid="3091611356093417332">"ସାଉଣ୍ଡ"</string>
diff --git a/packages/SystemUI/AndroidManifest.xml b/packages/SystemUI/AndroidManifest.xml
index e2f83453d12b..fe90caf2646c 100644
--- a/packages/SystemUI/AndroidManifest.xml
+++ b/packages/SystemUI/AndroidManifest.xml
@@ -716,8 +716,11 @@
android:exported="true" />
<!-- started from Telecomm(CallsManager) -->
+ <!-- Sets an empty label to avoid an announcement from TalkBack,
+ the dialog contents are sufficient and will still be read by TalkBack -->
<activity
android:name=".telephony.ui.activity.SwitchToManagedProfileForCallActivity"
+ android:label=" "
android:excludeFromRecents="true"
android:exported="true"
android:finishOnCloseSystemDialogs="true"
@@ -969,6 +972,22 @@
android:permission="android.permission.BIND_JOB_SERVICE"/>
<!-- region Note Task -->
+ <activity
+ android:name=".notetask.shortcut.CreateNoteTaskShortcutActivity"
+ android:enabled="false"
+ android:exported="true"
+ android:excludeFromRecents="true"
+ android:resizeableActivity="false"
+ android:theme="@android:style/Theme.NoDisplay"
+ android:label="@string/note_task_button_label"
+ android:icon="@drawable/ic_note_task_shortcut_widget">
+
+ <intent-filter>
+ <action android:name="android.intent.action.CREATE_SHORTCUT" />
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
+ </activity>
+
<service android:name=".notetask.NoteTaskControllerUpdateService" />
<activity
diff --git a/packages/SystemUI/log/src/com/android/systemui/log/LogMessage.kt b/packages/SystemUI/log/src/com/android/systemui/log/LogMessage.kt
index 88c34f82a089..8c3988b027fe 100644
--- a/packages/SystemUI/log/src/com/android/systemui/log/LogMessage.kt
+++ b/packages/SystemUI/log/src/com/android/systemui/log/LogMessage.kt
@@ -16,8 +16,8 @@
package com.android.systemui.log
+import android.icu.text.SimpleDateFormat
import java.io.PrintWriter
-import java.text.SimpleDateFormat
import java.util.Locale
/**
diff --git a/packages/SystemUI/res-keyguard/values-in/strings.xml b/packages/SystemUI/res-keyguard/values-in/strings.xml
index 7af5eacdb666..1ba327806258 100644
--- a/packages/SystemUI/res-keyguard/values-in/strings.xml
+++ b/packages/SystemUI/res-keyguard/values-in/strings.xml
@@ -83,7 +83,7 @@
<string name="kg_prompt_auth_timeout" msgid="6620679830980315048">"Perlu keamanan tambahan. Kunci perangkat tidak dibuka selama beberapa waktu."</string>
<string name="kg_face_locked_out" msgid="2751559491287575">"Tidak dapat membuka kunci dengan wajah. Terlalu banyak upaya gagal."</string>
<string name="kg_fp_locked_out" msgid="6228277682396768830">"Tidak dapat membuka kunci dengan sidik jari. Terlalu banyak upaya gagal."</string>
- <string name="kg_trust_agent_disabled" msgid="5400691179958727891">"Perangkat dipercaya tidak tersedia"</string>
+ <string name="kg_trust_agent_disabled" msgid="5400691179958727891">"Perangkat tepercaya tidak tersedia"</string>
<string name="kg_primary_auth_locked_out_pin" msgid="5492230176361601475">"Terlalu banyak upaya dengan PIN yang salah"</string>
<string name="kg_primary_auth_locked_out_pattern" msgid="8266214607346180952">"Terlalu banyak upaya dengan pola yang salah"</string>
<string name="kg_primary_auth_locked_out_password" msgid="6170245108400198659">"Terlalu banyak upaya dengan sandi yang salah"</string>
diff --git a/packages/SystemUI/res-keyguard/values-kn/strings.xml b/packages/SystemUI/res-keyguard/values-kn/strings.xml
index ae81b94abf71..bc8fd4064c85 100644
--- a/packages/SystemUI/res-keyguard/values-kn/strings.xml
+++ b/packages/SystemUI/res-keyguard/values-kn/strings.xml
@@ -61,7 +61,7 @@
<string name="kg_wrong_pin" msgid="4160978845968732624">"ಪಿನ್‌ ತಪ್ಪಾಗಿದೆ"</string>
<string name="kg_wrong_pin_try_again" msgid="3129729383303430190">"ಪಿನ್ ತಪ್ಪಾಗಿದೆ, ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ."</string>
<string name="kg_wrong_input_try_fp_suggestion" msgid="3143861542242024833">"ಅಥವಾ ಫಿಂಗರ್‌ಪ್ರಿಂಟ್‌ನೊಂದಿಗೆ ಅನ್‌ಲಾಕ್ ಮಾಡಿ"</string>
- <string name="kg_fp_not_recognized" msgid="5183108260932029241">"ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಅನ್ನು ಗುರುತಿಸಲಾಗಿಲ್ಲ"</string>
+ <string name="kg_fp_not_recognized" msgid="5183108260932029241">"ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಅನ್ನು ಗುರುತಿಸಲಾಗಿಲ್ಲ"</string>
<string name="bouncer_face_not_recognized" msgid="1666128054475597485">"ಮುಖವನ್ನು ಗುರುತಿಸಲಾಗಿಲ್ಲ"</string>
<string name="kg_bio_try_again_or_pin" msgid="4752168242723808390">"ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ ಅಥವಾ ಪಿನ್ ಅನ್ನು ನಮೂದಿಸಿ"</string>
<string name="kg_bio_try_again_or_password" msgid="1473132729225398039">"ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ ಅಥವಾ ಪಾಸ್‌ವರ್ಡ್ ಅನ್ನು ನಮೂದಿಸಿ"</string>
diff --git a/packages/SystemUI/res-keyguard/values-ky/strings.xml b/packages/SystemUI/res-keyguard/values-ky/strings.xml
index e08ffae35dd2..6fab1908fb2f 100644
--- a/packages/SystemUI/res-keyguard/values-ky/strings.xml
+++ b/packages/SystemUI/res-keyguard/values-ky/strings.xml
@@ -118,7 +118,7 @@
<string name="kg_prompt_reason_device_admin" msgid="6961159596224055685">"Түзмөктү администратор кулпулап койгон"</string>
<string name="kg_prompt_reason_user_request" msgid="6015774877733717904">"Түзмөк кол менен кулпуланды"</string>
<string name="kg_face_not_recognized" msgid="7903950626744419160">"Таанылган жок"</string>
- <string name="kg_face_sensor_privacy_enabled" msgid="939511161763558512">"Жөндөөлөрдөн камерага уруксат беришиңиз керек"</string>
+ <string name="kg_face_sensor_privacy_enabled" msgid="939511161763558512">"Параметрлерден камерага уруксат беришиңиз керек"</string>
<string name="kg_password_default_pin_message" msgid="1434544655827987873">"{count,plural, =1{SIM-картанын PIN кодун киргизиңиз. Сизде # аракет калды, андан кийин түзмөктү бөгөттөн чыгаруу үчүн байланыш операторуна кайрылышыңыз керек болот.}other{SIM-картанын PIN кодун киргизиңиз. # аракет калды.}}"</string>
<string name="kg_password_default_puk_message" msgid="1025139786449741950">"{count,plural, =1{SIM-карта азыр жарактан чыкты. Улантуу үчүн PUK кодду киргизиңиз. SIM-картанын биротоло жарактан чыгаарына # аракет калды. Чоо-жайын билүү үчүн байланыш операторуна кайрылыңыз.}other{SIM-карта азыр жарактан чыкты. Улантуу үчүн PUK кодду киргизиңиз. SIM-картанын биротоло жарактан чыгарына # аракет калды. Чоо-жайын билүү үчүн байланыш операторуна кайрылыңыз.}}"</string>
<string name="clock_title_default" msgid="6342735240617459864">"Демейки"</string>
diff --git a/packages/SystemUI/res-keyguard/values-lt/strings.xml b/packages/SystemUI/res-keyguard/values-lt/strings.xml
index c4df119a5d50..4e154b0746a0 100644
--- a/packages/SystemUI/res-keyguard/values-lt/strings.xml
+++ b/packages/SystemUI/res-keyguard/values-lt/strings.xml
@@ -22,7 +22,7 @@
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="keyguard_enter_your_pin" msgid="5429932527814874032">"Įveskite PIN kodą"</string>
<string name="keyguard_enter_pin" msgid="8114529922480276834">"Įveskite PIN kodą"</string>
- <string name="keyguard_enter_your_pattern" msgid="351503370332324745">"Nubrėžkite atrakinimo piešinį"</string>
+ <string name="keyguard_enter_your_pattern" msgid="351503370332324745">"Nupieškite atrakinimo piešinį"</string>
<string name="keyguard_enter_pattern" msgid="7616595160901084119">"Nupieškite atrakinimo piešinį"</string>
<string name="keyguard_enter_your_password" msgid="7225626204122735501">"Įveskite slaptažodį"</string>
<string name="keyguard_enter_password" msgid="6483623792371009758">"Įveskite slaptažodį"</string>
diff --git a/packages/SystemUI/res-keyguard/values-mr/strings.xml b/packages/SystemUI/res-keyguard/values-mr/strings.xml
index 76494f008d7b..82245319ffc5 100644
--- a/packages/SystemUI/res-keyguard/values-mr/strings.xml
+++ b/packages/SystemUI/res-keyguard/values-mr/strings.xml
@@ -61,7 +61,7 @@
<string name="kg_wrong_pin" msgid="4160978845968732624">"चुकीचा पिन"</string>
<string name="kg_wrong_pin_try_again" msgid="3129729383303430190">"पिन चुकीचा आहे. पुन्हा प्रयत्न करा."</string>
<string name="kg_wrong_input_try_fp_suggestion" msgid="3143861542242024833">"किंवा फिंगरप्रिंट वापरून अनलॉक करा"</string>
- <string name="kg_fp_not_recognized" msgid="5183108260932029241">"फिंगरप्रिंट ओळखले नाही"</string>
+ <string name="kg_fp_not_recognized" msgid="5183108260932029241">"फिंगरप्रिंट ओळखली नाही"</string>
<string name="bouncer_face_not_recognized" msgid="1666128054475597485">"चेहरा ओळखता आला नाही"</string>
<string name="kg_bio_try_again_or_pin" msgid="4752168242723808390">"पुन्हा प्रयत्न करा किंवा पिन एंटर करा"</string>
<string name="kg_bio_try_again_or_password" msgid="1473132729225398039">"पुन्हा प्रयत्न करा किंवा पासवर्ड एंटर करा"</string>
diff --git a/packages/SystemUI/res-keyguard/values-my/strings.xml b/packages/SystemUI/res-keyguard/values-my/strings.xml
index cac9c3e2e295..a2c4aaee99be 100644
--- a/packages/SystemUI/res-keyguard/values-my/strings.xml
+++ b/packages/SystemUI/res-keyguard/values-my/strings.xml
@@ -38,17 +38,17 @@
<string name="keyguard_instructions_when_pattern_disabled" msgid="8448804180089936954">"မီနူးကို နှိပ်၍ လော့ခ်ဖွင့်ပါ။"</string>
<string name="keyguard_network_locked_message" msgid="407096292844868608">"ကွန်ရက်ကို လော့ခ်ချထားသည်"</string>
<string name="keyguard_missing_sim_message_short" msgid="685029586173458728">"ဆင်းမ်ကတ် မရှိပါ"</string>
- <string name="keyguard_missing_sim_instructions" msgid="7735360104844653246">"ဆင်းမ်ထည့်ပါ။"</string>
- <string name="keyguard_missing_sim_instructions_long" msgid="3451467338947610268">"ဆင်းမ်မရှိပါ (သို့) သုံး၍မရပါ။ ဆင်းမ်ထည့်ပါ။"</string>
- <string name="keyguard_permanent_disabled_sim_message_short" msgid="3955052454216046100">"ဆင်းမ်ကို သုံး၍မရပါ။"</string>
- <string name="keyguard_permanent_disabled_sim_instructions" msgid="5034635040020685428">"သင်၏ဆင်းမ်ကို အပြီးပိတ်လိုက်သည်။\n ဆင်းမ်နောက်တစ်ခု ရယူရန် သင်၏ ကြိုးမဲ့ဝန်ဆောင်မှုပေးသူထံ ဆက်သွယ်ပါ။"</string>
- <string name="keyguard_sim_locked_message" msgid="7095293254587575270">"ဆင်းမ်ကို လော့ခ်ချထားသည်။"</string>
- <string name="keyguard_sim_puk_locked_message" msgid="2503428315518592542">"ဆင်းမ်၏ ပင်နံပါတ်ပြန်ဖွင့်သည့် ကုဒ်ကို လော့ခ်ချထားသည်။"</string>
- <string name="keyguard_sim_unlock_progress_dialog_message" msgid="8489092646014631659">"ဆင်းမ်ကိုဖွင့်နေသည်…"</string>
+ <string name="keyguard_missing_sim_instructions" msgid="7735360104844653246">"ဆင်းမ်ကတ်ထည့်ပါ။"</string>
+ <string name="keyguard_missing_sim_instructions_long" msgid="3451467338947610268">"ဆင်းမ်မရှိပါ (သို့) သုံး၍မရပါ။ ဆင်းမ်ကတ်ထည့်ပါ။"</string>
+ <string name="keyguard_permanent_disabled_sim_message_short" msgid="3955052454216046100">"ဆင်းမ်ကတ်ကို သုံး၍မရပါ။"</string>
+ <string name="keyguard_permanent_disabled_sim_instructions" msgid="5034635040020685428">"သင်၏ဆင်းမ်ကတ်ကို အပြီးပိတ်လိုက်သည်။\n ဆင်းမ်ကတ်နောက်တစ်ခု ရယူရန် သင်၏ ကြိုးမဲ့ဝန်ဆောင်မှုပေးသူထံ ဆက်သွယ်ပါ။"</string>
+ <string name="keyguard_sim_locked_message" msgid="7095293254587575270">"ဆင်းမ်ကတ်ကို လော့ခ်ချထားသည်။"</string>
+ <string name="keyguard_sim_puk_locked_message" msgid="2503428315518592542">"ဆင်းမ်ကတ်၏ ပင်နံပါတ်ပြန်ဖွင့်သည့် ကုဒ်ကို လော့ခ်ချထားသည်။"</string>
+ <string name="keyguard_sim_unlock_progress_dialog_message" msgid="8489092646014631659">"ဆင်းမ်ကတ် ဖွင့်နေသည်…"</string>
<string name="keyguard_accessibility_pin_area" msgid="7403009340414014734">"ပင်နံပါတ်နေရာ"</string>
<string name="keyguard_accessibility_password" msgid="3524161948484801450">"စက်စကားဝှက်"</string>
<string name="keyguard_accessibility_sim_pin_area" msgid="6272116591533888062">"ဆင်းမ်ပင်နံပါတ်နေရာ"</string>
- <string name="keyguard_accessibility_sim_puk_area" msgid="5537294043180237374">"ဆင်းမ် ပင်နံပါတ် ပြန်ဖွင့်သည့်ကုဒ် နေရာ"</string>
+ <string name="keyguard_accessibility_sim_puk_area" msgid="5537294043180237374">"ဆင်းမ်ကတ် ပင်နံပါတ် ပြန်ဖွင့်သည့်ကုဒ် နေရာ"</string>
<string name="keyboardview_keycode_delete" msgid="8489719929424895174">"ဖျက်ရန်"</string>
<string name="disable_carrier_button_text" msgid="7153361131709275746">"eSIM ကို ပိတ်ရန်"</string>
<string name="error_disable_esim_title" msgid="3802652622784813119">"eSIM ကို ပိတ်၍မရခြင်း"</string>
@@ -92,7 +92,7 @@
<string name="kg_sim_pin_instructions_multi" msgid="3639863309953109649">"\"<xliff:g id="CARRIER">%1$s</xliff:g>\" အတွက် ဆင်းမ်ကဒ်ပင်နံပါတ်ကို ထည့်ပါ။"</string>
<string name="kg_sim_lock_esim_instructions" msgid="5577169988158738030">"<xliff:g id="PREVIOUS_MSG">%1$s</xliff:g> မိုဘိုင်းဝန်ဆောင်မှု မရှိဘဲ စက်ပစ္စည်းကို အသုံးပြုရန် eSIM ကို ပိတ်ပါ။"</string>
<string name="kg_puk_enter_puk_hint" msgid="3005288372875367017">"ဆင်းမ်ကဒ်သည် ယခု ပိတ်သွားပါပြီ။ ရှေ့ဆက်ရန် ပင်နံပါတ် ပြန်ဖွင့်သည့် ကုဒ်ကို ထည့်ပါ။ ပိုမိုလေ့လာရန် မိုဘိုင်းဝန်ဆောင်မှုပေးသူကို ဆက်သွယ်နိုင်ပါသည်။"</string>
- <string name="kg_puk_enter_puk_hint_multi" msgid="4876780689904862943">"\"<xliff:g id="CARRIER">%1$s</xliff:g>\" ဆင်းမ်ကို ယခု ပိတ်လိုက်ပါပြီ။ ရှေ့ဆက်ရန် ပင်နံပါတ် ပြန်ဖွင့်သည့်ကုဒ်ကို ထည့်ပါ။ အသေးစိတ် အချက်အလက်များအတွက် မိုဘိုင်းဝန်ဆောင်မှုပေးသူထံ ဆက်သွယ်ပါ။"</string>
+ <string name="kg_puk_enter_puk_hint_multi" msgid="4876780689904862943">"\"<xliff:g id="CARRIER">%1$s</xliff:g>\" ဆင်းမ်ကတ်ကို ယခု ပိတ်လိုက်ပါပြီ။ ရှေ့ဆက်ရန် ပင်နံပါတ် ပြန်ဖွင့်သည့်ကုဒ်ကို ထည့်ပါ။ အသေးစိတ် အချက်အလက်များအတွက် မိုဘိုင်းဝန်ဆောင်မှုပေးသူထံ ဆက်သွယ်ပါ။"</string>
<string name="kg_puk_enter_pin_hint" msgid="6028432138916150399">"မိမိလိုလားသော ပင်နံပါတ်ကို ထည့်ပါ"</string>
<string name="kg_enter_confirm_pin_hint" msgid="4261064020391799132">"မိမိလိုလားသော ပင်နံပါတ်ကို အတည်ပြုပါ"</string>
<string name="kg_sim_unlock_progress_dialog_message" msgid="1123048780346295748">"ဆင်းမ်ကိုဖွင့်နေသည်…"</string>
@@ -102,9 +102,9 @@
<string name="kg_too_many_failed_password_attempts_dialog_message" msgid="190984061975729494">"သင်သည် စကားဝှက်ကို <xliff:g id="NUMBER_0">%1$d</xliff:g> ကြိမ်မှားယွင်းစွာ ထည့်ခဲ့ပါသည်။ \n\n<xliff:g id="NUMBER_1">%2$d</xliff:g> စက္ကန့်အကြာတွင် ထပ်စမ်းကြည့်ပါ။"</string>
<string name="kg_too_many_failed_pattern_attempts_dialog_message" msgid="4252405904570284368">"သင်သည် ပုံစံကို <xliff:g id="NUMBER_0">%1$d</xliff:g> ကြိမ်မှားယွင်းစွာ ဆွဲခဲ့ပါသည်။ \n\n<xliff:g id="NUMBER_1">%2$d</xliff:g> စက္ကန့်အကြာတွင် ထပ်စမ်းကြည့်ပါ။"</string>
<string name="kg_password_wrong_pin_code_pukked" msgid="8047350661459040581">"ဆင်းမ်ကဒ်ပင်နံပါတ် မှားယွင်းနေသောကြောင့် ယခုအခါ သင့်စက်ပစ္စည်းအား လော့ခ်ဖွင့်ရန် ဝန်ဆောင်မှုပေးသူကို ဆက်သွယ်ရပါမည်။"</string>
- <string name="kg_password_wrong_pin_code" msgid="5629415765976820357">"{count,plural, =1{ဆင်းမ်ပင်နံပါတ်ကုဒ် မှားနေသည်။ စက်ကို လော့ခ်ဖွင့်ရန် မိုဘိုင်းဖုန်းကုမ္ပဏီသို့ မဆက်သွယ်မီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။}other{ဆင်းမ်ပင်နံပါတ်ကုဒ် မှားနေသည်။ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။ }}"</string>
+ <string name="kg_password_wrong_pin_code" msgid="5629415765976820357">"{count,plural, =1{ဆင်းမ်ကတ် ပင်နံပါတ်ကုဒ် မှားနေသည်။ စက်ကို လော့ခ်ဖွင့်ရန် မိုဘိုင်းဖုန်းကုမ္ပဏီသို့ မဆက်သွယ်မီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။}other{ဆင်းမ်ကတ် ပင်နံပါတ်ကုဒ် မှားနေသည်။ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။ }}"</string>
<string name="kg_password_wrong_puk_code_dead" msgid="3698285357028468617">"ဆင်းမ်ကဒ်ကို အသုံးပြု၍ မရတော့ပါ။ ဝန်ဆောင်မှုပေးသူကို ဆက်သွယ်ပါ။"</string>
- <string name="kg_password_wrong_puk_code" msgid="6820515467645087827">"{count,plural, =1{ဆင်းမ် PUK ကုဒ် မှားနေသည်။ ဆင်းမ် အပြီးပိတ်မသွားမီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။}other{ဆင်းမ် PUK ကုဒ် မှားနေသည်။ ဆင်းမ် အပြီးပိတ်မသွားမီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။}}"</string>
+ <string name="kg_password_wrong_puk_code" msgid="6820515467645087827">"{count,plural, =1{ဆင်းမ်ကတ် PUK ကုဒ် မှားနေသည်။ ဆင်းမ်ကတ် အပြီးပိတ်မသွားမီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။}other{ဆင်းမ်ကတ် PUK ကုဒ် မှားနေသည်။ ဆင်းမ်ကတ် အပြီးပိတ်မသွားမီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။}}"</string>
<string name="kg_password_pin_failed" msgid="5136259126330604009">"ဆင်းမ်ကဒ်ပင်နံပါတ် လုပ်ဆောင်ချက် မအောင်မြင်ပါ။"</string>
<string name="kg_password_puk_failed" msgid="6778867411556937118">"ဆင်းမ်ကတ် ပင်နံပါတ် ပြန်ဖွင့်သည့်ကုဒ် လုပ်ဆောင်ချက် မအောင်မြင်ပါ။"</string>
<string name="accessibility_ime_switch_button" msgid="9082358310194861329">"စာရိုက်စနစ်ပြောင်းရန်"</string>
@@ -120,7 +120,7 @@
<string name="kg_face_not_recognized" msgid="7903950626744419160">"မသိ"</string>
<string name="kg_face_sensor_privacy_enabled" msgid="939511161763558512">"‘မျက်နှာပြ လော့ခ်ဖွင့်ခြင်း’ သုံးရန် ‘ဆက်တင်များ’ တွင်ကင်မရာသုံးခွင့်ကိုဖွင့်ပါ"</string>
<string name="kg_password_default_pin_message" msgid="1434544655827987873">"{count,plural, =1{ဆင်းမ်ပင်နံပါတ် ထည့်သွင်းပါ။ သင့်စက်ကို လော့ခ်ဖွင့်ရန် မိုဘိုင်းဖုန်းကုမ္ပဏီသို့ မဆက်သွယ်မီ # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။}other{ဆင်းမ်ပင်နံပါတ် ထည့်သွင်းပါ။ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။}}"</string>
- <string name="kg_password_default_puk_message" msgid="1025139786449741950">"{count,plural, =1{ဆင်းမ်သည် ယခု ပိတ်သွားပါပြီ။ ရှေ့ဆက်ရန် PUK ကုဒ်ကို ထည့်ပါ။ ဆင်းမ် အပြီးပိတ်မသွားမီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။ အသေးစိတ်အတွက် မိုဘိုင်းဖုန်းကုမ္ပဏီကို ဆက်သွယ်ပါ။}other{ဆင်းမ်သည် ယခု ပိတ်သွားပါပြီ။ ရှေ့ဆက်ရန် PUK ကုဒ်ကို ထည့်ပါ။ ဆင်းမ် အပြီးပိတ်မသွားမီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။ အသေးစိတ်အတွက် မိုဘိုင်းဖုန်းကုမ္ပဏီကို ဆက်သွယ်ပါ။}}"</string>
+ <string name="kg_password_default_puk_message" msgid="1025139786449741950">"{count,plural, =1{ဆင်းမ်ကတ်သည် ယခု ပိတ်သွားပါပြီ။ ရှေ့ဆက်ရန် PUK ကုဒ်ကို ထည့်ပါ။ ဆင်းမ်ကတ် အပြီးပိတ်မသွားမီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။ အသေးစိတ်အတွက် မိုဘိုင်းဖုန်းကုမ္ပဏီကို ဆက်သွယ်ပါ။}other{ဆင်းမ်ကတ်သည် ယခု ပိတ်သွားပါပြီ။ ရှေ့ဆက်ရန် PUK ကုဒ်ကို ထည့်ပါ။ ဆင်းမ်ကတ် အပြီးပိတ်မသွားမီ သင့်တွင် # ကြိမ် ကြိုးစားခွင့်ရှိသေးသည်။ အသေးစိတ်အတွက် မိုဘိုင်းဖုန်းကုမ္ပဏီကို ဆက်သွယ်ပါ။}}"</string>
<string name="clock_title_default" msgid="6342735240617459864">"မူလ"</string>
<string name="clock_title_bubble" msgid="2204559396790593213">"ပူဖောင်းကွက်"</string>
<string name="clock_title_analog" msgid="8409262532900918273">"ရိုးရိုး"</string>
diff --git a/packages/SystemUI/res-keyguard/values-or/strings.xml b/packages/SystemUI/res-keyguard/values-or/strings.xml
index 13bb7191f0f1..97609678b3b7 100644
--- a/packages/SystemUI/res-keyguard/values-or/strings.xml
+++ b/packages/SystemUI/res-keyguard/values-or/strings.xml
@@ -20,11 +20,11 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="keyguard_enter_your_pin" msgid="5429932527814874032">"ନିଜର PIN ଲେଖନ୍ତୁ"</string>
+ <string name="keyguard_enter_your_pin" msgid="5429932527814874032">"ଆପଣଙ୍କ PIN ଲେଖନ୍ତୁ"</string>
<string name="keyguard_enter_pin" msgid="8114529922480276834">"PIN ଲେଖନ୍ତୁ"</string>
<string name="keyguard_enter_your_pattern" msgid="351503370332324745">"ଆପଣଙ୍କ ପାଟର୍ନ ଲେଖନ୍ତୁ"</string>
<string name="keyguard_enter_pattern" msgid="7616595160901084119">"ପାଟର୍ନ ଡ୍ର କରନ୍ତୁ"</string>
- <string name="keyguard_enter_your_password" msgid="7225626204122735501">"ନିଜ ପାସ୍‌ୱର୍ଡ ଲେଖନ୍ତୁ"</string>
+ <string name="keyguard_enter_your_password" msgid="7225626204122735501">"ଆପଣଙ୍କ ପାସୱାର୍ଡ ଲେଖନ୍ତୁ"</string>
<string name="keyguard_enter_password" msgid="6483623792371009758">"ପାସୱାର୍ଡ ଲେଖନ୍ତୁ"</string>
<string name="keyguard_sim_error_message_short" msgid="633630844240494070">"ଅମାନ୍ୟ କାର୍ଡ।"</string>
<string name="keyguard_charged" msgid="5478247181205188995">"ଚାର୍ଜ ହୋଇଗଲା"</string>
@@ -108,7 +108,7 @@
<string name="kg_password_pin_failed" msgid="5136259126330604009">"SIM PIN କାମ ବିଫଳ ହେଲା!"</string>
<string name="kg_password_puk_failed" msgid="6778867411556937118">"SIM PUKର କାମ ବିଫଳ ହେଲା!"</string>
<string name="accessibility_ime_switch_button" msgid="9082358310194861329">"ଇନପୁଟ୍‌ ପଦ୍ଧତି ବଦଳାନ୍ତୁ"</string>
- <string name="airplane_mode" msgid="2528005343938497866">"ଏରୋପ୍ଲେନ ମୋଡ"</string>
+ <string name="airplane_mode" msgid="2528005343938497866">"ଏୟାରପ୍ଲେନ ମୋଡ"</string>
<string name="kg_prompt_reason_restart_pattern" msgid="3321211830602827742">"ଡିଭାଇସ ରିଷ୍ଟାର୍ଟ ହେବା ପରେ ପାଟର୍ନ ଆବଶ୍ୟକ"</string>
<string name="kg_prompt_reason_restart_pin" msgid="2672166323886110512">"ଡିଭାଇସ ରିଷ୍ଟାର୍ଟ ହେବା ପରେ PIN ଆବଶ୍ୟକ"</string>
<string name="kg_prompt_reason_restart_password" msgid="3967993994418885887">"ଡିଭାଇସ ରିଷ୍ଟାର୍ଟ ହେବା ପରେ ପାସୱାର୍ଡ ଆବଶ୍ୟକ"</string>
diff --git a/packages/SystemUI/res-keyguard/values-te/strings.xml b/packages/SystemUI/res-keyguard/values-te/strings.xml
index 2ff87be34301..439c836cd53d 100644
--- a/packages/SystemUI/res-keyguard/values-te/strings.xml
+++ b/packages/SystemUI/res-keyguard/values-te/strings.xml
@@ -22,7 +22,7 @@
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="keyguard_enter_your_pin" msgid="5429932527814874032">"మీ పిన్‌ని నమోదు చేయండి"</string>
<string name="keyguard_enter_pin" msgid="8114529922480276834">"PINను ఎంటర్ చేయండి"</string>
- <string name="keyguard_enter_your_pattern" msgid="351503370332324745">"మీ నమూనాను నమోదు చేయండి"</string>
+ <string name="keyguard_enter_your_pattern" msgid="351503370332324745">"మీ ఆకృతిని ఎంటర్ చేయండి"</string>
<string name="keyguard_enter_pattern" msgid="7616595160901084119">"ఆకృతిని గీయండి"</string>
<string name="keyguard_enter_your_password" msgid="7225626204122735501">"మీ పాస్‌వర్డ్‌ను ఎంటర్ చేయండి"</string>
<string name="keyguard_enter_password" msgid="6483623792371009758">"పాస్‌వర్డ్‌ను ఎంటర్ చేయండి"</string>
diff --git a/packages/SystemUI/res-product/values-my/strings.xml b/packages/SystemUI/res-product/values-my/strings.xml
index 4ec1ff6e3bde..68711e8fa0ee 100644
--- a/packages/SystemUI/res-product/values-my/strings.xml
+++ b/packages/SystemUI/res-product/values-my/strings.xml
@@ -23,7 +23,7 @@
<string name="dock_alignment_not_charging" product="default" msgid="3980752926226749808">"ကြိုးမဲ့အားသွင်းရန် ဖုန်းကို ပြန်၍ချိန်ပါ"</string>
<string name="inattentive_sleep_warning_message" product="tv" msgid="6844464574089665063">"Android TV စက်သည် မကြာမီ ပိတ်သွားပါမည်၊ ဆက်ဖွင့်ထားရန် ခလုတ်တစ်ခုကို နှိပ်ပါ။"</string>
<string name="inattentive_sleep_warning_message" product="default" msgid="5693904520452332224">"စက်သည် မကြာမီ ပိတ်သွားပါမည်၊ ဆက်ဖွင့်ထားရန် နှိပ်ပါ။"</string>
- <string name="keyguard_missing_sim_message" product="tablet" msgid="408124574073032188">"တက်ဘလက်တွင် ဆင်းမ်မရှိပါ။"</string>
+ <string name="keyguard_missing_sim_message" product="tablet" msgid="408124574073032188">"တက်ဘလက်တွင် ဆင်းမ်ကတ်မရှိပါ။"</string>
<string name="keyguard_missing_sim_message" product="default" msgid="2605468359948247208">"ဖုန်းတွင် ဆင်းမ်မရှိပါ။"</string>
<string name="kg_invalid_confirm_pin_hint" product="default" msgid="6278551068943958651">"ပင်နံပါတ် ကိုက်ညီမှု မရှိပါ"</string>
<string name="kg_failed_attempts_almost_at_wipe" product="tablet" msgid="302165994845009232">"တက်ဘလက်ကို <xliff:g id="NUMBER_0">%1$d</xliff:g> ကြိမ် မှားယွင်းစွာ လော့ခ်ဖွင့်ရန် ကြိုးစားခဲ့ပါသည်။ <xliff:g id="NUMBER_1">%2$d</xliff:g> ကြိမ် ထပ်မံမှားယွင်းခဲ့လျှင် ဤတက်ဘလက်ကို ပြင်ဆင်သတ်မှတ်လိုက်မည် ဖြစ်ပြီး ၎င်းအတွင်းရှိ ဒေတာအားလုံးကိုလည်း ဖျက်လိုက်ပါမည်။"</string>
diff --git a/packages/SystemUI/res/values-af/strings.xml b/packages/SystemUI/res/values-af/strings.xml
index 71103ddadb4d..93b6cda29dc5 100644
--- a/packages/SystemUI/res/values-af/strings.xml
+++ b/packages/SystemUI/res/values-af/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Luidsprekers en skerms"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Voorgestelde toestelle"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Stop jou gedeelde sessie om media na ’n ander toestel toe te skuif"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Stop"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Hoe uitsaai werk"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Saai uit"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Mense in jou omtrek met versoenbare Bluetooth-toestelle kan na die media luister wat jy uitsaai"</string>
diff --git a/packages/SystemUI/res/values-am/strings.xml b/packages/SystemUI/res/values-am/strings.xml
index 538605f67dd8..34548b041940 100644
--- a/packages/SystemUI/res/values-am/strings.xml
+++ b/packages/SystemUI/res/values-am/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"የእውቅና ማረጋገጫ ሰጪ ባለሥልጣን በዚህ መሣሪያ ላይ ተጭኗል። የእርስዎ ደኅንነቱ የተጠበቀ አውታረ መረብ ትራፊክ ክትትል ሊደረግበት እና ሊሻሻል ይችላል።"</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"የእርስዎ አስተዳዳሪ የአውታረ መረብ ምዝግብ ማስታወሻ መያዝን አብርተዋል፣ ይህም በመሣሪያዎ ላይ ያለውን ትራፊክ ይከታተላል።"</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"የእርስዎ አስተዳዳሪ በስራ መገለጫዎ ውስጥ፣ ግን በግል መገለጫዎ ላይ ሳይሆን፣ ትራፊክን የሚቆጣጠር የአውታረ መረብ ምዝግብ ማስታወሻ አብርተዋል።"</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"ይህ መሣሪያ በ<xliff:g id="VPN_APP">%1$s</xliff:g> በኩል ከበይነመረብ ጋር ተገናኝቷል። ኢሜይሎችን እና የአሰሳ ውሂብን ጨምሮ የአውታረ መረብ እንቅስቃሴዎ ለVPN አቅራቢ ይታያል።"</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"ይህ መሣሪያ በ<xliff:g id="VPN_APP">%1$s</xliff:g> በኩል ከበይነመረብ ጋር ተገናኝቷል። ኢሜይሎችን እና የአሰሳ ውሂብን ጨምሮ የእርስዎ የአውታረ መረብ እንቅስቃሴ ለአይቲ አስተዳዳሪዎ ይታያል።"</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"ይህ መሣሪያ በ <xliff:g id="VPN_APP_0">%1$s</xliff:g> እና <xliff:g id="VPN_APP_1">%2$s</xliff:g> በኩል ከበይነመረብ ጋር ተገናኝቷል። ኢሜይሎችን እና የአሰሳ ውሂብን ጨምሮ የእርስዎ የአውታረ መረብ እንቅስቃሴ ለአይቲ አስተዳዳሪዎ ይታያል።"</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"የእርስዎ የሥራ መተግበሪያዎች በ <xliff:g id="VPN_APP">%1$s</xliff:g> በኩል ከበይነመረብ ጋር ተገናኝተዋል። ኢሜይሎችን እና የአሰሳ ውሂብን ጨምሮ በሥራ መተግበሪያዎች ውስጥ ያለው የአውታረ መረብ እንቅስቃሴዎ ለአይቲ አስተዳዳሪዎ እና ለVPN አቅራቢዎ ይታያል።"</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"የእርስዎ ግላዊ መተግበሪያዎች በ<xliff:g id="VPN_APP">%1$s</xliff:g> በኩል ከበይነመረብ ጋር ተገናኝተዋል። ኢሜይሎችን እና የአሰሳ ውሂብን ጨምሮ የአውታረ መረብ እንቅስቃሴዎ ለVPN አቅራቢዎ ይታያል።"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"ድምጽ ማውጫዎች እና ማሳያዎች"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"የተጠቆሙ መሣሪያዎች"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ማሰራጨት እንዴት እንደሚሠራ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ስርጭት"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ተኳሃኝ የብሉቱዝ መሣሪያዎች ያላቸው በአቅራቢያዎ ያሉ ሰዎች እርስዎ እያሰራጩት ያሉትን ሚዲያ ማዳመጥ ይችላሉ"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• የካሜራ መተግበሪያ ይጫኑ"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• መተግበሪያው ተዋቅሯል"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• ቢያንስ አንድ መሣሪያ ይገኛል"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"የማስታወሻ አያያዝ አቋራጭን ለመጠቀም ነባሪ የማስታወሻ መተግበሪያ ይምረጡ"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"መተግበሪያ ይምረጡ"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"የይንኩ እና ይያዙ አቋራጭ"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"ይቅር"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"ማያ ገፆችን አሁን ይቀይሩ"</string>
diff --git a/packages/SystemUI/res/values-ar/strings.xml b/packages/SystemUI/res/values-ar/strings.xml
index c38237d1eaec..03a1ed34c5b8 100644
--- a/packages/SystemUI/res/values-ar/strings.xml
+++ b/packages/SystemUI/res/values-ar/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"تم تثبيت مرجع مصدّق على هذا الجهاز. قد تتم مراقبة حركة بيانات شبكتك الآمنة أو تعديلها."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"شغَّل المشرف ميزة تسجيل بيانات الشبكة، والتي يتم من خلالها مراقبة حركة البيانات على جهازك."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"شغَّل المشرف ميزة تسجيل بيانات الشبكة، والتي يتم من خلالها مراقبة حركة البيانات في ملفك الشخصي للعمل ولكن لا تتم مراقبتها في ملفك الشخصي."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"‏هذا الجهاز متّصل بالإنترنت من خلال \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". تجدر الإشارة إلى أنّ أنشطة الشبكة، بما في ذلك الرسائل الإلكترونية وبيانات التصفُّح، مرئية لمقدِّم خدمات VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"هذا الجهاز متّصل بالإنترنت من خلال \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". تجدر الإشارة إلى أنّ أنشطة الشبكة، بما في ذلك الرسائل الإلكترونية وبيانات التصفُّح، مرئية لمشرف تكنولوجيا المعلومات في مؤسستك."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"هذا الجهاز متّصل بالإنترنت من خلال <xliff:g id="VPN_APP_0">%1$s</xliff:g> و<xliff:g id="VPN_APP_1">%2$s</xliff:g>. يمكن لمشرف تكنولوجيا المعلومات رؤية أنشطة الشبكة، بما في ذلك الرسائل الإلكترونية وبيانات التصفُّح."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"‏تطبيقات العمل الخاصة بك متّصلة بالإنترنت من خلال <xliff:g id="VPN_APP">%1$s</xliff:g>. يمكن لمشرف تكنولوجيا المعلومات ومزوّد خدمة الشبكة الافتراضية الخاصة (VPN) رؤية أنشطة الشبكة في تطبيقات العمل، بما في ذلك الرسائل الإلكترونية وبيانات التصفُّح."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"‏تطبيقاتك الشخصية متّصلة بالإنترنت من خلال <xliff:g id="VPN_APP">%1$s</xliff:g>. تظهر أنشطة الشبكة، بما في ذلك الرسائل الإلكترونية وبيانات التصفُّح، لمزوّد خدمة الشبكة الافتراضية الخاصة (VPN)."</string>
@@ -830,8 +828,8 @@
<string name="ongoing_privacy_chip_content_multiple_apps" msgid="8341216022442383954">"تستخدم التطبيقات <xliff:g id="TYPES_LIST">%s</xliff:g>."</string>
<string name="ongoing_privacy_dialog_separator" msgid="1866222499727706187">"، "</string>
<string name="ongoing_privacy_dialog_last_separator" msgid="5615876114268009767">" و "</string>
- <string name="ongoing_privacy_dialog_using_op" msgid="426635338010011796">"يجري الاستخدام الآن من قِبل <xliff:g id="APPLICATION_NAME">%1$s</xliff:g>."</string>
- <string name="ongoing_privacy_dialog_recent_op" msgid="2736290123662790026">"تم الاستخدام مؤخرًا من قِبل <xliff:g id="APPLICATION_NAME">%1$s</xliff:g>."</string>
+ <string name="ongoing_privacy_dialog_using_op" msgid="426635338010011796">"يجري الاستخدام الآن من قِبل \"<xliff:g id="APPLICATION_NAME">%1$s</xliff:g>\"."</string>
+ <string name="ongoing_privacy_dialog_recent_op" msgid="2736290123662790026">"تم الاستخدام مؤخرًا من قِبل \"<xliff:g id="APPLICATION_NAME">%1$s</xliff:g>\"."</string>
<string name="ongoing_privacy_dialog_enterprise" msgid="3003314125311966061">"(العمل)"</string>
<string name="ongoing_privacy_dialog_phonecall" msgid="4487370562589839298">"المكالمات الهاتفية"</string>
<string name="ongoing_privacy_dialog_attribution_text" msgid="4738795925380373994">"(من خلال <xliff:g id="APPLICATION_NAME_S_">%s</xliff:g>)"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"%%<xliff:g id="PERCENTAGE">%1$d</xliff:g>"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"مكبّرات الصوت والشاشات"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"الأجهزة المقترَحة"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"كيفية عمل البث"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"البث"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"يمكن للأشخاص القريبين منك الذين لديهم أجهزة متوافقة تتضمّن بلوتوث الاستماع إلى الوسائط التي تبثها."</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• تثبيت تطبيق كاميرا"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• إعداد التطبيق"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• توفُّر جهاز واحد على الأقل"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"اختَر تطبيقًا تلقائيًا لتدوين الملاحظات لاستخدام اختصار تدوين الملاحظات."</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"اختيار تطبيق"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"انقر مع الاستمرار على الاختصار."</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"إلغاء"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"تبديل الشاشتَين الآن"</string>
diff --git a/packages/SystemUI/res/values-as/strings.xml b/packages/SystemUI/res/values-as/strings.xml
index aefba4207b4f..978130e0754c 100644
--- a/packages/SystemUI/res/values-as/strings.xml
+++ b/packages/SystemUI/res/values-as/strings.xml
@@ -213,7 +213,7 @@
<string name="accessibility_desc_work_lock" msgid="4355620395354680575">"কৰ্মস্থানৰ প্ৰ\'ফাইলৰ লক স্ক্ৰীন"</string>
<string name="accessibility_desc_close" msgid="8293708213442107755">"বন্ধ কৰক"</string>
<string name="accessibility_quick_settings_dnd_none_on" msgid="3235552940146035383">"সম্পূৰ্ণ নিৰৱতা"</string>
- <string name="accessibility_quick_settings_dnd_alarms_on" msgid="3375848309132140014">"কেৱল এলাৰ্মবোৰৰ বাবে"</string>
+ <string name="accessibility_quick_settings_dnd_alarms_on" msgid="3375848309132140014">"কেৱল এলাৰ্ম"</string>
<string name="accessibility_quick_settings_dnd" msgid="2415967452264206047">"অসুবিধা নিদিব"</string>
<string name="accessibility_quick_settings_bluetooth" msgid="8250942386687551283">"ব্লুটুথ।"</string>
<string name="accessibility_quick_settings_bluetooth_on" msgid="3819082137684078013">"ব্লুটুথ অন হৈ আছে।"</string>
@@ -878,7 +878,7 @@
<string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"সাধ্য সুবিধাসমূহ খুলিবলৈ টিপক। ছেটিঙত এই বুটামটো কাষ্টমাইজ অথবা সলনি কৰক।\n\n"<annotation id="link">"ছেটিং চাওক"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"বুটামটোক সাময়িকভাৱে লুকুৱাবলৈ ইয়াক একেবাৰে কাষলৈ লৈ যাওক"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"আনডু কৰক"</string>
- <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"<xliff:g id="FEATURE_NAME">%s</xliff:g> টা শ্বৰ্টকাট আঁতৰোৱা হ’ল"</string>
+ <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"<xliff:g id="FEATURE_NAME">%s</xliff:g>ৰ শ্বৰ্টকাট আঁতৰোৱা হ’ল"</string>
<string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{# টা শ্বৰ্টকাট আঁতৰোৱা হ’ল}one{# টা শ্বৰ্টকাট আঁতৰোৱা হ’ল}other{# টা শ্বৰ্টকাট আঁতৰোৱা হ’ল}}"</string>
<string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"শীৰ্ষৰ বাওঁফালে নিয়ক"</string>
<string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"শীৰ্ষৰ সোঁফালে নিয়ক"</string>
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"স্পীকাৰ আৰু ডিছপ্লে’"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"পৰামৰ্শ হিচাপে পোৱা ডিভাইচ"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"মিডিয়া অন্য ডিভাইচলৈ স্থানান্তৰ কৰিবলৈ আপোনাৰ শ্বেয়াৰ কৰা ছেশ্বনটো বন্ধ কৰক"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"বন্ধ কৰক"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"সম্প্ৰচাৰ কৰাটোৱে কেনেকৈ কাম কৰে"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"সম্প্ৰচাৰ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"সমিল ব্লুটুথ ডিভাইচৰ সৈতে আপোনাৰ নিকটৱৰ্তী স্থানত থকা লোকসকলে আপুনি সম্প্ৰচাৰ কৰা মিডিয়াটো শুনিব পাৰে"</string>
diff --git a/packages/SystemUI/res/values-az/strings.xml b/packages/SystemUI/res/values-az/strings.xml
index c83495820271..9f3f175133b5 100644
--- a/packages/SystemUI/res/values-az/strings.xml
+++ b/packages/SystemUI/res/values-az/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Bu cihazda sertifikat səlahiyyəti quraşdırıldı. Təhlükəsiz şəbəkə ötürülməsinə nəzarət edilə və ya dəyişdirilə bilər."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Admin cihazda şəbəkə ötürülməsinə nəzarət edən şəbəkə qeydlərini aktiv etdi."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Admininiz şəxsi profilinizdəki deyil, iş profilinizdəki trafikə nəzarət edən şəbəkə qeydiyyatını aktiv edib."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Bu cihaz <xliff:g id="VPN_APP">%1$s</xliff:g> ilə internetə qoşulub. VPN provayderi e-məktub və baxış datası daxil olmaqla şəbəkə fəaliyyətini görür."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Bu cihaz <xliff:g id="VPN_APP">%1$s</xliff:g> ilə internetə qoşulub. IT admini e-məktub və baxış datası daxil olmaqla şəbəkə fəaliyyətini görür."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Bu cihaz <xliff:g id="VPN_APP_0">%1$s</xliff:g> və <xliff:g id="VPN_APP_1">%2$s</xliff:g> vasitəsilə internetə qoşulub. E-məktublar və baxış datası daxil olmaqla, iş tətbiqlərindəki şəbəkə fəaliyyətiniz İT admininiz görünür."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"İş tətbiqləriniz <xliff:g id="VPN_APP">%1$s</xliff:g> vasitəsilə internetə qoşulub. E-məktublar və baxış datası daxil olmaqla, iş tətbiqlərindəki şəbəkə fəaliyyətiniz İT admininiz və VPN provayderinizə görünür."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Şəxsi tətbiqləriniz <xliff:g id="VPN_APP">%1$s</xliff:g> vasitəsilə internetə qoşulub. E-məktublar və baxış datası daxil olmaqla, iş tətbiqlərindəki şəbəkə fəaliyyətiniz VPN provayderinizə görünür."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Dinamiklər &amp; Displeylər"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Təklif olunan Cihazlar"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Yayım necə işləyir"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Yayım"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Uyğun Bluetooth cihazları olan yaxınlığınızdakı insanlar yayımladığınız medianı dinləyə bilər"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Kamera tətbiqini quraşdırın"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Tətbiq ayarlanmalıdır"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Ən azı bir cihaz əlçatandır"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Qeydgötürmə qısayolu üçün defolt qeyd tətbiqi seçin"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Tətbiq seçin"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Qısayola toxunub saxlayın"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Ləğv edin"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"İndi ekranları dəyişin"</string>
diff --git a/packages/SystemUI/res/values-b+sr+Latn/strings.xml b/packages/SystemUI/res/values-b+sr+Latn/strings.xml
index 82020cc147cc..e730ae84d15c 100644
--- a/packages/SystemUI/res/values-b+sr+Latn/strings.xml
+++ b/packages/SystemUI/res/values-b+sr+Latn/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Na ovom uređaju je instaliran autoritet za izdavanje sertifikata. Bezbedni mrežni saobraćaj može da se prati ili menja."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Administrator je uključio evidentiranje mreže, koje prati saobraćaj na uređaju."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Administrator je uključio evidentiranje mreže, koje prati saobraćaj na poslovnom profilu, ali ne i na ličnom profilu."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Ovaj uređaj je povezan na internet preko: <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaša aktivnost na mreži, uključujući imejlove i podatke pregledanja, vidljiva je dobavljaču VPN-a."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Ovaj uređaj je povezan na internet preko: <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaša aktivnost na mreži, uključujući imejlove i podatke pregledanja, vidljiva je IT administratoru."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Ovaj uređaj je povezan na internet preko: <xliff:g id="VPN_APP_0">%1$s</xliff:g> i <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Vaša aktivnost na mreži, uključujući imejlove i podatke pregledanja, vidljiva je IT administratoru."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Vaše poslovne aplikacije su povezane na internet preko: <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaša aktivnost na mreži u poslovnim aplikacijama, uključujući imejlove i podatke pregledanja, vidljiva je IT administratoru i dobavljaču VPN-a."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Vaše lične aplikacije su povezane na internet preko: <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaša aktivnost na mreži, uključujući imejlove i podatke pregledanja, vidljiva je dobavljaču VPN-a."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Zvučnici i ekrani"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Predloženi uređaji"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kako funkcioniše emitovanje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emitovanje"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Ljudi u blizini sa kompatibilnim Bluetooth uređajima mogu da slušaju medijski sadržaj koji emitujete"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• da ste instalirali aplikaciju za kameru"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• da je aplikacija podešena"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• da je dostupan barem jedan uređaj"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Izaberite podrazumevanu aplikaciju za beleške da biste koristili prečicu za pravljenje beleški"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Izaberi aplikaciju"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Dodirnite i zadržite prečicu"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Otkaži"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Zameni ekrane"</string>
diff --git a/packages/SystemUI/res/values-be/strings.xml b/packages/SystemUI/res/values-be/strings.xml
index d90fca272c8d..ad0b675e162e 100644
--- a/packages/SystemUI/res/values-be/strings.xml
+++ b/packages/SystemUI/res/values-be/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"На гэтай прыладзе ўсталяваны цэнтр сертыфікацыі. Ваш абаронены сеткавы трафік могуць праглядваць ці змяняць."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Ваш адміністратар уключыў вядзенне журнала сеткі, з дапамогай якога адсочваецца трафік на вашай прыладзе."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Ваш адміністратар уключыў вядзенне журнала сеткі, з дапамогай якога адсочваецца трафік у вашым працоўным профілі. Трафік вашага асабістага профілю застаецца недаступным."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Гэта прылада падключана да інтэрнэту праз праграму \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". Пастаўшчык VPN можа бачыць вашы дзеянні ў сетцы, у тым ліку інфармацыю пра электронную пошту і даныя прагляду."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Гэта прылада падключана да інтэрнэту праз праграму \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". Ваш IT-адміністратар можа бачыць вашы дзеянні ў сетцы, у тым ліку інфармацыю пра электронную пошту і даныя прагляду."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Гэта прылада падключана да інтэрнэту праз праграмы \"<xliff:g id="VPN_APP_0">%1$s</xliff:g>\" і \"<xliff:g id="VPN_APP_1">%2$s</xliff:g>\". Ваш IT-адміністратар можа бачыць вашы дзеянні ў сетцы, у тым ліку інфармацыю пра электронную пошту і даныя прагляду."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Вашы працоўныя праграмы падключаны да інтэрнэту праз праграму \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". Ваш IT-адміністратар і пастаўшчык VPN могуць бачыць вашы дзеянні ў сетцы ў працоўных праграмах, у тым ліку інфармацыю пра электронную пошту і даныя прагляду."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Вашы асабістыя праграмы падключаны да інтэрнэту праз праграму \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". Пастаўшчык VPN можа бачыць вашы дзеянні ў сетцы, у тым ліку інфармацыю пра электронную пошту і даныя прагляду."</string>
@@ -880,7 +878,7 @@
<string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"Націсніце, каб адкрыць спецыяльныя магчымасці. Рэгулюйце ці замяняйце кнопку ў Наладах.\n\n"<annotation id="link">"Прагляд налад"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"Каб часова схаваць кнопку, перамясціце яе на край"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"Адрабіць"</string>
- <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Выдалены <xliff:g id="FEATURE_NAME">%s</xliff:g> ярлык"</string>
+ <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Выдалены ярлык <xliff:g id="FEATURE_NAME">%s</xliff:g>"</string>
<string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{Выдалены # ярлык}one{Выдалены # ярлык}few{Выдалена # ярлыкі}many{Выдалена # ярлыкоў}other{Выдалена # ярлыка}}"</string>
<string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"Перамясціць лявей і вышэй"</string>
<string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"Перамясціць правей і вышэй"</string>
@@ -978,7 +976,7 @@
<string name="media_output_dialog_multiple_devices" msgid="1093771040315422350">"Выбрана прылад: <xliff:g id="COUNT">%1$d</xliff:g>"</string>
<string name="media_output_dialog_disconnected" msgid="7090512852817111185">"(адключана)"</string>
<string name="media_output_dialog_connect_failed" msgid="3080972621975339387">"Не ўдалося пераключыцца. Дакраніцеся, каб паўтарыць спробу."</string>
- <string name="media_output_dialog_pairing_new" msgid="5098212763195577270">"Падключыце прыладу"</string>
+ <string name="media_output_dialog_pairing_new" msgid="5098212763195577270">"Падключыць прыладу"</string>
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Для трансляцыі гэтага сеанса адкрыйце праграму."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Невядомая праграма"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Спыніць трансляцыю"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Дынамікі і дысплэі"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Прылады, якія падтрымліваюцца"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Як адбываецца трансляцыя"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Трансляцыя"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Людзі паблізу, у якіх ёсць прылады з Bluetooth, змогуць праслухваць мультымедыйнае змесціва, якое вы трансліруеце"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Усталявана праграма \"Камера\"."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Праграма наладжана."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Даступная хаця б адна прылада."</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Выберыце стандартную праграму для нататак, каб карыстацца хуткай камандай для нататак"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Выберыце праграму"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Дакраніцеся і ўтрымлівайце ярлык"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Скасаваць"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Пераключыцца на іншы экран"</string>
diff --git a/packages/SystemUI/res/values-bg/strings.xml b/packages/SystemUI/res/values-bg/strings.xml
index fb616cc3a116..542f5c42fc04 100644
--- a/packages/SystemUI/res/values-bg/strings.xml
+++ b/packages/SystemUI/res/values-bg/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"На това устройство е инсталиран сертифициращ орган. Трафикът в защитената ви мрежа може да бъде наблюдаван или променян."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Администраторът ви е включил функцията за регистриране на мрежовата активност, която следи трафика на устройството ви."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Администраторът ви е включил функцията за регистриране на мрежовата активност, която следи трафика в служебния ви потребителски профил, но не и в личния."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Това устройство е свързано с интернет чрез <xliff:g id="VPN_APP">%1$s</xliff:g>. Активността ви в мрежата, включително имейлите и данните за сърфирането, е видима за доставчика ви на VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Това устройство е свързано с интернет чрез <xliff:g id="VPN_APP">%1$s</xliff:g>. Активността ви в мрежата, включително имейлите и данните за сърфирането, е видима за системния ви администратор."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Това устройство е свързано с интернет чрез <xliff:g id="VPN_APP_0">%1$s</xliff:g> и <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Активността ви в мрежата, включително имейлите и данните за сърфирането, е видима за системния ви администратор."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Служебните ви приложения са свързани с интернет чрез <xliff:g id="VPN_APP">%1$s</xliff:g>. Активността ви в мрежата в тези приложения, включително имейлите и данните за сърфирането, е видима за системния ви администратор и доставчика ви на VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Личните ви приложения са свързани с интернет чрез <xliff:g id="VPN_APP">%1$s</xliff:g>. Активността ви в мрежата, включително имейлите и данните за сърфирането, е видима от доставчика ви на VPN."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Високоговорители и екрани"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Предложени устройства"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Как работи предаването"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Предаване"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Хората в близост със съвместими устройства с Bluetooth могат да слушат мултимедията, която предавате"</string>
diff --git a/packages/SystemUI/res/values-bn/strings.xml b/packages/SystemUI/res/values-bn/strings.xml
index deee72ff9b5e..33225b17ac03 100644
--- a/packages/SystemUI/res/values-bn/strings.xml
+++ b/packages/SystemUI/res/values-bn/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"স্পিকার &amp; ডিসপ্লে"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"সাজেস্ট করা ডিভাইস"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ব্রডকাস্ট কীভাবে কাজ করে"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"সম্প্রচার করুন"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"আশপাশে লোকজন যাদের মানানসই ব্লুটুথ ডিভাইস আছে, তারা আপনার ব্রডকাস্ট করা মিডিয়া শুনতে পারবেন"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• ক্যামেরা অ্যাপ ইনস্টল করুন"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• অ্যাপ সেট-আপ করা হয়ে গেছে"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• অন্তত একটি ডিভাইস উপলভ্য"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"নোট নেওয়ার শর্টকাট ব্যবহার করতে, ডিফল্ট কোনও নোট অ্যাপ বেছে নিন"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"অ্যাপ বেছে নিন"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"শর্টকাট টাচ করে ধরে রাখুন"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"বাতিল করুন"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"এখন স্ক্রিন পাল্টান"</string>
diff --git a/packages/SystemUI/res/values-bs/strings.xml b/packages/SystemUI/res/values-bs/strings.xml
index aa81bbea0612..ed9f44ffe6b0 100644
--- a/packages/SystemUI/res/values-bs/strings.xml
+++ b/packages/SystemUI/res/values-bs/strings.xml
@@ -755,7 +755,7 @@
<string name="accessibility_quick_settings_edit" msgid="1523745183383815910">"Urediti raspored postavki."</string>
<string name="accessibility_quick_settings_power_menu" msgid="6820426108301758412">"Meni napajanja"</string>
<string name="accessibility_quick_settings_page" msgid="7506322631645550961">"Stranica <xliff:g id="ID_1">%1$d</xliff:g> od <xliff:g id="ID_2">%2$d</xliff:g>"</string>
- <string name="tuner_lock_screen" msgid="2267383813241144544">"Zaključavanje ekrana"</string>
+ <string name="tuner_lock_screen" msgid="2267383813241144544">"Zaključani ekran"</string>
<string name="thermal_shutdown_title" msgid="2702966892682930264">"Telefon se isključio zbog pregrijavanja"</string>
<string name="thermal_shutdown_message" msgid="6142269839066172984">"Vaš telefon sada radi normalno.\nDodirnite za više informacija"</string>
<string name="thermal_shutdown_dialog_message" msgid="6745684238183492031">"Vaš telefon se pregrijao, pa se isključio da se ohladi. Telefon sada radi normalno.\n\nTelefon se može pregrijati ako:\n • Koristite aplikacije koje troše puno resursa (kao što su aplikacije za igranje, videozapise ili navigaciju)\n • Preuzimate ili otpremate velike fajlove\n • Koristite telefon na visokim temperaturama"</string>
@@ -767,10 +767,10 @@
<string name="high_temp_alarm_title" msgid="8654754369605452169">"Iskopčajte uređaj"</string>
<string name="high_temp_alarm_notify_message" msgid="3917622943609118956">"Uređaj se zagrijava u blizini priključka za punjenje. Ako je povezan s punjačem ili USB dodatkom, iskopčajte ga i vodite računa jer i kabl može biti topao."</string>
<string name="high_temp_alarm_help_care_steps" msgid="5017002218341329566">"Prikaz koraka za zaštitu"</string>
- <string name="lockscreen_shortcut_left" msgid="1238765178956067599">"Prečica lijevo"</string>
- <string name="lockscreen_shortcut_right" msgid="4138414674531853719">"Prečica desno"</string>
- <string name="lockscreen_unlock_left" msgid="1417801334370269374">"Prečica lijevo također otključava"</string>
- <string name="lockscreen_unlock_right" msgid="4658008735541075346">"Prečica desno također otključava"</string>
+ <string name="lockscreen_shortcut_left" msgid="1238765178956067599">"Lijeva prečica"</string>
+ <string name="lockscreen_shortcut_right" msgid="4138414674531853719">"Desna prečica"</string>
+ <string name="lockscreen_unlock_left" msgid="1417801334370269374">"Lijeva prečica također otključava"</string>
+ <string name="lockscreen_unlock_right" msgid="4658008735541075346">"Desna prečica također otključava"</string>
<string name="lockscreen_none" msgid="4710862479308909198">"Ništa"</string>
<string name="tuner_launch_app" msgid="3906265365971743305">"Pokrenite aplikaciju <xliff:g id="APP">%1$s</xliff:g>"</string>
<string name="tuner_other_apps" msgid="7767462881742291204">"Ostale aplikacije"</string>
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Zvučnici i ekrani"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Predloženi uređaji"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kako funkcionira emitiranje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emitirajte"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Osobe u vašoj blizini s kompatibilnim Bluetooth uređajima mogu slušati medijske sadržaje koje emitirate"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Instalirajte aplikaciju kamere"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Aplikacija je postavljena"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Dostupan je najmanje jedan uređaj"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Odaberite zadanu aplikaciju za bilješke da koristite prečicu za zapisivanje bilješki"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Odaberi aplikaciju"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Dodirnite i zadržite prečicu"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Otkaži"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Promijenite ekran sada"</string>
diff --git a/packages/SystemUI/res/values-ca/strings.xml b/packages/SystemUI/res/values-ca/strings.xml
index 4a756cd955d4..66be1c2bf5f9 100644
--- a/packages/SystemUI/res/values-ca/strings.xml
+++ b/packages/SystemUI/res/values-ca/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"S\'ha instal·lat una autoritat de certificació en aquest dispositiu. És possible que el trànsit de xarxa segura se supervisi o es modifiqui."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"L\'administrador ha activat el registre de xarxa, que supervisa el trànsit del teu dispositiu."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"L\'administrador ha activat el registre de xarxa, que monitora el trànsit al teu perfil de treball, però no al personal."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Aquest dispositiu es connecta a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. El teu proveïdor de VPN pot veure l\'activitat de la teva xarxa, inclosos els correus electrònics i les dades de navegació."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Aquest dispositiu es connecta a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. El teu administrador de TI pot veure l\'activitat de la teva xarxa, inclosos els correus electrònics i les dades de navegació."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Aquest dispositiu es connecta a Internet a través de <xliff:g id="VPN_APP_0">%1$s</xliff:g> i <xliff:g id="VPN_APP_1">%2$s</xliff:g>. El teu administrador de TI pot veure la teva activitat de xarxa, inclosos els correus electrònics i les dades de navegació."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Les aplicacions de treball es connecten a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. El teu administrador de TI i el teu proveïdor de VPN poden veure la teva activitat de xarxa en aplicacions de treball, inclosos els correus electrònics i les dades de navegació."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Les aplicacions personals es connecten a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. El teu proveïdor de VPN pot veure l\'activitat de la teva xarxa, inclosos els correus electrònics i les dades de navegació."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Altaveus i pantalles"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Dispositius suggerits"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Com funciona l\'emissió"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emet"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Les persones properes amb dispositius Bluetooth compatibles poden escoltar el contingut multimèdia que emets"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Tens una aplicació de càmera."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• L\'aplicació està configurada."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Almenys un dispositiu està disponible."</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Selecciona una aplicació de notes predeterminada per utilitzar la drecera de presa de notes"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Selecciona una aplicació"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Mantén premuda la drecera"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Cancel·la"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Canvia de pantalla ara"</string>
diff --git a/packages/SystemUI/res/values-cs/strings.xml b/packages/SystemUI/res/values-cs/strings.xml
index 9266338881c4..17a9566f396c 100644
--- a/packages/SystemUI/res/values-cs/strings.xml
+++ b/packages/SystemUI/res/values-cs/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"V zařízení je nainstalována certifikační autorita. Zabezpečený síťový provoz může být sledován nebo upravován."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Administrátor zapnul protokolování sítě, které monitoruje síťový provoz v zařízení."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Administrátor zapnul protokolování sítě, které monitoruje síťový provoz ve vašem pracovním profilu (ale ne v osobním)."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Toto zařízení je připojeno k internetu prostřednictvím aplikace <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaší síťovou aktivitu (jako jsou e-maily a údaje o prohlížení) vidí poskytovatel VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Toto zařízení je připojeno k internetu prostřednictvím aplikace <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaší síťovou aktivitu (jako jsou e-maily a údaje o prohlížení) vidí administrátor IT."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Toto zařízení je připojeno k internetu prostřednictvím aplikací <xliff:g id="VPN_APP_0">%1$s</xliff:g> a <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Vaší síťovou aktivitu (jako jsou e-maily a údaje o prohlížení) vidí administrátor IT."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Vaše pracovní aplikace jsou připojeny k internetu prostřednictvím aplikace <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaší síťovou aktivitu v pracovních aplikacích (jako jsou e-maily a údaje o prohlížení) vidí administrátor IT a poskytovatel VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Vaše osobní aplikace jsou připojeny k internetu prostřednictvím aplikace <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaší síťovou aktivitu (jako jsou e-maily a údaje o prohlížení) vidí poskytovatel VPN."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Reproduktory a displeje"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Navrhovaná zařízení"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Jak vysílání funguje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Vysílání"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Lidé ve vašem okolí s kompatibilními zařízeními Bluetooth mohou poslouchat média, která vysíláte"</string>
@@ -1027,7 +1029,7 @@
<string name="audio_status" msgid="4237055636967709208">"Poslouchá"</string>
<string name="game_status" msgid="1340694320630973259">"Hraji hru"</string>
<string name="empty_user_name" msgid="3389155775773578300">"Přátelé"</string>
- <string name="empty_status" msgid="5938893404951307749">"Pojďme chatovat!"</string>
+ <string name="empty_status" msgid="5938893404951307749">"Proberem to večer?"</string>
<string name="status_before_loading" msgid="1500477307859631381">"Obsah se brzy zobrazí"</string>
<string name="missed_call" msgid="4228016077700161689">"Zmeškaný hovor"</string>
<string name="messages_count_overflow_indicator" msgid="7850934067082006043">"<xliff:g id="NUMBER">%d</xliff:g>+"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Je nainstalována aplikace pro fotoaparát"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Aplikace je nastavena"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Je k dispozici alespoň jedno zařízení"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Vyberte výchozí aplikaci k psaní poznámek, ke které přidružíte zkratku pro poznámky"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Vyberte aplikaci"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Podržte zkratku"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Zrušit"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Přepnout obrazovky"</string>
diff --git a/packages/SystemUI/res/values-da/strings.xml b/packages/SystemUI/res/values-da/strings.xml
index f72688dc1d51..93705f528f10 100644
--- a/packages/SystemUI/res/values-da/strings.xml
+++ b/packages/SystemUI/res/values-da/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Der er installeret et nøglecenter på denne enhed. Din sikre netværkstrafik kan overvåges eller ændres."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Din administrator har aktiveret netværksregistrering, som overvåger trafik på din enhed."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Din administrator har aktiveret netværkslogging, som overvåger trafik på din arbejdsprofil, men ikke på din personlige profil."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Denne enhed har forbindelse til nettet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Din netværksaktivitet, herunder mails og browserdata, er synlig for VPN-udbyderen."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Denne enhed har forbindelse til internettet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Din netværksaktivitet, herunder mails og browserdata, er synlig for din it-administrator."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Denne enhed har forbindelse til internettet via <xliff:g id="VPN_APP_0">%1$s</xliff:g> og <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Din netværksaktivitet, herunder mails og browserdata, er synlig for din it-administrator."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Dine arbejdsapps har forbindelse til internettet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Din netværksaktivitet i arbejdsapps, herunder mails og browserdata, er synlig for din it-administrator og VPN-udbyder."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Dine personlige apps har forbindelse til nettet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Din netværksaktivitet, herunder mails og browserdata, er synlig for din VPN-udbyder."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Højttalere og skærme"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Foreslåede enheder"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Sådan fungerer udsendelser"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Udsendelse"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Personer i nærheden, som har kompatible Bluetooth-enheder, kan lytte til det medie, du udsender"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Installer en kameraapp"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Appen er konfigureret"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Mindst én enhed er tilgængelig"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Vælg en standardapp til noter for at bruge genvejen til notetagning"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Vælg app"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Hold fingeren på genvejen"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Annuller"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Skift skærm nu"</string>
diff --git a/packages/SystemUI/res/values-de/strings.xml b/packages/SystemUI/res/values-de/strings.xml
index 68d56bad8032..ce655a38ac7a 100644
--- a/packages/SystemUI/res/values-de/strings.xml
+++ b/packages/SystemUI/res/values-de/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Auf dem Gerät ist das Zertifikat einer Zertifizierungsstelle installiert. Eventuell wird dein sicherer Netzwerkverkehr überwacht oder bearbeitet."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Dein Administrator hat die Netzwerkprotokollierung aktiviert. Damit wird der Netzwerkverkehr auf deinem Gerät überwacht."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Dein Administrator hat die Netzwerkprotokollierung aktiviert. Damit werden die Zugriffe in deinem Arbeitsprofil erfasst, jedoch nicht in deinem privaten Profil."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Dieses Gerät ist über die <xliff:g id="VPN_APP">%1$s</xliff:g> mit dem Internet verbunden. Deine Netzwerkaktivitäten, einschließlich E-Mails und Browserdaten, sind für den VPN-Anbieter sichtbar."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Dieses Gerät ist über die <xliff:g id="VPN_APP">%1$s</xliff:g> mit dem Internet verbunden. Deine Netzwerkaktivitäten, einschließlich E-Mails und Browserdaten, sind für deinen IT-Administrator sichtbar."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Dieses Gerät ist über <xliff:g id="VPN_APP_0">%1$s</xliff:g> und <xliff:g id="VPN_APP_1">%2$s</xliff:g> mit dem Internet verbunden. Deine Netzwerkaktivitäten, einschließlich E-Mails und Browserdaten, sind für deinen IT-Administrator sichtbar."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Deine geschäftlichen Apps sind über <xliff:g id="VPN_APP">%1$s</xliff:g> mit dem Internet verbunden. Deine Netzwerkaktivitäten in geschäftlichen Apps, einschließlich E-Mails und Browserdaten, sind für deinen IT-Administrator und deinen VPN-Anbieter sichtbar."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Deine privaten Apps sind über <xliff:g id="VPN_APP">%1$s</xliff:g> mit dem Internet verbunden. Deine Netzwerkaktivitäten, einschließlich E-Mails und Browserdaten, sind für deinen VPN-Anbieter sichtbar."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Lautsprecher &amp; Displays"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Vorgeschlagene Geräte"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Funktionsweise von Nachrichten an alle"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Nachricht an alle"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Personen, die in der Nähe sind und kompatible Bluetooth-Geräten haben, können sich die Medien anhören, die du per Nachricht an alle sendest"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Kamera-App ist installiert"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Die App ist eingerichtet"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Mindestens ein Gerät ist verfügbar"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Wähle eine Standard-App für Notizen aus, die du für die Verknüpfung verwenden möchtest"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"App wählen"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Verknüpfung berühren &amp; halten"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Abbrechen"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Bildschirm jetzt wechseln"</string>
diff --git a/packages/SystemUI/res/values-el/strings.xml b/packages/SystemUI/res/values-el/strings.xml
index bc85b04c5549..3560cf74f5e2 100644
--- a/packages/SystemUI/res/values-el/strings.xml
+++ b/packages/SystemUI/res/values-el/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Ηχεία και οθόνες"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Προτεινόμενες συσκευές"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Πώς λειτουργεί η μετάδοση"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Μετάδοση"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Οι άνθρωποι με συμβατές συσκευές Bluetooth που βρίσκονται κοντά σας μπορούν να ακούσουν το μέσο που μεταδίδετε."</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Εγκαταστήσατε μια εφαρμογή κάμερας"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Η εφαρμογή έχει ρυθμιστεί"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Είναι διαθέσιμη τουλάχιστον μία συσκευή"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Επιλέξτε μια προεπιλεγμένη εφαρμογή σημειώσεων για να χρησιμοποιήσετε τη συντόμευση δημιουργίας σημειώσεων"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Επιλογή εφαρμογής"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Παρατεταμένο άγγιγμα συντόμευσης"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Ακύρωση"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Εναλλαγή οθονών τώρα"</string>
diff --git a/packages/SystemUI/res/values-en-rAU/strings.xml b/packages/SystemUI/res/values-en-rAU/strings.xml
index 78b46c26b664..11d22f715346 100644
--- a/packages/SystemUI/res/values-en-rAU/strings.xml
+++ b/packages/SystemUI/res/values-en-rAU/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"A certificate authority is installed on this device. Your secure network traffic may be monitored or modified."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Your admin has turned on network logging, which monitors traffic on your device."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Your admin has turned on network logging, which monitors traffic in your work profile but not in your personal profile."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"This device is connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity, including emails and browsing data, is visible to the VPN provider."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"This device is connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity, including emails and browsing data, is visible to your IT admin."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"This device is connected to the Internet through <xliff:g id="VPN_APP_0">%1$s</xliff:g> and <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Your network activity, including emails and browsing data, is visible to your IT admin."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Your work apps are connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity in work apps, including emails and browsing data, is visible to your IT admin and VPN provider."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Your personal apps are connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity, including emails and browsing data, is visible to your VPN provider."</string>
@@ -987,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Speakers &amp; displays"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Suggested devices"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Stop your shared session to move media to another device"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Stop"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"How broadcasting works"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"People near you with compatible Bluetooth devices can listen to the media that you\'re broadcasting"</string>
diff --git a/packages/SystemUI/res/values-en-rCA/strings.xml b/packages/SystemUI/res/values-en-rCA/strings.xml
index 0a46af549454..41c7bc500b4a 100644
--- a/packages/SystemUI/res/values-en-rCA/strings.xml
+++ b/packages/SystemUI/res/values-en-rCA/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Speakers &amp; Displays"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Suggested Devices"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Stop your shared session to move media to another device"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Stop"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"How broadcasting works"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"People near you with compatible Bluetooth devices can listen to the media you\'re broadcasting"</string>
diff --git a/packages/SystemUI/res/values-en-rGB/strings.xml b/packages/SystemUI/res/values-en-rGB/strings.xml
index 78b46c26b664..11d22f715346 100644
--- a/packages/SystemUI/res/values-en-rGB/strings.xml
+++ b/packages/SystemUI/res/values-en-rGB/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"A certificate authority is installed on this device. Your secure network traffic may be monitored or modified."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Your admin has turned on network logging, which monitors traffic on your device."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Your admin has turned on network logging, which monitors traffic in your work profile but not in your personal profile."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"This device is connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity, including emails and browsing data, is visible to the VPN provider."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"This device is connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity, including emails and browsing data, is visible to your IT admin."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"This device is connected to the Internet through <xliff:g id="VPN_APP_0">%1$s</xliff:g> and <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Your network activity, including emails and browsing data, is visible to your IT admin."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Your work apps are connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity in work apps, including emails and browsing data, is visible to your IT admin and VPN provider."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Your personal apps are connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity, including emails and browsing data, is visible to your VPN provider."</string>
@@ -987,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Speakers &amp; displays"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Suggested devices"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Stop your shared session to move media to another device"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Stop"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"How broadcasting works"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"People near you with compatible Bluetooth devices can listen to the media that you\'re broadcasting"</string>
diff --git a/packages/SystemUI/res/values-en-rIN/strings.xml b/packages/SystemUI/res/values-en-rIN/strings.xml
index 78b46c26b664..11d22f715346 100644
--- a/packages/SystemUI/res/values-en-rIN/strings.xml
+++ b/packages/SystemUI/res/values-en-rIN/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"A certificate authority is installed on this device. Your secure network traffic may be monitored or modified."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Your admin has turned on network logging, which monitors traffic on your device."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Your admin has turned on network logging, which monitors traffic in your work profile but not in your personal profile."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"This device is connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity, including emails and browsing data, is visible to the VPN provider."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"This device is connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity, including emails and browsing data, is visible to your IT admin."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"This device is connected to the Internet through <xliff:g id="VPN_APP_0">%1$s</xliff:g> and <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Your network activity, including emails and browsing data, is visible to your IT admin."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Your work apps are connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity in work apps, including emails and browsing data, is visible to your IT admin and VPN provider."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Your personal apps are connected to the Internet through <xliff:g id="VPN_APP">%1$s</xliff:g>. Your network activity, including emails and browsing data, is visible to your VPN provider."</string>
@@ -987,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Speakers &amp; displays"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Suggested devices"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Stop your shared session to move media to another device"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Stop"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"How broadcasting works"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"People near you with compatible Bluetooth devices can listen to the media that you\'re broadcasting"</string>
diff --git a/packages/SystemUI/res/values-en-rXC/strings.xml b/packages/SystemUI/res/values-en-rXC/strings.xml
index 9394cdea1155..de44510da113 100644
--- a/packages/SystemUI/res/values-en-rXC/strings.xml
+++ b/packages/SystemUI/res/values-en-rXC/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‏‏‎‎‏‏‎‎‏‏‎‎‎‎‎‎‏‏‎‏‎‏‏‏‎‎‏‏‎‎‏‎‏‎‎‎‏‎‎‎‏‎‎‎‎‏‎‎‏‎‎‏‏‏‏‎‏‏‎‎‎‏‎‎‏‏‎<xliff:g id="PERCENTAGE">%1$d</xliff:g>‎‏‎‎‏‏‏‎%%‎‏‎‎‏‎"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‎‎‏‏‎‏‏‏‏‏‏‏‏‏‏‎‏‏‏‏‎‏‏‎‎‎‎‏‎‎‏‎‏‎‎‎‎‏‏‎‎‏‎‎‎‏‏‏‏‏‏‎‏‎‏‎‏‏‎‎‎Speakers &amp; Displays‎‏‎‎‏‎"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‎‎‏‏‎‏‏‎‎‎‏‎‏‎‎‏‎‏‎‏‏‎‏‏‎‏‏‎‎‎‏‎‏‎‎‎‏‎‎‎‎‏‎‏‏‏‏‎‎‏‏‏‏‎‏‎‎‏‎‎Suggested Devices‎‏‎‎‏‎"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‎‏‎‏‎‏‎‎‎‏‎‏‎‏‏‎‏‎‏‎‎‎‎‎‎‏‏‏‏‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‎‏‏‎‎‏‏‎‎‎‏‏‎Stop your shared session to move media to another device‎‏‎‎‏‎"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‎‏‎‏‎‏‏‏‎‎‎‏‏‏‎‏‎‎‎‏‏‎‎‏‏‎‎‎‎‎‎‎‎‎‏‏‏‏‏‎‏‏‎‎‏‎‏‏‏‎‏‎‏‏‎‎‏‏‏‎‎‎Stop‎‏‎‎‏‎"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‏‎‏‎‏‎‎‏‎‏‎‎‎‎‏‎‎‏‏‏‎‏‏‏‎‏‎‏‎‎‎‏‎‏‏‏‏‎‎‎‎‎‏‏‎‏‏‏‎‎‏‏‏‏‏‏‎‎How broadcasting works‎‏‎‎‏‎"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‎‎‎‏‎‏‎‏‎‏‏‏‏‏‏‏‎‏‏‎‎‎‎‎‏‎‎‎‎‎‏‏‎‎‎‏‎‎‏‏‎‏‎‏‏‎‏‏‏‎‎‎‏‏‏‏‎‏‏‏‎Broadcast‎‏‎‎‏‎"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‎‎‎‎‏‎‏‏‎‏‎‏‏‎‏‏‏‏‏‏‏‎‏‏‏‏‏‎‎‏‏‎‎‎‏‎‎‎‎‏‎‏‏‎‎‏‏‏‏‎‏‎‎‏‏‏‏‎‎People near you with compatible Bluetooth devices can listen to the media you\'re broadcasting‎‏‎‎‏‎"</string>
diff --git a/packages/SystemUI/res/values-es-rUS/strings.xml b/packages/SystemUI/res/values-es-rUS/strings.xml
index 30236c1bec3c..af03e27b29ff 100644
--- a/packages/SystemUI/res/values-es-rUS/strings.xml
+++ b/packages/SystemUI/res/values-es-rUS/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Hay una autoridad de certificación instalada en este dispositivo. Es posible que se controle o modifique el tráfico de tu red segura."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Tu administrador activó el registro de red, que supervisa el tráfico en tu dispositivo."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"El administrador activó el registro de red, que supervisa el tráfico de tu perfil de trabajo, pero no el de tu perfil personal."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Este dispositivo está conectado a Internet mediante <xliff:g id="VPN_APP">%1$s</xliff:g>. El proveedor de VPN puede ver tu actividad de red (incluidos los correos electrónicos y los datos de navegación)."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Este dispositivo está conectado a Internet mediante <xliff:g id="VPN_APP">%1$s</xliff:g>. El administrador de TI puede ver tu actividad de red (incluidos los correos electrónicos y datos de navegación)."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Este dispositivo está conectado a Internet mediante <xliff:g id="VPN_APP_0">%1$s</xliff:g> y <xliff:g id="VPN_APP_1">%2$s</xliff:g>. El administrador de TI puede ver tu actividad de red (incluidos tus correos electrónicos y datos de navegación)."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Tus apps de trabajo están conectadas a Internet mediante <xliff:g id="VPN_APP">%1$s</xliff:g>. El administrador de TI y el proveedor de VPN pueden ver tu actividad de red en las apps de trabajo (incluidos los correos electrónicos y los datos de navegación)."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Tus apps personales están conectadas a Internet mediante <xliff:g id="VPN_APP">%1$s</xliff:g>. El proveedor de VPN puede ver tu actividad (incluidos los correos electrónicos y los datos de navegación)."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Bocinas y pantallas"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Dispositivos sugeridos"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cómo funciona la transmisión"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmisión"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Las personas cercanas con dispositivos Bluetooth compatibles pueden escuchar el contenido multimedia que transmites"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Se instaló la app de Cámara."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Se configuró la app."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Hay al menos un dispositivo disponible."</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Selecciona una app de notas predeterminada para usar el atajo de toma de notas"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Seleccionar app"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Mantener presionado atajo"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Cancelar"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Cambiar de pantalla ahora"</string>
diff --git a/packages/SystemUI/res/values-es/strings.xml b/packages/SystemUI/res/values-es/strings.xml
index 969029e4f8dd..76ca5f3a0cbc 100644
--- a/packages/SystemUI/res/values-es/strings.xml
+++ b/packages/SystemUI/res/values-es/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Se ha instalado una entidad de certificación en este dispositivo. Es posible que se supervise o se modifique tu tráfico de red seguro."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"El administrador ha activado el registro de la red para supervisar el tráfico en tu dispositivo."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Tu administrador ha activado el registro de la red, por lo que se monitorizará el tráfico de tu perfil de trabajo, aunque no el de tu perfil personal."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Este dispositivo está conectado a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. Tu actividad de red, como tus correos y tus datos de navegación, es visible para tu proveedor de VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Este dispositivo está conectado a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. Tu actividad de red, como tus correos y tus datos de navegación, es visible para tu administrador de TI."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Este dispositivo está conectado a Internet a través de <xliff:g id="VPN_APP_0">%1$s</xliff:g> y <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Tu actividad de red, como los correos electrónicos y los datos de navegación, es visible para tu administrador de TI."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Tus aplicaciones de trabajo están conectadas a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. Tu actividad de red en las aplicaciones de trabajo, incluidos los correos electrónicos y los datos de navegación, es visible para tu administrador de TI y tu proveedor de VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Tus aplicaciones personales están conectadas a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. Tu actividad de red, como los correos electrónicos y los datos de navegación, es visible para tu proveedor de VPN."</string>
@@ -880,7 +878,7 @@
<string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"Toca para abrir funciones de accesibilidad. Personaliza o sustituye este botón en Ajustes.\n\n"<annotation id="link">"Ver ajustes"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"Mueve el botón hacia el borde para ocultarlo temporalmente"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"Deshacer"</string>
- <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Acceso directo a <xliff:g id="FEATURE_NAME">%s</xliff:g> eliminado"</string>
+ <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Acceso directo a <xliff:g id="FEATURE_NAME">%s</xliff:g> quitado"</string>
<string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{# acceso directo eliminado}many{# accesos directos eliminados}other{# accesos directos eliminados}}"</string>
<string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"Mover arriba a la izquierda"</string>
<string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"Mover arriba a la derecha"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Altavoces y pantallas"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Sugerencias de dispositivos"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cómo funciona la emisión"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emisión"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Las personas cercanas con dispositivos Bluetooth compatibles pueden escuchar el contenido multimedia que emites"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Debes instalar una aplicación de cámara"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• La aplicación debe estar configurada"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Al menos un dispositivo debe estar disponible"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Selecciona una aplicación de notas predeterminada para usar el acceso directo de toma de notas"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Seleccionar aplicación"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Mantén pulsado el acceso directo"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Cancelar"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Cambia de pantalla ahora"</string>
diff --git a/packages/SystemUI/res/values-et/strings.xml b/packages/SystemUI/res/values-et/strings.xml
index 9a62686070d0..8f8290b92260 100644
--- a/packages/SystemUI/res/values-et/strings.xml
+++ b/packages/SystemUI/res/values-et/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Sertifikaadi volitus on sellesse seadmesse installitud. Teie turvalist võrguliiklust võidakse jälgida ja muuta."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Teie administraator lülitas sisse võrgu logimise funktsiooni, mis jälgib teie seadmes liiklust."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Teie administraator on sisse lülitanud võrgu logimise funktsiooni, mis jälgib liiklust teie võrguprofiilil, kuid mitte teie isiklikul profiilil."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"See seade on Internetiga ühendatud rakenduse <xliff:g id="VPN_APP">%1$s</xliff:g> kaudu. Teie võrgutegevus, sealhulgas meilid ja sirvimisandmed, on nähtav teie VPN-teenuse pakkujale."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"See seade on Internetiga ühendatud rakenduse <xliff:g id="VPN_APP">%1$s</xliff:g> kaudu. Teie võrgutegevus, sealhulgas meilid ja sirvimisandmed, on nähtav teie IT-administraatorile."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"See seade on ühendatud internetiga rakenduste <xliff:g id="VPN_APP_0">%1$s</xliff:g> ja <xliff:g id="VPN_APP_1">%2$s</xliff:g> kaudu. Teie võrgutegevused (sealhulgas meilid ja sirvimisandmed) on nähtavad teie IT-administraatorile."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Teie töörakendused on ühendatud internetiga rakenduse <xliff:g id="VPN_APP">%1$s</xliff:g> kaudu. Teie töörakenduste võrgutegevused (sealhulgas meilid ja sirvimisandmed) on nähtavad teie IT-administraatorile ning VPN-i teenusepakkujale."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Teie isiklikud rakendused on internetiga rakenduse <xliff:g id="VPN_APP">%1$s</xliff:g> kaudu ühendatud. Teie võrgutegevus, sealhulgas meilid ja sirvimisandmed, on nähtav teie VPN-i teenusepakkujale."</string>
@@ -987,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Kõlarid ja ekraanid"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Soovitatud seadmed"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Peatage jagatud seanss, et meedia teise seadmesse teisaldada"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Peata"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kuidas ülekandmine toimib?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Ülekanne"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Teie läheduses olevad inimesed, kellel on ühilduvad Bluetooth-seadmed, saavad kuulata teie ülekantavat meediat"</string>
diff --git a/packages/SystemUI/res/values-eu/strings.xml b/packages/SystemUI/res/values-eu/strings.xml
index 1bcee0e07c36..7b4e12d3512e 100644
--- a/packages/SystemUI/res/values-eu/strings.xml
+++ b/packages/SystemUI/res/values-eu/strings.xml
@@ -902,7 +902,7 @@
<string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"Erabilerraztasun-eginbideak irekitzeko, sakatu hau. Ezarpenetan pertsonalizatu edo ordez dezakezu botoia.\n\n"<annotation id="link">"Ikusi ezarpenak"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"Eraman botoia ertzera aldi baterako ezkutatzeko"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"Desegin"</string>
- <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"<xliff:g id="FEATURE_NAME">%s</xliff:g> eginbidearen lasterbidea kendu da"</string>
+ <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Kendu da lasterbidea (<xliff:g id="FEATURE_NAME">%s</xliff:g>)"</string>
<string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{# lasterbide kendu da}other{# lasterbide kendu dira}}"</string>
<string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"Eraman goialdera, ezkerretara"</string>
<string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"Eraman goialdera, eskuinetara"</string>
@@ -1009,6 +1009,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"%% <xliff:g id="PERCENTAGE">%1$d</xliff:g>"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Bozgorailuak eta pantailak"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Iradokitako gailuak"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Gelditu partekatutako saioa multimedia-edukia beste gailu batera eramateko"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Gelditu"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Nola funtzionatzen dute iragarpenek?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Iragarri"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Bluetooth bidezko gailu bateragarriak dituzten inguruko pertsonek iragartzen ari zaren multimedia-edukia entzun dezakete"</string>
@@ -1146,10 +1148,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Kamera-aplikazio bat instalatu da."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Aplikazioa konfiguratuta dago."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Gutxienez gailu bat erabilgarri dago."</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Oharrak idazteko lasterbidea erabiltzeko, hautatu oharretarako aplikazio lehenetsia."</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Hautatu aplikazioa"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Eduki sakatuta lasterbidea"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Utzi"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Aldatu pantaila batetik bestera"</string>
diff --git a/packages/SystemUI/res/values-fa/strings.xml b/packages/SystemUI/res/values-fa/strings.xml
index e1dd7766800e..b5c8f1f870a4 100644
--- a/packages/SystemUI/res/values-fa/strings.xml
+++ b/packages/SystemUI/res/values-fa/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"بلندگوها و نمایشگرها"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"دستگاه‌های پیشنهادی"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"همه‌فرتستی چطور کار می‌کند"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"همه‌فرستی"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"‏افرادی که در اطرافتان دستگاه‌های Bluetooth سازگار دارند می‌توانند به رسانه‌ای که همه‌فرستی می‌کنید گوش کنند"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• برنامه دوربین نصب شده باشد"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• برنامه راه‌اندازی شده باشد"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• حداقل یک دستگاه دردسترس باشد"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"برنامه یادداشت پیش‌فرضی را برای میان‌بر یادداشت‌برداری انتخاب کنید"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"انتخاب برنامه"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"میان‌بر را لمس کنید و نگه دارید"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"لغو کردن"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"صفحه‌ها اکنون جابه‌جا می‌شود"</string>
diff --git a/packages/SystemUI/res/values-fi/strings.xml b/packages/SystemUI/res/values-fi/strings.xml
index 25170e47d079..d8315cd0b6fc 100644
--- a/packages/SystemUI/res/values-fi/strings.xml
+++ b/packages/SystemUI/res/values-fi/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Laitteeseen on asennettu varmenteen myöntäjä. Suojattua verkkoliikennettäsi voidaan valvoa tai muuttaa."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Järjestelmänvalvoja on ottanut käyttöön verkkolokitietojen tallentamisen, joka valvoo laitteellasi tapahtuvaa liikennettä."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Järjestelmänvalvoja on ottanut käyttöön verkkolokitietojen tallentamisen. Sen avulla seurataan liikennettä työprofiilissasi mutta ei henkilökohtaisessa profiilissasi."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Laite on yhdistetty internetiin tämän kautta: <xliff:g id="VPN_APP">%1$s</xliff:g>. Verkkotoimintasi, mukaan lukien sähköpostit ja selausdata, näkyy VPN-palveluntarjoajalle."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Laite on yhdistetty internetiin tämän kautta: <xliff:g id="VPN_APP">%1$s</xliff:g>. Verkkotoimintasi, mukaan lukien sähköpostit ja selausdata, näkyy IT-järjestelmänvalvojalle."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Laite on yhdistetty internetiin näiden kautta: <xliff:g id="VPN_APP_0">%1$s</xliff:g> ja <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Verkkotoimintasi, mukaan lukien sähköpostit ja selausdata, näkyy IT-järjestelmänvalvojalle."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Työsovelluksesi on yhdistetty internetiin tämän kautta: <xliff:g id="VPN_APP">%1$s</xliff:g>. Verkkotoimintasi työsovelluksissa, mukaan lukien sähköpostit ja selausdata, näkyy IT-järjestelmänvalvojalle ja VPN-palveluntarjoajalle."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Henkilökohtaiset sovelluksesi on yhdistetty internetiin tämän kautta: <xliff:g id="VPN_APP">%1$s</xliff:g>. Verkkotoimintasi, mukaan lukien sähköpostit ja selausdata, näkyy VPN-palveluntarjoajalle."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Kaiuttimet ja näytöt"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Ehdotetut laitteet"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Miten lähetys toimii"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Lähetys"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Lähistöllä olevat ihmiset, joilla on yhteensopiva Bluetooth-laite, voivat kuunnella lähettämääsi mediaa"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Asenna kamerasovellus"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Sovellus on otettu käyttöön"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Ainakin yksi laite on käytettävissä"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Valitse muistiinpanojen tekemisen oletussovellus, jota käytetään pikanäppäimen avulla"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Valitse sovellus"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Kosketa pikakuvaketta pitkään"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Peru"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Vaihda näyttöä nyt"</string>
diff --git a/packages/SystemUI/res/values-fr-rCA/strings.xml b/packages/SystemUI/res/values-fr-rCA/strings.xml
index f6eb689a7dd2..b40bec019851 100644
--- a/packages/SystemUI/res/values-fr-rCA/strings.xml
+++ b/packages/SystemUI/res/values-fr-rCA/strings.xml
@@ -498,10 +498,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Une autorité de certification est installée sur cet appareil. Votre trafic sur le réseau sécurisé peut être contrôlé ou modifié."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Votre administrateur a activé la journalisation réseau, qui surveille le trafic sur votre appareil."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Votre administrateur a activé la journalisation réseau, qui surveille le trafic dans votre profil professionnel, mais pas dans votre profil personnel."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Cet appareil est connecté à Internet par l\'intermédiaire de <xliff:g id="VPN_APP">%1$s</xliff:g>. Votre activité réseau, y compris les courriels et les données de navigation, est visible par le fournisseur de RPV."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Cet appareil est connecté à Internet par l\'intermédiaire de <xliff:g id="VPN_APP">%1$s</xliff:g>. Votre activité réseau, y compris les courriels et les données de navigation, est visible par votre administrateur informatique."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Cet appareil est connecté à Internet par l\'intermédiaire de <xliff:g id="VPN_APP_0">%1$s</xliff:g> et de <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Votre activité réseau, y compris les courriels et les données de navigation, est visible par votre administrateur informatique."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Vos applications professionnelles sont connectées à Internet par l\'intermédiaire de <xliff:g id="VPN_APP">%1$s</xliff:g>. Votre activité réseau dans les applications professionnelles, y compris les courriels et les données de navigation, est visible par votre administrateur informatique et par votre fournisseur de RPV."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Vos applications personnelles sont connectées à Internet par l\'intermédiaire de <xliff:g id="VPN_APP">%1$s</xliff:g>. Votre activité réseau, y compris les courriels et les données de navigation, est visible par votre fournisseur de RPV."</string>
@@ -1026,6 +1024,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Haut-parleurs et écrans"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Appareils suggérés"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Fonctionnement de la diffusion"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Diffusion"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Les personnes à proximité disposant d\'appareils Bluetooth compatibles peuvent écouter le contenu multimédia que vous diffusez"</string>
@@ -1163,10 +1165,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• qu\'une application de caméra est installée;"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• que cette application est configurée;"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• qu\'au moins un appareil est utilisable;"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Sélectionnez une application de prise de notes par défaut pour utiliser le raccourci de prise de notes"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Sélectionner l\'application"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Maintenir le doigt sur raccourci"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Annuler"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Changer d\'écran maintenant"</string>
diff --git a/packages/SystemUI/res/values-fr/strings.xml b/packages/SystemUI/res/values-fr/strings.xml
index 21e410998385..d7e0a4f251f9 100644
--- a/packages/SystemUI/res/values-fr/strings.xml
+++ b/packages/SystemUI/res/values-fr/strings.xml
@@ -96,25 +96,19 @@
<string name="screenshot_detected_template" msgid="7940376642921719915">"<xliff:g id="APPNAME">%1$s</xliff:g> a détecté cette capture d\'écran."</string>
<string name="screenshot_detected_multiple_template" msgid="7644827792093819241">"<xliff:g id="APPNAME">%1$s</xliff:g> et d\'autres applis ouvertes ont détecté cette capture d\'écran."</string>
<string name="app_clips_save_add_to_note" msgid="3460200751278069445">"Ajouter à la note"</string>
- <!-- no translation found for screenrecord_title (4257171601439507792) -->
- <skip />
+ <string name="screenrecord_title" msgid="4257171601439507792">"Enregistreur d\'écran"</string>
<string name="screenrecord_background_processing_label" msgid="7244617554884238898">"Enregistrement de l\'écran…"</string>
<string name="screenrecord_channel_description" msgid="4147077128486138351">"Notification en cours pour une session d\'enregistrement de l\'écran"</string>
- <!-- no translation found for screenrecord_permission_dialog_title (303380743267672953) -->
- <skip />
- <!-- no translation found for screenrecord_permission_dialog_warning_entire_screen (4152602778470789965) -->
- <skip />
- <!-- no translation found for screenrecord_permission_dialog_warning_single_app (6818309727772146138) -->
- <skip />
- <!-- no translation found for screenrecord_permission_dialog_continue (5811122652514424967) -->
- <skip />
+ <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"Lancer l\'enregistrement ?"</string>
+ <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Lorsque vous enregistrez, Android a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Faites donc attention aux éléments tels que les mots de passe, détails de mode de paiement, messages, photos et contenus audio et vidéo."</string>
+ <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"Lorsque vous enregistrez une appli, Android a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Faites donc attention aux éléments tels que les mots de passe, détails de mode de paiement, messages et contenus audio et vidéo."</string>
+ <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"Lancer l\'enregistrement"</string>
<string name="screenrecord_audio_label" msgid="6183558856175159629">"Enregistrer l\'audio"</string>
<string name="screenrecord_device_audio_label" msgid="9016927171280567791">"Audio de l\'appareil"</string>
<string name="screenrecord_device_audio_description" msgid="4922694220572186193">"Son provenant de l\'appareil (musique, appels et sonneries, etc.)"</string>
<string name="screenrecord_mic_label" msgid="2111264835791332350">"Micro"</string>
<string name="screenrecord_device_audio_and_mic_label" msgid="1831323771978646841">"Audio de l\'appareil et micro"</string>
- <!-- no translation found for screenrecord_continue (4055347133700593164) -->
- <skip />
+ <string name="screenrecord_continue" msgid="4055347133700593164">"Commencer"</string>
<string name="screenrecord_ongoing_screen_only" msgid="4459670242451527727">"Enregistrement de l\'écran…"</string>
<string name="screenrecord_ongoing_screen_and_audio" msgid="5351133763125180920">"Enregistrement de l\'écran et de l\'audio…"</string>
<string name="screenrecord_taps_label" msgid="1595690528298857649">"Afficher les points touchés sur l\'écran"</string>
@@ -400,42 +394,24 @@
<string name="user_remove_user_message" msgid="6702834122128031833">"Toutes les applications et les données de cet utilisateur seront supprimées."</string>
<string name="user_remove_user_remove" msgid="8387386066949061256">"Supprimer"</string>
<string name="media_projection_dialog_title" msgid="3316063622495360646">"Démarrer l\'enregistrement ou la diffusion avec <xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> ?"</string>
- <!-- no translation found for media_projection_dialog_warning (1303664408388363598) -->
- <skip />
- <!-- no translation found for media_projection_sys_service_dialog_title (3751133258891897878) -->
- <skip />
- <!-- no translation found for media_projection_sys_service_dialog_warning (2443872865267330320) -->
- <skip />
- <!-- no translation found for screen_share_permission_dialog_option_entire_screen (3131200488455089620) -->
- <skip />
- <!-- no translation found for screen_share_permission_dialog_option_single_app (4350961814397220929) -->
- <skip />
- <!-- no translation found for screen_share_permission_app_selector_title (1404878013670347899) -->
- <skip />
- <!-- no translation found for media_projection_entry_app_permission_dialog_title (9155535851866407199) -->
- <skip />
- <!-- no translation found for media_projection_entry_app_permission_dialog_warning_entire_screen (8736391633234144237) -->
- <skip />
- <!-- no translation found for media_projection_entry_app_permission_dialog_warning_single_app (5211695779082563959) -->
- <skip />
- <!-- no translation found for media_projection_entry_app_permission_dialog_continue (295463518195075840) -->
- <skip />
- <!-- no translation found for media_projection_entry_cast_permission_dialog_title (8860150223172993547) -->
- <skip />
- <!-- no translation found for media_projection_entry_cast_permission_dialog_warning_entire_screen (1986212276016817231) -->
- <skip />
- <!-- no translation found for media_projection_entry_cast_permission_dialog_warning_single_app (9900961380294292) -->
- <skip />
- <!-- no translation found for media_projection_entry_cast_permission_dialog_continue (7209890669948870042) -->
- <skip />
- <!-- no translation found for media_projection_entry_generic_permission_dialog_title (4519802931547483628) -->
- <skip />
- <!-- no translation found for media_projection_entry_generic_permission_dialog_warning_entire_screen (5407906851409410209) -->
- <skip />
- <!-- no translation found for media_projection_entry_generic_permission_dialog_warning_single_app (3454859977888159495) -->
- <skip />
- <!-- no translation found for media_projection_entry_generic_permission_dialog_continue (8640381403048097116) -->
- <skip />
+ <string name="media_projection_dialog_warning" msgid="1303664408388363598">"<xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> aura accès à toutes les informations visibles sur votre écran ou lues depuis votre appareil pendant un enregistrement ou une diffusion de contenu. Il peut s\'agir de mots de passe, détails de mode de paiement, photos, messages ou encore contenus audio lus."</string>
+ <string name="media_projection_sys_service_dialog_title" msgid="3751133258891897878">"Commencer à enregistrer ou à caster ?"</string>
+ <string name="media_projection_sys_service_dialog_warning" msgid="2443872865267330320">"Le service qui fournit cette fonction aura accès à toutes les infos visibles sur votre écran ou lues depuis votre appareil pendant un enregistrement ou une diffusion de contenu. Il peut s\'agir de mots de passe, détails de mode de paiement, photos, messages ou encore contenus audio lus."</string>
+ <string name="screen_share_permission_dialog_option_entire_screen" msgid="3131200488455089620">"Tout l\'écran"</string>
+ <string name="screen_share_permission_dialog_option_single_app" msgid="4350961814397220929">"Une seule appli"</string>
+ <string name="screen_share_permission_app_selector_title" msgid="1404878013670347899">"Partager ou enregistrer une appli"</string>
+ <string name="media_projection_entry_app_permission_dialog_title" msgid="9155535851866407199">"Commencer à enregistrer ou à caster avec <xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> ?"</string>
+ <string name="media_projection_entry_app_permission_dialog_warning_entire_screen" msgid="8736391633234144237">"Lorsque vous partagez, enregistrez ou castez, <xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Faites donc attention aux éléments tels que les mots de passe, détails de mode de paiement, messages, photos et contenus audio et vidéo."</string>
+ <string name="media_projection_entry_app_permission_dialog_warning_single_app" msgid="5211695779082563959">"Lorsque vous partagez, enregistrez ou castez une appli, <xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Faites donc attention aux éléments tels que les mots de passe, détails de mode de paiement, messages et contenus audio et vidéo."</string>
+ <string name="media_projection_entry_app_permission_dialog_continue" msgid="295463518195075840">"Commencer"</string>
+ <string name="media_projection_entry_cast_permission_dialog_title" msgid="8860150223172993547">"Commencer à caster ?"</string>
+ <string name="media_projection_entry_cast_permission_dialog_warning_entire_screen" msgid="1986212276016817231">"Lorsque vous castez, Android a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Faites donc attention aux éléments tels que les mots de passe, détails de mode de paiement, messages, photos et contenus audio et vidéo."</string>
+ <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="9900961380294292">"Lorsque vous castez une appli, Android a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Faites donc attention aux éléments tels que les mots de passe, détails de mode de paiement, messages et contenus audio et vidéo."</string>
+ <string name="media_projection_entry_cast_permission_dialog_continue" msgid="7209890669948870042">"Commencer à caster"</string>
+ <string name="media_projection_entry_generic_permission_dialog_title" msgid="4519802931547483628">"Commencer à partager ?"</string>
+ <string name="media_projection_entry_generic_permission_dialog_warning_entire_screen" msgid="5407906851409410209">"Lorsque vous partagez, enregistrez ou castez, Android a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Faites donc attention aux éléments tels que les mots de passe, détails de mode de paiement, messages, photos et contenus audio et vidéo."</string>
+ <string name="media_projection_entry_generic_permission_dialog_warning_single_app" msgid="3454859977888159495">"Lorsque vous partagez, enregistrez ou castez une appli, Android a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Faites donc attention aux éléments tels que les mots de passe, détails de mode de paiement, messages et contenus audio et vidéo."</string>
+ <string name="media_projection_entry_generic_permission_dialog_continue" msgid="8640381403048097116">"Commencer"</string>
<string name="screen_capturing_disabled_by_policy_dialog_title" msgid="2113331792064527203">"Bloquée par votre administrateur informatique"</string>
<string name="screen_capturing_disabled_by_policy_dialog_description" msgid="6015975736747696431">"La capture d\'écran est désactivée conformément aux règles relatives à l\'appareil"</string>
<string name="clear_all_notifications_text" msgid="348312370303046130">"Tout effacer"</string>
@@ -484,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Une autorité de certification est installée sur cet appareil. Votre trafic sur le réseau sécurisé peut être contrôlé ou modifié."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Votre administrateur a activé la journalisation du réseau, pour contrôler le trafic sur votre appareil."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Votre administrateur a activé la journalisation réseau, qui surveille le trafic de votre profil professionnel, mais pas celui de votre profil personnel."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Cet appareil est connecté à Internet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Le fournisseur de VPN a accès à votre activité réseau (e-mails, données de navigation, etc.)."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Cet appareil est connecté à Internet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Votre administrateur informatique a accès à votre activité réseau (e-mails, données de navigation, etc.)."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Cet appareil est connecté à Internet via <xliff:g id="VPN_APP_0">%1$s</xliff:g> et <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Votre administrateur informatique a accès à votre activité réseau (e-mails, données de navigation, etc.)."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Vos applis professionnelles sont connectées à Internet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Votre administrateur informatique et votre fournisseur de VPN ont accès à votre activité réseau dans les applis professionnelles (e-mails, données de navigation, etc.)."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Vos applis personnelles sont connectées à Internet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Votre fournisseur de VPN a accès à votre activité réseau (e-mails, données de navigation, etc.)."</string>
@@ -1011,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Enceintes et écrans"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Appareils suggérés"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Fonctionnement des annonces"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Annonce"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Les personnes à proximité équipées d\'appareils Bluetooth compatibles peuvent écouter le contenu multimédia que vous diffusez"</string>
@@ -1148,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Installer une appli d\'appareil photo"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• L\'appli est configurée"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Au moins un appareil est disponible"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Sélectionnez une appli de notes par défaut pour utiliser le raccourci de prise de notes"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Sélectionner une appli"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Appuyez de manière prolongée sur raccourci"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Annuler"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Changer d\'écran maintenant"</string>
@@ -1164,7 +1140,7 @@
<string name="stylus_battery_low_percentage" msgid="1620068112350141558">"<xliff:g id="PERCENTAGE">%s</xliff:g> de batterie restante"</string>
<string name="stylus_battery_low_subtitle" msgid="3583843128908823273">"Connectez votre stylet à un chargeur"</string>
<string name="stylus_battery_low" msgid="7134370101603167096">"La batterie du stylet est faible"</string>
- <string name="video_camera" msgid="7654002575156149298">"Caméra vidéo"</string>
+ <string name="video_camera" msgid="7654002575156149298">"Caméra"</string>
<string name="call_from_work_profile_title" msgid="6991157106804289643">"Impossible d\'appeler depuis ce profil"</string>
<string name="call_from_work_profile_text" msgid="3458704745640229638">"Votre règle professionnelle ne vous permet de passer des appels que depuis le profil professionnel"</string>
<string name="call_from_work_profile_action" msgid="2937701298133010724">"Passer au profil professionnel"</string>
diff --git a/packages/SystemUI/res/values-gl/strings.xml b/packages/SystemUI/res/values-gl/strings.xml
index 144bec2b797f..b3b8a984b987 100644
--- a/packages/SystemUI/res/values-gl/strings.xml
+++ b/packages/SystemUI/res/values-gl/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Este dispositivo ten unha autoridade de certificación instalada. É posible que se controle ou se modifique o teu tráfico de rede segura."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"O administrador activou o rexistro na rede, que controla o tráfico do teu dispositivo."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"O administrador activou o rexistro na rede, que supervisa o tráfico do teu perfil de traballo, pero non o do perfil persoal."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Este dispositivo está conectado a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. O fornecedor de VPN pode ver a actividade que levas a cabo na rede (por exemplo, os correos electrónicos e os datos de navegación)."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Este dispositivo está conectado a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. O teu administrador de TI pode ver a actividade que levas a cabo na rede (por exemplo, os correos electrónicos e os datos de navegación)."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Este dispositivo está conectado a Internet a través de <xliff:g id="VPN_APP_0">%1$s</xliff:g> e de <xliff:g id="VPN_APP_1">%2$s</xliff:g>. O teu administrador de TI pode ver a actividade que levas a cabo na rede (por exemplo, os correos electrónicos e os datos de navegación)."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"As túas aplicacións do traballo están conectadas a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. O teu administrador de TI e o fornecedor da VPN poden ver a actividade que levas a cabo na rede a través das aplicacións do traballo (por exemplo, os correos electrónicos e os datos de navegación)."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"As túas aplicacións persoais están conectadas a Internet a través de <xliff:g id="VPN_APP">%1$s</xliff:g>. O fornecedor da VPN pode ver a actividade que levas a cabo na rede (por exemplo, os correos electrónicos e os datos de navegación)."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Altofalantes e pantallas"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Dispositivos suxeridos"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Como funcionan as difusións?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Difusión"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"As persoas que estean preto de ti e que dispoñan de dispositivos Bluetooth compatibles poden escoitar o contido multimedia que difundas"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Debes instalar a aplicación de cámara"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• A aplicación debe estar configurada"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Ten que haber polo menos un dispositivo dispoñible"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Selecciona unha aplicación de notas predeterminada para usar o atallo de tomar notas"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Seleccionar aplicación"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Mantén premido o atallo"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Cancelar"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Cambiar de pantalla agora"</string>
diff --git a/packages/SystemUI/res/values-gu/strings.xml b/packages/SystemUI/res/values-gu/strings.xml
index 3be94748b6d4..f3b2648860a5 100644
--- a/packages/SystemUI/res/values-gu/strings.xml
+++ b/packages/SystemUI/res/values-gu/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"સ્પીકર અને ડિસ્પ્લે"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"સૂચવેલા ડિવાઇસ"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"બ્રોડકાસ્ટ પ્રક્રિયાની કામ કરવાની રીત"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"બ્રોડકાસ્ટ કરો"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"સુસંગત બ્લૂટૂથ ડિવાઇસ ધરાવતા નજીકના લોકો તમે જે મીડિયા બ્રોડકાસ્ટ કરી રહ્યાં છો તે સાંભળી શકે છે"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• કૅમેરા ઍપ ઇન્સ્ટૉલ કરી છે"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• ઍપનું સેટઅપ કરેલું છે"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• ઓછામાં ઓછું એક ડિવાઇસ ઉપલબ્ધ છે"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"નોંધ લેવાના શૉર્ટકટનો ઉપયોગ કરવા માટે, નોંધ લેનારી કોઈ ડિફૉલ્ટ ઍપ પસંદ કરો"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"ઍપ પસંદ કરો"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"શૉર્ટકટને ટચ વડે પળભર દબાવી રાખો"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"રદ કરો"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"હમણાં સ્ક્રીન સ્વિચ કરો"</string>
diff --git a/packages/SystemUI/res/values-hi/strings.xml b/packages/SystemUI/res/values-hi/strings.xml
index 4b14035db131..a74716eb715f 100644
--- a/packages/SystemUI/res/values-hi/strings.xml
+++ b/packages/SystemUI/res/values-hi/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"स्पीकर और डिसप्ले"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"सुझाए गए डिवाइस"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"मीडिया को किसी दूसरे डिवाइस में ट्रांसफ़र करने के लिए, अपने शेयर किए गए सेशन को बंद करें"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"बंद करें"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ब्रॉडकास्ट करने की सुविधा कैसे काम करती है"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ब्रॉडकास्ट करें"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"आपके आस-पास मौजूद लोग, ब्रॉडकास्ट किए जा रहे मीडिया को सुन सकते हैं. हालांकि, इसके लिए उनके पास ऐसे ब्लूटूथ डिवाइस होने चाहिए जिन पर मीडिया चलाया जा सके"</string>
diff --git a/packages/SystemUI/res/values-hr/strings.xml b/packages/SystemUI/res/values-hr/strings.xml
index d324c701668d..0f7960b7938e 100644
--- a/packages/SystemUI/res/values-hr/strings.xml
+++ b/packages/SystemUI/res/values-hr/strings.xml
@@ -878,7 +878,7 @@
<string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"Dodirnite za otvaranje značajki pristupačnosti. Prilagodite ili zamijenite taj gumb u postavkama.\n\n"<annotation id="link">"Pregledajte postavke"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"Pomaknite gumb do ruba da biste ga privremeno sakrili"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"Poništi"</string>
- <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Uklonjen je prečac za <xliff:g id="FEATURE_NAME">%s</xliff:g>"</string>
+ <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Uklonjen je prečac za uslugu <xliff:g id="FEATURE_NAME">%s</xliff:g>"</string>
<string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{Uklonjen je # prečac}one{Uklonjen je # prečac}few{Uklonjena su # prečaca}other{Uklonjeno je # prečaca}}"</string>
<string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"Premjesti u gornji lijevi kut"</string>
<string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"Premjesti u gornji desni kut"</string>
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Zvučnici i zasloni"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Predloženi uređaji"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kako emitiranje funkcionira"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emitiranje"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Osobe u blizini s kompatibilnim Bluetooth uređajima mogu slušati medije koje emitirate"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Instalirajte aplikaciju fotoaparata"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Aplikacija je postavljena"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Dostupan je najmanje jedan uređaj"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Odaberite zadanu aplikaciju za bilješke da biste koristili prečac za pisanje bilježaka"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Odaberite aplikaciju"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Prečac za dodirnuti i zadržati"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Odustani"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Promijenite zaslon odmah"</string>
diff --git a/packages/SystemUI/res/values-hu/strings.xml b/packages/SystemUI/res/values-hu/strings.xml
index 64c10c7d602e..c48f88ab50ab 100644
--- a/packages/SystemUI/res/values-hu/strings.xml
+++ b/packages/SystemUI/res/values-hu/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Az eszközre tanúsítványkibocsátó van telepítve. Ezáltal figyelhetik és befolyásolhatják az Ön biztonságos hálózati forgalmát."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"A rendszergazda bekapcsolta az eszköz forgalmát figyelő hálózati naplózást."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"A rendszergazda bekapcsolta a hálózati naplózást, amely a munkaprofilban figyeli a forgalmat, a személyes profilban azonban nem."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Ez az eszköz a következőn keresztül csatlakozik az internethez: <xliff:g id="VPN_APP">%1$s</xliff:g>. Hálózati tevékenységei (pl. az e-mailek és a böngészési adatok) láthatók a VPN-szolgáltató számára."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Ez az eszköz a következőn keresztül csatlakozik az internethez: <xliff:g id="VPN_APP">%1$s</xliff:g>. Hálózati tevékenységei (pl. az e-mailek és a böngészési adatok) láthatók a rendszergazdája számára."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Ez az eszköz a következőkön keresztül csatlakozik az internethez: <xliff:g id="VPN_APP_0">%1$s</xliff:g> és <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Hálózati tevékenységei (pl. az e-mailek és a böngészési adatok) láthatók a rendszergazdája és VPN-szolgáltatója számára."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Munkahelyi alkalmazásai a következőn keresztül csatlakoznak az internethez: <xliff:g id="VPN_APP">%1$s</xliff:g>. A munkahelyi alkalmazásaiban végzett hálózati tevékenységei (pl. az e-mailek és a böngészési adatok) láthatók a rendszergazdája és VPN-szolgáltatója számára."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Személyes alkalmazásai a következőn keresztül csatlakoznak az internethez: <xliff:g id="VPN_APP">%1$s</xliff:g>. Hálózati tevékenységei (pl. az e-mailek és a böngészési adatok) láthatók a VPN-szolgáltatója számára."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Hangfalak és kijelzők"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Javasolt eszközök"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"A közvetítés működése"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Közvetítés"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"A közelben tartózkodó, kompatibilis Bluetooth-eszközzel rendelkező személyek meghallgathatják az Ön közvetített médiatartalmait"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Kameraalkalmazás telepítése"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Az alkalmazás be van állítva"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Legalább egy eszköz rendelkezésre áll"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Válassza ki az alapértelmezett jegyzetkészítő alkalmazást, amelyet a jegyzetelési gyorsparancshoz szeretne használni"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Alkalmazás kiválasztása"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Tartsa nyomva a parancsikont"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Mégse"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Váltson képernyőt most"</string>
diff --git a/packages/SystemUI/res/values-hy/strings.xml b/packages/SystemUI/res/values-hy/strings.xml
index d36ff273871b..712dc168f2d7 100644
--- a/packages/SystemUI/res/values-hy/strings.xml
+++ b/packages/SystemUI/res/values-hy/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Այս սարքում տեղադրված է վկայագրման կենտրոն։ Ձեր ցանցի ապահով թրաֆիկը կարող է վերահսկվել կամ փոփոխվել։"</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Ձեր ադմինիստրատորը միացրել է ցանցային իրադարձությունների գրանցումը, որը վերահսկում է ձեր սարքի թրաֆիկը։"</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Ձեր ադմինիստրատորը միացրել է ցանցային իրադարձությունների գրանցումը, որը վերահսկում է ձեր աշխատանքային պրոֆիլի թրաֆիկը (այլ ոչ անձնական պրոֆիլը)։"</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Այս սարքը միացած է համացանցին <xliff:g id="VPN_APP">%1$s</xliff:g>-ի միջոցով։ Ձեր ցանցային ակտիվությունը՝ ներառյալ էլփոստում և դիտարկիչում արված գործողությունների տվյալները, տեսանելի են VPN պրովայդերին։"</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Այս սարքը միացած է համացանցին <xliff:g id="VPN_APP">%1$s</xliff:g>-ի միջոցով։ Ձեր ցանցային ակտիվությունը՝ ներառյալ էլփոստում և դիտարկիչում արված գործողությունների տվյալները, տեսանելի են ձեր ՏՏ ադմինիստրատորին։"</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Այս սարքը համացանցին միացած է <xliff:g id="VPN_APP_0">%1$s</xliff:g>-ի և <xliff:g id="VPN_APP_1">%2$s</xliff:g>-ի միջոցով։ Ձեր ցանցային ակտիվությունը աշխատանքային հավելվածներում, ներառյալ էլփոստում և դիտարկիչում արված գործողությունների տվյալները, տեսանելի են ձեր ՏՏ ադմինիստրատորին։"</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Աշխատանքային հավելվածները համացանցին միացած են <xliff:g id="VPN_APP">%1$s</xliff:g>-ի միջոցով։ Ձեր ցանցային ակտիվությունը աշխատանքային հավելվածներում, ներառյալ էլփոստում և դիտարկիչում արված գործողությունների տվյալները, տեսանելի են ձեր ՏՏ ադմինիստրատորին և VPN-ի մատակարարին։"</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Անձնական հավելվածները համացանցին միացած են <xliff:g id="VPN_APP">%1$s</xliff:g>-ի միջոցով։ Ձեր ցանցային ակտիվությունը անձնական հավելվածներում, ներառյալ էլփոստում և դիտարկիչում արված գործողությունների տվյալները, տեսանելի են ձեր VPN-ի մատակարարին։"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Բարձրախոսներ և էկրաններ"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Առաջարկվող սարքեր"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Ինչպես է աշխատում հեռարձակումը"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Հեռարձակում"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Ձեր մոտակայքում գտնվող՝ համատեղելի Bluetooth սարքերով մարդիկ կարող են լսել մեդիա ֆայլերը, որոնք դուք հեռարձակում եք։"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• «Տեսախցիկ» հավելվածը տեղադրված է"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Հավելվածը կարգավորված է"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Հասանելի է առնվազն մեկ սարք"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Ընտրեք նշումների կանխադրված հավելված՝ նշումների ստեղծման դյուրանցումն օգտագործելու համար"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Ընտրել հավելված"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Հպեք դյուրանցմանը և պահեք"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Չեղարկել"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Փոխել էկրանը հիմա"</string>
diff --git a/packages/SystemUI/res/values-in/strings.xml b/packages/SystemUI/res/values-in/strings.xml
index a20c54fcd51d..a0641fb43ac4 100644
--- a/packages/SystemUI/res/values-in/strings.xml
+++ b/packages/SystemUI/res/values-in/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Otoritas sertifikat diinstal di perangkat. Traffic jaringan aman Anda mungkin dipantau atau diubah."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Admin telah mengaktifkan pencatatan log jaringan, yang memantau traffic di perangkat."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Admin telah mengaktifkan pencatatan log jaringan, yang memantau traffic di profil kerja, tetapi tidak di profil pribadi."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Perangkat ini terhubung ke internet melalui <xliff:g id="VPN_APP">%1$s</xliff:g>. Aktivitas jaringan Anda, termasuk email dan data penjelajahan, dapat dilihat oleh penyedia VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Perangkat ini terhubung ke internet melalui <xliff:g id="VPN_APP">%1$s</xliff:g>. Aktivitas jaringan Anda, termasuk email dan data penjelajahan, dapat dilihat oleh admin IT."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Perangkat ini terhubung ke internet melalui <xliff:g id="VPN_APP_0">%1$s</xliff:g> dan <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Aktivitas jaringan Anda, termasuk email dan data penjelajahan, dapat dilihat oleh admin IT."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Aplikasi kerja Anda terhubung ke internet melalui <xliff:g id="VPN_APP">%1$s</xliff:g>. Aktivitas jaringan Anda di aplikasi kerja, termasuk email dan data penjelajahan, dapat dilihat oleh admin IT dan penyedia VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Aplikasi pribadi Anda terhubung ke internet melalui <xliff:g id="VPN_APP">%1$s</xliff:g>. Aktivitas jaringan Anda, termasuk email dan data penjelajahan, dapat dilihat oleh penyedia VPN."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Speaker &amp; Layar"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Perangkat yang Disarankan"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cara kerja siaran"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Siaran"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Orang di dekat Anda dengan perangkat Bluetooth yang kompatibel dapat mendengarkan media yang sedang Anda siarkan"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Menginstal aplikasi kamera"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Aplikasi disiapkan"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Tersedia minimal satu perangkat"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Pilih aplikasi catatan default untuk menggunakan pintasan pembuatan catatan"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Pilih aplikasi"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Sentuh lama pintasan"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Batal"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Beralih layar sekarang"</string>
diff --git a/packages/SystemUI/res/values-is/strings.xml b/packages/SystemUI/res/values-is/strings.xml
index 0d803afa2f61..fbd34f7e6eb3 100644
--- a/packages/SystemUI/res/values-is/strings.xml
+++ b/packages/SystemUI/res/values-is/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"CA-vottorð er uppsett á þessu tæki. Eftirlit kann að vera haft með öruggri netnotkun þinni eða henni kann að vera breytt."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Kerfisstjóri hefur kveikt á eftirliti netkerfa, sem fylgist með netumferð á tækinu þínu."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Stjórnandinn kveikti á eftirliti netkerfa sem fylgist með netumferð á vinnusniðinu þínu en ekki á eigin sniði."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Þetta tæki er nettengt í gegnum <xliff:g id="VPN_APP">%1$s</xliff:g>. VPN-þjónustuaðilinn getur séð netvirkni þína í vinnuforritum, þar á meðal tölvupóst og vefskoðunargögn."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Þetta tæki er nettengt í gegnum <xliff:g id="VPN_APP">%1$s</xliff:g>. Kerfisstjórinn þinn getur séð netvirkni þína í vinnuforritum, þar á meðal tölvupóst og vefskoðunargögn."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Þetta tæki er nettengt í gegnum <xliff:g id="VPN_APP_0">%1$s</xliff:g> og <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Kerfisstjórinn þinn getur séð netvirkni þína í vinnuforritum, þar á meðal tölvupósta og vefskoðunargögn."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Vinnuforritin þín eru nettengd í gegnum <xliff:g id="VPN_APP">%1$s</xliff:g>. Kerfisstjórinn þinn og VPN-þjónustuaðilinn geta séð netvirkni þína í vinnuforritum, þar á meðal tölvupósta og vefskoðunargögn."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Forritin þín til einkanota eru nettengd í gegnum <xliff:g id="VPN_APP">%1$s</xliff:g>. VPN-þjónustuaðilinn þinn getur séð netvirkni þína í vinnuforritum, þar á meðal tölvupósta og vefskoðunargögn."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Hátalarar og skjáir"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Tillögur að tækjum"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Svona virkar útsending"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Útsending"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Fólk nálægt þér með samhæf Bluetooth-tæki getur hlustað á efnið sem þú sendir út"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Setja upp myndavélarforrit"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Forritið er uppsett"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Að minnsta kosti eitt tæki er tiltækt"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Veldu sjálfgefið glósuforrit til að nota flýtileið fyrir glósugerð"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Velja forrit"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Haltu flýtilyklinum inni"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Hætta við"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Skipta um skjá núna"</string>
diff --git a/packages/SystemUI/res/values-it/strings.xml b/packages/SystemUI/res/values-it/strings.xml
index dc62c1b58ede..4b0f89f360cb 100644
--- a/packages/SystemUI/res/values-it/strings.xml
+++ b/packages/SystemUI/res/values-it/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Speaker e display"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Dispositivi consigliati"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Come funziona la trasmissione"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Annuncio"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Le persone vicine a te che hanno dispositivi Bluetooth compatibili possono ascoltare i contenuti multimediali che stai trasmettendo"</string>
diff --git a/packages/SystemUI/res/values-iw/strings.xml b/packages/SystemUI/res/values-iw/strings.xml
index ab3131ff3cac..be7867891e2a 100644
--- a/packages/SystemUI/res/values-iw/strings.xml
+++ b/packages/SystemUI/res/values-iw/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"‎<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%‎‎"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"רמקולים ומסכים"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"הצעות למכשירים"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"עצירת הסשן המשותף כדי להעביר מדיה למכשיר אחר"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"עצירה"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"הסבר על שידורים"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"שידור"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"‏אנשים בקרבת מקום עם מכשירי Bluetooth תואמים יכולים להאזין למדיה שמשודרת על ידך"</string>
diff --git a/packages/SystemUI/res/values-ja/strings.xml b/packages/SystemUI/res/values-ja/strings.xml
index e4323c6bcf74..ef32e64d2e67 100644
--- a/packages/SystemUI/res/values-ja/strings.xml
+++ b/packages/SystemUI/res/values-ja/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"スピーカーとディスプレイ"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"デバイスの候補"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ブロードキャストの仕組み"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ブロードキャスト"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Bluetooth 対応デバイスを持っている付近のユーザーは、あなたがブロードキャストしているメディアを聴けます"</string>
diff --git a/packages/SystemUI/res/values-ka/strings.xml b/packages/SystemUI/res/values-ka/strings.xml
index f2f9fa76e347..f809045eafa1 100644
--- a/packages/SystemUI/res/values-ka/strings.xml
+++ b/packages/SystemUI/res/values-ka/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"დინამიკები და დისპლეები"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"შემოთავაზებული მოწყობილობები"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"შეწყვიტეთ გაზიარებული სესია, რათა მულტიმედია სხვა მოწყობილობაზე გადაიტანოთ"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"შეწყვეტა"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ტრანსლირების მუშაობის პრინციპი"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ტრანსლაცია"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"თქვენთან ახლოს მყოფ ხალხს თავსებადი Bluetooth მოწყობილობით შეუძლიათ თქვენ მიერ ტრანსლირებული მედიის მოსმენა"</string>
diff --git a/packages/SystemUI/res/values-kk/strings.xml b/packages/SystemUI/res/values-kk/strings.xml
index 0000cbf71416..c335f4d9cb18 100644
--- a/packages/SystemUI/res/values-kk/strings.xml
+++ b/packages/SystemUI/res/values-kk/strings.xml
@@ -414,7 +414,7 @@
<string name="media_projection_entry_generic_permission_dialog_continue" msgid="8640381403048097116">"Бастау"</string>
<string name="screen_capturing_disabled_by_policy_dialog_title" msgid="2113331792064527203">"Әкімшіңіз бөгеген"</string>
<string name="screen_capturing_disabled_by_policy_dialog_description" msgid="6015975736747696431">"Құрылғы саясатына байланысты экранды түсіру өшірілді."</string>
- <string name="clear_all_notifications_text" msgid="348312370303046130">"Барлығын тазалау"</string>
+ <string name="clear_all_notifications_text" msgid="348312370303046130">"Барлығын тазарту"</string>
<string name="manage_notifications_text" msgid="6885645344647733116">"Басқару"</string>
<string name="manage_notifications_history_text" msgid="57055985396576230">"Тарих"</string>
<string name="notification_section_header_incoming" msgid="850925217908095197">"Жаңа"</string>
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Осы құрылғыда сертификат орнатылған. Қорғалған желі трафигіңіз бақылануы немесе өзгертілуі мүмкін."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Әкімші құрылғыңыздағы трафикті бақылайтын желі журналын жүргізуді қосқан."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Әкімші жұмыс профиліндегі трафикті (жеке профильдегі трафик қаралмайды) қадағалау үшін желі журналын жүргізуді қосып қойған."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Бұл құрылғы интернетке <xliff:g id="VPN_APP">%1$s</xliff:g> арқылы қосылған. Желідегі әрекетіңіз, соның ішінде электрондық пошталар мен браузерді пайдалану деректеріңіз VPN провайдеріне көрінеді."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Бұл құрылғы интернетке <xliff:g id="VPN_APP">%1$s</xliff:g> арқылы қосылған. Желідегі әрекетіңіз, соның ішінде электрондық пошталар мен браузерді пайдалану деректеріңіз әкімшіге көрінеді."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Бұл құрылғы интернетке <xliff:g id="VPN_APP_0">%1$s</xliff:g> және <xliff:g id="VPN_APP_1">%2$s</xliff:g> арқылы қосылған. Желідегі әрекетіңіз, соның ішінде электрондық пошталар мен браузерді пайдалану деректеріңіз әкімшіге көрінеді."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Жұмыс қолданбаларыңыз интернетке <xliff:g id="VPN_APP">%1$s</xliff:g> арқылы қосылған. Жұмыс қолданбаларында жасаған желідегі әрекетіңіз, соның ішінде электрондық пошталар мен браузерді пайдалану деректеріңіз әкімшіге және VPN провайдеріне көрінеді."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Жеке қолданбаларыңыз интернетке <xliff:g id="VPN_APP">%1$s</xliff:g> арқылы қосылған. Желідегі әрекетіңіз, соның ішінде электрондық пошталар мен браузерді пайдалану деректеріңіз VPN провайдеріне көрінеді."</string>
@@ -757,7 +755,7 @@
<string name="accessibility_quick_settings_edit" msgid="1523745183383815910">"Параметрлер тәртібін өзгерту."</string>
<string name="accessibility_quick_settings_power_menu" msgid="6820426108301758412">"Қуат мәзірі"</string>
<string name="accessibility_quick_settings_page" msgid="7506322631645550961">"<xliff:g id="ID_2">%2$d</xliff:g> ішінен <xliff:g id="ID_1">%1$d</xliff:g>"</string>
- <string name="tuner_lock_screen" msgid="2267383813241144544">"Құлыпталған экран"</string>
+ <string name="tuner_lock_screen" msgid="2267383813241144544">"Құлыптаулы экран"</string>
<string name="thermal_shutdown_title" msgid="2702966892682930264">"Телефон қызып кеткендіктен өшірілді"</string>
<string name="thermal_shutdown_message" msgid="6142269839066172984">"Телефоныңыз қалыпты жұмыс істеп тұр.\nТолығырақ ақпарат алу үшін түртіңіз."</string>
<string name="thermal_shutdown_dialog_message" msgid="6745684238183492031">"Телефоныңыз қатты қызып кеткендіктен өшірілді. Телефоныңыз қазір қалыпты жұмыс істеп тұр.\n\nТелефоныңыз мына жағдайларда ыстық болуы мүмкін:\n • Ресурстар талап ететін қолданбаларды пайдалану (ойын, бейне немесе навигация қолданбалары)\n • Үлкен көлемді файлдарды жүктеу немесе жүктеп салу\n • Телефонды жоғары температурада пайдалану"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Динамиктер мен дисплейлер"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Ұсынылған құрылғылар"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Тарату қалай жүзеге асады"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Тарату"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Үйлесімді Bluetooth құрылғылары бар маңайдағы адамдар сіз таратып жатқан медиамазмұнды тыңдай алады."</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Камера қолданбасын орнатыңыз"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Қолданба реттелген"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Кемінде бір құрылғы қолжетімді"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Жазба жазу таңбашасын пайдалану үшін әдепкі жазба қолданбаны таңдаңыз."</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Қолданба таңдау"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Таңбашаны басып тұрыңыз."</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Бас тарту"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Экрандарды қазір ауыстыру"</string>
diff --git a/packages/SystemUI/res/values-km/strings.xml b/packages/SystemUI/res/values-km/strings.xml
index 95ba78809145..29197376bb13 100644
--- a/packages/SystemUI/res/values-km/strings.xml
+++ b/packages/SystemUI/res/values-km/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"ឧបករណ៍បំពងសំឡេង និងផ្ទាំងអេក្រង់"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"ឧបករណ៍​ដែលបានណែនាំ"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"បញ្ឈប់វគ្គដែលអ្នក​បានចែករំលែក ដើម្បីផ្លាស់ទីមេឌៀ​ទៅឧបករណ៍​ផ្សេងទៀត"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"បញ្ឈប់"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"របៀបដែលការផ្សាយដំណើរការ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ការ​ផ្សាយ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"មនុស្សនៅជិត​អ្នកដែលមាន​ឧបករណ៍ប៊្លូធូស​ត្រូវគ្នា​អាចស្តាប់​មេឌៀ​ដែលអ្នកកំពុងផ្សាយបាន"</string>
diff --git a/packages/SystemUI/res/values-kn/strings.xml b/packages/SystemUI/res/values-kn/strings.xml
index af8bd200d587..07ba9b81c7a5 100644
--- a/packages/SystemUI/res/values-kn/strings.xml
+++ b/packages/SystemUI/res/values-kn/strings.xml
@@ -550,7 +550,7 @@
<string name="tuner_toast" msgid="3812684836514766951">"ಅಭಿನಂದನೆಗಳು! ಸಿಸ್ಟಂ UI ಟ್ಯೂನರ್ ಅನ್ನು ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಗೆ ಸೇರಿಸಲಾಗಿದೆ"</string>
<string name="remove_from_settings" msgid="633775561782209994">"ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಂದ ತೆಗೆದುಹಾಕಿ"</string>
<string name="remove_from_settings_prompt" msgid="551565437265615426">"ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಂದ ಸಿಸ್ಟಂ UI ಟ್ಯೂನರ್ ತೆಗೆದುಹಾಕುವುದೇ ಮತ್ತು ಅದರ ಎಲ್ಲಾ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಬಳಸುವುದನ್ನು ನಿಲ್ಲಿಸುವುದೇ?"</string>
- <string name="enable_bluetooth_title" msgid="866883307336662596">"ಬ್ಲೂಟೂತ್ ಆನ್ ಮಾಡುವುದೇ?"</string>
+ <string name="enable_bluetooth_title" msgid="866883307336662596">"ಬ್ಲೂಟೂತ್ ಆನ್ ಮಾಡಬೇಕೆ?"</string>
<string name="enable_bluetooth_message" msgid="6740938333772779717">"ನಿಮ್ಮ ಕೀಬೋರ್ಡ್ ಅನ್ನು ಟ್ಯಾಬ್ಲೆಟ್‌ಗೆ ಸಂಪರ್ಕಿಸಲು, ನೀವು ಮೊದಲು ಬ್ಲೂಟೂತ್ ಆನ್ ಮಾಡಬೇಕಾಗುತ್ತದೆ."</string>
<string name="enable_bluetooth_confirmation_ok" msgid="2866408183324184876">"ಆನ್‌ ಮಾಡಿ"</string>
<string name="tuner_full_importance_settings" msgid="1388025816553459059">"ಪವರ್ ಅಧಿಸೂಚನೆ ನಿಯಂತ್ರಣಗಳು"</string>
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"ಸ್ಪೀಕರ್‌ಗಳು ಮತ್ತು ಡಿಸ್‌ಪ್ಲೇಗಳು"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"ಸೂಚಿಸಿದ ಸಾಧನಗಳು"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ಪ್ರಸಾರವು ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ಪ್ರಸಾರ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ಹೊಂದಾಣಿಕೆಯಾಗುವ ಬ್ಲೂಟೂತ್ ಸಾಧನಗಳನ್ನು ಹೊಂದಿರುವ ಸಮೀಪದಲ್ಲಿರುವ ಜನರು ನೀವು ಪ್ರಸಾರ ಮಾಡುತ್ತಿರುವ ಮಾಧ್ಯಮವನ್ನು ಆಲಿಸಬಹುದು"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• ಕ್ಯಾಮರಾ ಆ್ಯಪ್ ಒಂದನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• ಆ್ಯಪ್ ಅನ್ನು ಸೆಟಪ್ ಮಾಡಲಾಗಿದೆ"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• ಕನಿಷ್ಠ ಒಂದು ಸಾಧನ ಲಭ್ಯವಿದೆ"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"ನೋಟ್ಸ್ ಮಾಡಿಕೊಳ್ಳುವಿಕೆ ಶಾರ್ಟ್‌ಕಟ್ ಅನ್ನು ಬಳಸಲು ಡೀಫಾಲ್ಟ್ ಟಿಪ್ಪಣಿಗಳ ಆ್ಯಪ್ ಆಯ್ಕೆಮಾಡಿ"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"ಆ್ಯಪ್‌ ಆಯ್ಕೆಮಾಡಿ"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"ಸ್ಪರ್ಶಿಸಿ ಹೋಲ್ಡ್ ಮಾಡಿ ಶಾರ್ಟ್‌ಕಟ್"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"ರದ್ದುಗೊಳಿಸಿ"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"ಈಗ ಸ್ಕ್ರೀನ್‌ಗಳನ್ನು ಬದಲಿಸಿ"</string>
diff --git a/packages/SystemUI/res/values-ko/strings.xml b/packages/SystemUI/res/values-ko/strings.xml
index 59aec53619cd..fda77c2f116b 100644
--- a/packages/SystemUI/res/values-ko/strings.xml
+++ b/packages/SystemUI/res/values-ko/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"이 기기에는 인증기관이 설치되어 있습니다. 보안 네트워크 트래픽을 모니터링 또는 수정할 수 있습니다."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"관리자가 기기에서 발생하는 트래픽을 모니터링하는 네트워크 로깅을 사용 설정했습니다."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"관리자가 직장 프로필에서 발생하는 트래픽을 모니터링하는 네트워크 로깅을 사용 설정했습니다. 하지만 개인 프로필은 모니터링되지 않습니다."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"이 기기는 <xliff:g id="VPN_APP">%1$s</xliff:g> 앱을 통해 인터넷에 연결됩니다. VPN 제공업체가 이메일, 인터넷 사용 기록 등 내 네트워크 활동을 볼 수 있습니다."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"이 기기는 <xliff:g id="VPN_APP">%1$s</xliff:g> 앱을 통해 인터넷에 연결됩니다. IT 관리자가 이메일, 인터넷 사용 기록 등 내 네트워크 활동을 볼 수 있습니다."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"이 기기는 <xliff:g id="VPN_APP_0">%1$s</xliff:g> 및 <xliff:g id="VPN_APP_1">%2$s</xliff:g> 앱을 통해 인터넷에 연결됩니다. IT 관리자가 이메일, 인터넷 사용 기록 등 내 네트워크 활동을 볼 수 있습니다."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"직장 앱은 <xliff:g id="VPN_APP">%1$s</xliff:g> 앱을 통해 인터넷에 연결됩니다. IT 관리자와 VPN 제공업체가 이메일, 인터넷 사용 기록 등 직장 앱에서 이루어진 내 네트워크 활동을 볼 수 있습니다."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"개인 앱은 <xliff:g id="VPN_APP">%1$s</xliff:g> 앱을 통해 인터넷에 연결됩니다. VPN 제공업체가 이메일, 인터넷 사용 기록 등 내 네트워크 활동을 볼 수 있습니다."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"스피커 및 디스플레이"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"추천 기기"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"브로드캐스팅 작동 원리"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"브로드캐스트"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"호환되는 블루투스 기기를 가진 근처의 사용자가 내가 브로드캐스트 중인 미디어를 수신 대기할 수 있습니다."</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• 카메라 앱이 설치되어 있습니다."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• 앱이 설정되어 있습니다."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• 1대 이상의 기기를 사용할 수 있습니다."</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"메모 바로가기를 사용하려면 기본 메모 앱을 선택합니다."</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"앱 선택"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"바로가기를 길게 터치하세요."</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"취소"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"지금 화면 전환"</string>
diff --git a/packages/SystemUI/res/values-ky/strings.xml b/packages/SystemUI/res/values-ky/strings.xml
index e2abeea58608..3952394da324 100644
--- a/packages/SystemUI/res/values-ky/strings.xml
+++ b/packages/SystemUI/res/values-ky/strings.xml
@@ -19,7 +19,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="app_label" msgid="4811759950673118541">"Тутум UI"</string>
+ <string name="app_label" msgid="4811759950673118541">"Система UI"</string>
<string name="battery_low_title" msgid="5319680173344341779">"Батареяны үнөмдөгүч режими күйгүзүлсүнбү?"</string>
<string name="battery_low_description" msgid="3282977755476423966">"Батареянын деңгээли: <xliff:g id="PERCENTAGE">%s</xliff:g>. Батареяны үнөмдөгүч режиминде караңгы тема күйгүзүлүп, фондогу процесстер чектелип, билдирмелер көрүнбөй калат."</string>
<string name="battery_low_intro" msgid="5148725009653088790">"Батареяны үнөмдөгүч режиминде караңгы тема күйгүзүлүп, фондогу процесстер чектелип, билдирмелер көрүнбөй калат."</string>
@@ -53,8 +53,8 @@
<string name="usb_debugging_allow" msgid="1722643858015321328">"Ооба"</string>
<string name="usb_debugging_secondary_user_title" msgid="7843050591380107998">"USB мүчүлүштүктөрүн оңдоого уруксат жок"</string>
<string name="usb_debugging_secondary_user_message" msgid="1888835696965417845">"Учурда ушул түзмөккө кирип турган колдонуучу USB аркылуу мүчүлүштүктөрдү оңдоо функциясын күйгүзө албайт. Бул функцияны пайдалануу үчүн админге которулуңуз."</string>
- <string name="hdmi_cec_set_menu_language_title" msgid="1259765420091503742">"Тутум тилин <xliff:g id="LANGUAGE">%1$s</xliff:g> тилине өзгөртөсүзбү?"</string>
- <string name="hdmi_cec_set_menu_language_description" msgid="8176716678074126619">"Тутум тилин өзгөртүү сурамы башка түзмөктөн жөнөтүлдү"</string>
+ <string name="hdmi_cec_set_menu_language_title" msgid="1259765420091503742">"Система тилин <xliff:g id="LANGUAGE">%1$s</xliff:g> тилине өзгөртөсүзбү?"</string>
+ <string name="hdmi_cec_set_menu_language_description" msgid="8176716678074126619">"Система тилин өзгөртүү сурамы башка түзмөктөн жөнөтүлдү"</string>
<string name="hdmi_cec_set_menu_language_accept" msgid="2513689457281009578">"Тилди өзгөртүү"</string>
<string name="hdmi_cec_set_menu_language_decline" msgid="7650721096558646011">"Учурдагы тилди калтыруу"</string>
<string name="wifi_debugging_title" msgid="7300007687492186076">"Ушул тармакта мүчүлүштүктөрдү Wi-Fi аркылуу аныктоого уруксат бересизби?"</string>
@@ -176,8 +176,8 @@
<string name="fingerprint_reenroll_failure_dialog_content" msgid="4733768492747300666">"Манжа изи менен ачуу функциясы жөндөлгөн жок. Параметрлерге өтүп, кайталап көрүңүз."</string>
<string name="face_re_enroll_notification_title" msgid="1850838867718410520">"Жүзүнөн таанып ачуу функциясын кайрадан жөндөңүз"</string>
<string name="face_re_enroll_notification_name" msgid="7384545252206120659">"Жүзүнөн таанып ачуу"</string>
- <string name="face_re_enroll_dialog_title" msgid="6392173708176069994">"Жүзүнөн таанып ачууну тууралоо"</string>
- <string name="face_re_enroll_dialog_content" msgid="7353502359464038511">"Жүзүнөн таанып ачуу функциясын тууралоо үчүн жүзүңүздүн учурдагы үлгүсү өчүрүлөт.\n\nТелефонуңуздун кулпусун жүзүңүз аркылуу ачуу үчүн бул функцияны кайра жөндөшүңүз керек болот."</string>
+ <string name="face_re_enroll_dialog_title" msgid="6392173708176069994">"Жүзүнөн таанып ачууну коюу"</string>
+ <string name="face_re_enroll_dialog_content" msgid="7353502359464038511">"Жүзүнөн таанып ачуу функциясын кошуу үчүн жүзүңүздүн учурдагы үлгүсү өчүрүлөт.\n\nТелефонуңуздун кулпусун жүзүңүз аркылуу ачуу үчүн бул функцияны кайра жөндөшүңүз керек болот."</string>
<string name="face_reenroll_failure_dialog_content" msgid="7073947334397236935">"Жүзүнөн таанып ачуу функциясы жөндөлгөн жок. Параметрлерге өтүп, кайталап көрүңүз."</string>
<string name="fingerprint_dialog_touch_sensor" msgid="2817887108047658975">"Манжа изинин сенсорун басыңыз"</string>
<string name="fingerprint_dialog_use_fingerprint_instead" msgid="6178228876763024452">"Жүз таанылбай жатат. Манжа изин колдонуңуз."</string>
@@ -390,7 +390,7 @@
<string name="user_add_user_message_guest_remove" msgid="5589286604543355007">\n\n"Жаңы колдонуучуну кошсоңуз, конок режими жабылып, учурдагы конок сеансындагы бардык колдонмолор жана башка нерселер өчүп калат."</string>
<string name="user_limit_reached_title" msgid="2429229448830346057">"Дагы колдонуучу кошууга болбойт"</string>
<string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Бир колдонуучуну гана кошууга болот.}other{# чейин колдонуучу кошсоңуз болот.}}"</string>
- <string name="user_remove_user_title" msgid="9124124694835811874">"Колдонуучу алынып салынсынбы?"</string>
+ <string name="user_remove_user_title" msgid="9124124694835811874">"Колдонуучуну өчүрөсүзбү?"</string>
<string name="user_remove_user_message" msgid="6702834122128031833">"Бул колдонуучунун бардык колдонмолору жана маалыматтары өчүрүлөт."</string>
<string name="user_remove_user_remove" msgid="8387386066949061256">"Өчүрүү"</string>
<string name="media_projection_dialog_title" msgid="3316063622495360646">"<xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> колдонмосу аркылуу жаздырып же тышкы экранга чыгарып баштайсызбы?"</string>
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Бул түзмөктө тастыктоочу борбор орнотулган. Коопсуз тармагыңыздын трафиги көзөмөлдөнүп же өзгөртүлүшү мүмкүн."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Администраторуңуз түзмөгүңүздөгү трафикти көзөмөлдөөчү тармактын таржымалын каттоо функциясын иштетти."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Администраторуңуз жумуш профилиңиздеги трафикке көз салуу үчүн, тармактын таржымалын иштетип койду (жеке профилиңизден маалымат алынбайт)."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Бул түзмөк Интернетке <xliff:g id="VPN_APP">%1$s</xliff:g> аркылуу туташып турат. Тармактагы аракеттериңиз, анын ичинде электрондук каттар жана серептөө дайындары VPN камсыздоочусуна көрүнөт."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Бул түзмөк Интернетке <xliff:g id="VPN_APP">%1$s</xliff:g> аркылуу туташып турат. Тармактагы аракеттериңиз, ошондой эле электрондук каттар жана серептөө дайындары IT администраторуңузга көрүнөт."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Бул түзмөк Интернетке <xliff:g id="VPN_APP_0">%1$s</xliff:g> жана <xliff:g id="VPN_APP_1">%2$s</xliff:g> аркылуу туташып турат. Тармактагы аракеттериңиз, ошондой эле электрондук почтадагы жана серепчидеги нерселериңиз IT администраторуңузга көрүнүп турат."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Жумуш колдонмолоруңуз Интернетке <xliff:g id="VPN_APP">%1$s</xliff:g> аркылуу туташып турушат. Тармакта жумуш колдонмолору аркылуу жасаган аракеттериңиз, ошондой эле электрондук почтадагы жана серепчидеги нерселериңиз IT администраторуңузга жана VPN провайдерине көрүнөт."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Жеке колдонмолоруңуз Интернетке <xliff:g id="VPN_APP">%1$s</xliff:g> аркылуу туташып турушат. Тармактагы аракеттериңиз, ошондой эле электрондук почтадагы жана серепчидеги нерселериңиз VPN провайдерине көрүнүп турат."</string>
@@ -499,7 +497,7 @@
<string name="screen_pinning_start" msgid="7483998671383371313">"Колдонмо кадалды"</string>
<string name="screen_pinning_exit" msgid="4553787518387346893">"Кадалган колдонмо бошотулду"</string>
<string name="stream_voice_call" msgid="7468348170702375660">"Чалуу"</string>
- <string name="stream_system" msgid="7663148785370565134">"Тутум"</string>
+ <string name="stream_system" msgid="7663148785370565134">"Система"</string>
<string name="stream_ring" msgid="7550670036738697526">"Шыңгыратуу"</string>
<string name="stream_music" msgid="2188224742361847580">"Мультимедия"</string>
<string name="stream_alarm" msgid="16058075093011694">"Ойготкуч"</string>
@@ -550,8 +548,8 @@
<string name="tuner_persistent_warning" msgid="230466285569307806">"Бул сынамык функциялар кийинки чыгарылыштарда өзгөрүлүп, бузулуп же жоголуп кетиши мүмкүн. Абайлап колдонуңуз."</string>
<string name="got_it" msgid="477119182261892069">"Түшүндүм"</string>
<string name="tuner_toast" msgid="3812684836514766951">"Куттуктайбыз! Параметрлерге System UI Tuner кошулду"</string>
- <string name="remove_from_settings" msgid="633775561782209994">"Жөндөөлөрдөн алып салуу"</string>
- <string name="remove_from_settings_prompt" msgid="551565437265615426">"System UI Tuner Жөндөөлөрдөн өчүрүлүп, анын бардык функциялары токтотулсунбу?"</string>
+ <string name="remove_from_settings" msgid="633775561782209994">"Параметрлерден алып салуу"</string>
+ <string name="remove_from_settings_prompt" msgid="551565437265615426">"System UI Tuner Параметрлерден өчүрүлүп, анын бардык функциялары токтотулсунбу?"</string>
<string name="enable_bluetooth_title" msgid="866883307336662596">"Bluetooth күйгүзүлсүнбү?"</string>
<string name="enable_bluetooth_message" msgid="6740938333772779717">"Баскычтобуңузду планшетиңизге туташтыруу үчүн, адегенде Bluetooth\'ту күйгүзүшүңүз керек."</string>
<string name="enable_bluetooth_confirmation_ok" msgid="2866408183324184876">"Күйгүзүү"</string>
@@ -568,7 +566,7 @@
<string name="notification_conversation_summary_low" msgid="1734433426085468009">"Үнү чыкпайт же дирилдебейт жана сүйлөшүүлөр тизмесинин ылдый жагында көрүнөт"</string>
<string name="notification_channel_summary_default" msgid="777294388712200605">"Түзмөктүн параметрлерине жараша шыңгырап же дирилдеши мүмкүн"</string>
<string name="notification_channel_summary_default_with_bubbles" msgid="3482483084451555344">"Түзмөктүн параметрлерине жараша шыңгырап же дирилдеши мүмкүн. <xliff:g id="APP_NAME">%1$s</xliff:g> колдонмосундагы сүйлөшүүлөр демейки шартта калкып чыкма билдирмелер болуп көрүнөт."</string>
- <string name="notification_channel_summary_automatic" msgid="5813109268050235275">"Билдирменин үнүн чыгартууну же басууну тутумга тапшырыңыз"</string>
+ <string name="notification_channel_summary_automatic" msgid="5813109268050235275">"Билдирменин үнүн чыгартууну же басууну системага тапшырыңыз"</string>
<string name="notification_channel_summary_automatic_alerted" msgid="954166812246932240">"&lt;b&gt;Абалы:&lt;/b&gt; Демейкиге өзгөрдү"</string>
<string name="notification_channel_summary_automatic_silenced" msgid="7403004439649872047">"&lt;b&gt;Абалы:&lt;/b&gt; Үнсүз абалга төмөндөдү"</string>
<string name="notification_channel_summary_automatic_promoted" msgid="1301710305149590426">"&lt;b&gt;Абалы:&lt;/b&gt; Жогорулады"</string>
@@ -632,7 +630,7 @@
<string name="keyboard_key_num_lock" msgid="7209960042043090548">"Num Lock"</string>
<string name="keyboard_key_numpad_template" msgid="7316338238459991821">"Numpad <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="notif_inline_reply_remove_attachment_description" msgid="7954075334095405429">"Тиркемени алып салуу"</string>
- <string name="keyboard_shortcut_group_system" msgid="1583416273777875970">"Тутум"</string>
+ <string name="keyboard_shortcut_group_system" msgid="1583416273777875970">"Система"</string>
<string name="keyboard_shortcut_group_system_home" msgid="7465138628692109907">"Башкы бет"</string>
<string name="keyboard_shortcut_group_system_recents" msgid="8628108256824616927">"Акыркылар"</string>
<string name="keyboard_shortcut_group_system_back" msgid="1055709713218453863">"Артка"</string>
@@ -643,7 +641,7 @@
<string name="keyboard_shortcut_search_list_title" msgid="1156178106617830429">"Ыкчам баскычтар"</string>
<string name="keyboard_shortcut_search_list_hint" msgid="5982623262974326746">"Ыкчам баскычтарды издөө"</string>
<string name="keyboard_shortcut_search_list_no_result" msgid="6819302191660875501">"Ыкчам баскычтар жок"</string>
- <string name="keyboard_shortcut_search_category_system" msgid="1151182120757052669">"Тутум"</string>
+ <string name="keyboard_shortcut_search_category_system" msgid="1151182120757052669">"Система"</string>
<string name="keyboard_shortcut_search_category_input" msgid="5440558509904296233">"Киргизүү"</string>
<string name="keyboard_shortcut_search_category_open_apps" msgid="1450959949739257562">"Ачык колдон-лор"</string>
<string name="keyboard_shortcut_search_category_current_app" msgid="2011953559133734491">"Учурдагы кол-мо"</string>
@@ -657,11 +655,11 @@
<string name="group_system_cycle_back" msgid="5163464503638229131">"Соңку колдонмолорду көрүү (тескери тартипте)"</string>
<string name="group_system_access_all_apps_search" msgid="488070738028991753">"Бардык колдонмолордун тизмесин ачуу жана издөө (Издөө/Жүргүзгүч)"</string>
<string name="group_system_hide_reshow_taskbar" msgid="3809304065624351131">"Тапшырмалар тактасын жашыруу жана көрсөтүү"</string>
- <string name="group_system_access_system_settings" msgid="7961639365383008053">"Тутум параметрлерине кирүү"</string>
+ <string name="group_system_access_system_settings" msgid="7961639365383008053">"Система параметрлерине кирүү"</string>
<string name="group_system_access_google_assistant" msgid="1186152943161483864">"Google Жардамчыны иштетүү"</string>
<string name="group_system_lock_screen" msgid="7391191300363416543">"Экранды кулпулоо"</string>
<string name="group_system_quick_memo" msgid="2914234890158583919">"Ыкчам кыска жазууну түзүү"</string>
- <string name="keyboard_shortcut_group_system_multitasking" msgid="1065232949510862593">"Тутумдун бир нече тапшырма аткаруусу"</string>
+ <string name="keyboard_shortcut_group_system_multitasking" msgid="1065232949510862593">"Системанын бир нече тапшырма аткаруусу"</string>
<string name="system_multitasking_rhs" msgid="6593269428880305699">"Оң жакта жайгашкан учурдагы колдонмо менен экранды бөлүүнү иштетүү"</string>
<string name="system_multitasking_lhs" msgid="8839380725557952846">"Сол жакта жайгашкан учурдагы колдонмо менен экранды бөлүүнү иштетүү"</string>
<string name="system_multitasking_full_screen" msgid="1962084334200006297">"Экранды бөлүү режиминен толук экранга которулуу"</string>
@@ -877,7 +875,7 @@
<string name="accessibility_magnification_done" msgid="263349129937348512">"Бүттү"</string>
<string name="accessibility_magnifier_edit" msgid="1522877239671820636">"Түзөтүү"</string>
<string name="accessibility_magnification_magnifier_window_settings" msgid="2834685072221468434">"Чоңойткуч терезесинин параметрлери"</string>
- <string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"Атайын мүмкүнчүлүктөрдү ачуу үчүн басыңыз. Бул баскычты Жөндөөлөрдөн өзгөртүңүз.\n\n"<annotation id="link">"Параметрлерди көрүү"</annotation></string>
+ <string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"Атайын мүмкүнчүлүктөрдү ачуу үчүн басыңыз. Бул баскычты Параметрлерден өзгөртүңүз.\n\n"<annotation id="link">"Параметрлерди көрүү"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"Баскычты убактылуу жашыра туруу үчүн экрандын четине жылдырыңыз"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"Кайтаруу"</string>
<string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"<xliff:g id="FEATURE_NAME">%s</xliff:g> ыкчам баскычы өчүрүлдү"</string>
@@ -921,7 +919,7 @@
<string name="controls_dialog_message" msgid="342066938390663844">"<xliff:g id="APP">%s</xliff:g> сунуштайт"</string>
<string name="controls_tile_locked" msgid="731547768182831938">"Түзмөк кулпуланды"</string>
<string name="controls_settings_show_controls_dialog_title" msgid="3357852503553809554">"Түзмөктөрдү кулпуланган экрандан көрүп, көзөмөлдөйсүзбү?"</string>
- <string name="controls_settings_show_controls_dialog_message" msgid="7666211700524587969">"Тышкы түзмөктөрүңүздү көзөмөлдөө каражаттарын кулпу экранына кошо аласыз.\n\nТүзмөгүңүздүн колдонмосу айрым түзмөктөрдү телефонуңуздун же планшетиңиздин кулпусун ачпастан көзөмөлдөөгө уруксат бериши мүмкүн.\n\nКаалаган убакта Жөндөөлөрдөн өзгөртүүлөрдү жасай аласыз."</string>
+ <string name="controls_settings_show_controls_dialog_message" msgid="7666211700524587969">"Тышкы түзмөктөрүңүздү көзөмөлдөө каражаттарын кулпу экранына кошо аласыз.\n\nТүзмөгүңүздүн колдонмосу айрым түзмөктөрдү телефонуңуздун же планшетиңиздин кулпусун ачпастан көзөмөлдөөгө уруксат бериши мүмкүн.\n\nКаалаган убакта Параметрлерден өзгөртүүлөрдү жасай аласыз."</string>
<string name="controls_settings_trivial_controls_dialog_title" msgid="7593188157655036677">"Түзмөктөрдү кулпуланган экрандан көзөмөлдөйсүзбү?"</string>
<string name="controls_settings_trivial_controls_dialog_message" msgid="397178734990952575">"Айрым түзмөктөрдү телефонуңуздун же планшетиңиздин кулпусун ачпастан көзөмөлдөй аласыз. Кайсы түзмөктөрдү ушул жол менен көзөмөлдөөгө болорун түзмөгүңүздүн колдонмосу аныктайт."</string>
<string name="controls_settings_dialog_neutral_button" msgid="4514446354793124140">"Жок, рахмат"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Динамиктер жана дисплейлер"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Сунушталган түзмөктөр"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Кабарлоо кантип иштейт"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Кабарлоо"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Шайкеш Bluetooth түзмөктөрү болгон жакын жердеги кишилер кабарлап жаткан медиаңызды уга алышат"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Камера колдонмосун орнотуу"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Колдонмо туураланды"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Кеминде бир түзмөк жеткиликтүү"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Эскертме жазуу ыкчам баскычын колдонуу үчүн демейки эскертме жазуу колдонмосун тандаңыз"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Колдонмо тандоо"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Ыкчам баскычты басып туруңуз"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Токтотуу"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Экрандарды азыр которуштуруу"</string>
diff --git a/packages/SystemUI/res/values-lo/strings.xml b/packages/SystemUI/res/values-lo/strings.xml
index ecd2801a8628..981276290301 100644
--- a/packages/SystemUI/res/values-lo/strings.xml
+++ b/packages/SystemUI/res/values-lo/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"ລຳໂພງ ແລະ ຈໍສະແດງຜົນ"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"ອຸປະກອນທີ່ແນະນຳ"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ການອອກອາກາດເຮັດວຽກແນວໃດ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ອອກອາກາດ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ຄົນທີ່ຢູ່ໃກ້ທ່ານທີ່ມີອຸປະກອນ Bluetooth ທີ່ເຂົ້າກັນໄດ້ຈະສາມາດຟັງມີເດຍທີ່ທ່ານກຳລັງອອກອາກາດຢູ່ໄດ້"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• ຕິດຕັ້ງແອັບກ້ອງຖ່າຍຮູບ"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• ແອັບໄດ້ຮັບການຕັ້ງຄ່າແລ້ວ"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• ມີຢ່າງໜ້ອຍ 1 ອຸປະກອນພ້ອມໃຫ້ນຳໃຊ້"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"ເລືອກແອັບບັນທຶກເລີ່ມຕົ້ນເພື່ອໃຊ້ທາງລັດການຈົດບັນທຶກ"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"ເລືອກແອັບ"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"ແຕະທາງລັດຄ້າງໄວ້"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"ຍົກເລີກ"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"ສະຫຼັບໜ້າຈໍດຽວນີ້"</string>
diff --git a/packages/SystemUI/res/values-lt/strings.xml b/packages/SystemUI/res/values-lt/strings.xml
index 8e377288b0b1..863a97b296d6 100644
--- a/packages/SystemUI/res/values-lt/strings.xml
+++ b/packages/SystemUI/res/values-lt/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Šiame įrenginyje įdiegtas sertifikato įgaliojimas. Jūsų saugaus tinklo srautas gali būti stebimas arba keičiamas."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Administratorius įjungė tinklo duomenų įrašymą į žurnalą. Įjungus šią funkciją stebimas srautas jūsų įrenginyje."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Administratorius įjungė tinklo duomenų įrašymą į žurnalą. Įjungus šią funkciją stebimas srautas jūsų darbo, bet ne asmeniniame profilyje."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Šis įrenginys prijungtas prie interneto naudojant „<xliff:g id="VPN_APP">%1$s</xliff:g>“. Jūsų tinklo veikla, įskaitant el. laiškus ir naršymo duomenis, matoma VPN teikėjui."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Šis įrenginys prijungtas prie interneto naudojant „<xliff:g id="VPN_APP">%1$s</xliff:g>“. Jūsų tinklo veikla, įskaitant el. laiškus ir naršymo duomenis, matoma jūsų IT administratoriui."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Šis įrenginys prijungtas prie interneto naudojant „<xliff:g id="VPN_APP_0">%1$s</xliff:g>“ ir „<xliff:g id="VPN_APP_1">%2$s</xliff:g>“. Jūsų tinklo veikla, įskaitant el. laiškus ir naršymo duomenis, matoma jūsų IT administratoriui."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Jūsų darbo programos prijungtos prie interneto naudojant „<xliff:g id="VPN_APP">%1$s</xliff:g>“. Jūsų tinklo veikla darbo programose, įskaitant el. laiškus ir naršymo duomenis, matoma jūsų IT administratoriui ir VPN teikėjui."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Jūsų asmeninės programos prijungtos prie interneto naudojant „<xliff:g id="VPN_APP">%1$s</xliff:g>“. Jūsų tinklo veikla, įskaitant el. laiškus ir naršymo duomenis, matoma jūsų VPN teikėjui."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Garsiakalbiai ir ekranai"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Siūlomi įrenginiai"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kaip veikia transliacija"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transliacija"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Netoliese esantys žmonės, turintys suderinamus „Bluetooth“ įrenginius, gali klausyti jūsų transliuojamos medijos"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Įdiekite Fotoaparato programą"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Programa nustatyta"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Pasiekiamas bent vienas įrenginys"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Pasirinkite numatytąją užrašų programą, naudotiną su užrašų kūrimo sparčiuoju klavišu"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Pasirinkite programą"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Paliesk. ir palaik. spart. klav."</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Atšaukti"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Perjungti ekranus dabar"</string>
diff --git a/packages/SystemUI/res/values-lv/strings.xml b/packages/SystemUI/res/values-lv/strings.xml
index f2ca2f25ecb7..c5cbffa45bad 100644
--- a/packages/SystemUI/res/values-lv/strings.xml
+++ b/packages/SystemUI/res/values-lv/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Šajā ierīcē ir instalēts sertifikāts. Drošā tīkla datplūsma var tikt uzraudzīta."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Administrators ieslēdza tīkla reģistrēšanu, kuru izmanto, lai pārraudzītu datplūsmu jūsu ierīcē."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Administrators ir ieslēdzis tīkla reģistrēšanu, kuru izmanto, lai pārraudzītu datplūsmu jūsu darba profilā, bet ne personīgajā profilā."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Šajā ierīcē ir izveidots savienojums ar internetu, izmantojot lietotni <xliff:g id="VPN_APP">%1$s</xliff:g>. VPN nodrošinātājam ir redzamas jūsu tīkla darbības, tostarp e-pasta ziņojumi un pārlūkošanas dati."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Šajā ierīcē ir izveidots savienojums ar internetu, izmantojot lietotni <xliff:g id="VPN_APP">%1$s</xliff:g>. IT administratoram ir redzamas jūsu tīkla darbības, tostarp e-pasta ziņojumi un pārlūkošanas dati."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Šajā ierīcē ir izveidots savienojums ar internetu, izmantojot lietotnes <xliff:g id="VPN_APP_0">%1$s</xliff:g> un <xliff:g id="VPN_APP_1">%2$s</xliff:g>. IT administratoram ir redzamas jūsu tīklā veiktās darbības, tostarp e-pasta ziņojumi un pārlūkošanas dati."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Jūsu darba lietotnēs ir izveidots savienojums ar internetu, izmantojot lietotni <xliff:g id="VPN_APP">%1$s</xliff:g>. IT administratoram un VPN nodrošinātājam ir redzamas jūsu tīklā veiktās darbības darba lietotnēs, tostarp e-pasta ziņojumi un pārlūkošanas dati."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Jūsu personīgajās lietotnēs ir izveidots savienojums ar internetu, izmantojot lietotni <xliff:g id="VPN_APP">%1$s</xliff:g>. VPN nodrošinātājam ir redzamas jūsu tīklā veiktās darbības, tostarp e-pasta ziņojumi un pārlūkošanas dati."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Skaļruņi un displeji"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Ieteiktās ierīces"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kā darbojas apraide"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Apraide"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Tuvumā esošās personas ar saderīgām Bluetooth ierīcēm var klausīties jūsu apraidīto multivides saturu."</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Ir instalēta kameras lietotne."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Lietotne ir iestatīta."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Ir pieejama vismaz viena ierīce."</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Atlasiet noklusējuma piezīmju lietotni, lai izmantotu piezīmju pierakstīšanas saīsni."</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Atlasīt lietotni"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Pieskarieties saīsnei un turiet."</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Atcelt"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Mainīt ekrānus tagad"</string>
diff --git a/packages/SystemUI/res/values-mk/strings.xml b/packages/SystemUI/res/values-mk/strings.xml
index 6baa00afe15b..2df7446fb2b2 100644
--- a/packages/SystemUI/res/values-mk/strings.xml
+++ b/packages/SystemUI/res/values-mk/strings.xml
@@ -171,7 +171,7 @@
<string name="fingerprint_re_enroll_notification_title" msgid="4539432429683916604">"Поставете „Отклучување со отпечаток“ повторно"</string>
<string name="fingerprint_re_enroll_notification_name" msgid="630798657797645704">"Отклучување со отпечаток"</string>
<string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Поставување „Отклучување со отпечаток“"</string>
- <string name="fingerprint_re_enroll_dialog_content" msgid="4866561176695984879">"За да поставите „Отклучување со отпечаток“ повторно, вашите сегашните слики и модели на отпечаток ќе се избришат.\n\nОткако ќе се избришат, ќе треба повторно да поставите „Отклучување со отпечаток“ за да го користите отпечатокот за да го отклучите телефонот или да потврдите дека сте вие."</string>
+ <string name="fingerprint_re_enroll_dialog_content" msgid="4866561176695984879">"За да поставите „Отклучување со отпечаток“ повторно, вашите сегашни слики и модели на отпечаток ќе се избришат.\n\nОткако ќе се избришат, ќе треба повторно да поставите „Отклучување со отпечаток“ за да го користите отпечатокот за отклучување на телефонот или потврда дека сте вие."</string>
<string name="fingerprint_re_enroll_dialog_content_singular" msgid="3083663339787381218">"За да поставите „Отклучување со отпечаток“ повторно, вашите сегашните слики и модели на отпечаток ќе бидат избришат.\n\nОткако ќе се избришат, ќе треба повторно да поставите „Отклучување со отпечаток“ за да го користите отпечатокот за да го отклучите телефонот или да потврдите дека сте вие."</string>
<string name="fingerprint_reenroll_failure_dialog_content" msgid="4733768492747300666">"Не можеше да се постави „Отклучување со отпечаток“. Одете во „Поставки“ за да се обидете повторно."</string>
<string name="face_re_enroll_notification_title" msgid="1850838867718410520">"Поставете „Отклучување со лик“ повторно"</string>
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"На уредов е инсталиран авторитет за сертификат. Вашиот безбеден мрежен сообраќај можно е да се следи или изменува."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Вашиот администратор вклучил евиденција на мрежата, што подразбира следење на сообраќајот на вашиот уред."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Вашиот администратор вклучил мрежна евиденција, што подразбира следење на сообраќајот во работниот, но не и во личниот профил."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Уредов е поврзан на интернет преку <xliff:g id="VPN_APP">%1$s</xliff:g>. Вашата мрежна активност во работните апликации, заедно со е-пораките и податоците од прелистување, е видлива за VPN-операторот."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Уредов е поврзан на интернет преку <xliff:g id="VPN_APP">%1$s</xliff:g>. Вашата мрежна активност во работните апликации, заедно со е-пораките и податоците од прелистување, е видлива за вашиот IT-администратор."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Уредот е поврзан на интернет преку <xliff:g id="VPN_APP_0">%1$s</xliff:g> и <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Вашата мрежна активност, вклучително е-пораките и податоците од прелистување, е видлива за IT-администраторот."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Вашите работни апликации се поврзани на интернет преку <xliff:g id="VPN_APP">%1$s</xliff:g>. Вашата мрежна активност во работните апликации, вклучително е-пораките и податоците од прелистување, е видлива за вашиот IT-администратор и давател на услуги за VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Вашите лични апликации се поврзани на интернет преку <xliff:g id="VPN_APP">%1$s</xliff:g>. Вашата мрежна активност во работните апликации, вклучително е-пораките и податоците од прелистување, е видлива за вашиот давател на услуги за VPN."</string>
@@ -880,7 +878,7 @@
<string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"Допрете за функциите за пристапност. Приспособете или заменете го копчево во „Поставки“.\n\n"<annotation id="link">"Прикажи поставки"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"Преместете го копчето до работ за да го сокриете привремено"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"Врати"</string>
- <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Отстранета е кратенката за <xliff:g id="FEATURE_NAME">%s</xliff:g>"</string>
+ <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Кратенката за „<xliff:g id="FEATURE_NAME">%s</xliff:g>“ е отстранета"</string>
<string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{Отстранета е # кратенка}one{Отстранети се # кратенка}other{Отстранети се # кратенки}}"</string>
<string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"Премести горе лево"</string>
<string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"Премести горе десно"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Звучници и екрани"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Предложени уреди"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Како функционира емитувањето"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Емитување"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Луѓето во ваша близина со компатибилни уреди со Bluetooth може да ги слушаат аудиозаписите што ги емитувате"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• инсталирана е апликација за камера"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• апликацијата е поставена"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• достапен е најмалку еден уред"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Изберете стандардна апликација за белешки за да ја користите кратенката за фаќање белешки"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Изберете апликација"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Допрете и задржете ја кратенката"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Откажи"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Променете го екранот сега"</string>
diff --git a/packages/SystemUI/res/values-ml/strings.xml b/packages/SystemUI/res/values-ml/strings.xml
index 5fd666595f63..b280a7ab2811 100644
--- a/packages/SystemUI/res/values-ml/strings.xml
+++ b/packages/SystemUI/res/values-ml/strings.xml
@@ -657,7 +657,7 @@
<string name="group_system_hide_reshow_taskbar" msgid="3809304065624351131">"ടാസ്‌ക്ബാർ മറയ്ക്കുക, (വീണ്ടും) കാണിക്കുക"</string>
<string name="group_system_access_system_settings" msgid="7961639365383008053">"സിസ്റ്റം ക്രമീകരണം ആക്സസ് ചെയ്യുക"</string>
<string name="group_system_access_google_assistant" msgid="1186152943161483864">"Google Assistant ആക്സസ് ചെയ്യുക"</string>
- <string name="group_system_lock_screen" msgid="7391191300363416543">"സ്‌ക്രീൻ ലോക്ക് ചെയ്യുക"</string>
+ <string name="group_system_lock_screen" msgid="7391191300363416543">"ലോക്ക് സ്‌ക്രീൻ"</string>
<string name="group_system_quick_memo" msgid="2914234890158583919">"അതിവേഗ മെമോ തയ്യാറാക്കുന്നതിന് നോട്ട്‌സ് ആപ്പ് തുറക്കുക"</string>
<string name="keyboard_shortcut_group_system_multitasking" msgid="1065232949510862593">"സിസ്റ്റം മൾട്ടിടാസ്‌കിംഗ്"</string>
<string name="system_multitasking_rhs" msgid="6593269428880305699">"നിലവിലെ ആപ്പ് വലതുവശത്ത് വരുന്ന രീതിയിൽ സ്ക്രീൻ വിഭജന മോഡിൽ കടക്കുക"</string>
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"സ്‌പീക്കറുകളും ഡിസ്പ്ലേകളും"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"നിർദ്ദേശിച്ച ഉപകരണങ്ങൾ"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"മീഡിയയെ മറ്റൊരു ഉപകരണത്തിലേക്ക് നീക്കുന്നതിന് നിങ്ങളുടെ പങ്കിട്ട സെഷൻ നിർത്തുക"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"നിർത്തുക"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ബ്രോഡ്‌കാസ്‌റ്റ് എങ്ങനെയാണ് പ്രവർത്തിക്കുന്നത്"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ബ്രോഡ്‌കാസ്റ്റ്"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"അനുയോജ്യമായ Bluetooth ഉപകരണങ്ങളോടെ സമീപമുള്ള ആളുകൾക്ക് നിങ്ങൾ ബ്രോഡ്‌കാസ്‌റ്റ് ചെയ്യുന്ന മീഡിയ കേൾക്കാനാകും"</string>
diff --git a/packages/SystemUI/res/values-mn/strings.xml b/packages/SystemUI/res/values-mn/strings.xml
index 6e1312befe4b..d2c2a1d06327 100644
--- a/packages/SystemUI/res/values-mn/strings.xml
+++ b/packages/SystemUI/res/values-mn/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Сертификатын зөвшөөрлийг энэ төхөөрөмжид суулгасан байна. Таны аюулгүй сүлжээний ачааллыг өөрчлөх эсвэл хянах боломжтой."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Таны админ төхөөрөмжийн ачааллыг хянадаг сүлжээний логийг асаасан байна."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Таны админ ажлын профайлын тань ачааллыг хянадаг сүлжээний логийг асаасан бөгөөд энэ нь хувийн профайлын ачааллыг хянахгүй."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Энэ төхөөрөмж <xliff:g id="VPN_APP">%1$s</xliff:g>-р интернэтэд холбогдсон байна. Таны имэйл болон интернэтээр үзсэн өгөгдөл зэрэг сүлжээний үйл ажиллагаа VPN-н үйлчилгээ үзүүлэгчид харагдана."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Энэ төхөөрөмж <xliff:g id="VPN_APP">%1$s</xliff:g>-р интернэтэд холбогдсон байна. Таны имэйл болон интернэтээр үзсэн өгөгдөл зэрэг сүлжээний үйл ажиллагаа таны IT админд харагдана."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Энэ төхөөрөмж <xliff:g id="VPN_APP_0">%1$s</xliff:g> болон <xliff:g id="VPN_APP_1">%2$s</xliff:g>-р интернэтэд холбогдсон байна. Таны имэйл болон интернэтээр үзсэн өгөгдөл зэрэг сүлжээний үйл ажиллагаа таны IT админд харагдана."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Таны ажлын аппууд <xliff:g id="VPN_APP">%1$s</xliff:g>-р интернэтэд холбогдсон байна. Таны имэйл болон интернэтээр үзсэн өгөгдөл зэрэг ажлын аппууд дахь сүлжээний үйл ажиллагаа таны IT админ болон VPN-н үйлчилгээ үзүүлэгчид харагдана."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Таны хувийн аппууд <xliff:g id="VPN_APP">%1$s</xliff:g>-р интернэтэд холбогдсон байна. Таны имэйл болон интернэтээр үзсэн өгөгдөл зэрэг сүлжээний үйл ажиллагаа таны VPN-н үйлчилгээ үзүүлэгчид харагдана."</string>
@@ -757,7 +755,7 @@
<string name="accessibility_quick_settings_edit" msgid="1523745183383815910">"Тохиргооны дарааллыг өөрчилнө үү."</string>
<string name="accessibility_quick_settings_power_menu" msgid="6820426108301758412">"Асаах/унтраах цэс"</string>
<string name="accessibility_quick_settings_page" msgid="7506322631645550961">"<xliff:g id="ID_2">%2$d</xliff:g>-н <xliff:g id="ID_1">%1$d</xliff:g>-р хуудас"</string>
- <string name="tuner_lock_screen" msgid="2267383813241144544">"Түгжигдсэн дэлгэц"</string>
+ <string name="tuner_lock_screen" msgid="2267383813241144544">"Түгжээтэй дэлгэц"</string>
<string name="thermal_shutdown_title" msgid="2702966892682930264">"Халснаас үүдэн утас унтарсан"</string>
<string name="thermal_shutdown_message" msgid="6142269839066172984">"Таны утас одоо хэвийн ажиллаж байна.\nДэлгэрэнгүй мэдээлэл авах бол товшино уу"</string>
<string name="thermal_shutdown_dialog_message" msgid="6745684238183492031">"Таны утас хэт халсан тул хөргөхөөр унтраасан болно. Таны утас одоо хэвийн ажиллаж байна.\n\nХэрэв та дараахыг хийвэл таны утас хэт халж болзошгүй:\n • Их хэмжээний нөөц хэрэглээний апп (тоглоом, видео эсвэл шилжилтийн апп зэрэг)\n • Багтаамж ихтэй файл татах, байршуулах\n • Утсаа өндөр температурт ашиглах"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Чанга яригч ба дэлгэц"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Санал болгосон төхөөрөмжүүд"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Нэвтрүүлэлт хэрхэн ажилладаг вэ?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Нэвтрүүлэлт"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Тохиромжтой Bluetooth төхөөрөмжүүдтэй таны ойролцоох хүмүүс таны нэвтрүүлж буй медиаг сонсох боломжтой"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Камер аппыг суулгах"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Аппыг тохируулсан"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Дор хаяж нэг төхөөрөмж боломжтой"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Тэмдэглэл хөтлөх товчлолыг ашиглахын тулд тэмдэглэлийн өгөгдмөл аппыг сонгоно уу"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Апп сонгох"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Товчлолд хүрээд удаан дарна уу"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Цуцлах"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Одоо дэлгэцүүдийг сэлгэх"</string>
diff --git a/packages/SystemUI/res/values-mr/strings.xml b/packages/SystemUI/res/values-mr/strings.xml
index bfa1a71e6573..f8ae0e1c8e20 100644
--- a/packages/SystemUI/res/values-mr/strings.xml
+++ b/packages/SystemUI/res/values-mr/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"स्पीकर आणि डिस्प्ले"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"सुचवलेली डिव्हाइस"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ब्रॉडकास्टिंग कसे काम करते"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ब्रॉडकास्ट करा"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"कंपॅटिबल ब्लूटूथ डिव्‍हाइस असलेले तुमच्या जवळपासचे लोक हे तुम्ही ब्रॉडकास्ट करत असलेला मीडिया ऐकू शकतात"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• कॅमेरा अ‍ॅप इंस्टॉल करणे"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• अ‍ॅप सेट करणे"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• किमान एक डिव्हाइस उपलब्ध करणे"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"टिपा घेण्याशी संबंधित शॉर्टकट वापरण्याकरिता टिपांसाठीचे डीफॉल्ट अ‍ॅप निवडा"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"अ‍ॅप निवडा"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"स्पर्श करा आणि धरून ठेवा शॉर्टकट"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"रद्द करा"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"आता स्क्रीन स्विच करा"</string>
diff --git a/packages/SystemUI/res/values-ms/strings.xml b/packages/SystemUI/res/values-ms/strings.xml
index a5971b5b99a7..ad895598106a 100644
--- a/packages/SystemUI/res/values-ms/strings.xml
+++ b/packages/SystemUI/res/values-ms/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Pembesar Suara &amp; Paparan"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Peranti yang Dicadangkan"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Hentikan sesi dikongsi anda untuk mengalihkan media kepada peranti yang lain"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Berhenti"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cara siaran berfungsi"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Siarkan"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Orang berdekatan anda dengan peranti Bluetooth yang serasi boleh mendengar media yang sedang anda siarkan"</string>
@@ -1122,10 +1124,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Pasang apl kamera"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Apl disediakan"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Sekurang-kurangnya satu peranti tersedia"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Pilih apl nota lalai untuk menggunakan pintasan pengambilan nota"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Pilih apl"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Pintasan sentuh &amp; tahan"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Batal"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Tukar skrin sekarang"</string>
diff --git a/packages/SystemUI/res/values-my/strings.xml b/packages/SystemUI/res/values-my/strings.xml
index f56ee6f061e6..f6891d59476f 100644
--- a/packages/SystemUI/res/values-my/strings.xml
+++ b/packages/SystemUI/res/values-my/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"စပီကာနှင့် ဖန်သားပြင်များ"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"အကြံပြုထားသော စက်ပစ္စည်းများ"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ထုတ်လွှင့်မှုဆောင်ရွက်ပုံ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ထုတ်လွှင့်ခြင်း"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"အနီးရှိတွဲသုံးနိုင်သော ဘလူးတုသ်သုံးစက် အသုံးပြုသူများက သင်ထုတ်လွှင့်နေသော မီဒီယာကို နားဆင်နိုင်သည်"</string>
diff --git a/packages/SystemUI/res/values-nb/strings.xml b/packages/SystemUI/res/values-nb/strings.xml
index 7c55779796d8..556cbafb78d6 100644
--- a/packages/SystemUI/res/values-nb/strings.xml
+++ b/packages/SystemUI/res/values-nb/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"En sertifiseringsinstans er installert på denne enheten. Den sikre nettverkstrafikken din kan overvåkes eller endres."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Administratoren din har slått på loggføring av nettverk, som overvåker trafikken på enheten din."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Administratoren din har slått på loggføring av nettverk, som overvåker trafikken i jobbprofilen din, men ikke i den personlige profilen din."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Denne enheten er koblet til internett via <xliff:g id="VPN_APP">%1$s</xliff:g>. Nettverksaktiviteten din, inkludert e-poster og nettlesingsdata, er synlig for VPN-leverandøren."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Denne enheten er koblet til internett via <xliff:g id="VPN_APP">%1$s</xliff:g>. Nettverksaktiviteten din, inkludert e-poster og nettlesingsdata, er synlig for IT-administratoren din."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Denne enheten er koblet til internett via <xliff:g id="VPN_APP_0">%1$s</xliff:g> og <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Nettverksaktiviteten din, inkludert e-poster og nettlesingsdata, er synlig for IT-administratoren din."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Jobbappene dine er koblet til internett via <xliff:g id="VPN_APP">%1$s</xliff:g>. Nettverksaktiviteten din i jobbapper, inkludert e-poster og nettlesingsdata, er synlige for IT-administratoren og VPN-leverandøren din."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"De personlige appene dine er koblet til internett via <xliff:g id="VPN_APP">%1$s</xliff:g>. Nettverksaktiviteten din, inkludert e-poster og nettlesingsdata, er synlig for VPN-leverandøren din."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Høyttalere og skjermer"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Foreslåtte enheter"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Slik fungerer kringkasting"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Kringkasting"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Folk i nærheten med kompatible Bluetooth-enheter kan lytte til mediene du kringkaster"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• en kameraapp er installert"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• appen er konfigurert"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• minst én enhet er tilgjengelig"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Velg en standard notatapp du vil bruke med notatsnarveien"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Velg app"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Trykk på og hold inne snarveien"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Avbryt"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Bytt skjerm nå"</string>
diff --git a/packages/SystemUI/res/values-ne/strings.xml b/packages/SystemUI/res/values-ne/strings.xml
index 9195d3ff8d3a..e12838251cbc 100644
--- a/packages/SystemUI/res/values-ne/strings.xml
+++ b/packages/SystemUI/res/values-ne/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"यस डिभाइसमा एउटा प्रमाणपत्र सम्बन्धी अख्तियार सुविधा स्थापना गरिएको छ। तपाईंको सुरक्षित नेटवर्कको ट्राफिकको अनुगमन वा परिमार्जन हुनसक्छ।"</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"तपाईंका प्रशासकले तपाईंको डिभाइसमा ट्राफिकको अनुगमन गर्ने नेटवर्क लग गर्ने प्रक्रियालाई सक्रिय गर्नुभएको छ।"</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"तपाईंका एड्मिनले \'नेटवर्क लगिङ\' सुविधा अन गर्नुभएको छ। यो सुविधाले तपाईंको कार्य प्रोफाइलको ट्राफिक अनुगमन गर्छ तर व्यक्तिगत प्रोफाइलको ट्राफिक भने अनुगमन गर्दैन।"</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"यो डिभाइस <xliff:g id="VPN_APP">%1$s</xliff:g> मार्फत इन्टरनेटमा कनेक्ट गरिएको छ। तपाईंको VPN प्रदायकले इमेल र ब्राउजिङ डेटालगायतका नेटवर्कसम्बन्धी गतिविधि हेर्न सक्छ।"</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"यो डिभाइस <xliff:g id="VPN_APP">%1$s</xliff:g> मार्फत इन्टरनेटमा कनेक्ट गरिएको छ। तपाईंका IT एड्मिन इमेल र ब्राउजिङ डेटालगायतका नेटवर्कसम्बन्धी गतिविधि हेर्न सक्नुहुन्छ।"</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"तपाईंको डिभाइस <xliff:g id="VPN_APP_0">%1$s</xliff:g> र <xliff:g id="VPN_APP_1">%2$s</xliff:g> मार्फत इन्टरनेटमा कनेक्ट गरिएको छ। तपाईंको सूचना प्रविधि व्यवस्थापक तपाईंको इमेल र ब्राउजिङ डेटासहित नेटवर्कसम्बन्धी क्रियाकलाप हेर्न सक्छन्।"</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"तपाईंका कामसम्बन्धी एपहरू <xliff:g id="VPN_APP">%1$s</xliff:g> मार्फत इन्टरनेटमा कनेक्ट गरिएका छन्। तपाईंको सूचना प्रविधि व्यवस्थापक र VPN प्रदायक कामसम्बन्धी एपहरूमा भएका तपाईंका इमेल र ब्राउजिङ डेटासहित नेटवर्कसम्बन्धी क्रियाकलाप हेर्न सक्छन्।"</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"तपाईंका व्यक्तिगत एपहरू <xliff:g id="VPN_APP">%1$s</xliff:g> मार्फत इन्टरनेटमा कनेक्ट गरिएका छन्। तपाईंको VPN प्रदायक तपाईंको इमेल र ब्राउजिङ डेटासहित नेटवर्कसम्बन्धी क्रियाकलाप हेर्न सक्छन्।"</string>
@@ -956,7 +954,7 @@
<string name="media_move_closer_to_start_cast" msgid="2673104707465013176">"<xliff:g id="DEVICENAME">%1$s</xliff:g> मा प्ले गर्न आफ्नो डिभाइस नजिकै लैजानुहोस्"</string>
<string name="media_move_closer_to_end_cast" msgid="7302555909119374738">"यो डिभाइसमा प्ले गर्न <xliff:g id="DEVICENAME">%1$s</xliff:g> को अझ नजिक जानुहोस्"</string>
<string name="media_transfer_playing_different_device" msgid="7186806382609785610">"<xliff:g id="DEVICENAME">%1$s</xliff:g> मा प्ले गरिँदै छ"</string>
- <string name="media_transfer_failed" msgid="7955354964610603723">"केही चिज गडबड भयो। फेरि प्रयास गर्नुहोस्।"</string>
+ <string name="media_transfer_failed" msgid="7955354964610603723">"कुनै समस्या आयो। फेरि प्रयास गर्नुहोस्।"</string>
<string name="media_transfer_loading" msgid="5544017127027152422">"लोड हुँदै छ"</string>
<string name="media_ttt_default_device_type" msgid="4457646436153370169">"ट्याब्लेट"</string>
<string name="media_transfer_receiver_content_description_unknown_app" msgid="7381771464846263667">"तपाईंको मिडिया कास्ट गरिँदै छ"</string>
@@ -987,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"स्पिकर तथा डिस्प्लेहरू"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"सिफारिस गरिएका डिभाइसहरू"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"मिडिया अर्को डिभाइसमा सार्नका लागि तपाईंले सेयर गरेको सत्र अन्त्य गर्नुहोस्"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"रोक्नुहोस्"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"प्रसारण गर्ने सुविधाले कसरी काम गर्छ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"प्रसारण"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"कम्प्याटिबल ब्लुटुथ डिभाइस भएका नजिकैका मान्छेहरू तपाईंले प्रसारण गरिरहनुभएको मिडिया सुन्न सक्छन्"</string>
diff --git a/packages/SystemUI/res/values-nl/strings.xml b/packages/SystemUI/res/values-nl/strings.xml
index 1de5a8d0f363..c660f1e4b33b 100644
--- a/packages/SystemUI/res/values-nl/strings.xml
+++ b/packages/SystemUI/res/values-nl/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Er is een certificeringsinstantie geïnstalleerd op dit apparaat. Je beveiligde netwerkverkeer kan worden bijgehouden of aangepast."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Je beheerder heeft de netwerkregistratie aangezet, waarmee het verkeer op je apparaat wordt gecontroleerd."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Je beheerder heeft netwerkregistratie aangezet. Hiermee wordt verkeer in je werkprofiel bijgehouden, maar niet in je persoonlijke profiel."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Dit apparaat heeft verbinding met internet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Je netwerkactiviteit, waaronder e-mails en browsegegevens, is zichtbaar voor de VPN-provider."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Dit apparaat heeft verbinding met internet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Je netwerkactiviteit, waaronder e-mails en browsegegevens, is zichtbaar voor je IT-beheerder."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Dit apparaat heeft verbinding met internet via <xliff:g id="VPN_APP_0">%1$s</xliff:g> en <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Je netwerkactiviteit, waaronder e-mails en browsegegevens, is zichtbaar voor je IT-beheerder."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Je werk-apps hebben verbinding met internet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Je netwerkactiviteit in werk-apps, waaronder e-mails en browsegegevens, is zichtbaar voor je IT-beheerder en VPN-provider."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Je persoonlijke apps hebben verbinding met internet via <xliff:g id="VPN_APP">%1$s</xliff:g>. Je netwerkactiviteit, waaronder e-mails en browsegegevens, is zichtbaar voor je VPN-provider."</string>
@@ -987,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Speakers en schermen"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Voorgestelde apparaten"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Stop je gedeelde sessie om media naar een ander apparaat te verplaatsen"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Stoppen"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Hoe uitzenden werkt"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Uitzending"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Mensen bij jou in de buurt met geschikte bluetooth-apparaten kunnen luisteren naar de media die je uitzendt"</string>
@@ -1124,10 +1124,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Er moet een camera-app zijn geïnstalleerd"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• De app is ingesteld"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Er is ten minste één apparaat beschikbaar"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Selecteer een standaard notitie-app om de sneltoets voor notities maken te gebruiken"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"App selecteren"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Houd de sneltoets ingedrukt"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Annuleren"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Wissel nu van scherm"</string>
diff --git a/packages/SystemUI/res/values-or/strings.xml b/packages/SystemUI/res/values-or/strings.xml
index c2dbf373133c..2c2718ba6985 100644
--- a/packages/SystemUI/res/values-or/strings.xml
+++ b/packages/SystemUI/res/values-or/strings.xml
@@ -83,7 +83,7 @@
<string name="screenshot_edit_label" msgid="8754981973544133050">"ଏଡିଟ କରନ୍ତୁ"</string>
<string name="screenshot_edit_description" msgid="3333092254706788906">"ସ୍କ୍ରିନସଟ୍ ଏଡିଟ କରନ୍ତୁ"</string>
<string name="screenshot_share_description" msgid="2861628935812656612">"ସ୍କ୍ରିନସଟ ସେୟାର କରନ୍ତୁ"</string>
- <string name="screenshot_scroll_label" msgid="2930198809899329367">"ଅଧିକ କ୍ୟାପଚର୍ କରନ୍ତୁ"</string>
+ <string name="screenshot_scroll_label" msgid="2930198809899329367">"ଅଧିକ କେପଚର କରନ୍ତୁ"</string>
<string name="screenshot_dismiss_description" msgid="4702341245899508786">"ସ୍କ୍ରିନସଟ୍ ଖାରଜ କରନ୍ତୁ"</string>
<string name="screenshot_dismiss_work_profile" msgid="3101530842987697045">"ୱାର୍କ ପ୍ରୋଫାଇଲ ମେସେଜକୁ ଖାରଜ କରନ୍ତୁ"</string>
<string name="screenshot_preview_description" msgid="7606510140714080474">"ସ୍କ୍ରିନସଟର ପ୍ରିଭ୍ୟୁ"</string>
@@ -193,7 +193,7 @@
<string name="accessibility_not_connected" msgid="4061305616351042142">"କନେକ୍ଟ ହୋଇନାହିଁ।"</string>
<string name="data_connection_roaming" msgid="375650836665414797">"ରୋମିଙ୍ଗ"</string>
<string name="cell_data_off" msgid="4886198950247099526">"ବନ୍ଦ ଅଛି"</string>
- <string name="accessibility_airplane_mode" msgid="1899529214045998505">"ଏରୋପ୍ଲେନ ମୋଡ।"</string>
+ <string name="accessibility_airplane_mode" msgid="1899529214045998505">"ଏୟାରପ୍ଲେନ ମୋଡ।"</string>
<string name="accessibility_vpn_on" msgid="8037549696057288731">"VPN ଅନ୍‍।"</string>
<string name="accessibility_battery_level" msgid="5143715405241138822">"ବ୍ୟାଟେରୀ <xliff:g id="NUMBER">%d</xliff:g> ଶତକଡ଼ା।"</string>
<string name="accessibility_battery_level_with_estimate" msgid="6548654589315074529">"ବେଟେରୀ <xliff:g id="PERCENTAGE">%1$d</xliff:g> ଶତକଡ଼ା, <xliff:g id="TIME">%2$s</xliff:g>"</string>
@@ -209,7 +209,7 @@
<string name="accessibility_desc_notification_shade" msgid="5355229129428759989">"ବିଜ୍ଞପ୍ତି ଶେଡ୍‍।"</string>
<string name="accessibility_desc_quick_settings" msgid="4374766941484719179">"କ୍ୱିକ୍ ସେଟିଂସ୍।"</string>
<string name="accessibility_desc_qs_notification_shade" msgid="8327226953072700376">"କୁଇକ ସେଟିଂସ ଏବଂ ବିଜ୍ଞପ୍ତି ସେଡ।"</string>
- <string name="accessibility_desc_lock_screen" msgid="5983125095181194887">"ଲକ୍‌ ସ୍କ୍ରୀନ୍‌।"</string>
+ <string name="accessibility_desc_lock_screen" msgid="5983125095181194887">"ଲକ ସ୍କ୍ରିନ।"</string>
<string name="accessibility_desc_work_lock" msgid="4355620395354680575">"ୱର୍କ ଲକ୍‍ ସ୍କ୍ରୀନ୍‍"</string>
<string name="accessibility_desc_close" msgid="8293708213442107755">"ବନ୍ଦ କରନ୍ତୁ"</string>
<string name="accessibility_quick_settings_dnd_none_on" msgid="3235552940146035383">"ସମ୍ପୂର୍ଣ୍ଣ ନୀରବତା"</string>
@@ -267,7 +267,7 @@
<string name="quick_settings_cast_detail_empty_text" msgid="2846282280014617785">"କୌଣସି ଡିଭାଇସ୍ ଉପଲବ୍ଧ ନାହିଁ"</string>
<string name="quick_settings_cast_no_wifi" msgid="6980194769795014875">"ୱାଇ-ଫାଇ ସଂଯୋଜିତ ହୋଇନାହିଁ"</string>
<string name="quick_settings_brightness_dialog_title" msgid="4980669966716685588">"ଉଜ୍ଜ୍ୱଳତା"</string>
- <string name="quick_settings_inversion_label" msgid="3501527749494755688">"ରଙ୍ଗ ଇନଭାର୍ସନ"</string>
+ <string name="quick_settings_inversion_label" msgid="3501527749494755688">"କଲର ଇନଭର୍ସନ"</string>
<string name="quick_settings_color_correction_label" msgid="5636617913560474664">"ରଙ୍ଗ ସଂଶୋଧନ"</string>
<string name="quick_settings_font_scaling_label" msgid="5289001009876936768">"ଫଣ୍ଟର ଆକାର"</string>
<string name="quick_settings_more_user_settings" msgid="7634653308485206306">"ୟୁଜରମାନଙ୍କୁ ପରିଚାଳନା କରନ୍ତୁ"</string>
@@ -280,7 +280,7 @@
<string name="quick_settings_hotspot_secondary_label_transient" msgid="7585604088079160564">"ଚାଲୁ ହେଉଛି…"</string>
<string name="quick_settings_hotspot_secondary_label_data_saver_enabled" msgid="1280433136266439372">"ଡାଟା ସେଭର୍‌ ଅନ୍‌ ଅଛି"</string>
<string name="quick_settings_hotspot_secondary_label_num_devices" msgid="7536823087501239457">"{count,plural, =1{#ଟି ଡିଭାଇସ}other{#ଟି ଡିଭାଇସ}}"</string>
- <string name="quick_settings_flashlight_label" msgid="4904634272006284185">"ଫ୍ଲାସ୍‍ଲାଇଟ୍"</string>
+ <string name="quick_settings_flashlight_label" msgid="4904634272006284185">"ଫ୍ଲାସଲାଇଟ"</string>
<string name="quick_settings_flashlight_camera_in_use" msgid="4820591564526512571">"କ୍ୟାମେରା ବ୍ୟବହାରରେ ଅଛି"</string>
<string name="quick_settings_cellular_detail_title" msgid="792977203299358893">"ମୋବାଇଲ୍‌ ଡାଟା"</string>
<string name="quick_settings_cellular_detail_data_usage" msgid="6105969068871138427">"ଡାଟାର ବ୍ୟବହାର"</string>
@@ -295,7 +295,7 @@
<string name="quick_settings_night_secondary_label_until_sunrise" msgid="4063448287758262485">"ସୂର୍ଯ୍ୟୋଦୟ ପର୍ଯ୍ୟନ୍ତ"</string>
<string name="quick_settings_night_secondary_label_on_at" msgid="3584738542293528235">"<xliff:g id="TIME">%s</xliff:g>ରେ ଅନ୍ ହେବ"</string>
<string name="quick_settings_secondary_label_until" msgid="1883981263191927372">"<xliff:g id="TIME">%s</xliff:g> ପର୍ଯ୍ୟନ୍ତ"</string>
- <string name="quick_settings_ui_mode_night_label" msgid="1398928270610780470">"ଗାଢ଼ା ଥିମ୍"</string>
+ <string name="quick_settings_ui_mode_night_label" msgid="1398928270610780470">"ଗାଢ଼ା ଥିମ"</string>
<string name="quick_settings_dark_mode_secondary_label_battery_saver" msgid="4990712734503013251">"ବ୍ୟାଟେରୀ ସେଭର୍"</string>
<string name="quick_settings_dark_mode_secondary_label_on_at_sunset" msgid="6017379738102015710">"ସନ୍ଧ୍ୟାରେ ଚାଲୁ ହେବ"</string>
<string name="quick_settings_dark_mode_secondary_label_until_sunrise" msgid="4404885070316716472">"ସକାଳ ପର୍ଯ୍ୟନ୍ତ"</string>
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"ଏହି ଡିଭାଇସରେ ଏକ ସର୍ଟିଫିକେଟ୍‍ ଅଥରିଟି ଇନଷ୍ଟଲ୍‍ କରାଯାଇଛି। ଆପଣଙ୍କ ସୁରକ୍ଷିତ ନେଟୱର୍କ ଟ୍ରାଫିକ୍‍ ନୀରିକ୍ଷଣ କିମ୍ବା ସଂଶୋଧନ କରାଯାଇ ପାରେ।"</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"ଆପଣଙ୍କ ଆଡମିନ୍‍ ନେଟୱର୍କ ଲଗଇନ୍‍ କରିବା ଅନ୍‍ କରିଛନ୍ତି, ଯାହା ଆପଣଙ୍କ ଡିଭାଇସରେ ଟ୍ରାଫିକ୍‍ ନୀରିକ୍ଷଣ କରେ।"</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"ଆପଣଙ୍କ ଆଡମିନ୍ ନେଟୱାର୍କ ଲଗିଂ ଚାଲୁ କରିଛନ୍ତି, ଯାହା ଆପଣଙ୍କ ୱାର୍କ ପ୍ରୋଫାଇଲରେ ଟ୍ରାଫିକ୍ ନିରୀକ୍ଷଣ କରେ କିନ୍ତୁ ଆପଣଙ୍କ ବ୍ୟକ୍ତିଗତ ପ୍ରୋଫାଇଲରେ ନୁହେଁ।"</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"ଏହି ଡିଭାଇସ <xliff:g id="VPN_APP">%1$s</xliff:g> ମାଧ୍ୟମରେ ଇଣ୍ଟରନେଟ ସହ କନେକ୍ଟ ଅଛି। ଇମେଲ ଏବଂ ବ୍ରାଉଜିଂ ଡାଟା ସମେତ, ଆପଣଙ୍କ ନେଟୱାର୍କ କାର୍ଯ୍ୟକଳାପ VPN ପ୍ରଦାନକାରୀଙ୍କୁ ଦୃଶ୍ୟମାନ ହୋଇଥାଏ।"</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"ଏହି ଡିଭାଇସ <xliff:g id="VPN_APP">%1$s</xliff:g> ମାଧ୍ୟମରେ ଇଣ୍ଟରନେଟ ସହ କନେକ୍ଟ ଅଛି। ଇମେଲ ଏବଂ ବ୍ରାଉଜିଂ ଡାଟା ସମେତ, ଆପଣଙ୍କ ନେଟୱାର୍କ କାର୍ଯ୍ୟକଳାପ ଆପଣଙ୍କର IT ଆଡମିନଙ୍କୁ ଦୃଶ୍ୟମାନ ହୋଇଥାଏ।"</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"ଏହି ଡିଭାଇସ <xliff:g id="VPN_APP_0">%1$s</xliff:g> ଏବଂ <xliff:g id="VPN_APP_1">%2$s</xliff:g> ମାଧ୍ୟମରେ ଇଣ୍ଟରନେଟ ସହ କନେକ୍ଟ ଅଛି। ଇମେଲ ଏବଂ ବ୍ରାଉଜିଂ ଡାଟା ସମେତ, ଆପଣଙ୍କ ନେଟୱାର୍କ କାର୍ଯ୍ୟକଳାପ ଆପଣଙ୍କର IT ଆଡମିନଙ୍କୁ ଦୃଶ୍ୟମାନ ହୋଇଥାଏ।"</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"ଆପଣଙ୍କ ୱାର୍କ ଆପ୍ସ <xliff:g id="VPN_APP">%1$s</xliff:g> ମାଧ୍ୟମରେ ଇଣ୍ଟରନେଟ ସହ କନେକ୍ଟ ଅଛି। ଇମେଲ ଏବଂ ବ୍ରାଉଜିଂ ଡାଟା ସମେତ, ୱାର୍କ ଆପ୍ସରେ ଆପଣଙ୍କ ନେଟୱାର୍କ କାର୍ଯ୍ୟକଳାପ ଆପଣଙ୍କର IT ଆଡମିନ ଏବଂ VPN ପ୍ରଦାନକାରୀଙ୍କୁ ଦୃଶ୍ୟମାନ ହୋଇଥାଏ।"</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"ଆପଣଙ୍କ ବ୍ୟକ୍ତିଗତ ଆପ୍ସ <xliff:g id="VPN_APP">%1$s</xliff:g> ମାଧ୍ୟମରେ ଇଣ୍ଟରନେଟ ସହ କନେକ୍ଟ ଅଛି। ଇମେଲ ଏବଂ ବ୍ରାଉଜିଂ ଡାଟା ସମେତ, ଆପଣଙ୍କ ନେଟୱାର୍କ କାର୍ଯ୍ୟକଳାପ ଆପଣଙ୍କର VPN ପ୍ରଦାନକାରୀଙ୍କୁ ଦୃଶ୍ୟମାନ ହୋଇଥାଏ।"</string>
@@ -509,14 +507,14 @@
<string name="stream_accessibility" msgid="3873610336741987152">"ଆକ୍ସେସିବିଲିଟୀ"</string>
<string name="volume_ringer_status_normal" msgid="1339039682222461143">"ରିଙ୍ଗ"</string>
<string name="volume_ringer_status_vibrate" msgid="6970078708957857825">"ଭାଇବ୍ରେଟ୍‌"</string>
- <string name="volume_ringer_status_silent" msgid="3691324657849880883">"ମ୍ୟୁଟ୍"</string>
+ <string name="volume_ringer_status_silent" msgid="3691324657849880883">"ମ୍ୟୁଟ"</string>
<string name="volume_stream_content_description_unmute" msgid="7729576371406792977">"%1$s। ଅନମ୍ୟୁଟ୍‍ କରିବା ପାଇଁ ଟାପ୍‍ କରନ୍ତୁ।"</string>
<string name="volume_stream_content_description_vibrate" msgid="4858111994183089761">"%1$s। ଭାଇବ୍ରେଟ୍‍ ସେଟ୍‍ କରିବାକୁ ଟାପ୍‍ କରନ୍ତୁ। ଆକ୍ସେସିବିଲିଟୀ ସର୍ଭିସ୍‌ ମ୍ୟୁଟ୍‍ କରାଯାଇପାରେ।"</string>
<string name="volume_stream_content_description_mute" msgid="4079046784917920984">"%1$s। ମ୍ୟୁଟ୍‍ କରିବାକୁ ଟାପ୍‍ କରନ୍ତୁ। ଆକ୍ସେସିବିଲିଟୀ ସର୍ଭିସ୍‌ ମ୍ୟୁଟ୍‍ କରାଯାଇପାରେ।"</string>
<string name="volume_stream_content_description_vibrate_a11y" msgid="2742330052979397471">"%1$s। ଭାଇବ୍ରେଟରେ ସେଟ୍‍ କରିବାକୁ ଟାପ୍‍ କରନ୍ତୁ।"</string>
<string name="volume_stream_content_description_mute_a11y" msgid="5743548478357238156">"%1$s। ମ୍ୟୁଟ୍‍ କରିବାକୁ ଟାପ୍‍ କରନ୍ତୁ।"</string>
<string name="volume_ringer_change" msgid="3574969197796055532">"ରିଙ୍ଗର୍ ମୋଡ୍ ବଦଳାଇବାକୁ ଟାପ୍ କରନ୍ତୁ"</string>
- <string name="volume_ringer_hint_mute" msgid="4263821214125126614">"ମ୍ୟୁଟ୍"</string>
+ <string name="volume_ringer_hint_mute" msgid="4263821214125126614">"ମ୍ୟୁଟ"</string>
<string name="volume_ringer_hint_unmute" msgid="6119086890306456976">"ଅନ୍‍-ମ୍ୟୁଟ୍ କରନ୍ତୁ"</string>
<string name="volume_ringer_hint_vibrate" msgid="6211609047099337509">"ଭାଇବ୍ରେଟ୍"</string>
<string name="volume_dialog_title" msgid="6502703403483577940">"%s ଭଲ୍ୟୁମ୍ ନିୟନ୍ତ୍ରଣ"</string>
@@ -539,7 +537,7 @@
<string name="qr_code_scanner_title" msgid="1938155688725760702">"QR କୋଡ ସ୍କାନର"</string>
<string name="qr_code_scanner_updating_secondary_label" msgid="8344598017007876352">"ଅପଡେଟ ହେଉଛି"</string>
<string name="status_bar_work" msgid="5238641949837091056">"ୱର୍କ ପ୍ରୋଫାଇଲ୍‌"</string>
- <string name="status_bar_airplane" msgid="4848702508684541009">"ଏରୋପ୍ଲେନ ମୋଡ"</string>
+ <string name="status_bar_airplane" msgid="4848702508684541009">"ଏୟାରପ୍ଲେନ ମୋଡ"</string>
<string name="zen_alarm_warning" msgid="7844303238486849503">"<xliff:g id="WHEN">%1$s</xliff:g>ବେଳେ ଆପଣ ନିଜର ପରବର୍ତ୍ତୀ ଆଲାର୍ମ ଶୁଣିପାରିବେ ନାହିଁ"</string>
<string name="alarm_template" msgid="2234991538018805736">"<xliff:g id="WHEN">%1$s</xliff:g> ହେଲେ"</string>
<string name="alarm_template_far" msgid="3561752195856839456">"<xliff:g id="WHEN">%1$s</xliff:g> ବେଳେ"</string>
@@ -710,7 +708,7 @@
<item msgid="7453955063378349599">"ବାମକୁ-ଆଉଜେଇବା"</item>
<item msgid="5874146774389433072">"ଡାହାଣକୁ-ଆଉଜେଇବା"</item>
</string-array>
- <string name="save" msgid="3392754183673848006">"ସେଭ୍‌ କରନ୍ତୁ"</string>
+ <string name="save" msgid="3392754183673848006">"ସେଭ କରନ୍ତୁ"</string>
<string name="reset" msgid="8715144064608810383">"ରିସେଟ୍ କରନ୍ତୁ"</string>
<string name="clipboard" msgid="8517342737534284617">"କ୍ଲିପ୍‌ବୋର୍ଡ"</string>
<string name="accessibility_key" msgid="3471162841552818281">"କଷ୍ଟମ୍‍ ନାଭିଗେଶନ୍ ବଟନ୍‍"</string>
@@ -757,7 +755,7 @@
<string name="accessibility_quick_settings_edit" msgid="1523745183383815910">"ସେଟିଂସର କ୍ରମ ଏଡିଟ କରନ୍ତୁ।"</string>
<string name="accessibility_quick_settings_power_menu" msgid="6820426108301758412">"ପାୱାର ମେନୁ"</string>
<string name="accessibility_quick_settings_page" msgid="7506322631645550961">"ପୃଷ୍ଠା <xliff:g id="ID_1">%1$d</xliff:g> ମୋଟ <xliff:g id="ID_2">%2$d</xliff:g>"</string>
- <string name="tuner_lock_screen" msgid="2267383813241144544">"ଲକ୍‌ ସ୍କ୍ରୀନ୍‌"</string>
+ <string name="tuner_lock_screen" msgid="2267383813241144544">"ଲକ ସ୍କ୍ରିନ"</string>
<string name="thermal_shutdown_title" msgid="2702966892682930264">"ଗରମ ହେତୁ ଫୋନ୍‍ ଅଫ୍‍ କରିଦିଆଗଲା"</string>
<string name="thermal_shutdown_message" msgid="6142269839066172984">"ଆପଣଙ୍କ ଫୋନ୍ ବର୍ତ୍ତମାନ ସାମାନ୍ୟ ରୂପେ ଚାଲୁଛି।\nଅଧିକ ସୂଚନା ପାଇଁ ଟାପ୍ କରନ୍ତୁ"</string>
<string name="thermal_shutdown_dialog_message" msgid="6745684238183492031">"ଆପଣଙ୍କ ଫୋନ୍‍ ବହୁତ ଗରମ ଥିଲା, ତେଣୁ ଏହାକୁ ଥଣ୍ଡା କରାଯିବାକୁ ଅଫ୍‍ କରିଦିଆଗଲା। ଆପଣଙ୍କ ଫୋନ୍‍ ବର୍ତ୍ତମାନ ସାମାନ୍ୟ ଅବସ୍ଥାରେ ଚାଲୁଛି।\n\nଆପଣଙ୍କ ଫୋନ୍‍ ଅଧିକ ଗରମ ହୋଇଯାଇପାରେ ଯଦି ଆପଣ:\n • ରିସୋର୍ସ-ଇଣ୍ଟେନସିଭ୍‍ ଆପ୍‍ (ଯେପରିକି ଗେମିଙ୍ଗ, ଭିଡିଓ, କିମ୍ବା ନେଭିଗେସନ୍‍ ଆପ୍‍) ବ୍ୟବହାର କରନ୍ତି\n • ବଡ ଫାଇଲ୍‍ ଡାଉନଲୋଡ କିମ୍ବା ଅପଲୋଡ୍‍ କରନ୍ତି\n • ଅଧିକ ତାପମାତ୍ରାରେ ଆପଣଙ୍କ ଫୋନ୍‍ ବ୍ୟବହାର କରନ୍ତି"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"ସ୍ପିକର ଏବଂ ଡିସପ୍ଲେଗୁଡ଼ିକ"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"ପ୍ରସ୍ତାବିତ ଡିଭାଇସଗୁଡ଼ିକ"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ବ୍ରଡକାଷ୍ଟିଂ କିପରି କାମ କରେ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ବ୍ରଡକାଷ୍ଟ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ଆପଣଙ୍କ ଆଖପାଖର କମ୍ପାଟିବଲ ବ୍ଲୁଟୁଥ ଡିଭାଇସ ଥିବା ଲୋକମାନେ ଆପଣ ବ୍ରଡକାଷ୍ଟ କରୁଥିବା ମିଡିଆ ଶୁଣିପାରିବେ"</string>
diff --git a/packages/SystemUI/res/values-pa/strings.xml b/packages/SystemUI/res/values-pa/strings.xml
index 6ea8f8a8ffb7..ad6a4faef537 100644
--- a/packages/SystemUI/res/values-pa/strings.xml
+++ b/packages/SystemUI/res/values-pa/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"ਇੱਕ ਪ੍ਰਮਾਣ-ਪੱਤਰ ਅਥਾਰਟੀ ਇਸ ਡੀਵਾਈਸ \'ਤੇ ਸਥਾਪਤ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਤੁਹਾਡੇ ਸੁਰੱਖਿਅਤ ਨੈੱਟਵਰਕ ਟਰੈਫਿਕ ਦੀ ਨਿਗਰਾਨੀ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ ਜਾਂ ਉਸਨੂੰ ਸੋਧਿਆ ਜਾ ਸਕਦਾ ਹੈ।"</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"ਤੁਹਾਡੇ ਪ੍ਰਸ਼ਾਸਕ ਨੇ ਨੈੱਟਵਰਕ ਲੌਗਿੰਗ ਨੂੰ ਚਾਲੂ ਕੀਤਾ ਹੋਇਆ ਹੈ, ਜੋ ਤੁਹਾਡੇ ਡੀਵਾਈਸ \'ਤੇ ਟਰੈਫਿਕ ਦੀ ਨਿਗਰਾਨੀ ਕਰਦਾ ਹੈ।"</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"ਤੁਹਾਡੇ ਪ੍ਰਸ਼ਾਸਕ ਨੇ ਨੈੱਟਵਰਕ ਲੌਗ-ਇਨ ਨੂੰ ਚਾਲੂ ਕੀਤਾ ਹੋਇਆ ਹੈ, ਜੋ ਤੁਹਾਡੇ ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਵਿੱਚ ਟਰੈਫ਼ਿਕ ਦੀ ਨਿਗਰਾਨੀ ਕਰਦਾ ਹੈ ਪਰ ਤੁਹਾਡੀ ਨਿੱਜੀ ਪ੍ਰੋਫਾਈਲ ਵਿੱਚ ਨਹੀਂ।"</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"ਇਹ ਡੀਵਾਈਸ <xliff:g id="VPN_APP">%1$s</xliff:g> ਰਾਹੀਂ ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਹੈ। ਈਮੇਲਾਂ ਅਤੇ ਬ੍ਰਾਊਜ਼ਿੰਗ ਡਾਟੇ ਸਮੇਤ ਤੁਹਾਡੀ ਨੈੱਟਵਰਕ ਸਰਗਰਮੀ VPN ਪ੍ਰਦਾਨਕ ਨੂੰ ਦਿਸਦੀ ਹੈ।"</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"ਇਹ ਡੀਵਾਈਸ <xliff:g id="VPN_APP">%1$s</xliff:g> ਰਾਹੀਂ ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਹੈ। ਈਮੇਲਾਂ ਅਤੇ ਬ੍ਰਾਊਜ਼ਿੰਗ ਡਾਟੇ ਸਮੇਤ ਤੁਹਾਡੀ ਨੈੱਟਵਰਕ ਸਰਗਰਮੀ ਤੁਹਾਡੇ ਆਈ.ਟੀ. ਪ੍ਰਸ਼ਾਸਕ ਨੂੰ ਦਿਸਦੀ ਹੈ।"</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"ਇਹ ਡੀਵਾਈਸ <xliff:g id="VPN_APP_0">%1$s</xliff:g> ਅਤੇ <xliff:g id="VPN_APP_1">%2$s</xliff:g> ਰਾਹੀਂ ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਹੈ। ਈਮੇਲਾਂ ਅਤੇ ਬ੍ਰਾਊਜ਼ਿੰਗ ਡਾਟੇ ਸਮੇਤ ਤੁਹਾਡੀ ਨੈੱਟਵਰਕ ਸਰਗਰਮੀ ਤੁਹਾਡੇ ਆਈ.ਟੀ. ਪ੍ਰਸ਼ਾਸਕ ਨੂੰ ਦਿਸਦੀ ਹੈ।"</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"ਤੁਹਾਡੀਆਂ ਕੰਮ ਸੰਬੰਧੀ ਐਪਾਂ <xliff:g id="VPN_APP">%1$s</xliff:g> ਰਾਹੀਂ ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਹਨ। ਕੰਮ ਸੰਬੰਧੀ ਐਪਾਂ ਵਿੱਚ ਈਮੇਲਾਂ ਅਤੇ ਬ੍ਰਾਊਜ਼ਿੰਗ ਡਾਟੇ ਸਮੇਤ ਤੁਹਾਡੀ ਨੈੱਟਵਰਕ ਸਰਗਰਮੀ ਤੁਹਾਡੇ ਆਈ.ਟੀ. ਪ੍ਰਸ਼ਾਸਕ ਅਤੇ VPN ਪ੍ਰਦਾਨਕ ਨੂੰ ਦਿਸਦੀ ਹੈ।"</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"ਤੁਹਾਡੀਆਂ ਨਿੱਜੀ ਐਪਾਂ <xliff:g id="VPN_APP">%1$s</xliff:g> ਰਾਹੀਂ ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਹਨ। ਈਮੇਲਾਂ ਅਤੇ ਬ੍ਰਾਊਜ਼ਿੰਗ ਡਾਟੇ ਸਮੇਤ ਤੁਹਾਡੀ ਨੈੱਟਵਰਕ ਸਰਗਰਮੀ ਤੁਹਾਡੇ VPN ਪ੍ਰਦਾਨਕ ਨੂੰ ਦਿਸਦੀ ਹੈ।"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"ਸਪੀਕਰ ਅਤੇ ਡਿਸਪਲੇਆਂ"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"ਸੁਝਾਏ ਗਏ ਡੀਵਾਈਸ"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ਪ੍ਰਸਾਰਨ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ਪ੍ਰਸਾਰਨ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ਅਨੁਰੂਪ ਬਲੂਟੁੱਥ ਡੀਵਾਈਸਾਂ ਨਾਲ ਨਜ਼ਦੀਕੀ ਲੋਕ ਤੁਹਾਡੇ ਵੱਲੋਂ ਪ੍ਰਸਾਰਨ ਕੀਤੇ ਜਾ ਰਹੇ ਮੀਡੀਆ ਨੂੰ ਸੁਣ ਸਕਦੇ ਹਨ"</string>
diff --git a/packages/SystemUI/res/values-pl/strings.xml b/packages/SystemUI/res/values-pl/strings.xml
index 7503ed674ef8..0400ca342d1f 100644
--- a/packages/SystemUI/res/values-pl/strings.xml
+++ b/packages/SystemUI/res/values-pl/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Urząd certyfikacji zainstalowany na tym urządzeniu. Twój zabezpieczony ruch w sieci może być monitorowany i zmieniany."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Administrator włączył rejestrowanie sieciowe, które pozwala monitorować ruch na Twoim urządzeniu."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Administrator włączył rejestrowanie sieciowe, które pozwala monitorować ruch na Twoim profilu służbowym, ale nie na profilu osobistym."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"To urządzenie jest połączone z internetem za pomocą aplikacji <xliff:g id="VPN_APP">%1$s</xliff:g>. Twoja aktywność w sieci, w tym poczta e-mail i dane przeglądania, są widoczne dla dostawcy VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"To urządzenie jest połączone z internetem za pomocą aplikacji <xliff:g id="VPN_APP">%1$s</xliff:g>. Twoja aktywność w sieci, w tym poczta e-mail i dane przeglądania, są widoczne dla administratora IT."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"To urządzenie jest połączone z internetem za pomocą aplikacji <xliff:g id="VPN_APP_0">%1$s</xliff:g> i <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Twoja aktywność w sieci, w tym poczta e-mail i dane przeglądania, są widoczne dla administratora IT."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Twoje aplikacje służbowe są połączone z internetem za pomocą aplikacji <xliff:g id="VPN_APP">%1$s</xliff:g>. Twoja aktywność w sieci w aplikacjach służbowych, w tym poczta e-mail i dane przeglądania, są widoczne dla administratora IT i firmy świadczącej usługi VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Twoje aplikacje osobiste są połączone z internetem za pomocą aplikacji <xliff:g id="VPN_APP">%1$s</xliff:g>. Twoja aktywność w sieci, w tym poczta e-mail i dane przeglądania, są widoczne dla firmy świadczącej usługi VPN."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Głośniki i wyświetlacze"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Proponowane urządzenia"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Jak działa transmitowanie"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmisja"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Osoby w pobliżu ze zgodnymi urządzeniami Bluetooth mogą słuchać transmitowanych przez Ciebie multimediów"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Zainstalowano aplikację aparatu."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Aplikacja została skonfigurowana."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Dostępne jest co najmniej 1 urządzenie."</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Wybierz domyślną aplikację do obsługi notatek, której skrótu będziesz używać do funkcji notowania"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Wybierz aplikację"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Skrót – naciśnij i przytrzymaj"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Anuluj"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Przełącz ekrany teraz"</string>
diff --git a/packages/SystemUI/res/values-pl/tiles_states_strings.xml b/packages/SystemUI/res/values-pl/tiles_states_strings.xml
index fb0bb70f359f..f74985fadcd7 100644
--- a/packages/SystemUI/res/values-pl/tiles_states_strings.xml
+++ b/packages/SystemUI/res/values-pl/tiles_states_strings.xml
@@ -134,7 +134,7 @@
<string-array name="tile_states_reduce_brightness">
<item msgid="1839836132729571766">"Niedostępny"</item>
<item msgid="4572245614982283078">"Wyłączone"</item>
- <item msgid="6536448410252185664">"Włączony"</item>
+ <item msgid="6536448410252185664">"Włączone"</item>
</string-array>
<string-array name="tile_states_cameratoggle">
<item msgid="6680671247180519913">"Niedostępny"</item>
diff --git a/packages/SystemUI/res/values-pt-rBR/strings.xml b/packages/SystemUI/res/values-pt-rBR/strings.xml
index 9b30a7a1ad7d..233a934d9251 100644
--- a/packages/SystemUI/res/values-pt-rBR/strings.xml
+++ b/packages/SystemUI/res/values-pt-rBR/strings.xml
@@ -375,7 +375,7 @@
<string name="interruption_level_alarms_twoline" msgid="2045067991335708767">"Somente\nalarmes"</string>
<string name="keyguard_indication_charging_time_wireless" msgid="577856646141738675">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carregando sem fio • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
<string name="keyguard_indication_charging_time" msgid="6492711711891071502">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carregando • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
- <string name="keyguard_indication_charging_time_fast" msgid="8390311020603859480">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carga rápida • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
+ <string name="keyguard_indication_charging_time_fast" msgid="8390311020603859480">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carregamento rápido • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
<string name="keyguard_indication_charging_time_slowly" msgid="301936949731705417">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carga lenta • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
<string name="keyguard_indication_charging_time_dock" msgid="3149328898931741271">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carregando • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
<string name="accessibility_multi_user_switch_switcher" msgid="5330448341251092660">"Trocar usuário"</string>
@@ -507,7 +507,7 @@
<string name="stream_accessibility" msgid="3873610336741987152">"Acessibilidade"</string>
<string name="volume_ringer_status_normal" msgid="1339039682222461143">"Tocar"</string>
<string name="volume_ringer_status_vibrate" msgid="6970078708957857825">"Vibrar"</string>
- <string name="volume_ringer_status_silent" msgid="3691324657849880883">"Ignorar"</string>
+ <string name="volume_ringer_status_silent" msgid="3691324657849880883">"Desativar som"</string>
<string name="volume_stream_content_description_unmute" msgid="7729576371406792977">"%1$s. Toque para ativar o som."</string>
<string name="volume_stream_content_description_vibrate" msgid="4858111994183089761">"%1$s. Toque para configurar para vibrar. É possível que os serviços de acessibilidade sejam silenciados."</string>
<string name="volume_stream_content_description_mute" msgid="4079046784917920984">"%1$s. Toque para silenciar. É possível que os serviços de acessibilidade sejam silenciados."</string>
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Alto-falantes e telas"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Dispositivos sugeridos"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Como funciona a transmissão"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmitir"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"As pessoas próximas a você com dispositivos Bluetooth compatíveis podem ouvir a mídia que você está transmitindo"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Um app de câmera está instalado"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• O app está disponível"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Pelo menos um dispositivo está disponível"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Selecione um app de notas padrão para usar o atalho de anotações"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Selecionar app"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Toque e pressione o atalho"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Cancelar"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Trocar de tela agora"</string>
diff --git a/packages/SystemUI/res/values-pt-rPT/strings.xml b/packages/SystemUI/res/values-pt-rPT/strings.xml
index c20f8ebe7ffb..35564b2890a6 100644
--- a/packages/SystemUI/res/values-pt-rPT/strings.xml
+++ b/packages/SystemUI/res/values-pt-rPT/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Altifalantes e ecrãs"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Dispositivos sugeridos"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Como funciona a transmissão"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmissão"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"As pessoas próximas de si com dispositivos Bluetooth compatíveis podem ouvir o conteúdo multimédia que está a transmitir"</string>
diff --git a/packages/SystemUI/res/values-pt/strings.xml b/packages/SystemUI/res/values-pt/strings.xml
index 9b30a7a1ad7d..233a934d9251 100644
--- a/packages/SystemUI/res/values-pt/strings.xml
+++ b/packages/SystemUI/res/values-pt/strings.xml
@@ -375,7 +375,7 @@
<string name="interruption_level_alarms_twoline" msgid="2045067991335708767">"Somente\nalarmes"</string>
<string name="keyguard_indication_charging_time_wireless" msgid="577856646141738675">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carregando sem fio • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
<string name="keyguard_indication_charging_time" msgid="6492711711891071502">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carregando • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
- <string name="keyguard_indication_charging_time_fast" msgid="8390311020603859480">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carga rápida • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
+ <string name="keyguard_indication_charging_time_fast" msgid="8390311020603859480">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carregamento rápido • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
<string name="keyguard_indication_charging_time_slowly" msgid="301936949731705417">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carga lenta • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
<string name="keyguard_indication_charging_time_dock" msgid="3149328898931741271">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Carregando • Conclusão em <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string>
<string name="accessibility_multi_user_switch_switcher" msgid="5330448341251092660">"Trocar usuário"</string>
@@ -507,7 +507,7 @@
<string name="stream_accessibility" msgid="3873610336741987152">"Acessibilidade"</string>
<string name="volume_ringer_status_normal" msgid="1339039682222461143">"Tocar"</string>
<string name="volume_ringer_status_vibrate" msgid="6970078708957857825">"Vibrar"</string>
- <string name="volume_ringer_status_silent" msgid="3691324657849880883">"Ignorar"</string>
+ <string name="volume_ringer_status_silent" msgid="3691324657849880883">"Desativar som"</string>
<string name="volume_stream_content_description_unmute" msgid="7729576371406792977">"%1$s. Toque para ativar o som."</string>
<string name="volume_stream_content_description_vibrate" msgid="4858111994183089761">"%1$s. Toque para configurar para vibrar. É possível que os serviços de acessibilidade sejam silenciados."</string>
<string name="volume_stream_content_description_mute" msgid="4079046784917920984">"%1$s. Toque para silenciar. É possível que os serviços de acessibilidade sejam silenciados."</string>
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Alto-falantes e telas"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Dispositivos sugeridos"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Como funciona a transmissão"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmitir"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"As pessoas próximas a você com dispositivos Bluetooth compatíveis podem ouvir a mídia que você está transmitindo"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Um app de câmera está instalado"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• O app está disponível"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Pelo menos um dispositivo está disponível"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Selecione um app de notas padrão para usar o atalho de anotações"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Selecionar app"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Toque e pressione o atalho"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Cancelar"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Trocar de tela agora"</string>
diff --git a/packages/SystemUI/res/values-ro/strings.xml b/packages/SystemUI/res/values-ro/strings.xml
index 6bc2d6cbfd35..9e0a64df74e6 100644
--- a/packages/SystemUI/res/values-ro/strings.xml
+++ b/packages/SystemUI/res/values-ro/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Pe acest dispozitiv este instalat un certificat CA. Traficul de rețea securizat poate fi monitorizat sau modificat."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Administratorul tău a activat înregistrarea în jurnal pentru rețea, funcție care monitorizează traficul de pe dispozitivul tău."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Administratorul a activat înregistrarea în jurnal pentru rețea, funcție care monitorizează traficul în profilul de serviciu, dar nu și în profilul personal."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Acest dispozitiv este conectat la internet prin aplicația <xliff:g id="VPN_APP">%1$s</xliff:g>. Activitatea în rețea, inclusiv e-mailurile și datele de navigare, sunt vizibile pentru furnizorul de servicii VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Acest dispozitiv este conectat la internet prin aplicația <xliff:g id="VPN_APP">%1$s</xliff:g>. Activitatea în rețea, inclusiv e-mailurile și datele de navigare, sunt vizibile pentru administratorul IT."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Acest dispozitiv este conectat la internet prin aplicațiile <xliff:g id="VPN_APP_0">%1$s</xliff:g> și <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Activitatea în rețea, inclusiv e-mailurile și datele de navigare, sunt vizibile pentru administratorul IT."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Aplicațiile pentru lucru sunt conectate la internet prin <xliff:g id="VPN_APP">%1$s</xliff:g>. Activitatea în rețea cu aplicațiile pentru lucru, inclusiv e-mailurile și datele de navigare, sunt vizibile pentru administratorul IT și pentru furnizorul de servicii VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Aplicațiile personale sunt conectate la internet prin <xliff:g id="VPN_APP">%1$s</xliff:g>. Activitatea în rețea, inclusiv e-mailurile și datele de navigare, sunt vizibile pentru furnizorul de servicii VPN."</string>
@@ -987,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Difuzoare și afișaje"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Dispozitive sugerate"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Oprește sesiunea comună ca să muți elementul media pe alt dispozitiv"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Oprește"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cum funcționează transmisia"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmite"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Persoanele din apropiere cu dispozitive Bluetooth compatibile pot asculta conținutul pe care îl transmiți"</string>
diff --git a/packages/SystemUI/res/values-ru/strings.xml b/packages/SystemUI/res/values-ru/strings.xml
index 3fec8a94963e..0ab048568809 100644
--- a/packages/SystemUI/res/values-ru/strings.xml
+++ b/packages/SystemUI/res/values-ru/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"На устройстве установлен сертификат ЦС. Ваш защищенный сетевой трафик могут отслеживать и изменять."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Администратор включил ведение сетевого журнала, чтобы отслеживать трафик на вашем устройстве."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Администратор включил ведение сетевого журнала, чтобы отслеживать трафик в вашем рабочем профиле (информация из личного профиля не собирается)."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Это устройство подключено к интернету через сервис \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". Ваши действия в сети, включая данные о работе с электронной почтой и в браузере, видны поставщику услуг VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Это устройство подключено к интернету через сервис \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". Ваши действия в сети, включая данные о работе с электронной почтой и в браузере, видны вашему системному администратору."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Это устройство подключено к интернету через сервисы \"<xliff:g id="VPN_APP_0">%1$s</xliff:g>\" и \"<xliff:g id="VPN_APP_1">%2$s</xliff:g>\". Ваши действия в сети, включая данные о работе с электронной почтой и в браузере, видны вашему системному администратору."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Рабочие приложения подключены к интернету через сервис \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". Ваши сетевые действия в этих приложениях, включая данные о работе с электронной почтой и в браузере, видны вашему системному администратору и поставщику услуг VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Личные приложения подключены к интернету через сервис \"<xliff:g id="VPN_APP">%1$s</xliff:g>\". Ваши действия в сети, включая данные о работе с электронной почтой и в браузере, видны вашему поставщику услуг VPN."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Колонки и дисплеи"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Рекомендуемые устройства"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Как работают трансляции"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Трансляция"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Находящиеся рядом с вами люди с совместимыми устройствами Bluetooth могут слушать медиафайлы, которые вы транслируете."</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Установлено приложение камеры."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Приложение установлено."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Доступно хотя бы одно устройство."</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Выберите стандартное приложение для заметок, которое будет открываться при нажатии кнопки быстрого доступа."</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Выбрать приложение"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Нажмите и удерживайте ярлык"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Отмена"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Переключиться на другой экран"</string>
diff --git a/packages/SystemUI/res/values-si/strings.xml b/packages/SystemUI/res/values-si/strings.xml
index 60bf28581b78..eaabf4988abd 100644
--- a/packages/SystemUI/res/values-si/strings.xml
+++ b/packages/SystemUI/res/values-si/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"මෙම උපාංගය තුළ සහතික අධිකාරියක් ස්ථාපනය කර තිබේ. ඔබගේ ආරක්ෂක ජාල තදබදය නිරීක්ෂණය හෝ වෙනස් කිරීමට පුළුවනි."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"ඔබගේ පරිපාලක ඔබගේ උපාංගය මත තදබදය නිරීක්ෂණය කරන ජාල ලොග් කිරීම ක්‍රියාත්මක කර ඇත."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"ඔබගේ පරිපාලක ඔබගේ පුද්ගලික පැතිකඩෙහි නොව කාර්යාල පැතිකඩෙහි තදබදය නිරීක්ෂණය කරන, ජාල පිරීම ක්‍රියාත්මක කර ඇත."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"මෙම උපාංගය <xliff:g id="VPN_APP">%1$s</xliff:g> හරහා අන්තර්ජාලයට සම්බන්ධ කර ඇත. ඉ-තැපැල් සහ බ්‍රවුස් කිරීමේ දත්ත ඇතුළුව, ඔබේ ජාල ක්‍රියාකාරකම්, VPN සැපයුම්කරුට දෘශ්‍යමාන වේ."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"මෙම උපාංගය <xliff:g id="VPN_APP">%1$s</xliff:g> හරහා අන්තර්ජාලයට සම්බන්ධ කර ඇත. ඉ-තැපැල් සහ බ්‍රවුස් කිරීමේ දත්ත ඇතුළුව, ඔබේ ජාල ක්‍රියාකාරකම්, ඔබේ IT පරිපාලකට දෘශ්‍යමාන වේ."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"මෙම උපාංගය <xliff:g id="VPN_APP_0">%1$s</xliff:g> සහ <xliff:g id="VPN_APP_1">%2$s</xliff:g> හරහා අන්තර්ජාලයට සම්බන්ධ කර ඇත. ඉ-තැපැල් සහ බ්‍රවුස් කිරීමේ දත්ත ඇතුළුව, ඔබගේ ජාල ක්‍රියාකාරකම්, ඔබගේ IT පරිපාලකට දෘශ්‍යමාන වේ."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"ඔබගේ කාර්යාල යෙදුම් <xliff:g id="VPN_APP">%1$s</xliff:g> හරහා අන්තර්ජාලයට සම්බන්ධ කර ඇත. ඉ-තැපැල් සහ බ්‍රවුස් කිරීමේ දත්ත ඇතුළුව, කාර්යාල යෙදුම්වල ඔබගේ ජාල ක්‍රියාකාරකම්, ඔබගේ IT පරිපාලක සහ VPN සැපයුම්කරුට දෘශ්‍යමාන වේ."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"ඔබගේ පුද්ගලික යෙදුම් <xliff:g id="VPN_APP">%1$s</xliff:g> හරහා අන්තර්ජාලයට සම්බන්ධ කර ඇත. ඉ-තැපැල් සහ බ්‍රවුස් කිරීමේ දත්ත ඇතුළුව, ඔබගේ ජාල ක්‍රියාකාරකම්, ඔබගේ VPN සැපයුම්කරුට දෘශ්‍යමාන වේ."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"ස්පීකර් සහ සංදර්ශක"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"යෝජිත උපාංග"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"විකාශනය ක්‍රියා කරන ආකාරය"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"විකාශනය"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ගැළපෙන බ්ලූටූත් උපාංග සහිත ඔබ අවට සිටින පුද්ගලයින්ට ඔබ විකාශනය කරන මාධ්‍යයට සවන් දිය හැකිය"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• කැමරා යෙදුමක් ස්ථාපන කරන්න"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• යෙදුම සකසා ඇත"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• අවම වශයෙන් එක උපාංගයක් ලැබේ"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"සටහන් ගැනීමේ කෙටිමඟ භාවිතා කිරීමට පෙරනිමි සටහන් යෙදුමක් තෝරන්න"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"යෙදුම තෝරන්න"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"ස්පර්ශ කර අල්ලා සිටීමේ කෙටිමඟ"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"අවලංගු කරන්න"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"දැන් තිර මාරු කරන්න"</string>
diff --git a/packages/SystemUI/res/values-sk/strings.xml b/packages/SystemUI/res/values-sk/strings.xml
index c2fb390821ee..c2c220a62bb3 100644
--- a/packages/SystemUI/res/values-sk/strings.xml
+++ b/packages/SystemUI/res/values-sk/strings.xml
@@ -390,7 +390,7 @@
<string name="user_add_user_message_guest_remove" msgid="5589286604543355007">\n\n"Ak pridáte nového používatelia, ukončí sa režim pre hostí a odstránia sa všetky aplikácie a údaje z aktuálnej relácie hosťa."</string>
<string name="user_limit_reached_title" msgid="2429229448830346057">"Dosiahnutý limit počtu používateľov"</string>
<string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Môžete vytvoriť iba jedného používateľa.}few{Môžete pridať až # používateľov.}many{You can add up to # users.}other{Môžete pridať až # používateľov.}}"</string>
- <string name="user_remove_user_title" msgid="9124124694835811874">"Odstrániť používateľa?"</string>
+ <string name="user_remove_user_title" msgid="9124124694835811874">"Odobrať používateľa?"</string>
<string name="user_remove_user_message" msgid="6702834122128031833">"Všetky aplikácie a údaje tohto používateľa budú odstránené."</string>
<string name="user_remove_user_remove" msgid="8387386066949061256">"Odstrániť"</string>
<string name="media_projection_dialog_title" msgid="3316063622495360646">"Chcete spustiť nahrávanie alebo prenos s aktivovaným povolením <xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g>?"</string>
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"V tomto zariadení je nainštalovaná certifikačná autorita. Zabezpečená sieťová premávka môže byť sledovaná či upravená."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Správca aktivoval zapisovanie do denníka siete, ktoré sleduje premávku na vašom zariadení."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Správca aktivoval zapisovanie do denníka siete, ktoré sleduje premávku vo vašom pracovnom profile, ale nie osobnom."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Toto zariadenie je k internetu pripojené prostredníctvom aplikácie <xliff:g id="VPN_APP">%1$s</xliff:g>. Vašu aktivitu v sieti vrátane e‑mailov a dát prehliadania vidí poskytovateľ siete VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Toto zariadenie je k internetu pripojené prostredníctvom aplikácie <xliff:g id="VPN_APP">%1$s</xliff:g>. Vašu aktivitu v sieti vrátane e‑mailov a dát prehliadania vidí váš správca IT."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Toto zariadenie je k internetu pripojené prostredníctvom aplikácií <xliff:g id="VPN_APP_0">%1$s</xliff:g> a <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Vašu aktivitu v sieti vrátane e‑mailov a dát prehliadania vidí váš správca IT."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Vaše pracovné aplikácie sú k internetu pripojené prostredníctvom aplikácie <xliff:g id="VPN_APP">%1$s</xliff:g>. Vašu aktivitu v sieti v pracovných aplikáciách vrátane e‑mailov a dát prehliadania vidí váš správca IT a poskytovateľ siete VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Vaše osobné aplikácie sú k internetu pripojené prostredníctvom aplikácie <xliff:g id="VPN_APP">%1$s</xliff:g>. Vašu aktivitu v sieti vrátane e‑mailov a dát prehliadania vidí váš poskytovateľ siete VPN."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Reproduktory a obrazovky"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Navrhované zariadenia"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Ako vysielanie funguje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Vysielanie"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Ľudia v okolí s kompatibilnými zariadeniami s rozhraním Bluetooth si môžu vypočuť médiá, ktoré vysielate"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Nainštalujte si aplikáciu kamery"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Aplikácia je nastavená"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• K dispozícii je minimálne jedno zariadenie"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Vyberte predvolenú aplikáciu na písanie poznámok, ku ktorej priradíte skratku pre poznámky"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Výber aplikácie"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Pridržte skratku"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Zrušiť"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Prepnite obrazovky"</string>
diff --git a/packages/SystemUI/res/values-sl/strings.xml b/packages/SystemUI/res/values-sl/strings.xml
index c625cb2b7042..bbecf1f9f427 100644
--- a/packages/SystemUI/res/values-sl/strings.xml
+++ b/packages/SystemUI/res/values-sl/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"V tej napravi je nameščen overitelj potrdil. Varni omrežni promet se lahko nadzira ali spreminja."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Skrbnik je vklopil beleženje omrežnega prometa, ki nadzira promet v napravi."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Skrbnik je vklopil beleženje omrežnega prometa, ki nadzoruje samo promet v delovnem profilu, tistega v osebnem profilu pa ne."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Ta naprava je povezana z internetom prek omrežja <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaša omrežna dejavnost, vključno z e-pošto in podatki brskanja, je vidna ponudniku omrežja VPN."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Ta naprava je povezana z internetom prek omrežja <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaša omrežna dejavnost, vključno z e-pošto in podatki brskanja, je vidna skrbniku za IT."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Ta naprava je povezana z internetom prek omrežij <xliff:g id="VPN_APP_0">%1$s</xliff:g> in <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Vaša omrežna dejavnost, vključno z e-pošto in podatki brskanja, je vidna skrbniku za IT."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Vaše delovne aplikacije so povezane z internetom prek omrežja <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaša omrežna dejavnost v delovnih aplikacijah, vključno z e-pošto in podatki brskanja, je vidna skrbniku za IT in ponudniku omrežja VPN."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Vaše osebne aplikacije so povezane z internetom prek omrežja <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaša omrežna dejavnost, vključno z e-pošto in podatki brskanja, je vidna ponudniku omrežja VPN."</string>
@@ -987,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Zvočniki in zasloni"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Predlagane naprave"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Ustavi deljeno sejo za premik predstavnosti v drugo napravo."</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Ustavi"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kako deluje oddajanje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Oddajanje"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Osebe v bližini z združljivo napravo Bluetooth lahko poslušajo predstavnost, ki jo oddajate."</string>
@@ -1124,10 +1124,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Namestite fotografsko aplikacijo."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Aplikacija mora biti nastavljena."</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Na voljo mora biti vsaj ena naprava."</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Izberite privzeto aplikacijo za zapiske, ki jo želite povezati z bližnjico do ustvarjanja zapiskov."</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Izbira aplikacije"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Pridržite bližnjico"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Prekliči"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Preklopi zaslona zdaj"</string>
diff --git a/packages/SystemUI/res/values-sq/strings.xml b/packages/SystemUI/res/values-sq/strings.xml
index d0920afc3105..40b9eb5b89fb 100644
--- a/packages/SystemUI/res/values-sq/strings.xml
+++ b/packages/SystemUI/res/values-sq/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Altoparlantët dhe ekranet"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Pajisjet e sugjeruara"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Ndalo sesionin e ndarë për ta zhvendosur median në një pajisje tjetër"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Ndalo"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Si funksionon transmetimi"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmetimi"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Personat në afërsi me ty me pajisje të përputhshme me Bluetooth mund të dëgjojnë median që ti po transmeton"</string>
diff --git a/packages/SystemUI/res/values-sr/strings.xml b/packages/SystemUI/res/values-sr/strings.xml
index b6af6692c515..424eb44819c7 100644
--- a/packages/SystemUI/res/values-sr/strings.xml
+++ b/packages/SystemUI/res/values-sr/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"На овом уређају је инсталиран ауторитет за издавање сертификата. Безбедни мрежни саобраћај може да се прати или мења."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Администратор је укључио евидентирање мреже, које прати саобраћај на уређају."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Администратор је укључио евидентирање мреже, које прати саобраћај на пословном профилу, али не и на личном профилу."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Овај уређај је повезан на интернет преко: <xliff:g id="VPN_APP">%1$s</xliff:g>. Ваша активност на мрежи, укључујући имејлове и податке прегледања, видљива је добављачу VPN-а."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Овај уређај је повезан на интернет преко: <xliff:g id="VPN_APP">%1$s</xliff:g>. Ваша активност на мрежи, укључујући имејлове и податке прегледања, видљива је ИТ администратору."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Овај уређај је повезан на интернет преко: <xliff:g id="VPN_APP_0">%1$s</xliff:g> и <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Ваша активност на мрежи, укључујући имејлове и податке прегледања, видљива је ИТ администратору."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Ваше пословне апликације су повезане на интернет преко: <xliff:g id="VPN_APP">%1$s</xliff:g>. Ваша активност на мрежи у пословним апликацијама, укључујући имејлове и податке прегледања, видљива је ИТ администратору и добављачу VPN-а."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Ваше личне апликације су повезане на интернет преко: <xliff:g id="VPN_APP">%1$s</xliff:g>. Ваша активност на мрежи, укључујући имејлове и податке прегледања, видљива је добављачу VPN-а."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Звучници и екрани"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Предложени уређаји"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Како функционише емитовање"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Емитовање"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Људи у близини са компатибилним Bluetooth уређајима могу да слушају медијски садржај који емитујете"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• да сте инсталирали апликацију за камеру"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• да је апликација подешена"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• да је доступан барем један уређај"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Изаберите подразумевану апликацију за белешке да бисте користили пречицу за прављење белешки"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Изабери апликацију"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Додирните и задржите пречицу"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Откажи"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Замени екране"</string>
diff --git a/packages/SystemUI/res/values-sv/strings.xml b/packages/SystemUI/res/values-sv/strings.xml
index 9672f2800be8..4996e1b8c1df 100644
--- a/packages/SystemUI/res/values-sv/strings.xml
+++ b/packages/SystemUI/res/values-sv/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Högtalare och skärmar"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Förslag på enheter"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Så fungerar utsändning"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Utsändning"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Personer i närheten med kompatibla Bluetooth-enheter kan lyssna på medieinnehåll som du sänder ut"</string>
diff --git a/packages/SystemUI/res/values-sw/strings.xml b/packages/SystemUI/res/values-sw/strings.xml
index 0ee0ada8f2a9..7f162eb45559 100644
--- a/packages/SystemUI/res/values-sw/strings.xml
+++ b/packages/SystemUI/res/values-sw/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Spika na Skrini"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Vifaa Vilivyopendekezwa"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Simamisha kipindi unachoshiriki ili uhamishie maudhui kwenye kifaa kingine"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Simamisha"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Jinsi utangazaji unavyofanya kazi"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Tangaza"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Watu walio karibu nawe wenye vifaa oanifu vya Bluetooth wanaweza kusikiliza maudhui unayoyatangaza"</string>
diff --git a/packages/SystemUI/res/values-ta/strings.xml b/packages/SystemUI/res/values-ta/strings.xml
index d9125f001d37..a2d49251ab8e 100644
--- a/packages/SystemUI/res/values-ta/strings.xml
+++ b/packages/SystemUI/res/values-ta/strings.xml
@@ -83,7 +83,7 @@
<string name="screenshot_edit_label" msgid="8754981973544133050">"திருத்து"</string>
<string name="screenshot_edit_description" msgid="3333092254706788906">"ஸ்கிரீன்ஷாட்டைத் திருத்தும்"</string>
<string name="screenshot_share_description" msgid="2861628935812656612">"ஸ்கிரீன்ஷாட்டைப் பகிர்"</string>
- <string name="screenshot_scroll_label" msgid="2930198809899329367">"கூடுதலாகப் படமெடு"</string>
+ <string name="screenshot_scroll_label" msgid="2930198809899329367">"கூடுதலாக படமெடு"</string>
<string name="screenshot_dismiss_description" msgid="4702341245899508786">"ஸ்கிரீன்ஷாட்டை நிராகரிக்கும்"</string>
<string name="screenshot_dismiss_work_profile" msgid="3101530842987697045">"பணிக் கணக்கு மெசேஜை மூடும்"</string>
<string name="screenshot_preview_description" msgid="7606510140714080474">"ஸ்கிரீன்ஷாட்டின் மாதிரிக்காட்சி"</string>
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"இந்தச் சாதனத்தில் சான்றிதழ் அங்கீகாரம் நிறுவப்பட்டுள்ளது. உங்களின் பாதுகாப்பான நெட்வொர்க் ட்ராஃபிக் கண்காணிக்கப்படலாம் அல்லது மாற்றப்படலாம்."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"உங்கள் நிர்வாகி, நெட்வொர்க் பதிவெடுத்தலை இயக்கியுள்ளார். இது சாதனத்தில் ட்ராஃபிக்கைக் கண்காணிக்கும்."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"உங்கள் நிர்வாகி \'நெட்வொர்க் பதிவெடுத்தலை\' இயக்கியுள்ளார், இது உங்கள் பணிக் கணக்கில் டிராஃபிக்கைக் கண்காணிக்கும். ஆனால் தனிப்பட்ட கணக்கில் கண்காணிக்காது."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"இந்தச் சாதனம் <xliff:g id="VPN_APP">%1$s</xliff:g> மூலம் இணையத்துடன் இணைக்கப்பட்டுள்ளது. உங்களின் நெட்வொர்க் செயல்பாட்டை (மின்னஞ்சல்கள், உலாவிய தரவு உட்பட) VPN வழங்குநரால் பார்க்க முடியும்."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"இந்தச் சாதனம் <xliff:g id="VPN_APP">%1$s</xliff:g> மூலம் இணையத்துடன் இணைக்கப்பட்டுள்ளது. உங்களின் நெட்வொர்க் செயல்பாட்டை (மின்னஞ்சல்கள், உலாவிய தரவு உட்பட) உங்கள் IT நிர்வாகியால் பார்க்க முடியும்."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"இந்தச் சாதனம் <xliff:g id="VPN_APP_0">%1$s</xliff:g>, <xliff:g id="VPN_APP_1">%2$s</xliff:g> ஆகியவை மூலம் இணையத்துடன் இணைக்கப்பட்டுள்ளது. உங்களின் நெட்வொர்க் செயல்பாட்டை (மின்னஞ்சல்கள், உலாவிய தரவு உட்பட) உங்கள் IT நிர்வாகியால் பார்க்க முடியும்."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"உங்கள் பணி ஆப்ஸ் <xliff:g id="VPN_APP">%1$s</xliff:g> மூலம் இணையத்துடன் இணைக்கப்பட்டுள்ளது. பணி ஆப்ஸில் உங்களின் நெட்வொர்க் செயல்பாட்டை (மின்னஞ்சல்கள், உலாவிய தரவு உட்பட) உங்கள் IT நிர்வாகியாலும் VPN வழங்குநராலும் பார்க்க முடியும்."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"உங்கள் தனிப்பட்ட ஆப்ஸ் <xliff:g id="VPN_APP">%1$s</xliff:g> மூலம் இணையத்துடன் இணைக்கப்பட்டுள்ளது. உங்களின் நெட்வொர்க் செயல்பாட்டை (மின்னஞ்சல்கள், உலாவிய தரவு உட்பட) உங்கள் VPN வழங்குநரால் பார்க்க முடியும்."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"ஸ்பீக்கர்கள் &amp; டிஸ்ப்ளேக்கள்"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"பரிந்துரைக்கப்படும் சாதனங்கள்"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"பிராட்காஸ்ட் எவ்வாறு செயல்படுகிறது?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"பிராட்காஸ்ட்"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"நீங்கள் பிராட்காஸ்ட் செய்யும் மீடியாவை அருகிலுள்ளவர்கள் இணக்கமான புளூடூத் சாதனங்கள் மூலம் கேட்கலாம்"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• கேமரா ஆப்ஸ் நிறுவப்பட்டிருக்க வேண்டும்"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• இந்த ஆப்ஸ் அமைக்கப்பட்டிருக்க வேண்டும்"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• குறைந்தபட்சம் ஒரு சாதனமாவது கிடைக்க வேண்டும்"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"குறிப்பெடுத்தல் ஷார்ட்கட்டைப் பயன்படுத்த, குறிப்பெடுப்பதற்கான இயல்புநிலை ஆப்ஸைத் தேர்ந்தெடுக்கவும்"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"ஆப்ஸைத் தேர்ந்தெடு"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"ஷார்ட்கட்டை தொட்டுப் பிடிக்கவும்"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"ரத்துசெய்"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"இப்போது திரைகளை மாற்றவா?"</string>
diff --git a/packages/SystemUI/res/values-te/strings.xml b/packages/SystemUI/res/values-te/strings.xml
index dec99b464b40..1749dc5304b5 100644
--- a/packages/SystemUI/res/values-te/strings.xml
+++ b/packages/SystemUI/res/values-te/strings.xml
@@ -390,7 +390,7 @@
<string name="user_add_user_message_guest_remove" msgid="5589286604543355007">\n\n"కొత్త యూజర్‌ను జోడించడం వలన గెస్ట్ మోడ్ నుండి వైదొలుగుతుంది. అలాగే ప్రస్తుత గెస్ట్ సెషన్ నుండి అన్ని యాప్‌లతో పాటు మొత్తం డేటా తొలగించబడుతుంది."</string>
<string name="user_limit_reached_title" msgid="2429229448830346057">"వినియోగదారు పరిమితిని చేరుకున్నారు"</string>
<string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{ఒక యూజర్‌ను మాత్రమే క్రియేట్ చేయవచ్చు.}other{మీరు గరిష్టంగా # మంది యూజర్‌లను జోడించవచ్చు.}}"</string>
- <string name="user_remove_user_title" msgid="9124124694835811874">"వినియోగదారుని తీసివేయాలా?"</string>
+ <string name="user_remove_user_title" msgid="9124124694835811874">"యూజర్‌ను తీసివేయాలా?"</string>
<string name="user_remove_user_message" msgid="6702834122128031833">"ఈ వినియోగదారుకు సంబంధించిన అన్ని యాప్‌లు మరియు డేటా తొలగించబడతాయి."</string>
<string name="user_remove_user_remove" msgid="8387386066949061256">"తీసివేయండి"</string>
<string name="media_projection_dialog_title" msgid="3316063622495360646">"<xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g>తో రికార్డ్ చేయడం లేదా ప్రసారం చేయడం ప్రారంభించాలా?"</string>
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"స్పీకర్‌లు &amp; డిస్‌ప్లేలు"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"సూచించబడిన పరికరాలు"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"మీడియాను మరొక పరికరానికి తరలించడానికి మీ షేర్ చేసిన సెషన్‌ను ఆపండి"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"ఆపండి"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ప్రసారం కావడం అనేది ఎలా పని చేస్తుంది"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ప్రసారం"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"మీకు సమీపంలో ఉన్న వ్యక్తులు అనుకూలత ఉన్న బ్లూటూత్ పరికరాలతో మీరు ప్రసారం చేస్తున్న మీడియాను వినగలరు"</string>
@@ -1122,10 +1124,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• కెమెరా యాప్ ఇన్‌స్టాల్ చేసి ఉందని"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• యాప్ సెటప్ చేయబడి ఉందని"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• కనీసం ఒక పరికరమైనా అందుబాటులో ఉందని"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"నోట్‌టేకింగ్ షార్ట్‌కట్‌ను ఉపయోగించడానికి ఆటోమేటిక్ సెట్టింగ్ నోట్స్ యాప్‌ను ఎంచుకోండి"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"యాప్‌ను ఎంచుకోండి"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"షార్ట్‌కట్‌ను తాకి, నొక్కి ఉంచు"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"రద్దు చేయండి"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"ఇప్పుడే స్క్రీన్‌లను మార్చండి"</string>
diff --git a/packages/SystemUI/res/values-th/strings.xml b/packages/SystemUI/res/values-th/strings.xml
index 54003c1af508..ef337444f87a 100644
--- a/packages/SystemUI/res/values-th/strings.xml
+++ b/packages/SystemUI/res/values-th/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"มีการติดตั้งผู้ออกใบรับรองในอุปกรณ์นี้ อาจมีการตรวจสอบหรือแก้ไขการจราจรของข้อมูลในเครือข่ายที่ปลอดภัยของคุณ"</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"ผู้ดูแลระบบได้เปิดการบันทึกกิจกรรมของเครือข่าย ซึ่งจะตรวจสอบการรับส่งข้อมูลในอุปกรณ์ของคุณ"</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"ผู้ดูแลระบบได้เปิดการบันทึกกิจกรรมของเครือข่าย ซึ่งจะตรวจสอบการรับส่งข้อมูลในโปรไฟล์งานแต่ไม่ตรวจสอบในโปรไฟล์ส่วนตัวของคุณ"</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"อุปกรณ์นี้เชื่อมต่ออินเทอร์เน็ตผ่าน<xliff:g id="VPN_APP">%1$s</xliff:g> ผู้ให้บริการ VPN สามารถดูกิจกรรมที่คุณทำในเครือข่ายซึ่งรวมถึงอีเมลและข้อมูลการท่องเว็บได้"</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"อุปกรณ์นี้เชื่อมต่ออินเทอร์เน็ตผ่าน<xliff:g id="VPN_APP">%1$s</xliff:g> ผู้ดูแลระบบไอทีสามารถดูกิจกรรมที่คุณทำในเครือข่ายรวมถึงอีเมลและข้อมูลการท่องเว็บได้"</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"อุปกรณ์นี้เชื่อมต่ออินเทอร์เน็ตผ่าน <xliff:g id="VPN_APP_0">%1$s</xliff:g> และ <xliff:g id="VPN_APP_1">%2$s</xliff:g> ผู้ดูแลระบบไอทีสามารถดูกิจกรรมที่คุณทำในเครือข่าย ซึ่งรวมถึงอีเมลและข้อมูลการท่องเว็บได้"</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"แอปงานเชื่อมต่ออินเทอร์เน็ตผ่าน <xliff:g id="VPN_APP">%1$s</xliff:g> ผู้ดูแลระบบไอทีและผู้ให้บริการ VPN สามารถดูกิจกรรมที่คุณทำในเครือข่ายในแอปงานได้ ซึ่งรวมถึงอีเมลและข้อมูลการท่องเว็บ"</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"แอปส่วนตัวเชื่อมต่ออินเทอร์เน็ตผ่าน<xliff:g id="VPN_APP">%1$s</xliff:g> ผู้ให้บริการ VPN สามารถดูกิจกรรมที่คุณทำในเครือข่ายซึ่งรวมถึงอีเมลและข้อมูลการท่องเว็บได้"</string>
@@ -640,7 +638,7 @@
<string name="keyboard_shortcut_group_system_shortcuts_helper" msgid="4856808328618265589">"แป้นพิมพ์ลัด"</string>
<string name="keyboard_shortcut_group_system_switch_input" msgid="952555530383268166">"สลับรูปแบบแป้นพิมพ์"</string>
<string name="keyboard_shortcut_clear_text" msgid="4679927133259287577">"ล้างข้อความ"</string>
- <string name="keyboard_shortcut_search_list_title" msgid="1156178106617830429">"ทางลัด"</string>
+ <string name="keyboard_shortcut_search_list_title" msgid="1156178106617830429">"แป้นพิมพ์ลัด"</string>
<string name="keyboard_shortcut_search_list_hint" msgid="5982623262974326746">"ค้นหาแป้นพิมพ์ลัด"</string>
<string name="keyboard_shortcut_search_list_no_result" msgid="6819302191660875501">"ไม่พบแป้นพิมพ์ลัด"</string>
<string name="keyboard_shortcut_search_category_system" msgid="1151182120757052669">"ระบบ"</string>
@@ -880,7 +878,7 @@
<string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"แตะเพื่อเปิดฟีเจอร์การช่วยเหลือพิเศษ ปรับแต่งหรือแทนที่ปุ่มนี้ในการตั้งค่า\n\n"<annotation id="link">"ดูการตั้งค่า"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"ย้ายปุ่มไปที่ขอบเพื่อซ่อนชั่วคราว"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"เลิกทำ"</string>
- <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"นำทางลัด<xliff:g id="FEATURE_NAME">%s</xliff:g>ออกแล้ว"</string>
+ <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"นำทางลัด <xliff:g id="FEATURE_NAME">%s</xliff:g> ออกแล้ว"</string>
<string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{นำทางลัด # รายการออกแล้ว}other{นำทางลัด # รายการออกแล้ว}}"</string>
<string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"ย้ายไปด้านซ้ายบน"</string>
<string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"ย้ายไปด้านขวาบน"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"ลำโพงและจอแสดงผล"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"อุปกรณ์ที่แนะนำ"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"วิธีการทำงานของการออกอากาศ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ประกาศ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ผู้ที่อยู่ใกล้คุณและมีอุปกรณ์บลูทูธที่รองรับสามารถรับฟังสื่อที่คุณกำลังออกอากาศได้"</string>
diff --git a/packages/SystemUI/res/values-tl/strings.xml b/packages/SystemUI/res/values-tl/strings.xml
index d79d6357f6b7..14ed532b6795 100644
--- a/packages/SystemUI/res/values-tl/strings.xml
+++ b/packages/SystemUI/res/values-tl/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Mga Speaker at Display"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Mga Iminumungkahing Device"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Ihinto ang iyong nakabahaging session para maglipat ng media sa ibang device"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Ihinto"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Paano gumagana ang pag-broadcast"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Makakapakinig ang mga taong malapit sa iyo na may mga compatible na Bluetooth device sa media na bino-broadcast mo"</string>
diff --git a/packages/SystemUI/res/values-tr/strings.xml b/packages/SystemUI/res/values-tr/strings.xml
index 74a5ed188568..d0e3331b8df7 100644
--- a/packages/SystemUI/res/values-tr/strings.xml
+++ b/packages/SystemUI/res/values-tr/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Bu cihazda bir sertifika yetkilisi yüklü. Güvenli ağ trafiğiniz izlenebilir veya değiştirilebilir."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Yöneticiniz,cihazınızdaki trafiği izleyen ağ günlük kaydını açtı."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Yöneticiniz, iş profilinizdeki trafiği izleyen ancak kişisel profilinizdeki trafiği izlemeyen ağ günlük kaydını açtı."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Bu cihaz internete <xliff:g id="VPN_APP">%1$s</xliff:g> üzerinden bağlı. VPN sağlayıcınız; e-postalar ve tarama verileri de dahil olmak üzere ağ etkinliğinizi görebilir."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Bu cihaz internete <xliff:g id="VPN_APP">%1$s</xliff:g> üzerinden bağlı. E-postalar ve tarama verileri dahil olmak üzere ağ etkinliğiniz, BT yöneticinize görünür."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Bu cihaz internete <xliff:g id="VPN_APP_0">%1$s</xliff:g> ve <xliff:g id="VPN_APP_1">%2$s</xliff:g> üzerinden bağlı. E-postalar ve tarama verileri dahil olmak üzere ağ etkinliğiniz, BT yöneticinize görünür."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"İş uygulamalarınız internete <xliff:g id="VPN_APP">%1$s</xliff:g> üzerinden bağlı. E-postalar ve tarama verileri dahil olmak üzere iş uygulamalarındaki ağ etkinliğiniz, BT yöneticinize ve VPN sağlayıcınıza görünür."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Kişisel uygulamalarınız internete <xliff:g id="VPN_APP">%1$s</xliff:g> üzerinden bağlı. E-postalar ve tarama verileri dahil olmak üzere ağ etkinliğiniz, VPN sağlayıcınıza görünür."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"%%<xliff:g id="PERCENTAGE">%1$d</xliff:g>"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Hoparlörler ve Ekranlar"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Önerilen Cihazlar"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Yayınlamanın işleyiş şekli"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Anons"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Yakınınızda ve uyumlu Bluetooth cihazları olan kişiler yayınladığınız medya içeriğini dinleyebilir"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Kamera uygulaması yüklenmelidir"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Uygulama kurulmuş olmalıdır"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• En az bir cihaz mevcut olmalıdır"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Not alma kısayolunu kullanmak için varsayılan bir notlar uygulaması seçin"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Uygulama seçin"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Kısayola dokunup basılı tutun"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"İptal"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Ekranı şimdi değiştirin"</string>
diff --git a/packages/SystemUI/res/values-uk/strings.xml b/packages/SystemUI/res/values-uk/strings.xml
index b23445e8e4ea..700d875842bc 100644
--- a/packages/SystemUI/res/values-uk/strings.xml
+++ b/packages/SystemUI/res/values-uk/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"На цьому пристрої встановлено центр сертифікації. Захищений мережевий трафік може відстежуватися або змінюватися."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Ваш адміністратор увімкнув журнал мережі, щоб відстежувати трафік на вашому пристрої."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Ваш адміністратор увімкнув журнал мережі, щоб відстежувати трафік вашого робочого профілю (не особистого)."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Цей пристрій підключено до Інтернету через додаток <xliff:g id="VPN_APP">%1$s</xliff:g>. Постачальник VPN бачить ваші дії в мережі, зокрема електронні листи й дані веб-перегляду."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Цей пристрій підключено до Інтернету через додаток <xliff:g id="VPN_APP">%1$s</xliff:g>. Системний адміністратор бачить ваші дії в мережі, зокрема електронні листи й дані веб-перегляду."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Цей пристрій підключено до Інтернету через <xliff:g id="VPN_APP_0">%1$s</xliff:g> і <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Системний адміністратор бачить ваші дії в мережі, зокрема електронні листи й дані веб-перегляду."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Ваші робочі додатки підключено до Інтернету через <xliff:g id="VPN_APP">%1$s</xliff:g>. Системний адміністратор і постачальник послуг VPN бачать ваші дії в мережі в робочих додатках, зокрема електронні листи й дані веб-перегляду."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Ваші особисті додатки підключено до Інтернету через <xliff:g id="VPN_APP">%1$s</xliff:g>. Постачальник послуг VPN бачить ваші дії в мережі, зокрема електронні листи й дані веб-перегляду."</string>
@@ -509,7 +507,7 @@
<string name="stream_accessibility" msgid="3873610336741987152">"Доступність"</string>
<string name="volume_ringer_status_normal" msgid="1339039682222461143">"Дзвінок"</string>
<string name="volume_ringer_status_vibrate" msgid="6970078708957857825">"Вібросигнал"</string>
- <string name="volume_ringer_status_silent" msgid="3691324657849880883">"без звуку"</string>
+ <string name="volume_ringer_status_silent" msgid="3691324657849880883">"Без звуку"</string>
<string name="volume_stream_content_description_unmute" msgid="7729576371406792977">"%1$s. Торкніться, щоб увімкнути звук."</string>
<string name="volume_stream_content_description_vibrate" msgid="4858111994183089761">"%1$s. Торкніться, щоб налаштувати вібросигнал. Спеціальні можливості може бути вимкнено."</string>
<string name="volume_stream_content_description_mute" msgid="4079046784917920984">"%1$s. Торкніться, щоб вимкнути звук. Спеціальні можливості може бути вимкнено."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Колонки й екрани"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Пропоновані пристрої"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Як працює трансляція"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Трансляція"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Люди поблизу, які мають сумісні пристрої з Bluetooth, можуть слухати медіаконтент, який ви транслюєте."</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Встановлено додаток для камери"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Додаток налаштовано"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Принаймні один пристрій доступний"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Виберіть стандартний додаток для нотаток, щоб створювати їх за допомогою ярлика"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Вибрати додаток"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Натисніть і утримуйте ярлик"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Скасувати"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Використовувати інший екран"</string>
diff --git a/packages/SystemUI/res/values-ur/strings.xml b/packages/SystemUI/res/values-ur/strings.xml
index deff2a950dba..1affc4edbd2d 100644
--- a/packages/SystemUI/res/values-ur/strings.xml
+++ b/packages/SystemUI/res/values-ur/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"ایک سرٹیفکیٹ کی اتھارٹی اس آلہ پر انسٹال ہے۔ آپ کا محفوظ نیٹ ورک ٹریفک مانیٹر ہو سکتا ہے یا اس میں ترمیم کی جا سکتی ہے۔"</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"آپ کے منتظم نے نیٹ ورک لاگنگ کو آن کر دیا ہے، جو آپ کے آلے پر ٹریفک مانیٹر کرتی ہے۔"</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"آپ کے منتظم نے نیٹ ورک لاگنگ آن کر دی ہے، جو آپ کے ذاتی پروفائل پر نہیں بلکہ دفتری پروفائل پر ٹریفک کو مانیٹر کرتی ہے۔"</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"‏یہ آلہ <xliff:g id="VPN_APP">%1$s</xliff:g> کے ذریعے انٹرنیٹ سے منسلک ہے۔ VPN فراہم کنندہ کو ای میلز اور براؤزر ڈیٹا سمیت آپ کے نیٹ ورک کی سرگرمی دکھائی دیتی ہے۔"</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"‏یہ آلہ <xliff:g id="VPN_APP">%1$s</xliff:g> کے ذریعے انٹرنیٹ سے منسلک ہے۔ آپ کے IT منتظم کو ای میلز اور براؤزر ڈیٹا سمیت آپ کے نیٹ ورک کی سرگرمی دکھائی دیتی ہے۔"</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"‏یہ آلہ <xliff:g id="VPN_APP_0">%1$s</xliff:g> اور <xliff:g id="VPN_APP_1">%2$s</xliff:g> کے ذریعے انٹرنیٹ سے منسلک ہے۔ آپ کا IT منتظم ای میلز اور براؤزر ڈیٹا سمیت آپ کے نیٹ ورک کی سرگرمی دیکھ سکتا ہے۔"</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"‏آپ کی ورک ایپس <xliff:g id="VPN_APP">%1$s</xliff:g> کے ذریعے انٹرنیٹ سے منسلک ہیں۔ آپ کے IT منتظم اور VPN فراہم کنندہ ای میلز اور براؤزر ڈیٹا سمیت ورک ایپس میں آپ کے نیٹ ورک کی سرگرمی دیکھ سکتے ہیں۔"</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"‏آپ کی ذاتی ایپس <xliff:g id="VPN_APP">%1$s</xliff:g> کے ذریعے انٹرنیٹ سے منسلک ہیں۔ آپ کا VPN فراہم کنندہ ای میلز اور براؤزر ڈیٹا سمیت آپ کے نیٹ ورک کی سرگرمی دیکھ سکتا ہے۔"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"%%<xliff:g id="PERCENTAGE">%1$d</xliff:g>"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"اسپیکرز اور ڈسپلیز"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"تجویز کردہ آلات"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"براڈکاسٹنگ کیسے کام کرتا ہے"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"براڈکاسٹ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"موافق بلوٹوتھ آلات کے ساتھ آپ کے قریبی لوگ آپ کے نشر کردہ میڈیا کو سن سکتے ہیں"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• کیمرا ایپ انسٹال کریں"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• ایپ سیٹ اپ ہو گئی ہے"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• کم از کم ایک آلہ دستیاب ہے"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"نوٹ لینے والے شارٹ کٹ کا استعمال کرنے کے لیے ڈیفالٹ نوٹس ایپ منتخب کریں"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"ایپ منتخب کریں"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"شارٹ کٹ ٹچ کریں اور دبائے رکھیں"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"منسوخ کریں"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"اب اسکرینز سوئچ کریں"</string>
diff --git a/packages/SystemUI/res/values-uz/strings.xml b/packages/SystemUI/res/values-uz/strings.xml
index 4fa41de5d4d3..af12ebe08b22 100644
--- a/packages/SystemUI/res/values-uz/strings.xml
+++ b/packages/SystemUI/res/values-uz/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Qurilmada CA sertifikati o‘rnatilgan. U himoyalangan tarmoq trafigini nazorat qilishi va o‘zgartirishi mumkin."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Administrator qurilmangizdagi trafikni nazorat qiluvchi tarmoq jurnalini yuritishni faollashtirgan."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Administrator ish profilingizdagi trafikni nazorat qiluvchi tarmoq jurnalini yuritishni faollashtirgan (shaxsiy profildan maʼlumotlar olinmaydi)."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Bu qurilma internetga <xliff:g id="VPN_APP">%1$s</xliff:g> orqali ulangan. Emaillar va brauzer tarixi kabi tarmoq harakatlaringiz VPN provayderiga koʻrinadi."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Bu qurilma Internetga <xliff:g id="VPN_APP">%1$s</xliff:g> orqali ulangan. Emaillar va brauzer tarixi kabi tarmoqdagi xatti-harakatlaringiz AT administratoriga koʻrinadi."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Bu qurilma internet <xliff:g id="VPN_APP_0">%1$s</xliff:g> va <xliff:g id="VPN_APP_1">%2$s</xliff:g> orqali ulangan. Emaillar va brauzer tarixi kabi tarmoq harakatlaringiz AT administratoriga koʻrinadi."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Ishga oid ilovalar internetga <xliff:g id="VPN_APP">%1$s</xliff:g> orqali ulangan. Ishga oid ilovalarda emaillar va brauzer tarixi kabi tarmoq harakatlaringiz AT administratori va VPN provayderiga koʻrinadi."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Shaxsiy ilovalaringiz Internetga <xliff:g id="VPN_APP">%1$s</xliff:g> orqali ulangan. Emaillar va brauzer tarixi kabi tarmoqdagi xatti-harakatlaringiz VPN provayderiga koʻrinadi."</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Karnaylar va displeylar"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Taklif qilingan qurilmalar"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Translatsiya qanday ishlaydi"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Translatsiya"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Atrofingizdagi mos Bluetooth qurilmasiga ega foydalanuvchilar siz translatsiya qilayotgan mediani tinglay olishadi"</string>
diff --git a/packages/SystemUI/res/values-vi/strings.xml b/packages/SystemUI/res/values-vi/strings.xml
index 95dab462bb43..4fc63c906028 100644
--- a/packages/SystemUI/res/values-vi/strings.xml
+++ b/packages/SystemUI/res/values-vi/strings.xml
@@ -460,10 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Một tổ chức phát hành chứng chỉ được cài đặt trên thiết bị này. Lưu lượng truy cập mạng bảo mật của bạn có thể được giám sát hoặc sửa đổi."</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Quản trị viên của bạn đã bật tính năng ghi nhật ký mạng. Tính năng này giám sát lưu lượng truy cập trên thiết bị của bạn."</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Quản trị viên của bạn đã bật tính năng ghi nhật ký mạng. Tính năng này giám sát lưu lượng truy cập trong hồ sơ công việc chứ không giám sát lưu lượng truy cập trong hồ sơ cá nhân của bạn."</string>
- <!-- no translation found for monitoring_description_named_vpn (8220190039787149671) -->
- <skip />
- <!-- no translation found for monitoring_description_managed_device_named_vpn (7693648349547785255) -->
- <skip />
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Thiết bị này kết nối với Internet thông qua <xliff:g id="VPN_APP">%1$s</xliff:g>. Nhà cung cấp VPN có thể nhìn thấy hoạt động của bạn trên mạng, bao gồm cả email và dữ liệu duyệt web."</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Thiết bị này kết nối với Internet thông qua <xliff:g id="VPN_APP">%1$s</xliff:g>. Quản trị viên CNTT của bạn có thể nhìn thấy hoạt động của bạn trên mạng, bao gồm cả email và dữ liệu duyệt web."</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Thiết bị này được kết nối với Internet thông qua <xliff:g id="VPN_APP_0">%1$s</xliff:g> và <xliff:g id="VPN_APP_1">%2$s</xliff:g>. Hoạt động mạng bao gồm email và dữ liệu duyệt web sẽ được hiển thị cho quản trị viên CNTT."</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Ứng dụng công việc của bạn được kết nối với Internet thông qua <xliff:g id="VPN_APP">%1$s</xliff:g>. Hoạt động mạng trong các ứng dụng công việc, bao gồm cả email và dữ liệu duyệt web, sẽ được hiển thị cho quản trị viên CNTT và nhà cung cấp VPN của bạn."</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Ứng dụng cá nhân được kết nối với Internet thông qua <xliff:g id="VPN_APP">%1$s</xliff:g>. Hoạt động mạng của bạn, bao gồm email và dữ liệu duyệt web, được hiển thị cho nhà cung cấp VPN."</string>
@@ -880,7 +878,7 @@
<string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"Nhấn để mở bộ tính năng hỗ trợ tiếp cận. Tuỳ chỉnh/thay thế nút này trong phần Cài đặt.\n\n"<annotation id="link">"Xem chế độ cài đặt"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"Di chuyển nút sang cạnh để ẩn nút tạm thời"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"Huỷ"</string>
- <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Đã xoá lối tắt của tính năng <xliff:g id="FEATURE_NAME">%s</xliff:g>"</string>
+ <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Đã xoá phím tắt dành cho <xliff:g id="FEATURE_NAME">%s</xliff:g>"</string>
<string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{Đã xoá # lối tắt}other{Đã xoá # lối tắt}}"</string>
<string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"Chuyển lên trên cùng bên trái"</string>
<string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"Chuyển lên trên cùng bên phải"</string>
@@ -987,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Loa và màn hình"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Thiết bị được đề xuất"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cách tính năng truyền hoạt động"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Truyền"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Những người ở gần có thiết bị Bluetooth tương thích có thể nghe nội dung nghe nhìn bạn đang truyền"</string>
@@ -1124,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Cài đặt một ứng dụng máy ảnh"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• Ứng dụng được thiết lập"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Có ít nhất một thiết bị đang hoạt động"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Chọn một ứng dụng ghi chú mặc định để dùng lối tắt ghi chú"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Chọn ứng dụng"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Chạm và giữ phím tắt"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Huỷ"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Chuyển đổi màn hình ngay"</string>
diff --git a/packages/SystemUI/res/values-zh-rCN/strings.xml b/packages/SystemUI/res/values-zh-rCN/strings.xml
index 74f6322f25fd..cb2730e47654 100644
--- a/packages/SystemUI/res/values-zh-rCN/strings.xml
+++ b/packages/SystemUI/res/values-zh-rCN/strings.xml
@@ -245,7 +245,7 @@
<string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"输入"</string>
<string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="3003338571871392293">"助听器"</string>
<string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"正在开启…"</string>
- <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"自动旋转屏幕"</string>
+ <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"自动屏幕旋转"</string>
<string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"自动旋转屏幕"</string>
<string name="quick_settings_location_label" msgid="2621868789013389163">"位置信息"</string>
<string name="quick_settings_screensaver_label" msgid="1495003469366524120">"屏保"</string>
@@ -878,7 +878,7 @@
<string name="accessibility_floating_button_migration_tooltip" msgid="5217151214439341902">"点按即可打开无障碍功能。您可在“设置”中自定义或更换此按钮。\n\n"<annotation id="link">"查看设置"</annotation></string>
<string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"将按钮移到边缘,即可暂时将其隐藏"</string>
<string name="accessibility_floating_button_undo" msgid="511112888715708241">"撤消"</string>
- <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"已移除<xliff:g id="FEATURE_NAME">%s</xliff:g>快捷方式"</string>
+ <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"已移除“<xliff:g id="FEATURE_NAME">%s</xliff:g>”快捷方式"</string>
<string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{已移除 # 个快捷方式}other{已移除 # 个快捷方式}}"</string>
<string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"移至左上角"</string>
<string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"移至右上角"</string>
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"音箱和显示屏"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"建议的设备"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"广播的运作方式"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"广播"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"附近使用兼容蓝牙设备的用户可以收听您广播的媒体内容"</string>
@@ -1122,10 +1126,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• 安装相机应用"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• 应用已设置完毕"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• 至少有一台设备可用"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"选择默认记事应用即可使用记事快捷方式"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"选择应用"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"轻触并按住快捷方式"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"取消"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"立即切换屏幕"</string>
diff --git a/packages/SystemUI/res/values-zh-rHK/strings.xml b/packages/SystemUI/res/values-zh-rHK/strings.xml
index 776dfb05afac..a164a5fbd75f 100644
--- a/packages/SystemUI/res/values-zh-rHK/strings.xml
+++ b/packages/SystemUI/res/values-zh-rHK/strings.xml
@@ -460,8 +460,8 @@
<string name="monitoring_description_ca_certificate" msgid="448923057059097497">"此裝置已安裝憑證授權單位。你的安全網絡流量可能會受監控或修改。"</string>
<string name="monitoring_description_management_network_logging" msgid="216983105036994771">"你的管理員已開啟網絡記錄功能,以監控你裝置上的流量。"</string>
<string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"你的管理員已開啟網絡記錄功能,可監控你工作設定檔 (而非個人設定檔) 的流量。"</string>
- <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"這部裝置已透過「<xliff:g id="VPN_APP">%1$s</xliff:g>」連線到網際網路。請注意,VPN 供應商可以看見你的網路活動,包括電子郵件和瀏覽資料。"</string>
- <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"這部裝置已透過「<xliff:g id="VPN_APP">%1$s</xliff:g>」連線到網際網路。請注意,IT 管理員可以看見你的網路活動,包括電子郵件和瀏覽資料。"</string>
+ <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"此裝置已透過「<xliff:g id="VPN_APP">%1$s</xliff:g>」連接至互聯網。你的 VPN 供應商可以看到你的網絡活動,包括電郵和瀏覽資料。"</string>
+ <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"此裝置已透過「<xliff:g id="VPN_APP">%1$s</xliff:g>」連接至互聯網。IT 管理員可以看到你的網絡活動,包括電郵和瀏覽資料。"</string>
<string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"此裝置已透過「<xliff:g id="VPN_APP_0">%1$s</xliff:g>」和「<xliff:g id="VPN_APP_1">%2$s</xliff:g>」連接至互聯網。IT 管理員可以看到你的網絡活動,包括電郵和瀏覽資料。"</string>
<string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"你的工作應用程式已透過「<xliff:g id="VPN_APP">%1$s</xliff:g>」連接至互聯網。IT 管理員和 VPN 供應商可以看到你在工作應用程式的網絡活動,包括電郵和瀏覽資料。"</string>
<string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"你的個人應用程式已透過「<xliff:g id="VPN_APP">%1$s</xliff:g>」連接至互聯網。你的 VPN 供應商可以看到你的網絡活動,包括電郵和瀏覽資料。"</string>
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"喇叭和螢幕"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"建議的裝置"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"廣播運作方式"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"廣播"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"附近有兼容藍牙裝置的人可收聽你正在廣播的媒體內容"</string>
@@ -1122,7 +1126,7 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• 安裝相機應用程式"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• 應用程式已完成設定"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• 至少一部裝置可用"</string>
- <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"如要使用筆記捷徑,請選取預設的記事應用程式"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"選取筆記快速鍵所用的預設筆記應用程式"</string>
<string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"選取應用程式"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"輕觸並按住快速鍵"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"取消"</string>
diff --git a/packages/SystemUI/res/values-zh-rTW/strings.xml b/packages/SystemUI/res/values-zh-rTW/strings.xml
index 6f6cbf3a3133..c206206a7808 100644
--- a/packages/SystemUI/res/values-zh-rTW/strings.xml
+++ b/packages/SystemUI/res/values-zh-rTW/strings.xml
@@ -985,6 +985,10 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"喇叭和螢幕"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"建議的裝置"</string>
+ <!-- no translation found for media_output_end_session_dialog_summary (5954520685989877347) -->
+ <skip />
+ <!-- no translation found for media_output_end_session_dialog_stop (208189434474624412) -->
+ <skip />
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"廣播功能的運作方式"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"廣播"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"如果附近的人有相容的藍牙裝置,就可以聽到你正在廣播的媒體內容"</string>
diff --git a/packages/SystemUI/res/values-zu/strings.xml b/packages/SystemUI/res/values-zu/strings.xml
index 3c71ec1f3d65..07cab2c9758e 100644
--- a/packages/SystemUI/res/values-zu/strings.xml
+++ b/packages/SystemUI/res/values-zu/strings.xml
@@ -985,6 +985,8 @@
<string name="media_output_dialog_volume_percentage" msgid="1613984910585111798">"<xliff:g id="PERCENTAGE">%1$d</xliff:g>%%"</string>
<string name="media_output_group_title_speakers_and_displays" msgid="7169712332365659820">"Izipikha Neziboniso"</string>
<string name="media_output_group_title_suggested_device" msgid="4157186235837903826">"Amadivayisi Aphakanyisiwe"</string>
+ <string name="media_output_end_session_dialog_summary" msgid="5954520685989877347">"Misa iseshini yakho eyabiwe ukuze uhambise imidiya kwenye idivayisi"</string>
+ <string name="media_output_end_session_dialog_stop" msgid="208189434474624412">"Misa"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Indlela ukusakaza okusebenza ngayo"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Sakaza"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Abantu abaseduze nawe abanamadivayisi e-Bluetooth ahambisanayo bangalalela imidiya oyisakazayo"</string>
@@ -1122,10 +1124,8 @@
<string name="keyguard_affordance_enablement_dialog_qr_scanner_instruction" msgid="5355839079232119791">"• Faka i-app yekhamera"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_1" msgid="8438311171750568633">"• I-app isethiwe"</string>
<string name="keyguard_affordance_enablement_dialog_home_instruction_2" msgid="8308525385889021652">"• Okungenani idivayisi eyodwa iyatholakala"</string>
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_instruction (2274489846095284167) -->
- <skip />
- <!-- no translation found for keyguard_affordance_enablement_dialog_notes_app_action (6821710209675089470) -->
- <skip />
+ <string name="keyguard_affordance_enablement_dialog_notes_app_instruction" msgid="2274489846095284167">"Khetha i-app yamanothi azenzakalelayo ukuze usebenzise isinqamuleli sokubhala amanothi"</string>
+ <string name="keyguard_affordance_enablement_dialog_notes_app_action" msgid="6821710209675089470">"Khetha i-app"</string>
<string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Thinta futhi ubambe isinqamuleli"</string>
<string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Khansela"</string>
<string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Shintsha izikrini manje"</string>
diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml
index 70fdc2070b7a..cbc73faa46af 100644
--- a/packages/SystemUI/res/values/strings.xml
+++ b/packages/SystemUI/res/values/strings.xml
@@ -1312,9 +1312,17 @@
<string name="volume_panel_dialog_settings_button">Settings</string>
<!-- Title for notification after audio lowers -->
- <string name="csd_lowered_title" product="default">Lowered to safer volume</string>
+ <string name="csd_lowered_title" product="default">Volume lowered to safer level</string>
<!-- Message shown in notification after system lowers audio -->
- <string name="csd_system_lowered_text" product="default">The volume has been high for longer than recommended</string>
+ <string name="csd_system_lowered_text" product="default">Headphone volume has been high for longer than recommended</string>
+ <!-- Message shown in notification after system lowers audio after 500% of
+ sound dosage is reached.
+ -->
+ <string name="csd_500_system_lowered_text" product="default">Headphone volume has exceeded the safe limit for this week</string>
+ <!-- Message for sound dose warning dialog button to keep listening -->
+ <string name="csd_button_keep_listening" product="default">Keep listening</string>
+ <!-- Message for sound dose warning dialog button to lower volume -->
+ <string name="csd_button_lower_volume" product="default">Lower volume</string>
<!-- content description for audio output chooser [CHAR LIMIT=NONE]-->
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java b/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java
index e1707cd08bb8..77e13ce28d96 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java
@@ -570,6 +570,10 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
}
}
+ @Override
+ public void onIsActiveUnlockRunningChanged(boolean isRunning, int userId) {
+ }
+
/**
* Whether the trust granted call with its passed flags should dismiss keyguard.
* It's assumed that the trust was granted for the current user.
diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/BiometricDisplayListener.kt b/packages/SystemUI/src/com/android/systemui/biometrics/BiometricDisplayListener.kt
index 38a7c5d7a8af..e9b637230ede 100644
--- a/packages/SystemUI/src/com/android/systemui/biometrics/BiometricDisplayListener.kt
+++ b/packages/SystemUI/src/com/android/systemui/biometrics/BiometricDisplayListener.kt
@@ -20,7 +20,7 @@ import android.content.Context
import android.hardware.display.DisplayManager
import android.hardware.fingerprint.FingerprintSensorPropertiesInternal
import android.os.Handler
-import android.view.Surface
+import android.view.DisplayInfo
import com.android.systemui.biometrics.BiometricDisplayListener.SensorType.Generic
/**
@@ -37,7 +37,7 @@ class BiometricDisplayListener(
private val onChanged: () -> Unit
) : DisplayManager.DisplayListener {
- private var lastRotation = Surface.ROTATION_0
+ private var cachedDisplayInfo = DisplayInfo()
override fun onDisplayAdded(displayId: Int) {}
override fun onDisplayRemoved(displayId: Int) {}
@@ -55,15 +55,14 @@ class BiometricDisplayListener(
}
private fun didRotationChange(): Boolean {
- val rotation = context.display?.rotation ?: return false
- val last = lastRotation
- lastRotation = rotation
- return last != rotation
+ val last = cachedDisplayInfo.rotation
+ context.display?.getDisplayInfo(cachedDisplayInfo)
+ return last != cachedDisplayInfo.rotation
}
/** Listen for changes. */
fun enable() {
- lastRotation = context.display?.rotation ?: Surface.ROTATION_0
+ context.display?.getDisplayInfo(cachedDisplayInfo)
displayManager.registerDisplayListener(
this,
handler,
diff --git a/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsActivity.kt b/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsActivity.kt
index c964b9654955..4a22e4eecc2b 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsActivity.kt
@@ -57,14 +57,15 @@ open class ControlsActivity @Inject constructor(
private val keyguardStateController: KeyguardStateController
) : ComponentActivity() {
+ private val lastConfiguration = Configuration()
+
private lateinit var parent: ViewGroup
private lateinit var broadcastReceiver: BroadcastReceiver
private var mExitToDream: Boolean = false
- private lateinit var lastConfiguration: Configuration
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- lastConfiguration = resources.configuration
+ lastConfiguration.setTo(resources.configuration)
if (featureFlags.isEnabled(Flags.USE_APP_PANELS)) {
window.addPrivateFlags(WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY)
}
@@ -105,7 +106,7 @@ open class ControlsActivity @Inject constructor(
if (lastConfiguration.diff(newConfig) and interestingFlags != 0 ) {
uiController.onSizeChange()
}
- lastConfiguration = newConfig
+ lastConfiguration.setTo(newConfig)
}
override fun onStart() {
@@ -158,6 +159,10 @@ open class ControlsActivity @Inject constructor(
override fun onDestroy() {
super.onDestroy()
+ unregisterReceiver()
+ }
+
+ protected open fun unregisterReceiver() {
broadcastDispatcher.unregisterReceiver(broadcastReceiver)
}
diff --git a/packages/SystemUI/src/com/android/systemui/dump/LogBufferEulogizer.kt b/packages/SystemUI/src/com/android/systemui/dump/LogBufferEulogizer.kt
index 0eab1afc4119..2d5c9ae2e641 100644
--- a/packages/SystemUI/src/com/android/systemui/dump/LogBufferEulogizer.kt
+++ b/packages/SystemUI/src/com/android/systemui/dump/LogBufferEulogizer.kt
@@ -17,6 +17,7 @@
package com.android.systemui.dump
import android.content.Context
+import android.icu.text.SimpleDateFormat
import android.util.Log
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.log.LogBuffer
@@ -30,7 +31,6 @@ import java.nio.file.Paths
import java.nio.file.StandardOpenOption.CREATE
import java.nio.file.StandardOpenOption.TRUNCATE_EXISTING
import java.nio.file.attribute.BasicFileAttributes
-import java.text.SimpleDateFormat
import java.util.Locale
import java.util.concurrent.TimeUnit
import javax.inject.Inject
diff --git a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt
index 09601970e96a..e068962130c9 100644
--- a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt
+++ b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt
@@ -79,6 +79,11 @@ object Flags {
// TODO(b/257315550): Tracking Bug
val NO_HUN_FOR_OLD_WHEN = releasedFlag(118, "no_hun_for_old_when")
+ // TODO(b/260335638): Tracking Bug
+ @JvmField
+ val NOTIFICATION_INLINE_REPLY_ANIMATION =
+ unreleasedFlag(174148361, "notification_inline_reply_animation")
+
/** Makes sure notification panel is updated before the user switch is complete. */
// TODO(b/278873737): Tracking Bug
@JvmField
diff --git a/packages/SystemUI/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractor.kt
index 65e70b319923..df2a33f95872 100644
--- a/packages/SystemUI/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractor.kt
@@ -21,6 +21,7 @@ import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.keyboard.data.repository.KeyboardRepository
import com.android.systemui.keyboard.shared.model.BacklightModel
import javax.inject.Inject
+import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flatMapLatest
import kotlinx.coroutines.flow.flowOf
@@ -34,8 +35,9 @@ constructor(
) {
/** Emits current backlight level as [BacklightModel] or null if keyboard is not connected */
+ @ExperimentalCoroutinesApi
val backlight: Flow<BacklightModel?> =
- keyboardRepository.keyboardConnected.flatMapLatest { connected ->
+ keyboardRepository.isAnyKeyboardConnected.flatMapLatest { connected ->
if (connected) keyboardRepository.backlight else flowOf(null)
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/keyboard/data/model/Keyboard.kt b/packages/SystemUI/src/com/android/systemui/keyboard/data/model/Keyboard.kt
new file mode 100644
index 000000000000..ee6dd0de96a2
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/keyboard/data/model/Keyboard.kt
@@ -0,0 +1,20 @@
+/*
+ * Copyright (C) 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package com.android.systemui.keyboard.data.model
+
+data class Keyboard(val vendorId: Int, val productId: Int)
diff --git a/packages/SystemUI/src/com/android/systemui/keyboard/data/repository/KeyboardRepository.kt b/packages/SystemUI/src/com/android/systemui/keyboard/data/repository/KeyboardRepository.kt
index 1f1329111ce7..2fac40a48d3d 100644
--- a/packages/SystemUI/src/com/android/systemui/keyboard/data/repository/KeyboardRepository.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyboard/data/repository/KeyboardRepository.kt
@@ -25,22 +25,41 @@ import com.android.systemui.common.coroutine.ConflatedCallbackFlow.conflatedCall
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Application
import com.android.systemui.dagger.qualifiers.Background
+import com.android.systemui.keyboard.data.model.Keyboard
import com.android.systemui.keyboard.shared.model.BacklightModel
import java.util.concurrent.Executor
import javax.inject.Inject
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.FlowPreview
import kotlinx.coroutines.channels.SendChannel
import kotlinx.coroutines.channels.awaitClose
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.SharingStarted
+import kotlinx.coroutines.flow.asFlow
import kotlinx.coroutines.flow.distinctUntilChanged
+import kotlinx.coroutines.flow.emptyFlow
+import kotlinx.coroutines.flow.flatMapConcat
+import kotlinx.coroutines.flow.flowOf
import kotlinx.coroutines.flow.flowOn
import kotlinx.coroutines.flow.map
+import kotlinx.coroutines.flow.mapNotNull
import kotlinx.coroutines.flow.shareIn
interface KeyboardRepository {
- val keyboardConnected: Flow<Boolean>
+ /** Emits true if any physical keyboard is connected to the device, false otherwise. */
+ val isAnyKeyboardConnected: Flow<Boolean>
+
+ /**
+ * Emits [Keyboard] object whenever new physical keyboard connects. When SysUI (re)starts it
+ * emits all currently connected keyboards
+ */
+ val newlyConnectedKeyboard: Flow<Keyboard>
+
+ /**
+ * Emits [BacklightModel] whenever user changes backlight level from keyboard press. Can only
+ * happen when physical keyboard is connected
+ */
val backlight: Flow<BacklightModel>
}
@@ -53,33 +72,65 @@ constructor(
private val inputManager: InputManager,
) : KeyboardRepository {
- private val connectedDeviceIds: Flow<Set<Int>> =
+ private sealed interface DeviceChange
+ private data class DeviceAdded(val deviceId: Int) : DeviceChange
+ private object DeviceRemoved : DeviceChange
+ private object FreshStart : DeviceChange
+
+ /**
+ * Emits collection of all currently connected keyboards and what was the last [DeviceChange].
+ * It emits collection so that every new subscriber to this SharedFlow can get latest state of
+ * all keyboards. Otherwise we might get into situation where subscriber timing on
+ * initialization matter and later subscriber will only get latest device and will miss all
+ * previous devices.
+ */
+ private val keyboardsChange: Flow<Pair<Collection<Int>, DeviceChange>> =
conflatedCallbackFlow {
- var connectedKeyboards = inputManager.inputDeviceIds.toSet()
+ var connectedDevices = inputManager.inputDeviceIds.toSet()
val listener =
object : InputManager.InputDeviceListener {
override fun onInputDeviceAdded(deviceId: Int) {
- connectedKeyboards = connectedKeyboards + deviceId
- sendWithLogging(connectedKeyboards)
+ connectedDevices = connectedDevices + deviceId
+ sendWithLogging(connectedDevices to DeviceAdded(deviceId))
}
override fun onInputDeviceChanged(deviceId: Int) = Unit
override fun onInputDeviceRemoved(deviceId: Int) {
- connectedKeyboards = connectedKeyboards - deviceId
- sendWithLogging(connectedKeyboards)
+ connectedDevices = connectedDevices - deviceId
+ sendWithLogging(connectedDevices to DeviceRemoved)
}
}
- sendWithLogging(connectedKeyboards)
+ sendWithLogging(connectedDevices to FreshStart)
inputManager.registerInputDeviceListener(listener, /* handler= */ null)
awaitClose { inputManager.unregisterInputDeviceListener(listener) }
}
+ .map { (ids, change) -> ids.filter { id -> isPhysicalFullKeyboard(id) } to change }
.shareIn(
scope = applicationScope,
started = SharingStarted.Lazily,
replay = 1,
)
+ @FlowPreview
+ override val newlyConnectedKeyboard: Flow<Keyboard> =
+ keyboardsChange
+ .flatMapConcat { (devices, operation) ->
+ when (operation) {
+ FreshStart -> devices.asFlow()
+ is DeviceAdded -> flowOf(operation.deviceId)
+ is DeviceRemoved -> emptyFlow()
+ }
+ }
+ .mapNotNull { deviceIdToKeyboard(it) }
+ .flowOn(backgroundDispatcher)
+
+ override val isAnyKeyboardConnected: Flow<Boolean> =
+ keyboardsChange
+ .map { (devices, _) -> devices.isNotEmpty() }
+ .distinctUntilChanged()
+ .flowOn(backgroundDispatcher)
+
private val backlightStateListener: Flow<KeyboardBacklightState> = conflatedCallbackFlow {
val listener = KeyboardBacklightListener { _, state, isTriggeredByKeyPress ->
if (isTriggeredByKeyPress) {
@@ -90,11 +141,10 @@ constructor(
awaitClose { inputManager.unregisterKeyboardBacklightListener(listener) }
}
- override val keyboardConnected: Flow<Boolean> =
- connectedDeviceIds
- .map { it.any { deviceId -> isPhysicalFullKeyboard(deviceId) } }
- .distinctUntilChanged()
- .flowOn(backgroundDispatcher)
+ private fun deviceIdToKeyboard(deviceId: Int): Keyboard? {
+ val device = inputManager.getInputDevice(deviceId) ?: return null
+ return Keyboard(device.vendorId, device.productId)
+ }
override val backlight: Flow<BacklightModel> =
backlightStateListener
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt
index 9844ca02482b..bd6dfe3dfc9a 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt
@@ -245,6 +245,7 @@ class KeyguardUnlockAnimationController @Inject constructor(
@VisibleForTesting
var surfaceTransactionApplier: SyncRtSurfaceTransactionApplier? = null
private var surfaceBehindRemoteAnimationTargets: Array<RemoteAnimationTarget>? = null
+ private var wallpaperTargets: Array<RemoteAnimationTarget>? = null
private var surfaceBehindRemoteAnimationStartTime: Long = 0
/**
@@ -257,9 +258,13 @@ class KeyguardUnlockAnimationController @Inject constructor(
*/
private var surfaceBehindAlpha = 1f
+ private var wallpaperAlpha = 1f
+
@VisibleForTesting
var surfaceBehindAlphaAnimator = ValueAnimator.ofFloat(0f, 1f)
+ var wallpaperAlphaAnimator = ValueAnimator.ofFloat(0f, 1f)
+
/**
* Matrix applied to [surfaceBehindRemoteAnimationTarget], which is the surface of the
* app/launcher behind the keyguard.
@@ -335,6 +340,27 @@ class KeyguardUnlockAnimationController @Inject constructor(
})
}
+ with(wallpaperAlphaAnimator) {
+ duration = LAUNCHER_ICONS_ANIMATION_DURATION_MS
+ interpolator = Interpolators.ALPHA_OUT
+ addUpdateListener { valueAnimator: ValueAnimator ->
+ wallpaperAlpha = valueAnimator.animatedValue as Float
+ setWallpaperAppearAmount(wallpaperAlpha)
+ }
+ addListener(object : AnimatorListenerAdapter() {
+ override fun onAnimationEnd(animation: Animator) {
+ Log.d(TAG, "wallpaperAlphaAnimator#onAnimationEnd, animation ended ")
+ if (wallpaperAlpha == 1f) {
+ wallpaperTargets = null
+ keyguardViewMediator.get().finishExitRemoteAnimation()
+ } else {
+ Log.d(TAG, "wallpaperAlphaAnimator#onAnimationEnd, " +
+ "animation was cancelled: skipping finishAnimation()")
+ }
+ }
+ })
+ }
+
with(surfaceBehindEntryAnimator) {
duration = UNLOCK_ANIMATION_DURATION_MS
startDelay = UNLOCK_ANIMATION_SURFACE_BEHIND_START_DELAY_MS
@@ -361,6 +387,11 @@ class KeyguardUnlockAnimationController @Inject constructor(
context.resources.getDimensionPixelSize(R.dimen.rounded_corner_radius).toFloat()
}
+ fun isAnyKeyguyardAnimatorPlaying(): Boolean {
+ return surfaceBehindAlphaAnimator.isStarted ||
+ wallpaperAlphaAnimator.isStarted || surfaceBehindEntryAnimator.isStarted
+ }
+
/**
* Add a listener to be notified of various stages of the unlock animation.
*/
@@ -492,6 +523,7 @@ class KeyguardUnlockAnimationController @Inject constructor(
*/
fun notifyStartSurfaceBehindRemoteAnimation(
targets: Array<RemoteAnimationTarget>,
+ wallpapers: Array<RemoteAnimationTarget>,
startTime: Long,
requestedShowSurfaceBehindKeyguard: Boolean
) {
@@ -501,8 +533,11 @@ class KeyguardUnlockAnimationController @Inject constructor(
}
surfaceBehindRemoteAnimationTargets = targets
+ wallpaperTargets = wallpapers
surfaceBehindRemoteAnimationStartTime = startTime
+ fadeInWallpaper()
+
// If we specifically requested that the surface behind be made visible (vs. it being made
// visible because we're unlocking), then we're in the middle of a swipe-to-unlock touch
// gesture and the surface behind the keyguard should be made visible so that we can animate
@@ -839,6 +874,38 @@ class KeyguardUnlockAnimationController @Inject constructor(
}
/**
+ * Modify the opacity of a wallpaper window.
+ */
+ fun setWallpaperAppearAmount(amount: Float) {
+ wallpaperTargets?.forEach { wallpaper ->
+ val animationAlpha = when {
+ // If the screen has turned back off, the unlock animation is going to be cancelled,
+ // so set the surface alpha to 0f so it's no longer visible.
+ !powerManager.isInteractive -> 0f
+ else -> amount
+ }
+
+ // SyncRtSurfaceTransactionApplier cannot apply transaction when the target view is
+ // unable to draw
+ val sc: SurfaceControl? = wallpaper.leash
+ if (keyguardViewController.viewRootImpl.view?.visibility != View.VISIBLE &&
+ sc?.isValid == true) {
+ with(SurfaceControl.Transaction()) {
+ setAlpha(sc, animationAlpha)
+ apply()
+ }
+ } else {
+ applyParamsToSurface(
+ SyncRtSurfaceTransactionApplier.SurfaceParams.Builder(
+ wallpaper.leash)
+ .withAlpha(animationAlpha)
+ .build()
+ )
+ }
+ }
+ }
+
+ /**
* Called by [KeyguardViewMediator] to let us know that the remote animation has finished, and
* we should clean up all of our state.
*
@@ -903,6 +970,12 @@ class KeyguardUnlockAnimationController @Inject constructor(
surfaceBehindAlphaAnimator.start()
}
+ private fun fadeInWallpaper() {
+ Log.d(TAG, "fadeInWallpaper")
+ wallpaperAlphaAnimator.cancel()
+ wallpaperAlphaAnimator.start()
+ }
+
private fun fadeOutSurfaceBehind() {
Log.d(TAG, "fadeOutSurfaceBehind")
surfaceBehindAlphaAnimator.cancel()
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
index 0a2d05e80edb..46ff0d9ded55 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
@@ -159,6 +159,7 @@ import dagger.Lazy;
import java.io.PrintWriter;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.concurrent.Executor;
/**
@@ -2710,9 +2711,13 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable,
CUJ_LOCKSCREEN_UNLOCK_ANIMATION, "DismissPanel"));
// Pass the surface and metadata to the unlock animation controller.
+ RemoteAnimationTarget[] openingWallpapers = Arrays.stream(wallpapers).filter(
+ w -> w.mode == RemoteAnimationTarget.MODE_OPENING).toArray(
+ RemoteAnimationTarget[]::new);
mKeyguardUnlockAnimationControllerLazy.get()
.notifyStartSurfaceBehindRemoteAnimation(
- apps, startTime, mSurfaceBehindRemoteAnimationRequested);
+ apps, openingWallpapers, startTime,
+ mSurfaceBehindRemoteAnimationRequested);
} else {
mInteractionJankMonitor.begin(
createInteractionJankMonitorConf(
@@ -2961,6 +2966,19 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable,
mSurfaceBehindRemoteAnimationRequested = false;
mSurfaceBehindRemoteAnimationRunning = false;
mKeyguardStateController.notifyKeyguardGoingAway(false);
+ finishExitRemoteAnimation();
+ }
+
+ void finishExitRemoteAnimation() {
+ if (mKeyguardUnlockAnimationControllerLazy.get().isAnyKeyguyardAnimatorPlaying()
+ || mKeyguardStateController.isDismissingFromSwipe()) {
+ // If the animation is ongoing, or we are not done with the swipe gesture,
+ // it's too early to terminate the animation
+ Log.d(TAG, "finishAnimation not executing now because "
+ + "not all animations have finished");
+ return;
+ }
+ Log.d(TAG, "finishAnimation executing");
if (mSurfaceBehindRemoteAnimationFinishedCallback != null) {
try {
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/TrustRepository.kt b/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/TrustRepository.kt
index e4906696a5e3..f2f1c48476bc 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/TrustRepository.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/TrustRepository.kt
@@ -95,6 +95,11 @@ constructor(
"onTrustManagedChanged"
)
}
+
+ override fun onIsActiveUnlockRunningChanged(
+ isRunning: Boolean,
+ userId: Int
+ ) = Unit
}
trustManager.registerTrustListener(callback)
logger.trustListenerRegistered()
diff --git a/packages/SystemUI/src/com/android/systemui/log/table/TableLogBuffer.kt b/packages/SystemUI/src/com/android/systemui/log/table/TableLogBuffer.kt
index 1d785ae62d87..cabe319d317d 100644
--- a/packages/SystemUI/src/com/android/systemui/log/table/TableLogBuffer.kt
+++ b/packages/SystemUI/src/com/android/systemui/log/table/TableLogBuffer.kt
@@ -16,6 +16,7 @@
package com.android.systemui.log.table
+import android.icu.text.SimpleDateFormat
import android.os.Trace
import com.android.systemui.Dumpable
import com.android.systemui.common.buffer.RingBuffer
@@ -24,7 +25,6 @@ import com.android.systemui.log.LogLevel
import com.android.systemui.log.LogcatEchoTracker
import com.android.systemui.util.time.SystemClock
import java.io.PrintWriter
-import java.text.SimpleDateFormat
import java.util.Locale
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.CoroutineScope
diff --git a/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java b/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java
index 9a1efc3d6456..42de7f0f3a8b 100644
--- a/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java
+++ b/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java
@@ -224,8 +224,6 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack
private float mBottomGestureHeight;
// The slop to distinguish between horizontal and vertical motion
private float mTouchSlop;
- // The threshold for triggering back
- private float mBackSwipeTriggerThreshold;
// The threshold for back swipe full progress.
private float mBackSwipeProgressThreshold;
// Duration after which we consider the event as longpress.
@@ -473,8 +471,6 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack
final float backGestureSlop = DeviceConfig.getFloat(DeviceConfig.NAMESPACE_SYSTEMUI,
SystemUiDeviceConfigFlags.BACK_GESTURE_SLOP_MULTIPLIER, 0.75f);
mTouchSlop = mViewConfiguration.getScaledTouchSlop() * backGestureSlop;
- mBackSwipeTriggerThreshold = res.getDimension(
- R.dimen.navigation_edge_action_drag_threshold);
mBackSwipeProgressThreshold = res.getDimension(
R.dimen.navigation_edge_action_progress_threshold);
updateBackAnimationThresholds();
@@ -1121,7 +1117,6 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack
return;
}
mBackAnimation.setSwipeThresholds(
- mBackSwipeTriggerThreshold,
Math.min(mDisplaySize.x, mBackSwipeProgressThreshold));
}
diff --git a/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskController.kt b/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskController.kt
index 7e9b346c9577..9eb3d2d8b48e 100644
--- a/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskController.kt
+++ b/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskController.kt
@@ -41,6 +41,7 @@ import com.android.systemui.devicepolicy.areKeyguardShortcutsDisabled
import com.android.systemui.log.DebugLogger.debugLog
import com.android.systemui.notetask.NoteTaskRoleManagerExt.createNoteShortcutInfoAsUser
import com.android.systemui.notetask.NoteTaskRoleManagerExt.getDefaultRoleHolderAsUser
+import com.android.systemui.notetask.shortcut.CreateNoteTaskShortcutActivity
import com.android.systemui.notetask.shortcut.LaunchNoteTaskManagedProfileProxyActivity
import com.android.systemui.settings.UserTracker
import com.android.systemui.shared.system.ActivityManagerKt.isInForeground
@@ -249,6 +250,8 @@ constructor(
* Widget Picker to all users.
*/
fun setNoteTaskShortcutEnabled(value: Boolean, user: UserHandle) {
+ val componentName = ComponentName(context, CreateNoteTaskShortcutActivity::class.java)
+
val enabledState =
if (value) {
PackageManager.COMPONENT_ENABLED_STATE_ENABLED
@@ -267,7 +270,7 @@ constructor(
}
userContext.packageManager.setComponentEnabledSetting(
- SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT,
+ componentName,
enabledState,
PackageManager.DONT_KILL_APP,
)
@@ -315,19 +318,6 @@ constructor(
companion object {
val TAG = NoteTaskController::class.simpleName.orEmpty()
- /**
- * IMPORTANT! The shortcut package name and class should be synchronized with Settings:
- * [com.android.settings.notetask.shortcut.CreateNoteTaskShortcutActivity].
- *
- * Changing the package name or class is a breaking change.
- */
- @VisibleForTesting
- val SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT =
- ComponentName(
- "com.android.settings",
- "com.android.settings.notetask.shortcut.CreateNoteTaskShortcutActivity",
- )
-
const val SHORTCUT_ID = "note_task_shortcut_id"
/**
diff --git a/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskModule.kt b/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskModule.kt
index 4d5173a1ec0a..109cfeec0723 100644
--- a/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskModule.kt
+++ b/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskModule.kt
@@ -24,6 +24,7 @@ import android.app.role.RoleManager
import com.android.systemui.flags.FeatureFlags
import com.android.systemui.flags.Flags
import com.android.systemui.notetask.quickaffordance.NoteTaskQuickAffordanceModule
+import com.android.systemui.notetask.shortcut.CreateNoteTaskShortcutActivity
import com.android.systemui.notetask.shortcut.LaunchNoteTaskActivity
import com.android.systemui.notetask.shortcut.LaunchNoteTaskManagedProfileProxyActivity
import dagger.Binds
@@ -49,6 +50,9 @@ interface NoteTaskModule {
fun LaunchNotesRoleSettingsTrampolineActivity.bindLaunchNotesRoleSettingsTrampolineActivity():
Activity
+ @[Binds IntoMap ClassKey(CreateNoteTaskShortcutActivity::class)]
+ fun CreateNoteTaskShortcutActivity.bindNoteTaskShortcutActivity(): Activity
+
companion object {
@[Provides NoteTaskEnabledKey]
diff --git a/packages/SystemUI/src/com/android/systemui/notetask/shortcut/CreateNoteTaskShortcutActivity.kt b/packages/SystemUI/src/com/android/systemui/notetask/shortcut/CreateNoteTaskShortcutActivity.kt
new file mode 100644
index 000000000000..4da2896a9556
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/notetask/shortcut/CreateNoteTaskShortcutActivity.kt
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+@file:OptIn(InternalNoteTaskApi::class)
+
+package com.android.systemui.notetask.shortcut
+
+import android.app.Activity
+import android.app.role.RoleManager
+import android.content.pm.ShortcutManager
+import android.os.Bundle
+import androidx.activity.ComponentActivity
+import com.android.systemui.notetask.InternalNoteTaskApi
+import com.android.systemui.notetask.NoteTaskRoleManagerExt.createNoteShortcutInfoAsUser
+import javax.inject.Inject
+
+/**
+ * Activity responsible for creating a shortcut for notes action. If the shortcut is enabled, a new
+ * shortcut will appear in the widget picker. If the shortcut is selected, the Activity here will be
+ * launched, creating a new shortcut for [CreateNoteTaskShortcutActivity], and will finish.
+ *
+ * @see <a
+ * href="https://developer.android.com/develop/ui/views/launch/shortcuts/creating-shortcuts#custom-pinned">Creating
+ * a custom shortcut activity</a>
+ */
+class CreateNoteTaskShortcutActivity
+@Inject
+constructor(
+ private val roleManager: RoleManager,
+ private val shortcutManager: ShortcutManager,
+) : ComponentActivity() {
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+
+ val shortcutInfo = roleManager.createNoteShortcutInfoAsUser(context = this, user)
+ val shortcutIntent = shortcutManager.createShortcutResultIntent(shortcutInfo)
+ setResult(Activity.RESULT_OK, shortcutIntent)
+
+ finish()
+ }
+}
diff --git a/packages/SystemUI/src/com/android/systemui/privacy/logging/PrivacyLogger.kt b/packages/SystemUI/src/com/android/systemui/privacy/logging/PrivacyLogger.kt
index f9e1adff012b..e56106d1c065 100644
--- a/packages/SystemUI/src/com/android/systemui/privacy/logging/PrivacyLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/privacy/logging/PrivacyLogger.kt
@@ -16,6 +16,7 @@
package com.android.systemui.privacy.logging
+import android.icu.text.SimpleDateFormat
import android.permission.PermissionGroupUsage
import com.android.systemui.log.dagger.PrivacyLog
import com.android.systemui.log.LogBuffer
@@ -23,7 +24,6 @@ import com.android.systemui.log.LogLevel
import com.android.systemui.log.LogMessage
import com.android.systemui.privacy.PrivacyDialog
import com.android.systemui.privacy.PrivacyItem
-import java.text.SimpleDateFormat
import java.util.Locale
import javax.inject.Inject
diff --git a/packages/SystemUI/src/com/android/systemui/shade/NPVCDownEventState.kt b/packages/SystemUI/src/com/android/systemui/shade/NPVCDownEventState.kt
index b8bd95c89ec8..6143308a7cbf 100644
--- a/packages/SystemUI/src/com/android/systemui/shade/NPVCDownEventState.kt
+++ b/packages/SystemUI/src/com/android/systemui/shade/NPVCDownEventState.kt
@@ -13,11 +13,11 @@
*/
package com.android.systemui.shade
+import android.icu.text.SimpleDateFormat
import android.view.MotionEvent
import com.android.systemui.common.buffer.RingBuffer
import com.android.systemui.dump.DumpsysTableLogger
import com.android.systemui.dump.Row
-import java.text.SimpleDateFormat
import java.util.Locale
/** Container for storing information about [MotionEvent.ACTION_DOWN] on
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/inflation/NotificationRowBinderImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/inflation/NotificationRowBinderImpl.java
index 38bbb351a131..bdb206beb123 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/inflation/NotificationRowBinderImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/inflation/NotificationRowBinderImpl.java
@@ -16,6 +16,7 @@
package com.android.systemui.statusbar.notification.collection.inflation;
+import static com.android.systemui.flags.Flags.NOTIFICATION_INLINE_REPLY_ANIMATION;
import static com.android.systemui.statusbar.notification.row.NotificationRowContentBinder.FLAG_CONTENT_VIEW_CONTRACTED;
import static com.android.systemui.statusbar.notification.row.NotificationRowContentBinder.FLAG_CONTENT_VIEW_EXPANDED;
import static com.android.systemui.statusbar.notification.row.NotificationRowContentBinder.FLAG_CONTENT_VIEW_PUBLIC;
@@ -30,6 +31,7 @@ import android.view.ViewGroup;
import com.android.internal.util.NotificationMessagingUtil;
import com.android.systemui.dagger.SysUISingleton;
+import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
import com.android.systemui.statusbar.NotificationPresenter;
import com.android.systemui.statusbar.NotificationRemoteInputManager;
@@ -71,6 +73,7 @@ public class NotificationRowBinderImpl implements NotificationRowBinder {
private NotificationListContainer mListContainer;
private BindRowCallback mBindRowCallback;
private NotificationClicker mNotificationClicker;
+ private FeatureFlags mFeatureFlags;
@Inject
public NotificationRowBinderImpl(
@@ -82,7 +85,8 @@ public class NotificationRowBinderImpl implements NotificationRowBinder {
RowContentBindStage rowContentBindStage,
Provider<RowInflaterTask> rowInflaterTaskProvider,
ExpandableNotificationRowComponent.Builder expandableNotificationRowComponentBuilder,
- IconManager iconManager) {
+ IconManager iconManager,
+ FeatureFlags featureFlags) {
mContext = context;
mNotifBindPipeline = notifBindPipeline;
mRowContentBindStage = rowContentBindStage;
@@ -92,6 +96,7 @@ public class NotificationRowBinderImpl implements NotificationRowBinder {
mRowInflaterTaskProvider = rowInflaterTaskProvider;
mExpandableNotificationRowComponentBuilder = expandableNotificationRowComponentBuilder;
mIconManager = iconManager;
+ mFeatureFlags = featureFlags;
}
/**
@@ -175,6 +180,8 @@ public class NotificationRowBinderImpl implements NotificationRowBinder {
entry.setRow(row);
mNotifBindPipeline.manageRow(entry, row);
mBindRowCallback.onBindRow(row);
+ row.setInlineReplyAnimationFlagEnabled(
+ mFeatureFlags.isEnabled(NOTIFICATION_INLINE_REPLY_ANIMATION));
}
/**
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java
index ba8a5f3de45c..bfb6fb0fcdc7 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java
@@ -271,6 +271,7 @@ public class ExpandableNotificationRow extends ActivatableNotificationView
private OnExpandClickListener mOnExpandClickListener;
private View.OnClickListener mOnFeedbackClickListener;
private Path mExpandingClipPath;
+ private boolean mIsInlineReplyAnimationFlagEnabled = false;
// Listener will be called when receiving a long click event.
// Use #setLongPressPosition to optionally assign positional data with the long press.
@@ -3054,6 +3055,10 @@ public class ExpandableNotificationRow extends ActivatableNotificationView
return showingLayout != null && showingLayout.requireRowToHaveOverlappingRendering();
}
+ public void setInlineReplyAnimationFlagEnabled(boolean isEnabled) {
+ mIsInlineReplyAnimationFlagEnabled = isEnabled;
+ }
+
@Override
public void setActualHeight(int height, boolean notifyListeners) {
boolean changed = height != getActualHeight();
@@ -3073,7 +3078,11 @@ public class ExpandableNotificationRow extends ActivatableNotificationView
}
int contentHeight = Math.max(getMinHeight(), height);
for (NotificationContentView l : mLayouts) {
- l.setContentHeight(height);
+ if (mIsInlineReplyAnimationFlagEnabled) {
+ l.setContentHeight(height);
+ } else {
+ l.setContentHeight(contentHeight);
+ }
}
if (mIsSummaryWithChildren) {
mChildrenContainer.setActualHeight(height);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentView.java
index f432af2232a9..451d837b63a0 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentView.java
@@ -635,7 +635,8 @@ public class NotificationContentView extends FrameLayout implements Notification
int hint;
if (mHeadsUpChild != null && isVisibleOrTransitioning(VISIBLE_TYPE_HEADSUP)) {
hint = getViewHeight(VISIBLE_TYPE_HEADSUP);
- if (mHeadsUpRemoteInput != null && mHeadsUpRemoteInput.isAnimatingAppearance()) {
+ if (mHeadsUpRemoteInput != null && mHeadsUpRemoteInput.isAnimatingAppearance()
+ && mHeadsUpRemoteInputController.isFocusAnimationFlagActive()) {
// While the RemoteInputView is animating its appearance, it should be allowed
// to overlap the hint, therefore no space is reserved for the hint during the
// appearance animation of the RemoteInputView
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationController.kt
index cdf66526ab63..592d1aa8f43f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationController.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationController.kt
@@ -8,6 +8,7 @@ import android.database.ContentObserver
import android.os.Handler
import android.os.PowerManager
import android.provider.Settings
+import android.view.Display
import android.view.Surface
import android.view.View
import android.view.WindowManager.fixScale
@@ -272,7 +273,7 @@ class UnlockedScreenOffAnimationController @Inject constructor(
// dispatched, a race condition could make it possible for this callback to be run
// as the device is waking up. That results in the AOD UI being shown while we wake
// up, with unpredictable consequences.
- if (!powerManager.isInteractive) {
+ if (!powerManager.isInteractive(Display.DEFAULT_DISPLAY)) {
aodUiAnimationPlaying = true
// Show AOD. That'll cause the KeyguardVisibilityHelper to call
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java
index e311bad9e865..d585163aa223 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java
@@ -21,6 +21,7 @@ import static android.view.WindowInsetsAnimation.Callback.DISPATCH_MODE_STOP;
import static com.android.systemui.statusbar.notification.stack.StackStateAnimator.ANIMATION_DURATION_STANDARD;
import android.app.ActivityManager;
+import android.app.Notification;
import android.content.Context;
import android.content.pm.PackageManager;
import android.content.res.ColorStateList;
@@ -134,6 +135,7 @@ public class RemoteInputView extends LinearLayout implements View.OnClickListene
@Nullable
private RevealParams mRevealParams;
private Rect mContentBackgroundBounds;
+ private boolean mIsFocusAnimationFlagActive;
private boolean mIsAnimatingAppearance = false;
// TODO(b/193539698): move these to a Controller
@@ -431,7 +433,7 @@ public class RemoteInputView extends LinearLayout implements View.OnClickListene
// case to prevent flicker.
if (!mRemoved) {
ViewGroup parent = (ViewGroup) getParent();
- if (animate && parent != null) {
+ if (animate && parent != null && mIsFocusAnimationFlagActive) {
ViewGroup grandParent = (ViewGroup) parent.getParent();
ViewGroupOverlay overlay = parent.getOverlay();
@@ -596,10 +598,24 @@ public class RemoteInputView extends LinearLayout implements View.OnClickListene
}
/**
+ * Sets whether the feature flag for the revised inline reply animation is active or not.
+ * @param active
+ */
+ public void setIsFocusAnimationFlagActive(boolean active) {
+ mIsFocusAnimationFlagActive = active;
+ }
+
+ /**
* Focuses the RemoteInputView and animates its appearance
*/
public void focusAnimated() {
- if (getVisibility() != VISIBLE) {
+ if (!mIsFocusAnimationFlagActive && getVisibility() != VISIBLE
+ && mRevealParams != null) {
+ android.animation.Animator animator = mRevealParams.createCircularRevealAnimator(this);
+ animator.setDuration(StackStateAnimator.ANIMATION_DURATION_STANDARD);
+ animator.setInterpolator(Interpolators.LINEAR_OUT_SLOW_IN);
+ animator.start();
+ } else if (mIsFocusAnimationFlagActive && getVisibility() != VISIBLE) {
mIsAnimatingAppearance = true;
setAlpha(0f);
Animator focusAnimator = getFocusAnimator(getActionsContainerLayout());
@@ -654,19 +670,37 @@ public class RemoteInputView extends LinearLayout implements View.OnClickListene
}
private void reset() {
- mProgressBar.setVisibility(INVISIBLE);
+ if (mIsFocusAnimationFlagActive) {
+ mProgressBar.setVisibility(INVISIBLE);
+ mResetting = true;
+ mSending = false;
+ onDefocus(true /* animate */, false /* logClose */, () -> {
+ mEntry.remoteInputTextWhenReset = SpannedString.valueOf(mEditText.getText());
+ mEditText.getText().clear();
+ mEditText.setEnabled(isAggregatedVisible());
+ mSendButton.setVisibility(VISIBLE);
+ mController.removeSpinning(mEntry.getKey(), mToken);
+ updateSendButton();
+ setAttachment(null);
+ mResetting = false;
+ });
+ return;
+ }
+
mResetting = true;
mSending = false;
- onDefocus(true /* animate */, false /* logClose */, () -> {
- mEntry.remoteInputTextWhenReset = SpannedString.valueOf(mEditText.getText());
- mEditText.getText().clear();
- mEditText.setEnabled(isAggregatedVisible());
- mSendButton.setVisibility(VISIBLE);
- mController.removeSpinning(mEntry.getKey(), mToken);
- updateSendButton();
- setAttachment(null);
- mResetting = false;
- });
+ mEntry.remoteInputTextWhenReset = SpannedString.valueOf(mEditText.getText());
+
+ mEditText.getText().clear();
+ mEditText.setEnabled(isAggregatedVisible());
+ mSendButton.setVisibility(VISIBLE);
+ mProgressBar.setVisibility(INVISIBLE);
+ mController.removeSpinning(mEntry.getKey(), mToken);
+ updateSendButton();
+ onDefocus(false /* animate */, false /* logClose */, null /* doAfterDefocus */);
+ setAttachment(null);
+
+ mResetting = false;
}
@Override
@@ -810,7 +844,7 @@ public class RemoteInputView extends LinearLayout implements View.OnClickListene
@Override
protected void onLayout(boolean changed, int l, int t, int r, int b) {
super.onLayout(changed, l, t, r, b);
- setPivotY(getMeasuredHeight());
+ if (mIsFocusAnimationFlagActive) setPivotY(getMeasuredHeight());
if (mContentBackgroundBounds != null) {
mContentBackground.setBounds(mContentBackgroundBounds);
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputViewController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputViewController.kt
index e9b1d543be26..22b4c9d81d25 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputViewController.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputViewController.kt
@@ -30,6 +30,8 @@ import android.util.Log
import android.view.View
import com.android.internal.logging.UiEventLogger
import com.android.systemui.R
+import com.android.systemui.flags.FeatureFlags
+import com.android.systemui.flags.Flags.NOTIFICATION_INLINE_REPLY_ANIMATION
import com.android.systemui.statusbar.NotificationRemoteInputManager
import com.android.systemui.statusbar.RemoteInputController
import com.android.systemui.statusbar.notification.collection.NotificationEntry
@@ -61,6 +63,8 @@ interface RemoteInputViewController {
var revealParams: RevealParams?
+ val isFocusAnimationFlagActive: Boolean
+
/**
* Sets the smart reply that should be inserted in the remote input, or `null` if the user is
* not editing a smart reply.
@@ -118,6 +122,7 @@ class RemoteInputViewControllerImpl @Inject constructor(
private val remoteInputController: RemoteInputController,
private val shortcutManager: ShortcutManager,
private val uiEventLogger: UiEventLogger,
+ private val mFlags: FeatureFlags
) : RemoteInputViewController {
private val onSendListeners = ArraySet<OnSendRemoteInputListener>()
@@ -149,6 +154,9 @@ class RemoteInputViewControllerImpl @Inject constructor(
override val isActive: Boolean get() = view.isActive
+ override val isFocusAnimationFlagActive: Boolean
+ get() = mFlags.isEnabled(NOTIFICATION_INLINE_REPLY_ANIMATION)
+
override fun bind() {
if (isBound) return
isBound = true
@@ -159,6 +167,7 @@ class RemoteInputViewControllerImpl @Inject constructor(
view.setSupportedMimeTypes(it.allowedDataTypes)
}
view.setRevealParameters(revealParams)
+ view.setIsFocusAnimationFlagActive(isFocusAnimationFlagActive)
view.addOnEditTextFocusChangedListener(onFocusChangeListener)
view.addOnSendRemoteInputListener(onSendRemoteInputListener)
diff --git a/packages/SystemUI/src/com/android/systemui/volume/CsdWarningDialog.java b/packages/SystemUI/src/com/android/systemui/volume/CsdWarningDialog.java
index db7fa14b4cff..fb5a71c0b06f 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/CsdWarningDialog.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/CsdWarningDialog.java
@@ -50,7 +50,6 @@ import dagger.assisted.AssistedInject;
* <ul>
* <li>{@link AudioManager#CSD_WARNING_DOSE_REACHED_1X}</li>
* <li>{@link AudioManager#CSD_WARNING_DOSE_REPEATED_5X}</li>
- * <li>{@link AudioManager#CSD_WARNING_ACCUMULATION_START}</li>
* <li>{@link AudioManager#CSD_WARNING_MOMENTARY_EXPOSURE}</li>
* </ul>
* Rather than basing volume safety messages on a fixed volume index, the CSD feature derives its
@@ -123,9 +122,9 @@ public class CsdWarningDialog extends SystemUIDialog
setShowForAllUsers(true);
setMessage(mContext.getString(getStringForWarning(csdWarning)));
setButton(DialogInterface.BUTTON_POSITIVE,
- mContext.getString(com.android.internal.R.string.yes), this);
+ mContext.getString(R.string.csd_button_keep_listening), this);
setButton(DialogInterface.BUTTON_NEGATIVE,
- mContext.getString(com.android.internal.R.string.no), this);
+ mContext.getString(R.string.csd_button_lower_volume), this);
setOnDismissListener(this);
final IntentFilter filter = new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
@@ -138,7 +137,7 @@ public class CsdWarningDialog extends SystemUIDialog
// unlike on the 5x dose repeat, level is only reduced to RS1 when the warning
// is not acknowledged quickly enough
mAudioManager.lowerVolumeToRs1();
- sendNotification();
+ sendNotification(/*for5XCsd=*/false);
}
};
} else {
@@ -152,6 +151,16 @@ public class CsdWarningDialog extends SystemUIDialog
}
}
+ @Override
+ public void show() {
+ if (mCsdWarning == AudioManager.CSD_WARNING_DOSE_REPEATED_5X) {
+ // only show a notification in case we reached 500% of dose
+ show5XNotification();
+ return;
+ }
+ super.show();
+ }
+
// NOT overriding onKeyDown as we're not allowing a dismissal on any key other than
// VOLUME_DOWN, and for this, we don't need to track if it's the start of a new
// key down -> up sequence
@@ -177,8 +186,8 @@ public class CsdWarningDialog extends SystemUIDialog
@Override
public void onClick(DialogInterface dialog, int which) {
- if (which == DialogInterface.BUTTON_POSITIVE) {
- Log.d(TAG, "OK pressed for CSD warning " + mCsdWarning);
+ if (which == DialogInterface.BUTTON_NEGATIVE) {
+ Log.d(TAG, "Lower volume pressed for CSD warning " + mCsdWarning);
dismiss();
}
@@ -235,27 +244,34 @@ public class CsdWarningDialog extends SystemUIDialog
switch (csdWarning) {
case AudioManager.CSD_WARNING_DOSE_REACHED_1X:
return com.android.internal.R.string.csd_dose_reached_warning;
- case AudioManager.CSD_WARNING_DOSE_REPEATED_5X:
- return com.android.internal.R.string.csd_dose_repeat_warning;
case AudioManager.CSD_WARNING_MOMENTARY_EXPOSURE:
return com.android.internal.R.string.csd_momentary_exposure_warning;
- case AudioManager.CSD_WARNING_ACCUMULATION_START:
- return com.android.internal.R.string.csd_entering_RS2_warning;
}
Log.e(TAG, "Invalid CSD warning event " + csdWarning, new Exception());
return com.android.internal.R.string.csd_dose_reached_warning;
}
+ /** When 5X CSD is reached we lower the volume and show a notification. **/
+ private void show5XNotification() {
+ if (mCsdWarning != AudioManager.CSD_WARNING_DOSE_REPEATED_5X) {
+ Log.w(TAG, "Notification dose repeat 5x is not shown for " + mCsdWarning);
+ return;
+ }
+
+ mAudioManager.lowerVolumeToRs1();
+ sendNotification(/*for5XCsd=*/true);
+ }
/**
* In case user did not respond to the dialog, they still need to know volume was lowered.
*/
- private void sendNotification() {
+ private void sendNotification(boolean for5XCsd) {
Intent intent = new Intent(Settings.ACTION_SOUND_SETTINGS);
PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent,
FLAG_IMMUTABLE);
- String text = mContext.getString(R.string.csd_system_lowered_text);
+ String text = for5XCsd ? mContext.getString(R.string.csd_500_system_lowered_text)
+ : mContext.getString(R.string.csd_system_lowered_text);
String title = mContext.getString(R.string.csd_lowered_title);
Notification.Builder builder =
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java
index f893cf4694f9..5ba02fa20167 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java
@@ -864,6 +864,7 @@ public class VolumeDialogImpl implements VolumeDialog, Dumpable,
public void dump(PrintWriter writer, String[] unusedArgs) {
writer.println(VolumeDialogImpl.class.getSimpleName() + " state:");
writer.print(" mShowing: "); writer.println(mShowing);
+ writer.print(" mIsAnimatingDismiss: "); writer.println(mIsAnimatingDismiss);
writer.print(" mActiveStream: "); writer.println(mActiveStream);
writer.print(" mDynamic: "); writer.println(mDynamic);
writer.print(" mAutomute: "); writer.println(mAutomute);
diff --git a/packages/SystemUI/tests/src/com/android/systemui/biometrics/BiometricDisplayListenerTest.java b/packages/SystemUI/tests/src/com/android/systemui/biometrics/BiometricDisplayListenerTest.java
index c6315cf94251..8547fa33c9de 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/biometrics/BiometricDisplayListenerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/biometrics/BiometricDisplayListenerTest.java
@@ -22,8 +22,6 @@ import static com.android.systemui.biometrics.BiometricDisplayListener.SensorTyp
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.ArgumentMatchers.same;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
@@ -36,7 +34,6 @@ import android.testing.TestableLooper;
import android.testing.TestableLooper.RunWithLooper;
import android.view.Display;
import android.view.Surface;
-import android.view.Surface.Rotation;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.SmallTest;
@@ -107,76 +104,6 @@ public class BiometricDisplayListenerTest extends SysuiTestCase {
}
@Test
- public void detectsRotationChanges_forUdfps_relativeToRotationWhenEnabled() {
- // Create a listener when the rotation is portrait.
- when(mDisplay.getRotation()).thenReturn(Surface.ROTATION_0);
- BiometricDisplayListener listener = new BiometricDisplayListener(
- mContextSpy, mDisplayManager, mHandler, mUdfpsType, mOnChangedCallback);
-
- // Rotate the device to landscape and then enable the listener.
- when(mDisplay.getRotation()).thenReturn(Surface.ROTATION_90);
- listener.enable();
- verify(mDisplayManager).registerDisplayListener(mDisplayListenerCaptor.capture(),
- same(mHandler), eq(DisplayManager.EVENT_FLAG_DISPLAY_CHANGED));
-
- // Rotate the device back to portrait and ensure the rotation is detected.
- when(mDisplay.getRotation()).thenReturn(Surface.ROTATION_0);
- mDisplayListenerCaptor.getValue().onDisplayChanged(999);
- verify(mOnChangedCallback).invoke();
- }
-
- @Test
- public void callsOnChanged_forUdfps_onlyWhenRotationChanges() {
- final @Rotation int[] rotations =
- new int[]{
- Surface.ROTATION_0,
- Surface.ROTATION_90,
- Surface.ROTATION_180,
- Surface.ROTATION_270
- };
-
- for (@Rotation int rot1 : rotations) {
- for (@Rotation int rot2 : rotations) {
- // Make the third rotation the same as the first one to simplify this test.
- @Rotation int rot3 = rot1;
-
- // Clean up prior interactions.
- reset(mDisplayManager);
- reset(mDisplay);
- reset(mOnChangedCallback);
-
- // Set up the mock for 3 invocations.
- when(mDisplay.getRotation()).thenReturn(rot1, rot2, rot3);
-
- BiometricDisplayListener listener = new BiometricDisplayListener(
- mContextSpy, mDisplayManager, mHandler, mUdfpsType, mOnChangedCallback);
- listener.enable();
-
- // The listener should record the current rotation and register a display listener.
- verify(mDisplay).getRotation();
- verify(mDisplayManager).registerDisplayListener(mDisplayListenerCaptor.capture(),
- same(mHandler), eq(DisplayManager.EVENT_FLAG_DISPLAY_CHANGED));
-
- // Test the first rotation since the listener was enabled.
- mDisplayListenerCaptor.getValue().onDisplayChanged(123);
- if (rot2 != rot1) {
- verify(mOnChangedCallback).invoke();
- } else {
- verify(mOnChangedCallback, never()).invoke();
- }
-
- // Test continued rotations.
- mDisplayListenerCaptor.getValue().onDisplayChanged(123);
- if (rot3 != rot2) {
- verify(mOnChangedCallback, times(2)).invoke();
- } else {
- verify(mOnChangedCallback, never()).invoke();
- }
- }
- }
- }
-
- @Test
public void callsOnChanged_forSideFingerprint_whenAnythingDisplayChanges() {
// Any rotation will do for this test, we just need to return something.
when(mDisplay.getRotation()).thenReturn(Surface.ROTATION_0);
diff --git a/packages/SystemUI/tests/src/com/android/systemui/controls/ui/ControlsActivityTest.kt b/packages/SystemUI/tests/src/com/android/systemui/controls/ui/ControlsActivityTest.kt
index 0f62b24bdb06..2d3e10e6f7e0 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/controls/ui/ControlsActivityTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/controls/ui/ControlsActivityTest.kt
@@ -34,6 +34,7 @@ import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
import org.mockito.Mock
+import org.mockito.Mockito.times
import org.mockito.Mockito.verify
import org.mockito.MockitoAnnotations
@@ -108,6 +109,18 @@ class ControlsActivityTest : SysuiTestCase() {
verify(uiController).onSizeChange()
}
+ @Test
+ fun testConfigurationChangeSupportsInPlaceChange() {
+ val config = Configuration(activityRule.activity.resources.configuration)
+
+ config.orientation = switchOrientation(config.orientation)
+ activityRule.runOnUiThread { activityRule.activity.onConfigurationChanged(config) }
+ config.orientation = switchOrientation(config.orientation)
+ activityRule.runOnUiThread { activityRule.activity.onConfigurationChanged(config) }
+
+ verify(uiController, times(2)).onSizeChange()
+ }
+
private fun switchOrientation(orientation: Int): Int {
return if (orientation == Configuration.ORIENTATION_LANDSCAPE) {
Configuration.ORIENTATION_PORTRAIT
diff --git a/packages/SystemUI/tests/src/com/android/systemui/controls/ui/TestableControlsActivity.kt b/packages/SystemUI/tests/src/com/android/systemui/controls/ui/TestableControlsActivity.kt
index f0b473210630..d2fe68ad8e1a 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/controls/ui/TestableControlsActivity.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/controls/ui/TestableControlsActivity.kt
@@ -22,6 +22,8 @@ import com.android.systemui.controls.settings.ControlsSettingsDialogManager
import com.android.systemui.flags.FeatureFlags
import com.android.systemui.statusbar.policy.KeyguardStateController
+// IMPORTANT: onDestroy may be called outside of bounds of the test. That means that the mocks
+// may have been nulled before onDestroy happens.
class TestableControlsActivity(
uiController: ControlsUiController,
broadcastDispatcher: BroadcastDispatcher,
@@ -37,4 +39,8 @@ class TestableControlsActivity(
featureFlags,
controlsSettingsDialogManager,
keyguardStateController
- )
+ ) {
+ override fun unregisterReceiver() {
+ // Do nothing. This will be called in `onDestroy`
+ }
+}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractorTest.kt b/packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractorTest.kt
index ec94cdec78f0..d7a0d5b5e062 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractorTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/domain/interactor/KeyboardBacklightInteractorTest.kt
@@ -47,14 +47,14 @@ class KeyboardBacklightInteractorTest : SysuiTestCase() {
@Test
fun emitsNull_whenKeyboardJustConnected() = runTest {
val latest by collectLastValue(underTest.backlight)
- keyboardRepository.setKeyboardConnected(true)
+ keyboardRepository.setIsAnyKeyboardConnected(true)
assertThat(latest).isNull()
}
@Test
fun emitsBacklight_whenKeyboardConnectedAndBacklightChanged() = runTest {
- keyboardRepository.setKeyboardConnected(true)
+ keyboardRepository.setIsAnyKeyboardConnected(true)
keyboardRepository.setBacklight(BacklightModel(1, 5))
assertThat(underTest.backlight.first()).isEqualTo(BacklightModel(1, 5))
@@ -63,10 +63,10 @@ class KeyboardBacklightInteractorTest : SysuiTestCase() {
@Test
fun emitsNull_afterKeyboardDisconnecting() = runTest {
val latest by collectLastValue(underTest.backlight)
- keyboardRepository.setKeyboardConnected(true)
+ keyboardRepository.setIsAnyKeyboardConnected(true)
keyboardRepository.setBacklight(BacklightModel(1, 5))
- keyboardRepository.setKeyboardConnected(false)
+ keyboardRepository.setIsAnyKeyboardConnected(false)
assertThat(latest).isNull()
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/ui/viewmodel/BacklightDialogViewModelTest.kt b/packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/ui/viewmodel/BacklightDialogViewModelTest.kt
index ec05d10b793c..1fec5a4d0f37 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/ui/viewmodel/BacklightDialogViewModelTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/keyboard/backlight/ui/viewmodel/BacklightDialogViewModelTest.kt
@@ -58,7 +58,7 @@ class BacklightDialogViewModelTest : SysuiTestCase() {
KeyboardBacklightInteractor(keyboardRepository),
accessibilityManagerWrapper
)
- keyboardRepository.setKeyboardConnected(true)
+ keyboardRepository.setIsAnyKeyboardConnected(true)
}
@Test
@@ -81,7 +81,7 @@ class BacklightDialogViewModelTest : SysuiTestCase() {
@Test
fun emitsNull_after5secDelay_fromLastBacklightChange() = runTest {
val latest by collectLastValue(underTest.dialogContent)
- keyboardRepository.setKeyboardConnected(true)
+ keyboardRepository.setIsAnyKeyboardConnected(true)
keyboardRepository.setBacklight(BacklightModel(1, 5))
assertThat(latest).isEqualTo(BacklightDialogContentViewModel(1, 5))
diff --git a/packages/SystemUI/tests/src/com/android/systemui/keyboard/data/repository/KeyboardRepositoryTest.kt b/packages/SystemUI/tests/src/com/android/systemui/keyboard/data/repository/KeyboardRepositoryTest.kt
index fae637541028..4410e68e64aa 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/keyboard/data/repository/KeyboardRepositoryTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/keyboard/data/repository/KeyboardRepositoryTest.kt
@@ -25,6 +25,8 @@ import androidx.test.filters.SmallTest
import com.android.systemui.SysuiTestCase
import com.android.systemui.coroutines.FlowValue
import com.android.systemui.coroutines.collectLastValue
+import com.android.systemui.coroutines.collectValues
+import com.android.systemui.keyboard.data.model.Keyboard
import com.android.systemui.util.mockito.any
import com.android.systemui.util.mockito.mock
import com.android.systemui.util.mockito.nullable
@@ -36,6 +38,7 @@ import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.first
import kotlinx.coroutines.test.StandardTestDispatcher
import kotlinx.coroutines.test.TestScope
+import kotlinx.coroutines.test.advanceTimeBy
import kotlinx.coroutines.test.runCurrent
import kotlinx.coroutines.test.runTest
import org.junit.Before
@@ -78,7 +81,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
@Test
fun emitsDisconnected_ifNothingIsConnected() =
testScope.runTest {
- val initialState = underTest.keyboardConnected.first()
+ val initialState = underTest.isAnyKeyboardConnected.first()
assertThat(initialState).isFalse()
}
@@ -86,7 +89,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
fun emitsConnected_ifKeyboardAlreadyConnectedAtTheStart() =
testScope.runTest {
whenever(inputManager.inputDeviceIds).thenReturn(intArrayOf(PHYSICAL_FULL_KEYBOARD_ID))
- val initialValue = underTest.keyboardConnected.first()
+ val initialValue = underTest.isAnyKeyboardConnected.first()
assertThat(initialValue).isTrue()
}
@@ -94,7 +97,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
fun emitsConnected_whenNewPhysicalKeyboardConnects() =
testScope.runTest {
val deviceListener = captureDeviceListener()
- val isKeyboardConnected by collectLastValue(underTest.keyboardConnected)
+ val isKeyboardConnected by collectLastValue(underTest.isAnyKeyboardConnected)
deviceListener.onInputDeviceAdded(PHYSICAL_FULL_KEYBOARD_ID)
@@ -105,7 +108,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
fun emitsDisconnected_whenDeviceWithIdDoesNotExist() =
testScope.runTest {
val deviceListener = captureDeviceListener()
- val isKeyboardConnected by collectLastValue(underTest.keyboardConnected)
+ val isKeyboardConnected by collectLastValue(underTest.isAnyKeyboardConnected)
deviceListener.onInputDeviceAdded(NULL_DEVICE_ID)
assertThat(isKeyboardConnected).isFalse()
@@ -115,7 +118,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
fun emitsDisconnected_whenKeyboardDisconnects() =
testScope.runTest {
val deviceListener = captureDeviceListener()
- val isKeyboardConnected by collectLastValue(underTest.keyboardConnected)
+ val isKeyboardConnected by collectLastValue(underTest.isAnyKeyboardConnected)
deviceListener.onInputDeviceAdded(PHYSICAL_FULL_KEYBOARD_ID)
assertThat(isKeyboardConnected).isTrue()
@@ -125,7 +128,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
}
private suspend fun captureDeviceListener(): InputManager.InputDeviceListener {
- underTest.keyboardConnected.first()
+ underTest.isAnyKeyboardConnected.first()
verify(inputManager).registerInputDeviceListener(deviceListenerCaptor.capture(), nullable())
return deviceListenerCaptor.value
}
@@ -134,7 +137,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
fun emitsDisconnected_whenVirtualOrNotFullKeyboardConnects() =
testScope.runTest {
val deviceListener = captureDeviceListener()
- val isKeyboardConnected by collectLastValue(underTest.keyboardConnected)
+ val isKeyboardConnected by collectLastValue(underTest.isAnyKeyboardConnected)
deviceListener.onInputDeviceAdded(PHYSICAL_NOT_FULL_KEYBOARD_ID)
assertThat(isKeyboardConnected).isFalse()
@@ -147,7 +150,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
fun emitsDisconnected_whenKeyboardDisconnectsAndWasAlreadyConnectedAtTheStart() =
testScope.runTest {
val deviceListener = captureDeviceListener()
- val isKeyboardConnected by collectLastValue(underTest.keyboardConnected)
+ val isKeyboardConnected by collectLastValue(underTest.isAnyKeyboardConnected)
deviceListener.onInputDeviceRemoved(PHYSICAL_FULL_KEYBOARD_ID)
assertThat(isKeyboardConnected).isFalse()
@@ -157,7 +160,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
fun emitsConnected_whenAnotherDeviceDisconnects() =
testScope.runTest {
val deviceListener = captureDeviceListener()
- val isKeyboardConnected by collectLastValue(underTest.keyboardConnected)
+ val isKeyboardConnected by collectLastValue(underTest.isAnyKeyboardConnected)
deviceListener.onInputDeviceAdded(PHYSICAL_FULL_KEYBOARD_ID)
deviceListener.onInputDeviceRemoved(VIRTUAL_FULL_KEYBOARD_ID)
@@ -169,7 +172,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
fun emitsConnected_whenOnePhysicalKeyboardDisconnectsButAnotherRemainsConnected() =
testScope.runTest {
val deviceListener = captureDeviceListener()
- val isKeyboardConnected by collectLastValue(underTest.keyboardConnected)
+ val isKeyboardConnected by collectLastValue(underTest.isAnyKeyboardConnected)
deviceListener.onInputDeviceAdded(PHYSICAL_FULL_KEYBOARD_ID)
deviceListener.onInputDeviceAdded(ANOTHER_PHYSICAL_FULL_KEYBOARD_ID)
@@ -205,7 +208,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
@Test
fun keyboardBacklightValuesNotPassed_fromBacklightListener_whenNotTriggeredByKeyPress() {
- testScope.runTest() {
+ testScope.runTest {
val backlight by collectLastValueImmediately(underTest.backlight)
verify(inputManager)
.registerKeyboardBacklightListener(any(), backlightListenerCaptor.capture())
@@ -221,7 +224,7 @@ class KeyboardRepositoryTest : SysuiTestCase() {
@Test
fun passesKeyboardBacklightValues_fromBacklightListener_whenTriggeredByKeyPress() {
- testScope.runTest() {
+ testScope.runTest {
val backlight by collectLastValueImmediately(underTest.backlight)
verify(inputManager)
.registerKeyboardBacklightListener(any(), backlightListenerCaptor.capture())
@@ -235,6 +238,86 @@ class KeyboardRepositoryTest : SysuiTestCase() {
}
}
+ @Test
+ fun passessAllKeyboards_thatWereAlreadyConnectedOnInitialization() {
+ testScope.runTest {
+ whenever(inputManager.inputDeviceIds)
+ .thenReturn(
+ intArrayOf(
+ PHYSICAL_FULL_KEYBOARD_ID,
+ ANOTHER_PHYSICAL_FULL_KEYBOARD_ID,
+ VIRTUAL_FULL_KEYBOARD_ID // not a physical keyboard - that's why result is 2
+ )
+ )
+ val keyboards by collectValues(underTest.newlyConnectedKeyboard)
+
+ assertThat(keyboards).hasSize(2)
+ }
+ }
+
+ @Test
+ fun passesNewlyConnectedKeyboard() {
+ testScope.runTest {
+ val deviceListener = captureDeviceListener()
+
+ deviceListener.onInputDeviceAdded(PHYSICAL_FULL_KEYBOARD_ID)
+
+ assertThat(underTest.newlyConnectedKeyboard.first())
+ .isEqualTo(Keyboard(VENDOR_ID, PRODUCT_ID))
+ }
+ }
+
+ @Test
+ fun emitsOnlyNewlyConnectedKeyboards() {
+ testScope.runTest {
+ whenever(inputManager.inputDeviceIds).thenReturn(intArrayOf(PHYSICAL_FULL_KEYBOARD_ID))
+ underTest.newlyConnectedKeyboard.first()
+ verify(inputManager)
+ .registerInputDeviceListener(deviceListenerCaptor.capture(), nullable())
+ val deviceListener = deviceListenerCaptor.value
+
+ deviceListener.onInputDeviceAdded(ANOTHER_PHYSICAL_FULL_KEYBOARD_ID)
+ val keyboards by collectValues(underTest.newlyConnectedKeyboard)
+
+ assertThat(keyboards).hasSize(1)
+ }
+ }
+
+ @Test
+ fun stillEmitsNewKeyboardEvenIfFlowWasSubscribedAfterOtherFlows() {
+ testScope.runTest {
+ whenever(inputManager.inputDeviceIds)
+ .thenReturn(
+ intArrayOf(
+ PHYSICAL_FULL_KEYBOARD_ID,
+ ANOTHER_PHYSICAL_FULL_KEYBOARD_ID,
+ VIRTUAL_FULL_KEYBOARD_ID // not a physical keyboard - that's why result is 2
+ )
+ )
+ collectLastValueImmediately(underTest.isAnyKeyboardConnected)
+
+ // let's pretend second flow is subscribed after some delay
+ advanceTimeBy(1000)
+ val keyboards by collectValues(underTest.newlyConnectedKeyboard)
+
+ assertThat(keyboards).hasSize(2)
+ }
+ }
+
+ @Test
+ fun emitsKeyboardWhenItWasReconnected() {
+ testScope.runTest {
+ val deviceListener = captureDeviceListener()
+ val keyboards by collectValues(underTest.newlyConnectedKeyboard)
+
+ deviceListener.onInputDeviceAdded(PHYSICAL_FULL_KEYBOARD_ID)
+ deviceListener.onInputDeviceRemoved(PHYSICAL_FULL_KEYBOARD_ID)
+ deviceListener.onInputDeviceAdded(PHYSICAL_FULL_KEYBOARD_ID)
+
+ assertThat(keyboards).hasSize(2)
+ }
+ }
+
private fun KeyboardBacklightListener.onBacklightChanged(
current: Int,
max: Int,
@@ -254,6 +337,9 @@ class KeyboardRepositoryTest : SysuiTestCase() {
private const val ANOTHER_PHYSICAL_FULL_KEYBOARD_ID = 4
private const val NULL_DEVICE_ID = 5
+ private const val VENDOR_ID = 99
+ private const val PRODUCT_ID = 101
+
private val INPUT_DEVICES_MAP: Map<Int, InputDevice> =
mapOf(
PHYSICAL_FULL_KEYBOARD_ID to inputDevice(virtual = false, fullKeyboard = true),
@@ -267,6 +353,8 @@ class KeyboardRepositoryTest : SysuiTestCase() {
mock<InputDevice>().also {
whenever(it.isVirtual).thenReturn(virtual)
whenever(it.isFullKeyboard).thenReturn(fullKeyboard)
+ whenever(it.vendorId).thenReturn(VENDOR_ID)
+ whenever(it.productId).thenReturn(PRODUCT_ID)
}
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardUnlockAnimationControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardUnlockAnimationControllerTest.kt
index 2c81e82f34df..47df64fc33e2 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardUnlockAnimationControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardUnlockAnimationControllerTest.kt
@@ -20,6 +20,7 @@ import com.android.systemui.statusbar.NotificationShadeWindowController
import com.android.systemui.statusbar.SysuiStatusBarStateController
import com.android.systemui.statusbar.phone.BiometricUnlockController
import com.android.systemui.statusbar.policy.KeyguardStateController
+import com.android.systemui.util.mockito.argThat
import com.android.systemui.util.mockito.whenever
import junit.framework.Assert.assertEquals
import junit.framework.Assert.assertFalse
@@ -28,13 +29,14 @@ import org.junit.After
import org.junit.Before
import org.junit.Test
import org.junit.runner.RunWith
-import org.mockito.ArgumentCaptor.forClass
import org.mockito.Mock
+import org.mockito.Mockito.atLeastOnce
import org.mockito.Mockito.mock
import org.mockito.Mockito.times
import org.mockito.Mockito.verify
import org.mockito.Mockito.verifyNoMoreInteractions
import org.mockito.MockitoAnnotations
+import java.util.function.Predicate
@RunWith(AndroidTestingRunner::class)
@RunWithLooper
@@ -77,6 +79,13 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
mock(ActivityManager.RunningTaskInfo::class.java), false)
private lateinit var remoteAnimationTargets: Array<RemoteAnimationTarget>
+ private var surfaceControlWp = mock(SurfaceControl::class.java)
+ private var wallpaperTarget = RemoteAnimationTarget(
+ 2 /* taskId */, 0, surfaceControlWp, false, Rect(), Rect(), 0, Point(), Rect(), Rect(),
+ mock(WindowConfiguration::class.java), false, surfaceControlWp, Rect(),
+ mock(ActivityManager.RunningTaskInfo::class.java), false)
+ private lateinit var wallpaperTargets: Array<RemoteAnimationTarget>
+
@Before
fun setUp() {
MockitoAnnotations.initMocks(this)
@@ -94,6 +103,7 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
// All of these fields are final, so we can't mock them, but are needed so that the surface
// appear amount setter doesn't short circuit.
remoteAnimationTargets = arrayOf(remoteTarget1)
+ wallpaperTargets = arrayOf(wallpaperTarget)
// Set the surface applier to our mock so that we can verify the arguments passed to it.
// This applier does not have any side effects within the unlock animation controller, so
@@ -119,18 +129,20 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
remoteAnimationTargets,
+ arrayOf(),
0 /* startTime */,
false /* requestedShowSurfaceBehindKeyguard */
)
- val captor = forClass(SyncRtSurfaceTransactionApplier.SurfaceParams::class.java)
- verify(surfaceTransactionApplier, times(1)).scheduleApply(captor.capture())
+ val captorSb = ArgThatCaptor<SyncRtSurfaceTransactionApplier.SurfaceParams>()
+ verify(surfaceTransactionApplier, times(1)).scheduleApply(
+ captorSb.capture { sp -> sp.surface == surfaceControl1 })
- val params = captor.value
+ val params = captorSb.getLastValue()
// We expect that we've instantly set the surface behind to alpha = 1f, and have no
// transforms (translate, scale) on its matrix.
- assertEquals(params.alpha, 1f)
+ assertEquals(1f, params.alpha)
assertTrue(params.matrix.isIdentity)
// Also expect we've immediately asked the keyguard view mediator to finish the remote
@@ -150,6 +162,7 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
remoteAnimationTargets,
+ wallpaperTargets,
0 /* startTime */,
false /* requestedShowSurfaceBehindKeyguard */
)
@@ -174,6 +187,7 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
remoteAnimationTargets,
+ wallpaperTargets,
0 /* startTime */,
true /* requestedShowSurfaceBehindKeyguard */
)
@@ -196,6 +210,7 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
remoteAnimationTargets,
+ wallpaperTargets,
0 /* startTime */,
true /* requestedShowSurfaceBehindKeyguard */
)
@@ -216,6 +231,7 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
fun playCannedUnlockAnimation_ifDidNotRequestShowSurface() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
remoteAnimationTargets,
+ wallpaperTargets,
0 /* startTime */,
false /* requestedShowSurfaceBehindKeyguard */
)
@@ -230,6 +246,7 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
remoteAnimationTargets,
+ wallpaperTargets,
0 /* startTime */,
true /* requestedShowSurfaceBehindKeyguard */
)
@@ -245,6 +262,7 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
remoteAnimationTargets,
+ wallpaperTargets,
0 /* startTime */,
false /* requestedShowSurfaceBehindKeyguard */
)
@@ -259,6 +277,7 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
fun surfaceAnimation_multipleTargets() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
arrayOf(remoteTarget1, remoteTarget2),
+ wallpaperTargets,
0 /* startTime */,
false /* requestedShowSurfaceBehindKeyguard */
)
@@ -267,10 +286,15 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
// means an animation is in progress.
keyguardUnlockAnimationController.setSurfaceBehindAppearAmount(0.5f)
- val captor = forClass(SyncRtSurfaceTransactionApplier.SurfaceParams::class.java)
- verify(surfaceTransactionApplier, times(2)).scheduleApply(captor.capture())
+ val captorSb = ArgThatCaptor<SyncRtSurfaceTransactionApplier.SurfaceParams>()
+ verify(surfaceTransactionApplier, times(2)).scheduleApply(captorSb
+ .capture { sp -> sp.surface == surfaceControl1 || sp.surface == surfaceControl2 })
+ val captorWp = ArgThatCaptor<SyncRtSurfaceTransactionApplier.SurfaceParams>()
+ verify(surfaceTransactionApplier, times(1).description(
+ "WallpaperSurface was expected to receive scheduleApply once"
+ )).scheduleApply(captorWp.capture { sp -> sp.surface == surfaceControlWp})
- val allParams = captor.allValues
+ val allParams = captorSb.getAllValues()
val remainingTargets = mutableListOf(surfaceControl1, surfaceControl2)
allParams.forEach { params ->
@@ -293,20 +317,29 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
remoteAnimationTargets,
+ wallpaperTargets,
0 /* startTime */,
false /* requestedShowSurfaceBehindKeyguard */
)
keyguardUnlockAnimationController.setSurfaceBehindAppearAmount(1f)
+ keyguardUnlockAnimationController.setWallpaperAppearAmount(1f)
- val captor = forClass(SyncRtSurfaceTransactionApplier.SurfaceParams::class.java)
- verify(surfaceTransactionApplier, times(1)).scheduleApply(captor.capture())
+ val captorSb = ArgThatCaptor<SyncRtSurfaceTransactionApplier.SurfaceParams>()
+ verify(surfaceTransactionApplier, times(1)).scheduleApply(
+ captorSb.capture { sp -> sp.surface == surfaceControl1})
+ val captorWp = ArgThatCaptor<SyncRtSurfaceTransactionApplier.SurfaceParams>()
+ verify(surfaceTransactionApplier, atLeastOnce().description("Wallpaper surface has not " +
+ "received scheduleApply")).scheduleApply(
+ captorWp.capture { sp -> sp.surface == surfaceControlWp })
- val params = captor.value
+ val params = captorSb.getLastValue()
// We expect that we've set the surface behind to alpha = 0f since we're not interactive.
- assertEquals(params.alpha, 0f)
+ assertEquals(0f, params.alpha)
assertTrue(params.matrix.isIdentity)
+ assertEquals("Wallpaper surface was expected to have opacity 0",
+ 0f, captorWp.getLastValue().alpha)
verifyNoMoreInteractions(surfaceTransactionApplier)
}
@@ -317,19 +350,50 @@ class KeyguardUnlockAnimationControllerTest : SysuiTestCase() {
keyguardUnlockAnimationController.notifyStartSurfaceBehindRemoteAnimation(
remoteAnimationTargets,
+ wallpaperTargets,
0 /* startTime */,
false /* requestedShowSurfaceBehindKeyguard */
)
keyguardUnlockAnimationController.setSurfaceBehindAppearAmount(1f)
-
- val captor = forClass(SyncRtSurfaceTransactionApplier.SurfaceParams::class.java)
- verify(surfaceTransactionApplier, times(1)).scheduleApply(captor.capture())
-
- val params = captor.value
- assertEquals(params.alpha, 1f)
+ keyguardUnlockAnimationController.setWallpaperAppearAmount(1f)
+
+ val captorSb = ArgThatCaptor<SyncRtSurfaceTransactionApplier.SurfaceParams>()
+ verify(surfaceTransactionApplier, times(1)).scheduleApply(
+ captorSb.capture { sp -> sp.surface == surfaceControl1 })
+ val captorWp = ArgThatCaptor<SyncRtSurfaceTransactionApplier.SurfaceParams>()
+ verify(surfaceTransactionApplier, atLeastOnce().description("Wallpaper surface has not " +
+ "received scheduleApply")).scheduleApply(
+ captorWp.capture { sp -> sp.surface == surfaceControlWp })
+
+ val params = captorSb.getLastValue()
+ assertEquals(1f, params.alpha)
assertTrue(params.matrix.isIdentity)
+ assertEquals("Wallpaper surface was expected to have opacity 1",
+ 1f, captorWp.getLastValue().alpha)
verifyNoMoreInteractions(surfaceTransactionApplier)
}
+
+ private class ArgThatCaptor<T> {
+ private var allArgs: MutableList<T> = mutableListOf()
+
+ fun capture(predicate: Predicate<T>): T {
+ return argThat{x: T ->
+ if (predicate.test(x)) {
+ allArgs.add(x)
+ return@argThat true
+ }
+ return@argThat false
+ }
+ }
+
+ fun getLastValue(): T {
+ return allArgs.last()
+ }
+
+ fun getAllValues(): List<T> {
+ return allArgs
+ }
+ }
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/notetask/NoteTaskControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/notetask/NoteTaskControllerTest.kt
index 5f897050099a..bd7898a5d986 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/notetask/NoteTaskControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/notetask/NoteTaskControllerTest.kt
@@ -45,11 +45,11 @@ import androidx.test.runner.AndroidJUnit4
import com.android.systemui.R
import com.android.systemui.SysuiTestCase
import com.android.systemui.notetask.NoteTaskController.Companion.EXTRA_SHORTCUT_BADGE_OVERRIDE_PACKAGE
-import com.android.systemui.notetask.NoteTaskController.Companion.SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT
import com.android.systemui.notetask.NoteTaskController.Companion.SHORTCUT_ID
import com.android.systemui.notetask.NoteTaskEntryPoint.APP_CLIPS
import com.android.systemui.notetask.NoteTaskEntryPoint.QUICK_AFFORDANCE
import com.android.systemui.notetask.NoteTaskEntryPoint.TAIL_BUTTON
+import com.android.systemui.notetask.shortcut.CreateNoteTaskShortcutActivity
import com.android.systemui.notetask.shortcut.LaunchNoteTaskActivity
import com.android.systemui.notetask.shortcut.LaunchNoteTaskManagedProfileProxyActivity
import com.android.systemui.settings.FakeUserTracker
@@ -427,7 +427,8 @@ internal class NoteTaskControllerTest : SysuiTestCase() {
eq(PackageManager.DONT_KILL_APP),
)
- assertThat(argument.value).isEqualTo(SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT)
+ assertThat(argument.value.className)
+ .isEqualTo(CreateNoteTaskShortcutActivity::class.java.name)
}
@Test
@@ -441,7 +442,9 @@ internal class NoteTaskControllerTest : SysuiTestCase() {
eq(COMPONENT_ENABLED_STATE_DISABLED),
eq(PackageManager.DONT_KILL_APP),
)
- assertThat(argument.value).isEqualTo(SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT)
+
+ assertThat(argument.value.className)
+ .isEqualTo(CreateNoteTaskShortcutActivity::class.java.name)
}
@Test
@@ -460,7 +463,9 @@ internal class NoteTaskControllerTest : SysuiTestCase() {
eq(COMPONENT_ENABLED_STATE_ENABLED),
eq(PackageManager.DONT_KILL_APP),
)
- assertThat(argument.value).isEqualTo(SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT)
+
+ assertThat(argument.value.className)
+ .isEqualTo(CreateNoteTaskShortcutActivity::class.java.name)
}
@Test
@@ -480,7 +485,9 @@ internal class NoteTaskControllerTest : SysuiTestCase() {
eq(COMPONENT_ENABLED_STATE_DISABLED),
eq(PackageManager.DONT_KILL_APP),
)
- assertThat(argument.value).isEqualTo(SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT)
+
+ assertThat(argument.value.className)
+ .isEqualTo(CreateNoteTaskShortcutActivity::class.java.name)
}
// endregion
@@ -664,7 +671,8 @@ internal class NoteTaskControllerTest : SysuiTestCase() {
eq(COMPONENT_ENABLED_STATE_ENABLED),
eq(PackageManager.DONT_KILL_APP),
)
- assertThat(actualComponent.value).isEqualTo(SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT)
+ assertThat(actualComponent.value.className)
+ .isEqualTo(CreateNoteTaskShortcutActivity::class.java.name)
verify(shortcutManager, never()).disableShortcuts(any())
verify(shortcutManager).enableShortcuts(listOf(SHORTCUT_ID))
val actualShortcuts = argumentCaptor<List<ShortcutInfo>>()
@@ -695,7 +703,8 @@ internal class NoteTaskControllerTest : SysuiTestCase() {
eq(COMPONENT_ENABLED_STATE_DISABLED),
eq(PackageManager.DONT_KILL_APP),
)
- assertThat(argument.value).isEqualTo(SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT)
+ assertThat(argument.value.className)
+ .isEqualTo(CreateNoteTaskShortcutActivity::class.java.name)
verify(shortcutManager).disableShortcuts(listOf(SHORTCUT_ID))
verify(shortcutManager, never()).enableShortcuts(any())
verify(shortcutManager, never()).updateShortcuts(any())
@@ -712,7 +721,8 @@ internal class NoteTaskControllerTest : SysuiTestCase() {
eq(COMPONENT_ENABLED_STATE_DISABLED),
eq(PackageManager.DONT_KILL_APP),
)
- assertThat(argument.value).isEqualTo(SETTINGS_CREATE_NOTE_TASK_SHORTCUT_COMPONENT)
+ assertThat(argument.value.className)
+ .isEqualTo(CreateNoteTaskShortcutActivity::class.java.name)
verify(shortcutManager).disableShortcuts(listOf(SHORTCUT_ID))
verify(shortcutManager, never()).enableShortcuts(any())
verify(shortcutManager, never()).updateShortcuts(any())
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationControllerTest.kt
index 3c644a5e1dc6..ea534bbd0794 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/UnlockedScreenOffAnimationControllerTest.kt
@@ -20,6 +20,7 @@ import android.os.Handler
import android.os.PowerManager
import android.testing.AndroidTestingRunner
import android.testing.TestableLooper.RunWithLooper
+import android.view.Display
import androidx.test.filters.SmallTest
import com.android.internal.jank.InteractionJankMonitor
import com.android.systemui.SysuiTestCase
@@ -29,6 +30,7 @@ import com.android.systemui.shade.ShadeViewController
import com.android.systemui.statusbar.LightRevealScrim
import com.android.systemui.statusbar.StatusBarStateControllerImpl
import com.android.systemui.statusbar.policy.KeyguardStateController
+import com.android.systemui.util.mockito.eq
import com.android.systemui.util.settings.GlobalSettings
import junit.framework.Assert.assertFalse
import org.junit.After
@@ -141,7 +143,7 @@ class UnlockedScreenOffAnimationControllerTest : SysuiTestCase() {
@Test
fun testAodUiNotShownIfInteractive() {
`when`(dozeParameters.canControlUnlockedScreenOff()).thenReturn(true)
- `when`(powerManager.isInteractive).thenReturn(true)
+ `when`(powerManager.isInteractive(eq(Display.DEFAULT_DISPLAY))).thenReturn(true)
val callbackCaptor = ArgumentCaptor.forClass(Runnable::class.java)
controller.startAnimation()
@@ -153,6 +155,21 @@ class UnlockedScreenOffAnimationControllerTest : SysuiTestCase() {
}
@Test
+ fun testAodUiShownIfGloballyInteractiveButDefaultDisplayNotInteractive() {
+ `when`(dozeParameters.canControlUnlockedScreenOff()).thenReturn(true)
+ `when`(powerManager.isInteractive()).thenReturn(false)
+ `when`(powerManager.isInteractive(eq(Display.DEFAULT_DISPLAY))).thenReturn(false)
+
+ val callbackCaptor = ArgumentCaptor.forClass(Runnable::class.java)
+ controller.startAnimation()
+
+ verify(handler).postDelayed(callbackCaptor.capture(), anyLong())
+ callbackCaptor.value.run()
+
+ verify(shadeViewController).showAodUi()
+ }
+
+ @Test
fun testNoAnimationPlaying_dozeParamsCanNotControlScreenOff() {
`when`(dozeParameters.canControlUnlockedScreenOff()).thenReturn(false)
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/RemoteInputViewTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/RemoteInputViewTest.java
index 50bb0584aa4c..391c8ca4d286 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/RemoteInputViewTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/RemoteInputViewTest.java
@@ -70,6 +70,8 @@ import com.android.internal.logging.testing.UiEventLoggerFake;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.SysuiTestCase;
+import com.android.systemui.flags.FakeFeatureFlags;
+import com.android.systemui.flags.Flags;
import com.android.systemui.statusbar.NotificationRemoteInputManager;
import com.android.systemui.statusbar.RemoteInputController;
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
@@ -451,13 +453,17 @@ public class RemoteInputViewTest extends SysuiTestCase {
private RemoteInputViewController bindController(
RemoteInputView view,
NotificationEntry entry) {
+ FakeFeatureFlags fakeFeatureFlags = new FakeFeatureFlags();
+ fakeFeatureFlags.set(Flags.NOTIFICATION_INLINE_REPLY_ANIMATION, true);
RemoteInputViewControllerImpl viewController = new RemoteInputViewControllerImpl(
view,
entry,
mRemoteInputQuickSettingsDisabler,
mController,
mShortcutManager,
- mUiEventLoggerFake);
+ mUiEventLoggerFake,
+ fakeFeatureFlags
+ );
viewController.bind();
return viewController;
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/volume/CsdWarningDialogTest.java b/packages/SystemUI/tests/src/com/android/systemui/volume/CsdWarningDialogTest.java
index 9cf3e443320d..b0bd83e1799f 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/volume/CsdWarningDialogTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/volume/CsdWarningDialogTest.java
@@ -22,7 +22,6 @@ import static android.media.AudioManager.CSD_WARNING_DOSE_REPEATED_5X;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.eq;
import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import android.app.Notification;
@@ -75,17 +74,14 @@ public class CsdWarningDialogTest extends SysuiTestCase {
}
@Test
- public void create5XCsdDiSalogAndWait_willNotSendNotification() {
+ public void create5XCsdDiSalogAndWait_willSendNotification() {
FakeExecutor executor = new FakeExecutor(new FakeSystemClock());
CsdWarningDialog dialog = new CsdWarningDialog(CSD_WARNING_DOSE_REPEATED_5X, mContext,
mAudioManager, mNotificationManager, executor, null);
dialog.show();
- executor.advanceClockToLast();
- executor.runAllReady();
- dialog.dismiss();
- verify(mNotificationManager, never()).notify(
+ verify(mNotificationManager).notify(
eq(SystemMessageProto.SystemMessage.NOTE_CSD_LOWER_AUDIO), any(Notification.class));
}
}
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/keyboard/data/repository/FakeKeyboardRepository.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/keyboard/data/repository/FakeKeyboardRepository.kt
index 4e435462be50..b37cac1d36fd 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/keyboard/data/repository/FakeKeyboardRepository.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/keyboard/data/repository/FakeKeyboardRepository.kt
@@ -17,6 +17,7 @@
package com.android.systemui.keyboard.data.repository
+import com.android.systemui.keyboard.data.model.Keyboard
import com.android.systemui.keyboard.shared.model.BacklightModel
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
@@ -24,18 +25,25 @@ import kotlinx.coroutines.flow.filterNotNull
class FakeKeyboardRepository : KeyboardRepository {
- private val _keyboardConnected = MutableStateFlow(false)
- override val keyboardConnected: Flow<Boolean> = _keyboardConnected
+ private val _isAnyKeyboardConnected = MutableStateFlow(false)
+ override val isAnyKeyboardConnected: Flow<Boolean> = _isAnyKeyboardConnected
private val _backlightState: MutableStateFlow<BacklightModel?> = MutableStateFlow(null)
// filtering to make sure backlight doesn't have default initial value
override val backlight: Flow<BacklightModel> = _backlightState.filterNotNull()
+ private val _newlyConnectedKeyboard: MutableStateFlow<Keyboard?> = MutableStateFlow(null)
+ override val newlyConnectedKeyboard: Flow<Keyboard> = _newlyConnectedKeyboard.filterNotNull()
+
fun setBacklight(state: BacklightModel) {
_backlightState.value = state
}
- fun setKeyboardConnected(connected: Boolean) {
- _keyboardConnected.value = connected
+ fun setIsAnyKeyboardConnected(connected: Boolean) {
+ _isAnyKeyboardConnected.value = connected
+ }
+
+ fun setNewlyConnectedKeyboard(keyboard: Keyboard) {
+ _newlyConnectedKeyboard.value = keyboard
}
}
diff --git a/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperBackupAgent.java b/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperBackupAgent.java
index 496f4f6c6680..308e2cf01787 100644
--- a/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperBackupAgent.java
+++ b/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperBackupAgent.java
@@ -111,6 +111,7 @@ public class WallpaperBackupAgent extends BackupAgent {
private WallpaperManager mWallpaperManager;
private WallpaperEventLogger mEventLogger;
+ private BackupManager mBackupManager;
private boolean mSystemHasLiveComponent;
private boolean mLockHasLiveComponent;
@@ -129,8 +130,8 @@ public class WallpaperBackupAgent extends BackupAgent {
Slog.v(TAG, "quota file " + mQuotaFile.getPath() + " exists=" + mQuotaExceeded);
}
- BackupManager backupManager = new BackupManager(getApplicationContext());
- mEventLogger = new WallpaperEventLogger(backupManager, /* wallpaperAgent */ this);
+ mBackupManager = new BackupManager(getBaseContext());
+ mEventLogger = new WallpaperEventLogger(mBackupManager, /* wallpaperAgent */ this);
}
@Override
@@ -564,21 +565,44 @@ public class WallpaperBackupAgent extends BackupAgent {
if (!isDeviceInRestore()) {
// We don't want to reapply the wallpaper outside a restore.
unregister();
+
+ // We have finished restore and not succeeded, so let's log that as an error.
+ WallpaperEventLogger logger = new WallpaperEventLogger(
+ mBackupManager.getDelayedRestoreLogger());
+ logger.onSystemLiveWallpaperRestoreFailed(
+ WallpaperEventLogger.ERROR_LIVE_PACKAGE_NOT_INSTALLED);
+ if (applyToLock) {
+ logger.onLockLiveWallpaperRestoreFailed(
+ WallpaperEventLogger.ERROR_LIVE_PACKAGE_NOT_INSTALLED);
+ }
+ mBackupManager.reportDelayedRestoreResult(logger.getBackupRestoreLogger());
+
return;
}
if (componentName.getPackageName().equals(packageName)) {
Slog.d(TAG, "Applying component " + componentName);
- mWallpaperManager.setWallpaperComponent(componentName);
+ boolean sysResult = mWallpaperManager.setWallpaperComponent(componentName);
+ WallpaperEventLogger logger = new WallpaperEventLogger(
+ mBackupManager.getDelayedRestoreLogger());
+ if (sysResult) {
+ logger.onSystemLiveWallpaperRestored(componentName);
+ } else {
+ logger.onSystemLiveWallpaperRestoreFailed(
+ WallpaperEventLogger.ERROR_SET_COMPONENT_EXCEPTION);
+ }
if (applyToLock) {
try {
mWallpaperManager.clear(FLAG_LOCK);
+ logger.onLockLiveWallpaperRestored(componentName);
} catch (IOException e) {
Slog.w(TAG, "Failed to apply live wallpaper to lock screen: " + e);
+ logger.onLockLiveWallpaperRestoreFailed(e.getClass().getName());
}
}
// We're only expecting to restore the wallpaper component once.
unregister();
+ mBackupManager.reportDelayedRestoreResult(logger.getBackupRestoreLogger());
}
}
};
@@ -599,4 +623,9 @@ public class WallpaperBackupAgent extends BackupAgent {
return false;
}
}
+
+ @VisibleForTesting
+ void setBackupManagerForTesting(BackupManager backupManager) {
+ mBackupManager = backupManager;
+ }
} \ No newline at end of file
diff --git a/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperEventLogger.java b/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperEventLogger.java
index 47c45ac7e775..b25f95ab1936 100644
--- a/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperEventLogger.java
+++ b/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperEventLogger.java
@@ -61,6 +61,10 @@ public class WallpaperEventLogger {
static final String ERROR_NO_WALLPAPER = "no_wallpaper";
@BackupRestoreError
static final String ERROR_QUOTA_EXCEEDED = "quota_exceeded";
+ @BackupRestoreError
+ static final String ERROR_SET_COMPONENT_EXCEPTION = "exception_in_set_component";
+ @BackupRestoreError
+ static final String ERROR_LIVE_PACKAGE_NOT_INSTALLED = "live_pkg_not_installed_in_restore";
private final BackupRestoreEventLogger mLogger;
@@ -70,6 +74,14 @@ public class WallpaperEventLogger {
mLogger = backupManager.getBackupRestoreEventLogger(/* backupAgent */ wallpaperAgent);
}
+ WallpaperEventLogger(BackupRestoreEventLogger logger) {
+ mLogger = logger;
+ }
+
+ BackupRestoreEventLogger getBackupRestoreLogger() {
+ return mLogger;
+ }
+
void onSystemImageWallpaperBackedUp() {
logBackupSuccessInternal(WALLPAPER_IMG_SYSTEM, /* liveComponentWallpaperInfo */ null);
}
diff --git a/packages/WallpaperBackup/test/src/com/android/wallpaperbackup/WallpaperBackupAgentTest.java b/packages/WallpaperBackup/test/src/com/android/wallpaperbackup/WallpaperBackupAgentTest.java
index 58f6477ed082..9b07ad41ef9a 100644
--- a/packages/WallpaperBackup/test/src/com/android/wallpaperbackup/WallpaperBackupAgentTest.java
+++ b/packages/WallpaperBackup/test/src/com/android/wallpaperbackup/WallpaperBackupAgentTest.java
@@ -47,6 +47,8 @@ import static org.mockito.Mockito.when;
import android.app.WallpaperInfo;
import android.app.WallpaperManager;
import android.app.backup.BackupAnnotations;
+import android.app.backup.BackupManager;
+import android.app.backup.BackupRestoreEventLogger;
import android.app.backup.BackupRestoreEventLogger.DataTypeResult;
import android.app.backup.FullBackupDataOutput;
import android.content.ComponentName;
@@ -101,6 +103,8 @@ public class WallpaperBackupAgentTest {
private WallpaperManager mWallpaperManager;
@Mock
private Context mMockContext;
+ @Mock
+ private BackupManager mBackupManager;
@Rule
public TemporaryFolder mTemporaryFolder = new TemporaryFolder();
@@ -714,6 +718,80 @@ public class WallpaperBackupAgentTest {
assertThat(lock.getErrors()).containsKey(RuntimeException.class.getName());
}
+ @Test
+ public void testUpdateWallpaperComponent_delayedRestore_logsSuccess() throws Exception {
+ mWallpaperBackupAgent.mIsDeviceInRestore = true;
+ when(mWallpaperManager.setWallpaperComponent(any())).thenReturn(true);
+ BackupRestoreEventLogger logger = new BackupRestoreEventLogger(
+ BackupAnnotations.OperationType.RESTORE);
+ when(mBackupManager.getDelayedRestoreLogger()).thenReturn(logger);
+ mWallpaperBackupAgent.setBackupManagerForTesting(mBackupManager);
+
+ mWallpaperBackupAgent.updateWallpaperComponent(mWallpaperComponent,
+ /* applyToLock */ true);
+ // Imitate wallpaper component installation.
+ mWallpaperBackupAgent.mWallpaperPackageMonitor.onPackageAdded(TEST_WALLPAPER_PACKAGE,
+ /* uid */0);
+
+ DataTypeResult system = getLoggingResult(WALLPAPER_LIVE_SYSTEM, logger.getLoggingResults());
+ DataTypeResult lock = getLoggingResult(WALLPAPER_LIVE_LOCK, logger.getLoggingResults());
+ assertThat(system).isNotNull();
+ assertThat(system.getSuccessCount()).isEqualTo(1);
+ assertThat(lock).isNotNull();
+ assertThat(lock.getSuccessCount()).isEqualTo(1);
+ }
+
+
+ @Test
+ public void testUpdateWallpaperComponent_delayedRestoreFails_logsFailure() throws Exception {
+ mWallpaperBackupAgent.mIsDeviceInRestore = true;
+ when(mWallpaperManager.setWallpaperComponent(any())).thenReturn(false);
+ BackupRestoreEventLogger logger = new BackupRestoreEventLogger(
+ BackupAnnotations.OperationType.RESTORE);
+ when(mBackupManager.getDelayedRestoreLogger()).thenReturn(logger);
+ mWallpaperBackupAgent.setBackupManagerForTesting(mBackupManager);
+
+ mWallpaperBackupAgent.updateWallpaperComponent(mWallpaperComponent,
+ /* applyToLock */ true);
+ // Imitate wallpaper component installation.
+ mWallpaperBackupAgent.mWallpaperPackageMonitor.onPackageAdded(TEST_WALLPAPER_PACKAGE,
+ /* uid */0);
+
+ DataTypeResult system = getLoggingResult(WALLPAPER_LIVE_SYSTEM, logger.getLoggingResults());
+ assertThat(system).isNotNull();
+ assertThat(system.getFailCount()).isEqualTo(1);
+ assertThat(system.getErrors()).containsKey(
+ WallpaperEventLogger.ERROR_SET_COMPONENT_EXCEPTION);
+ }
+
+ @Test
+ public void testUpdateWallpaperComponent_delayedRestore_packageNotInstalled_logsFailure()
+ throws Exception {
+ mWallpaperBackupAgent.mIsDeviceInRestore = false;
+ BackupRestoreEventLogger logger = new BackupRestoreEventLogger(
+ BackupAnnotations.OperationType.RESTORE);
+ when(mBackupManager.getDelayedRestoreLogger()).thenReturn(logger);
+ mWallpaperBackupAgent.setBackupManagerForTesting(mBackupManager);
+
+ mWallpaperBackupAgent.updateWallpaperComponent(mWallpaperComponent,
+ /* applyToLock */ true);
+
+ // Imitate wallpaper component installation.
+ mWallpaperBackupAgent.mWallpaperPackageMonitor.onPackageAdded(TEST_WALLPAPER_PACKAGE,
+ /* uid */0);
+
+ DataTypeResult system = getLoggingResult(WALLPAPER_LIVE_SYSTEM, logger.getLoggingResults());
+ DataTypeResult lock = getLoggingResult(WALLPAPER_LIVE_LOCK, logger.getLoggingResults());
+ assertThat(system).isNotNull();
+ assertThat(system.getFailCount()).isEqualTo(1);
+ assertThat(system.getErrors()).containsKey(
+ WallpaperEventLogger.ERROR_LIVE_PACKAGE_NOT_INSTALLED);
+ assertThat(lock).isNotNull();
+ assertThat(lock.getFailCount()).isEqualTo(1);
+ assertThat(lock.getErrors()).containsKey(
+ WallpaperEventLogger.ERROR_LIVE_PACKAGE_NOT_INSTALLED);
+ }
+
private void mockCurrentWallpaperIds(int systemWallpaperId, int lockWallpaperId) {
when(mWallpaperManager.getWallpaperId(eq(FLAG_SYSTEM))).thenReturn(systemWallpaperId);
when(mWallpaperManager.getWallpaperId(eq(FLAG_LOCK))).thenReturn(lockWallpaperId);
diff --git a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
index 2d1290caf32d..ad038d1c0361 100644
--- a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
+++ b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
@@ -179,6 +179,7 @@ import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import java.util.concurrent.Executors;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Predicate;
@@ -494,8 +495,13 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub
mA11yWindowManager = new AccessibilityWindowManager(mLock, mMainHandler,
mWindowManagerService, this, mSecurityPolicy, this, mTraceManager);
mA11yDisplayListener = new AccessibilityDisplayListener(mContext, mMainHandler);
- mMagnificationController = new MagnificationController(this, mLock, mContext,
- new MagnificationScaleProvider(mContext));
+ mMagnificationController = new MagnificationController(
+ this,
+ mLock,
+ mContext,
+ new MagnificationScaleProvider(mContext),
+ Executors.newSingleThreadExecutor()
+ );
mMagnificationProcessor = new MagnificationProcessor(mMagnificationController);
mCaptioningManagerImpl = new CaptioningManagerImpl(mContext);
mProxyManager = new ProxyManager(mLock, mA11yWindowManager, mContext, mMainHandler,
diff --git a/services/accessibility/java/com/android/server/accessibility/magnification/FullScreenMagnificationController.java b/services/accessibility/java/com/android/server/accessibility/magnification/FullScreenMagnificationController.java
index 874fb0164b01..b1cdc5053c27 100644
--- a/services/accessibility/java/com/android/server/accessibility/magnification/FullScreenMagnificationController.java
+++ b/services/accessibility/java/com/android/server/accessibility/magnification/FullScreenMagnificationController.java
@@ -56,7 +56,6 @@ import com.android.internal.R;
import com.android.internal.accessibility.common.MagnificationConstants;
import com.android.internal.annotations.GuardedBy;
import com.android.internal.annotations.VisibleForTesting;
-import com.android.internal.util.ConcurrentUtils;
import com.android.internal.util.function.pooled.PooledLambda;
import com.android.server.LocalServices;
import com.android.server.accessibility.AccessibilityManagerService;
@@ -65,6 +64,7 @@ import com.android.server.wm.WindowManagerInternal;
import java.util.ArrayList;
import java.util.Locale;
+import java.util.concurrent.Executor;
import java.util.function.Supplier;
/**
@@ -774,7 +774,8 @@ public class FullScreenMagnificationController implements
public FullScreenMagnificationController(@NonNull Context context,
@NonNull AccessibilityTraceManager traceManager, @NonNull Object lock,
@NonNull MagnificationInfoChangedCallback magnificationInfoChangedCallback,
- @NonNull MagnificationScaleProvider scaleProvider) {
+ @NonNull MagnificationScaleProvider scaleProvider,
+ @NonNull Executor backgroundExecutor) {
this(
new ControllerContext(
context,
@@ -785,7 +786,8 @@ public class FullScreenMagnificationController implements
lock,
magnificationInfoChangedCallback,
scaleProvider,
- /* thumbnailSupplier= */ null);
+ /* thumbnailSupplier= */ null,
+ backgroundExecutor);
}
/** Constructor for tests */
@@ -795,7 +797,8 @@ public class FullScreenMagnificationController implements
@NonNull Object lock,
@NonNull MagnificationInfoChangedCallback magnificationInfoChangedCallback,
@NonNull MagnificationScaleProvider scaleProvider,
- Supplier<MagnificationThumbnail> thumbnailSupplier) {
+ Supplier<MagnificationThumbnail> thumbnailSupplier,
+ @NonNull Executor backgroundExecutor) {
mControllerCtx = ctx;
mLock = lock;
mMainThreadId = mControllerCtx.getContext().getMainLooper().getThread().getId();
@@ -805,7 +808,7 @@ public class FullScreenMagnificationController implements
mDisplayManagerInternal = LocalServices.getService(DisplayManagerInternal.class);
mMagnificationThumbnailFeatureFlag = new MagnificationThumbnailFeatureFlag();
mMagnificationThumbnailFeatureFlag.addOnChangedListener(
- ConcurrentUtils.DIRECT_EXECUTOR, this::onMagnificationThumbnailFeatureFlagChanged);
+ backgroundExecutor, this::onMagnificationThumbnailFeatureFlagChanged);
if (thumbnailSupplier != null) {
mThumbnailSupplier = thumbnailSupplier;
} else {
diff --git a/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationController.java b/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationController.java
index 9a519fac2d26..9b1c20431b1a 100644
--- a/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationController.java
+++ b/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationController.java
@@ -23,7 +23,6 @@ import static android.provider.Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_
import static android.provider.Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_FULLSCREEN;
import static android.provider.Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_NONE;
import static android.provider.Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_WINDOW;
-import static android.view.accessibility.MagnificationAnimationCallback.STUB_ANIMATION_CALLBACK;
import static com.android.server.accessibility.AccessibilityManagerService.MAGNIFICATION_GESTURE_HANDLER_ID;
@@ -48,11 +47,12 @@ import android.view.accessibility.MagnificationAnimationCallback;
import com.android.internal.accessibility.util.AccessibilityStatsLogUtils;
import com.android.internal.annotations.GuardedBy;
import com.android.internal.annotations.VisibleForTesting;
-import com.android.internal.util.ConcurrentUtils;
import com.android.server.LocalServices;
import com.android.server.accessibility.AccessibilityManagerService;
import com.android.server.wm.WindowManagerInternal;
+import java.util.concurrent.Executor;
+
/**
* Handles all magnification controllers initialization, generic interactions,
* magnification mode transition and magnification switch UI show/hide logic
@@ -101,6 +101,8 @@ public class MagnificationController implements WindowMagnificationManager.Callb
/** Whether the platform supports window magnification feature. */
private final boolean mSupportWindowMagnification;
+ private final Executor mBackgroundExecutor;
+
@GuardedBy("mLock")
private final SparseIntArray mCurrentMagnificationModeArray = new SparseIntArray();
@GuardedBy("mLock")
@@ -142,11 +144,13 @@ public class MagnificationController implements WindowMagnificationManager.Callb
}
public MagnificationController(AccessibilityManagerService ams, Object lock,
- Context context, MagnificationScaleProvider scaleProvider) {
+ Context context, MagnificationScaleProvider scaleProvider,
+ Executor backgroundExecutor) {
mAms = ams;
mLock = lock;
mContext = context;
mScaleProvider = scaleProvider;
+ mBackgroundExecutor = backgroundExecutor;
LocalServices.getService(WindowManagerInternal.class)
.getAccessibilityController().setUiChangesForAccessibilityCallbacks(this);
mSupportWindowMagnification = context.getPackageManager().hasSystemFeature(
@@ -154,15 +158,15 @@ public class MagnificationController implements WindowMagnificationManager.Callb
mAlwaysOnMagnificationFeatureFlag = new AlwaysOnMagnificationFeatureFlag();
mAlwaysOnMagnificationFeatureFlag.addOnChangedListener(
- ConcurrentUtils.DIRECT_EXECUTOR, mAms::updateAlwaysOnMagnification);
+ mBackgroundExecutor, mAms::updateAlwaysOnMagnification);
}
@VisibleForTesting
public MagnificationController(AccessibilityManagerService ams, Object lock,
Context context, FullScreenMagnificationController fullScreenMagnificationController,
WindowMagnificationManager windowMagnificationManager,
- MagnificationScaleProvider scaleProvider) {
- this(ams, lock, context, scaleProvider);
+ MagnificationScaleProvider scaleProvider, Executor backgroundExecutor) {
+ this(ams, lock, context, scaleProvider, backgroundExecutor);
mFullScreenMagnificationController = fullScreenMagnificationController;
mWindowMagnificationMgr = windowMagnificationManager;
}
@@ -765,8 +769,14 @@ public class MagnificationController implements WindowMagnificationManager.Callb
public FullScreenMagnificationController getFullScreenMagnificationController() {
synchronized (mLock) {
if (mFullScreenMagnificationController == null) {
- mFullScreenMagnificationController = new FullScreenMagnificationController(mContext,
- mAms.getTraceManager(), mLock, this, mScaleProvider);
+ mFullScreenMagnificationController = new FullScreenMagnificationController(
+ mContext,
+ mAms.getTraceManager(),
+ mLock,
+ this,
+ mScaleProvider,
+ mBackgroundExecutor
+ );
}
}
return mFullScreenMagnificationController;
diff --git a/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationFeatureFlagBase.java b/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationFeatureFlagBase.java
index 2965887d8eb3..522f49d092da 100644
--- a/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationFeatureFlagBase.java
+++ b/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationFeatureFlagBase.java
@@ -80,6 +80,9 @@ abstract class MagnificationFeatureFlagBase {
*
* <p>{@see DeviceConfig#addOnPropertiesChangedListener(
* String, Executor, DeviceConfig.OnPropertiesChangedListener)}
+ *
+ * <p>Note: be weary of using a DIRECT_EXECUTOR here. You may run into deadlocks! (see
+ * b/281132229)
*/
@NonNull
public DeviceConfig.OnPropertiesChangedListener addOnChangedListener(
diff --git a/services/autofill/java/com/android/server/autofill/AutofillInlineSessionController.java b/services/autofill/java/com/android/server/autofill/AutofillInlineSessionController.java
index dd5e58a94d15..cac3c20ec3e0 100644
--- a/services/autofill/java/com/android/server/autofill/AutofillInlineSessionController.java
+++ b/services/autofill/java/com/android/server/autofill/AutofillInlineSessionController.java
@@ -206,4 +206,11 @@ final class AutofillInlineSessionController {
}
return false;
}
+
+ boolean isImeShowing() {
+ if (mSession != null) {
+ return mSession.isImeShowing();
+ }
+ return false;
+ }
}
diff --git a/services/autofill/java/com/android/server/autofill/AutofillInlineSuggestionsRequestSession.java b/services/autofill/java/com/android/server/autofill/AutofillInlineSuggestionsRequestSession.java
index a089f3ddcb86..468b9ab5710e 100644
--- a/services/autofill/java/com/android/server/autofill/AutofillInlineSuggestionsRequestSession.java
+++ b/services/autofill/java/com/android/server/autofill/AutofillInlineSuggestionsRequestSession.java
@@ -106,6 +106,8 @@ final class AutofillInlineSuggestionsRequestSession {
@GuardedBy("mLock")
private boolean mImeSessionInvalidated = false;
+ private boolean mImeShowing = false;
+
AutofillInlineSuggestionsRequestSession(
@NonNull InputMethodManagerInternal inputMethodManagerInternal, int userId,
@NonNull ComponentName componentName, @NonNull Handler handler, @NonNull Object lock,
@@ -320,6 +322,7 @@ final class AutofillInlineSuggestionsRequestSession {
if (mDestroyed) {
return;
}
+ mImeShowing = imeInputViewStarted;
if (mImeCurrentFieldId != null) {
boolean imeInputStartedChanged = (mImeInputStarted != imeInputStarted);
boolean imeInputViewStartedChanged = (mImeInputViewStarted != imeInputViewStarted);
@@ -364,6 +367,12 @@ final class AutofillInlineSuggestionsRequestSession {
}
}
+ boolean isImeShowing() {
+ synchronized (mLock) {
+ return !mDestroyed && mImeShowing;
+ }
+ }
+
/**
* Internal implementation of {@link IInlineSuggestionsRequestCallback}.
*/
diff --git a/services/autofill/java/com/android/server/autofill/Session.java b/services/autofill/java/com/android/server/autofill/Session.java
index 311300043b1b..c4c1750e0a63 100644
--- a/services/autofill/java/com/android/server/autofill/Session.java
+++ b/services/autofill/java/com/android/server/autofill/Session.java
@@ -4365,6 +4365,12 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState
return false;
}
+ if (mInlineSessionController.isImeShowing()) {
+ // IME is showing, fallback to normal suggestions UI
+ // Note: only work when inline suggestions supported
+ return false;
+ }
+
synchronized (mLock) {
if (mLastFillDialogTriggerIds == null
|| !ArrayUtils.contains(mLastFillDialogTriggerIds, filledId)) {
diff --git a/services/backup/TEST_MAPPING b/services/backup/TEST_MAPPING
index 4a8bd8e8c9e7..62706e7414b0 100644
--- a/services/backup/TEST_MAPPING
+++ b/services/backup/TEST_MAPPING
@@ -1,7 +1,13 @@
{
"presubmit": [
{
- "name": "CtsBackupTestCases"
+ "name": "CtsBackupTestCases",
+ "options": [
+ {
+ // Remove from presubmit until b/273295079 is resolved.
+ "exclude-filter": "android.backup.cts.BackupRestoreEventLoggerTest"
+ }
+ ]
}
],
"postsubmit": [
diff --git a/services/backup/java/com/android/server/backup/BackupManagerService.java b/services/backup/java/com/android/server/backup/BackupManagerService.java
index 7a3b1190cffa..ce9cdc2aeab5 100644
--- a/services/backup/java/com/android/server/backup/BackupManagerService.java
+++ b/services/backup/java/com/android/server/backup/BackupManagerService.java
@@ -813,7 +813,7 @@ public class BackupManagerService extends IBackupManager.Stub {
}
UserBackupManagerService userBackupManagerService =
getServiceForUserIfCallerHasPermission(
- userId, "hasBackupPassword()");
+ UserHandle.USER_SYSTEM, "hasBackupPassword()");
return userBackupManagerService != null && userBackupManagerService.hasBackupPassword();
}
@@ -1515,73 +1515,41 @@ public class BackupManagerService extends IBackupManager.Stub {
@VisibleForTesting
void dumpWithoutCheckingPermission(FileDescriptor fd, PrintWriter pw, String[] args) {
- int argIndex = 0;
-
- String op = nextArg(args, argIndex);
- argIndex++;
-
- if ("--help".equals(op)) {
- showDumpUsage(pw);
+ int userId = binderGetCallingUserId();
+ if (!isUserReadyForBackup(userId)) {
+ pw.println("Inactive");
return;
}
- if ("users".equals(op)) {
- pw.print(DUMP_RUNNING_USERS_MESSAGE);
- for (int i = 0; i < mUserServices.size(); i++) {
- UserBackupManagerService userBackupManagerService =
- getServiceForUserIfCallerHasPermission(mUserServices.keyAt(i),
- "dump()");
- if (userBackupManagerService != null) {
- pw.print(" " + userBackupManagerService.getUserId());
+
+ if (args != null) {
+ for (String arg : args) {
+ if ("-h".equals(arg)) {
+ pw.println("'dumpsys backup' optional arguments:");
+ pw.println(" -h : this help text");
+ pw.println(" a[gents] : dump information about defined backup agents");
+ pw.println(" transportclients : dump information about transport clients");
+ pw.println(" transportstats : dump transport statts");
+ pw.println(" users : dump the list of users for which backup service "
+ + "is running");
+ return;
+ } else if ("users".equals(arg.toLowerCase())) {
+ pw.print(DUMP_RUNNING_USERS_MESSAGE);
+ for (int i = 0; i < mUserServices.size(); i++) {
+ pw.print(" " + mUserServices.keyAt(i));
+ }
+ pw.println();
+ return;
}
}
- pw.println();
- return;
}
- if ("--user".equals(op)) {
- String userArg = nextArg(args, argIndex);
- argIndex++;
- if (userArg == null) {
- showDumpUsage(pw);
- return;
- }
- int userId = UserHandle.parseUserArg(userArg);
+
+ for (int i = 0; i < mUserServices.size(); i++) {
UserBackupManagerService userBackupManagerService =
- getServiceForUserIfCallerHasPermission(userId, "dump()");
+ getServiceForUserIfCallerHasPermission(mUserServices.keyAt(i), "dump()");
if (userBackupManagerService != null) {
userBackupManagerService.dump(fd, pw, args);
}
- return;
}
- if (op == null || "agents".startsWith(op) || "transportclients".equals(op)
- || "transportstats".equals(op)) {
- for (int i = 0; i < mUserServices.size(); i++) {
- UserBackupManagerService userBackupManagerService =
- getServiceForUserIfCallerHasPermission(mUserServices.keyAt(i), "dump()");
- if (userBackupManagerService != null) {
- userBackupManagerService.dump(fd, pw, args);
- }
- }
- return;
- }
-
- showDumpUsage(pw);
- }
-
- private String nextArg(String[] args, int argIndex) {
- if (argIndex >= args.length) {
- return null;
- }
- return args[argIndex];
- }
-
- private static void showDumpUsage(PrintWriter pw) {
- pw.println("'dumpsys backup' optional arguments:");
- pw.println(" --help : this help text");
- pw.println(" a[gents] : dump information about defined backup agents");
- pw.println(" transportclients : dump information about transport clients");
- pw.println(" transportstats : dump transport stats");
- pw.println(" users : dump the list of users for which backup service is running");
- pw.println(" --user <userId> : dump information for user userId");
}
/**
@@ -1651,7 +1619,14 @@ public class BackupManagerService extends IBackupManager.Stub {
/* caller */ "reportDelayedRestoreResult()");
if (userBackupManagerService != null) {
- userBackupManagerService.reportDelayedRestoreResult(packageName, results);
+ // Clear as the method binds to BackupTransport, which needs to happen from system
+ // process.
+ final long oldId = Binder.clearCallingIdentity();
+ try {
+ userBackupManagerService.reportDelayedRestoreResult(packageName, results);
+ } finally {
+ Binder.restoreCallingIdentity(oldId);
+ }
}
}
@@ -1686,7 +1661,7 @@ public class BackupManagerService extends IBackupManager.Stub {
* @param message A message to include in the exception if it is thrown.
*/
void enforceCallingPermissionOnUserId(@UserIdInt int userId, String message) {
- if (binderGetCallingUserId() != userId) {
+ if (Binder.getCallingUserHandle().getIdentifier() != userId) {
mContext.enforceCallingOrSelfPermission(
Manifest.permission.INTERACT_ACROSS_USERS_FULL, message);
}
diff --git a/services/backup/java/com/android/server/backup/UserBackupManagerService.java b/services/backup/java/com/android/server/backup/UserBackupManagerService.java
index b65681104527..995e557d8176 100644
--- a/services/backup/java/com/android/server/backup/UserBackupManagerService.java
+++ b/services/backup/java/com/android/server/backup/UserBackupManagerService.java
@@ -46,6 +46,7 @@ import android.app.IActivityManager;
import android.app.IBackupAgent;
import android.app.PendingIntent;
import android.app.backup.BackupAgent;
+import android.app.backup.BackupAnnotations;
import android.app.backup.BackupAnnotations.BackupDestination;
import android.app.backup.BackupManager;
import android.app.backup.BackupManagerMonitor;
@@ -2797,6 +2798,11 @@ public class UserBackupManagerService {
boolean includeSystem, boolean compress, boolean doKeyValue, String[] pkgList) {
mContext.enforceCallingPermission(android.Manifest.permission.BACKUP, "adbBackup");
+ final int callingUserHandle = UserHandle.getCallingUserId();
+ if (callingUserHandle != UserHandle.USER_SYSTEM) {
+ throw new IllegalStateException("Backup supported only for the device owner");
+ }
+
// Validate
if (!doAllApps) {
if (!includeShared) {
@@ -2967,6 +2973,11 @@ public class UserBackupManagerService {
public void adbRestore(ParcelFileDescriptor fd) {
mContext.enforceCallingPermission(android.Manifest.permission.BACKUP, "adbRestore");
+ final int callingUserHandle = UserHandle.getCallingUserId();
+ if (callingUserHandle != UserHandle.USER_SYSTEM) {
+ throw new IllegalStateException("Restore supported only for the device owner");
+ }
+
final long oldId = Binder.clearCallingIdentity();
try {
@@ -3056,7 +3067,8 @@ public class UserBackupManagerService {
/* caller */ "BMS.reportDelayedRestoreResult");
IBackupManagerMonitor monitor = transportClient.getBackupManagerMonitor();
- BackupManagerMonitorUtils.sendAgentLoggingResults(monitor, packageInfo, results);
+ BackupManagerMonitorUtils.sendAgentLoggingResults(monitor, packageInfo, results,
+ BackupAnnotations.OperationType.RESTORE);
} catch (NameNotFoundException | TransportNotAvailableException
| TransportNotRegisteredException | RemoteException e) {
Slog.w(TAG, "Failed to send delayed restore logs: " + e);
@@ -3075,7 +3087,7 @@ public class UserBackupManagerService {
"com.android.backupconfirm.BackupRestoreConfirmation");
confIntent.putExtra(FullBackup.CONF_TOKEN_INTENT_EXTRA, token);
confIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
- mContext.startActivityAsUser(confIntent, UserHandle.of(mUserId));
+ mContext.startActivityAsUser(confIntent, UserHandle.SYSTEM);
} catch (ActivityNotFoundException e) {
return false;
}
diff --git a/services/backup/java/com/android/server/backup/utils/BackupManagerMonitorUtils.java b/services/backup/java/com/android/server/backup/utils/BackupManagerMonitorUtils.java
index 57ad89b0a482..439b83687b8f 100644
--- a/services/backup/java/com/android/server/backup/utils/BackupManagerMonitorUtils.java
+++ b/services/backup/java/com/android/server/backup/utils/BackupManagerMonitorUtils.java
@@ -18,6 +18,7 @@ package com.android.server.backup.utils;
import static android.app.backup.BackupManagerMonitor.EXTRA_LOG_AGENT_LOGGING_RESULTS;
import static android.app.backup.BackupManagerMonitor.EXTRA_LOG_EVENT_PACKAGE_NAME;
+import static android.app.backup.BackupManagerMonitor.EXTRA_LOG_OPERATION_TYPE;
import static android.app.backup.BackupManagerMonitor.LOG_EVENT_CATEGORY_AGENT;
import static android.app.backup.BackupManagerMonitor.LOG_EVENT_ID_AGENT_LOGGING_RESULTS;
@@ -27,6 +28,7 @@ import static com.android.server.backup.BackupManagerService.TAG;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.app.IBackupAgent;
+import android.app.backup.BackupAnnotations.OperationType;
import android.app.backup.BackupManagerMonitor;
import android.app.backup.BackupRestoreEventLogger.DataTypeResult;
import android.app.backup.IBackupManagerMonitor;
@@ -122,9 +124,13 @@ public class BackupManagerMonitorUtils {
try {
AndroidFuture<List<DataTypeResult>> resultsFuture =
new AndroidFuture<>();
+ AndroidFuture<Integer> operationTypeFuture = new AndroidFuture<>();
agent.getLoggerResults(resultsFuture);
+ agent.getOperationType(operationTypeFuture);
return sendAgentLoggingResults(monitor, pkg,
- resultsFuture.get(AGENT_LOGGER_RESULTS_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS));
+ resultsFuture.get(AGENT_LOGGER_RESULTS_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS),
+ operationTypeFuture.get(AGENT_LOGGER_RESULTS_TIMEOUT_MILLIS,
+ TimeUnit.MILLISECONDS));
} catch (TimeoutException e) {
Slog.w(TAG, "Timeout while waiting to retrieve logging results from agent", e);
} catch (Exception e) {
@@ -134,10 +140,12 @@ public class BackupManagerMonitorUtils {
}
public static IBackupManagerMonitor sendAgentLoggingResults(
- @NonNull IBackupManagerMonitor monitor, PackageInfo pkg, List<DataTypeResult> results) {
+ @NonNull IBackupManagerMonitor monitor, PackageInfo pkg, List<DataTypeResult> results,
+ @OperationType int operationType) {
Bundle loggerResultsBundle = new Bundle();
loggerResultsBundle.putParcelableList(
EXTRA_LOG_AGENT_LOGGING_RESULTS, results);
+ loggerResultsBundle.putInt(EXTRA_LOG_OPERATION_TYPE, operationType);
return monitorEvent(
monitor,
LOG_EVENT_ID_AGENT_LOGGING_RESULTS,
diff --git a/services/companion/java/com/android/server/companion/virtual/SensorController.java b/services/companion/java/com/android/server/companion/virtual/SensorController.java
index 6d198de98490..fb99bff6698b 100644
--- a/services/companion/java/com/android/server/companion/virtual/SensorController.java
+++ b/services/companion/java/com/android/server/companion/virtual/SensorController.java
@@ -36,7 +36,6 @@ import com.android.server.LocalServices;
import com.android.server.sensors.SensorManagerInternal;
import java.io.PrintWriter;
-import java.util.Iterator;
import java.util.Map;
import java.util.Objects;
import java.util.concurrent.atomic.AtomicInteger;
@@ -53,19 +52,18 @@ public class SensorController {
private static AtomicInteger sNextDirectChannelHandle = new AtomicInteger(1);
- private final Object mLock;
+ private final Object mLock = new Object();
private final int mVirtualDeviceId;
@GuardedBy("mLock")
- private final Map<IBinder, SensorDescriptor> mSensorDescriptors = new ArrayMap<>();
+ private final ArrayMap<IBinder, SensorDescriptor> mSensorDescriptors = new ArrayMap<>();
@NonNull
private final SensorManagerInternal.RuntimeSensorCallback mRuntimeSensorCallback;
private final SensorManagerInternal mSensorManagerInternal;
private final VirtualDeviceManagerInternal mVdmInternal;
- public SensorController(@NonNull Object lock, int virtualDeviceId,
+ public SensorController(int virtualDeviceId,
@Nullable IVirtualSensorCallback virtualSensorCallback) {
- mLock = lock;
mVirtualDeviceId = virtualDeviceId;
mRuntimeSensorCallback = new RuntimeSensorCallbackWrapper(virtualSensorCallback);
mSensorManagerInternal = LocalServices.getService(SensorManagerInternal.class);
@@ -74,15 +72,10 @@ public class SensorController {
void close() {
synchronized (mLock) {
- final Iterator<Map.Entry<IBinder, SensorDescriptor>> iterator =
- mSensorDescriptors.entrySet().iterator();
- if (iterator.hasNext()) {
- final Map.Entry<IBinder, SensorDescriptor> entry = iterator.next();
- final IBinder token = entry.getKey();
- final SensorDescriptor sensorDescriptor = entry.getValue();
- iterator.remove();
- closeSensorDescriptorLocked(token, sensorDescriptor);
- }
+ mSensorDescriptors.values().forEach(
+ descriptor -> mSensorManagerInternal.removeRuntimeSensor(
+ descriptor.getHandle()));
+ mSensorDescriptors.clear();
}
}
@@ -111,19 +104,9 @@ public class SensorController {
throw new SensorCreationException("Received an invalid virtual sensor handle.");
}
- // The handle is valid from here, so ensure that all failures clean it up.
- final BinderDeathRecipient binderDeathRecipient;
- try {
- binderDeathRecipient = new BinderDeathRecipient(sensorToken);
- sensorToken.linkToDeath(binderDeathRecipient, /* flags= */ 0);
- } catch (RemoteException e) {
- mSensorManagerInternal.removeRuntimeSensor(handle);
- throw new SensorCreationException("Client died before sensor could be created.", e);
- }
-
synchronized (mLock) {
SensorDescriptor sensorDescriptor = new SensorDescriptor(
- handle, config.getType(), config.getName(), binderDeathRecipient);
+ handle, config.getType(), config.getName());
mSensorDescriptors.put(sensorToken, sensorDescriptor);
}
return handle;
@@ -150,17 +133,10 @@ public class SensorController {
if (sensorDescriptor == null) {
throw new IllegalArgumentException("Could not unregister sensor for given token");
}
- closeSensorDescriptorLocked(token, sensorDescriptor);
+ mSensorManagerInternal.removeRuntimeSensor(sensorDescriptor.getHandle());
}
}
- @GuardedBy("mLock")
- private void closeSensorDescriptorLocked(IBinder token, SensorDescriptor sensorDescriptor) {
- token.unlinkToDeath(sensorDescriptor.getDeathRecipient(), /* flags= */ 0);
- final int handle = sensorDescriptor.getHandle();
- mSensorManagerInternal.removeRuntimeSensor(handle);
- }
-
void dump(@NonNull PrintWriter fout) {
fout.println(" SensorController: ");
@@ -178,14 +154,14 @@ public class SensorController {
void addSensorForTesting(IBinder deviceToken, int handle, int type, String name) {
synchronized (mLock) {
mSensorDescriptors.put(deviceToken,
- new SensorDescriptor(handle, type, name, () -> {}));
+ new SensorDescriptor(handle, type, name));
}
}
@VisibleForTesting
Map<IBinder, SensorDescriptor> getSensorDescriptors() {
synchronized (mLock) {
- return mSensorDescriptors;
+ return new ArrayMap<>(mSensorDescriptors);
}
}
@@ -286,13 +262,11 @@ public class SensorController {
static final class SensorDescriptor {
private final int mHandle;
- private final IBinder.DeathRecipient mDeathRecipient;
private final int mType;
private final String mName;
- SensorDescriptor(int handle, int type, String name, IBinder.DeathRecipient deathRecipient) {
+ SensorDescriptor(int handle, int type, String name) {
mHandle = handle;
- mDeathRecipient = deathRecipient;
mType = type;
mName = name;
}
@@ -305,26 +279,6 @@ public class SensorController {
public String getName() {
return mName;
}
- public IBinder.DeathRecipient getDeathRecipient() {
- return mDeathRecipient;
- }
- }
-
- private final class BinderDeathRecipient implements IBinder.DeathRecipient {
- private final IBinder mSensorToken;
-
- BinderDeathRecipient(IBinder sensorToken) {
- mSensorToken = sensorToken;
- }
-
- @Override
- public void binderDied() {
- // All callers are expected to call {@link VirtualDevice#unregisterSensor} before
- // quitting, which removes this death recipient. If this is invoked, the remote end
- // died, or they disposed of the object without properly unregistering.
- Slog.e(TAG, "Virtual sensor controller binder died");
- unregisterSensor(mSensorToken);
- }
}
/** An internal exception that is thrown to indicate an error when opening a virtual sensor. */
diff --git a/services/companion/java/com/android/server/companion/virtual/VirtualDeviceImpl.java b/services/companion/java/com/android/server/companion/virtual/VirtualDeviceImpl.java
index de0f68ccd665..6b55d7ed4d56 100644
--- a/services/companion/java/com/android/server/companion/virtual/VirtualDeviceImpl.java
+++ b/services/companion/java/com/android/server/companion/virtual/VirtualDeviceImpl.java
@@ -266,8 +266,7 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub
mInputController = inputController;
}
if (sensorController == null) {
- mSensorController = new SensorController(
- mVirtualDeviceLock, mDeviceId, mParams.getVirtualSensorCallback());
+ mSensorController = new SensorController(mDeviceId, mParams.getVirtualSensorCallback());
} else {
mSensorController = sensorController;
}
diff --git a/services/core/java/com/android/server/adb/AdbDebuggingManager.java b/services/core/java/com/android/server/adb/AdbDebuggingManager.java
index 62a97dce8b53..6794f750c82d 100644
--- a/services/core/java/com/android/server/adb/AdbDebuggingManager.java
+++ b/services/core/java/com/android/server/adb/AdbDebuggingManager.java
@@ -16,7 +16,10 @@
package com.android.server.adb;
+import static android.os.InputConstants.DEFAULT_DISPATCHING_TIMEOUT_MILLIS;
+
import static com.android.internal.util.dump.DumpUtils.writeStringIfNotNull;
+import static com.android.server.adb.AdbService.ADBD;
import android.annotation.NonNull;
import android.annotation.Nullable;
@@ -58,6 +61,7 @@ import android.os.Looper;
import android.os.Message;
import android.os.SystemClock;
import android.os.SystemProperties;
+import android.os.SystemService;
import android.os.UserHandle;
import android.os.UserManager;
import android.provider.Settings;
@@ -99,6 +103,7 @@ import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import java.util.concurrent.TimeoutException;
import java.util.concurrent.atomic.AtomicBoolean;
/**
@@ -153,6 +158,10 @@ public class AdbDebuggingManager {
private static final String WIFI_PERSISTENT_GUID =
"persist.adb.wifi.guid";
private static final int PAIRING_CODE_LENGTH = 6;
+ /**
+ * The maximum time to wait for the adbd service to change state when toggling.
+ */
+ private static final long ADBD_STATE_CHANGE_TIMEOUT = DEFAULT_DISPATCHING_TIMEOUT_MILLIS;
private PairingThread mPairingThread = null;
// A list of keys connected via wifi
private final Set<String> mWifiConnectedKeys = new HashSet<>();
@@ -949,6 +958,31 @@ public class AdbDebuggingManager {
mWifiConnectedKeys.clear();
mAdbKeyStore.deleteKeyStore();
cancelJobToUpdateAdbKeyStore();
+ // Disconnect all active sessions unless the user opted out through Settings.
+ if (Settings.Global.getInt(mContentResolver,
+ Settings.Global.ADB_DISCONNECT_SESSIONS_ON_REVOKE, 1) == 1) {
+ // If adb is currently enabled, then toggle it off and back on to disconnect
+ // any existing sessions.
+ if (mAdbUsbEnabled) {
+ try {
+ SystemService.stop(ADBD);
+ SystemService.waitForState(ADBD, SystemService.State.STOPPED,
+ ADBD_STATE_CHANGE_TIMEOUT);
+ SystemService.start(ADBD);
+ SystemService.waitForState(ADBD, SystemService.State.RUNNING,
+ ADBD_STATE_CHANGE_TIMEOUT);
+ } catch (TimeoutException e) {
+ Slog.e(TAG, "Timeout occurred waiting for adbd to cycle: ", e);
+ // TODO(b/281758086): Display a dialog to the user to warn them
+ // of this state and direct them to manually toggle adb.
+ // If adbd fails to toggle within the timeout window, set adb to
+ // disabled to alert the user that further action is required if
+ // they want to continue using adb after revoking the grants.
+ Settings.Global.putInt(mContentResolver,
+ Settings.Global.ADB_ENABLED, 0);
+ }
+ }
+ }
break;
}
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index a4cd2780bec6..658e6649b46d 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -53,6 +53,10 @@ import static android.app.ActivityManagerInternal.OOM_ADJ_REASON_SYSTEM_INIT;
import static android.app.ActivityManagerInternal.OOM_ADJ_REASON_UI_VISIBILITY;
import static android.app.AppOpsManager.MODE_ALLOWED;
import static android.app.AppOpsManager.OP_NONE;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_BACKUP;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_INSTRUMENTATION;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_PERSISTENT;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_SYSTEM;
import static android.content.pm.ApplicationInfo.HIDDEN_API_ENFORCEMENT_DEFAULT;
import static android.content.pm.PackageManager.GET_SHARED_LIBRARY_FILES;
import static android.content.pm.PackageManager.MATCH_ALL;
@@ -158,10 +162,6 @@ import static com.android.server.am.ActivityManagerDebugConfig.TAG_AM;
import static com.android.server.am.ActivityManagerDebugConfig.TAG_WITH_CLASS_NAME;
import static com.android.server.am.MemoryStatUtil.hasMemcg;
import static com.android.server.am.ProcessList.ProcStartHandler;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_BACKUP;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_INSTRUMENTATION;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_PERSISTENT;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_SYSTEM;
import static com.android.server.net.NetworkPolicyManagerInternal.updateBlockedReasonsWithProcState;
import static com.android.server.pm.PackageManagerService.PLATFORM_PACKAGE_NAME;
import static com.android.server.pm.UserManagerInternal.USER_START_MODE_BACKGROUND;
@@ -5226,7 +5226,7 @@ public class ActivityManagerService extends IActivityManager.Stub
isActivityResultType)) {
boolean isChangeEnabled = CompatChanges.isChangeEnabled(
PendingIntent.BLOCK_MUTABLE_IMPLICIT_PENDING_INTENT,
- owningUid);
+ packageName, UserHandle.of(userId));
String resolvedType = resolvedTypes == null
|| i >= resolvedTypes.length ? null : resolvedTypes[i];
ActivityManagerUtils.logUnsafeIntentEvent(
@@ -17696,7 +17696,9 @@ public class ActivityManagerService extends IActivityManager.Stub
final ProcessRecord r = mPidsSelfLocked.valueAt(i);
processMemoryStates.add(new ProcessMemoryState(
r.uid, r.getPid(), r.processName, r.mState.getCurAdj(),
- r.mServices.hasForegroundServices()));
+ r.mServices.hasForegroundServices(),
+ r.mProfile.getCurrentHostingComponentTypes(),
+ r.mProfile.getHistoricalHostingComponentTypes()));
}
}
return processMemoryStates;
diff --git a/services/core/java/com/android/server/am/AppProfiler.java b/services/core/java/com/android/server/am/AppProfiler.java
index c687184a5a71..05e1370cd4c9 100644
--- a/services/core/java/com/android/server/am/AppProfiler.java
+++ b/services/core/java/com/android/server/am/AppProfiler.java
@@ -500,10 +500,11 @@ public class AppProfiler {
mLatestFrozenTimestamp = 0L;
mTotalFrozenDurations = 0L;
mNumOfFrozenApps = 0;
+ final int lruSize = mService.mProcessList.getLruSizeLOSP();
if (mCachedAppFrozenDurations == null
- || mCachedAppFrozenDurations.length < mCachedAppHighWatermark) {
+ || mCachedAppFrozenDurations.length < lruSize) {
mCachedAppFrozenDurations = new long[Math.max(
- mCachedAppHighWatermark, mService.mConstants.CUR_MAX_CACHED_PROCESSES)];
+ lruSize, mService.mConstants.CUR_MAX_CACHED_PROCESSES)];
}
mService.mProcessList.forEachLruProcessesLOSP(true, app -> {
if (app.mOptRecord.isFrozen()) {
diff --git a/services/core/java/com/android/server/am/ContentProviderHelper.java b/services/core/java/com/android/server/am/ContentProviderHelper.java
index 6015e5f02221..e744eee8b485 100644
--- a/services/core/java/com/android/server/am/ContentProviderHelper.java
+++ b/services/core/java/com/android/server/am/ContentProviderHelper.java
@@ -18,6 +18,7 @@ package com.android.server.am;
import static android.Manifest.permission.GET_ANY_PROVIDER_TYPE;
import static android.app.ActivityManagerInternal.OOM_ADJ_REASON_GET_PROVIDER;
import static android.app.ActivityManagerInternal.OOM_ADJ_REASON_REMOVE_PROVIDER;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_PROVIDER;
import static android.content.ContentProvider.isAuthorityRedirectedForCloneProfile;
import static android.os.Process.PROC_CHAR;
import static android.os.Process.PROC_OUT_LONG;
@@ -34,7 +35,6 @@ import static com.android.internal.util.FrameworkStatsLog.PROVIDER_ACQUISITION_E
import static com.android.internal.util.FrameworkStatsLog.PROVIDER_ACQUISITION_EVENT_REPORTED__PROC_START_TYPE__PROCESS_START_TYPE_WARM;
import static com.android.server.am.ActivityManagerDebugConfig.DEBUG_MU;
import static com.android.server.am.ActivityManagerService.TAG_MU;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_PROVIDER;
import android.annotation.Nullable;
import android.annotation.UserIdInt;
diff --git a/services/core/java/com/android/server/am/PendingIntentRecord.java b/services/core/java/com/android/server/am/PendingIntentRecord.java
index daf227c029a1..cb26c134f74a 100644
--- a/services/core/java/com/android/server/am/PendingIntentRecord.java
+++ b/services/core/java/com/android/server/am/PendingIntentRecord.java
@@ -46,7 +46,6 @@ import android.os.RemoteCallbackList;
import android.os.RemoteException;
import android.os.TransactionTooLargeException;
import android.os.UserHandle;
-import android.provider.DeviceConfig;
import android.util.ArrayMap;
import android.util.ArraySet;
import android.util.Slog;
@@ -68,9 +67,6 @@ public final class PendingIntentRecord extends IIntentSender.Stub {
@EnabledAfter(targetSdkVersion = Build.VERSION_CODES.TIRAMISU)
@Overridable
private static final long DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER = 244637991;
- private static final String ENABLE_DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER =
- "DefaultRescindBalPrivilegesFromPendingIntentSender__"
- + "enable_default_rescind_bal_privileges_from_pending_intent_sender";
public static final int FLAG_ACTIVITY_SENDER = 1 << 0;
public static final int FLAG_BROADCAST_SENDER = 1 << 1;
@@ -373,13 +369,6 @@ public final class PendingIntentRecord extends IIntentSender.Stub {
: BackgroundStartPrivileges.NONE;
}
- private static boolean isDefaultRescindBalPrivilegesFromPendingIntentSenderEnabled() {
- return DeviceConfig.getBoolean(
- DeviceConfig.NAMESPACE_WINDOW_MANAGER,
- ENABLE_DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER,
- false); // assume false if the property is unknown
- }
-
/**
* Default {@link BackgroundStartPrivileges} to be used if the intent sender has not made an
* explicit choice.
@@ -393,10 +382,9 @@ public final class PendingIntentRecord extends IIntentSender.Stub {
})
public static BackgroundStartPrivileges getDefaultBackgroundStartPrivileges(
int callingUid) {
- boolean isFlagEnabled = isDefaultRescindBalPrivilegesFromPendingIntentSenderEnabled();
boolean isChangeEnabledForApp = CompatChanges.isChangeEnabled(
DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER, callingUid);
- if (isFlagEnabled && isChangeEnabledForApp) {
+ if (isChangeEnabledForApp) {
return BackgroundStartPrivileges.ALLOW_FGS;
} else {
return BackgroundStartPrivileges.ALLOW_BAL;
diff --git a/services/core/java/com/android/server/am/ProcessProfileRecord.java b/services/core/java/com/android/server/am/ProcessProfileRecord.java
index 4c15308a574e..5ad49a47a012 100644
--- a/services/core/java/com/android/server/am/ProcessProfileRecord.java
+++ b/services/core/java/com/android/server/am/ProcessProfileRecord.java
@@ -17,9 +17,10 @@
package com.android.server.am;
import static android.app.ActivityManager.PROCESS_STATE_NONEXISTENT;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_EMPTY;
-import android.annotation.IntDef;
import android.app.IApplicationThread;
+import android.app.ProcessMemoryState.HostingComponentType;
import android.content.pm.ApplicationInfo;
import android.os.Debug;
import android.os.SystemClock;
@@ -42,88 +43,6 @@ import java.util.concurrent.atomic.AtomicLong;
* Profiling info of the process, such as PSS, cpu, etc.
*/
final class ProcessProfileRecord {
- // Keep below types in sync with the HostingComponentType in the atoms.proto.
- /**
- * The type of the component this process is hosting;
- * this means not hosting any components (cached).
- */
- static final int HOSTING_COMPONENT_TYPE_EMPTY = 0x0;
-
- /**
- * The type of the component this process is hosting;
- * this means it's a system process.
- */
- static final int HOSTING_COMPONENT_TYPE_SYSTEM = 0x00000001;
-
- /**
- * The type of the component this process is hosting;
- * this means it's a persistent process.
- */
- static final int HOSTING_COMPONENT_TYPE_PERSISTENT = 0x00000002;
-
- /**
- * The type of the component this process is hosting;
- * this means it's hosting a backup/restore agent.
- */
- static final int HOSTING_COMPONENT_TYPE_BACKUP = 0x00000004;
-
- /**
- * The type of the component this process is hosting;
- * this means it's hosting an instrumentation.
- */
- static final int HOSTING_COMPONENT_TYPE_INSTRUMENTATION = 0x00000008;
-
- /**
- * The type of the component this process is hosting;
- * this means it's hosting an activity.
- */
- static final int HOSTING_COMPONENT_TYPE_ACTIVITY = 0x00000010;
-
- /**
- * The type of the component this process is hosting;
- * this means it's hosting a broadcast receiver.
- */
- static final int HOSTING_COMPONENT_TYPE_BROADCAST_RECEIVER = 0x00000020;
-
- /**
- * The type of the component this process is hosting;
- * this means it's hosting a content provider.
- */
- static final int HOSTING_COMPONENT_TYPE_PROVIDER = 0x00000040;
-
- /**
- * The type of the component this process is hosting;
- * this means it's hosting a started service.
- */
- static final int HOSTING_COMPONENT_TYPE_STARTED_SERVICE = 0x00000080;
-
- /**
- * The type of the component this process is hosting;
- * this means it's hosting a foreground service.
- */
- static final int HOSTING_COMPONENT_TYPE_FOREGROUND_SERVICE = 0x00000100;
-
- /**
- * The type of the component this process is hosting;
- * this means it's being bound via a service binding.
- */
- static final int HOSTING_COMPONENT_TYPE_BOUND_SERVICE = 0x00000200;
-
- @IntDef(flag = true, prefix = { "HOSTING_COMPONENT_TYPE_" }, value = {
- HOSTING_COMPONENT_TYPE_EMPTY,
- HOSTING_COMPONENT_TYPE_SYSTEM,
- HOSTING_COMPONENT_TYPE_PERSISTENT,
- HOSTING_COMPONENT_TYPE_BACKUP,
- HOSTING_COMPONENT_TYPE_INSTRUMENTATION,
- HOSTING_COMPONENT_TYPE_ACTIVITY,
- HOSTING_COMPONENT_TYPE_BROADCAST_RECEIVER,
- HOSTING_COMPONENT_TYPE_PROVIDER,
- HOSTING_COMPONENT_TYPE_STARTED_SERVICE,
- HOSTING_COMPONENT_TYPE_FOREGROUND_SERVICE,
- HOSTING_COMPONENT_TYPE_BOUND_SERVICE,
- })
- @interface HostingComponentType {}
-
final ProcessRecord mApp;
private final ActivityManagerService mService;
diff --git a/services/core/java/com/android/server/am/ProcessServiceRecord.java b/services/core/java/com/android/server/am/ProcessServiceRecord.java
index 53fa4f1b2ac2..81d0b6ac700b 100644
--- a/services/core/java/com/android/server/am/ProcessServiceRecord.java
+++ b/services/core/java/com/android/server/am/ProcessServiceRecord.java
@@ -16,8 +16,8 @@
package com.android.server.am;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_BOUND_SERVICE;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_FOREGROUND_SERVICE;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_BOUND_SERVICE;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_FOREGROUND_SERVICE;
import android.app.ActivityManager;
import android.content.Context;
diff --git a/services/core/java/com/android/server/am/ProcessStateRecord.java b/services/core/java/com/android/server/am/ProcessStateRecord.java
index ab71acd5f21d..db341d253818 100644
--- a/services/core/java/com/android/server/am/ProcessStateRecord.java
+++ b/services/core/java/com/android/server/am/ProcessStateRecord.java
@@ -19,11 +19,11 @@ package com.android.server.am;
import static android.app.ActivityManager.PROCESS_CAPABILITY_NONE;
import static android.app.ActivityManager.PROCESS_STATE_NONEXISTENT;
import static android.app.ActivityManagerInternal.OOM_ADJ_REASON_UI_VISIBILITY;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_ACTIVITY;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_BROADCAST_RECEIVER;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_STARTED_SERVICE;
import static com.android.server.am.ActivityManagerDebugConfig.DEBUG_OOM_ADJ;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_ACTIVITY;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_BROADCAST_RECEIVER;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_STARTED_SERVICE;
import static com.android.server.am.ProcessRecord.TAG;
import android.annotation.ElapsedRealtimeLong;
diff --git a/services/core/java/com/android/server/am/ServiceRecord.java b/services/core/java/com/android/server/am/ServiceRecord.java
index 6551db9ad783..b22ece30c386 100644
--- a/services/core/java/com/android/server/am/ServiceRecord.java
+++ b/services/core/java/com/android/server/am/ServiceRecord.java
@@ -18,6 +18,7 @@ package com.android.server.am;
import static android.app.PendingIntent.FLAG_IMMUTABLE;
import static android.app.PendingIntent.FLAG_UPDATE_CURRENT;
+import static android.app.ProcessMemoryState.HOSTING_COMPONENT_TYPE_BOUND_SERVICE;
import static android.os.PowerExemptionManager.REASON_DENIED;
import static android.os.Process.INVALID_UID;
@@ -25,7 +26,6 @@ import static com.android.internal.util.Preconditions.checkArgument;
import static com.android.server.am.ActivityManagerDebugConfig.DEBUG_FOREGROUND_SERVICE;
import static com.android.server.am.ActivityManagerDebugConfig.TAG_AM;
import static com.android.server.am.ActivityManagerDebugConfig.TAG_WITH_CLASS_NAME;
-import static com.android.server.am.ProcessProfileRecord.HOSTING_COMPONENT_TYPE_BOUND_SERVICE;
import android.annotation.NonNull;
import android.annotation.Nullable;
diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java
index 31403871ac90..a72187399acd 100644
--- a/services/core/java/com/android/server/audio/AudioService.java
+++ b/services/core/java/com/android/server/audio/AudioService.java
@@ -10605,7 +10605,7 @@ public class AudioService extends IAudioService.Stub
new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_MEDIA).build(), true);
final int nativeDeviceType;
final AudioDeviceAttributes ada;
- if (devices.isEmpty()) {
+ if (!devices.isEmpty()) {
ada = devices.get(0);
nativeDeviceType = ada.getInternalType();
} else {
diff --git a/services/core/java/com/android/server/audio/SoundDoseHelper.java b/services/core/java/com/android/server/audio/SoundDoseHelper.java
index 4aa256d3ce74..01af3a838597 100644
--- a/services/core/java/com/android/server/audio/SoundDoseHelper.java
+++ b/services/core/java/com/android/server/audio/SoundDoseHelper.java
@@ -174,9 +174,6 @@ public class SoundDoseHelper {
*/
private final SparseIntArray mSafeMediaVolumeDevices = new SparseIntArray();
- /** Used for testing to enforce safe media on all devices */
- private boolean mForceSafeMediaOnAllDevices = false;
-
// mMusicActiveMs is the cumulative time of music activity since safe volume was disabled.
// When this time reaches UNSAFE_VOLUME_MUSIC_ACTIVE_MS_MAX, the safe media volume is re-enabled
// automatically. mMusicActiveMs is rounded to a multiple of MUSIC_ACTIVE_POLL_PERIOD_MS.
@@ -430,12 +427,6 @@ public class SoundDoseHelper {
return;
}
- synchronized (mSafeMediaVolumeStateLock) {
- mSafeMediaVolumeState = SAFE_MEDIA_VOLUME_ACTIVE;
- mMusicActiveMs = 0;
- saveMusicActiveMs();
- }
-
synchronized (mCsdStateLock) {
mLastMomentaryExposureTimeMs = MOMENTARY_EXPOSURE_TIMEOUT_UNINITIALIZED;
}
@@ -475,8 +466,6 @@ public class SoundDoseHelper {
} catch (RemoteException e) {
Log.e(TAG, "Exception while forcing CSD computation on all devices", e);
}
-
- mForceSafeMediaOnAllDevices = computeCsdOnAllDevices;
}
boolean isCsdEnabled() {
@@ -559,7 +548,7 @@ public class SoundDoseHelper {
private boolean checkSafeMediaVolume_l(int streamType, int index, int device) {
return (mSafeMediaVolumeState == SAFE_MEDIA_VOLUME_ACTIVE)
&& (AudioService.mStreamVolumeAlias[streamType] == AudioSystem.STREAM_MUSIC)
- && (safeDevicesContains(device) || mForceSafeMediaOnAllDevices)
+ && safeDevicesContains(device)
&& (index > safeMediaVolumeIndex(device));
}
diff --git a/services/core/java/com/android/server/biometrics/AuthService.java b/services/core/java/com/android/server/biometrics/AuthService.java
index acfc2a72d503..f8cb9e98c714 100644
--- a/services/core/java/com/android/server/biometrics/AuthService.java
+++ b/services/core/java/com/android/server/biometrics/AuthService.java
@@ -342,10 +342,9 @@ public class AuthService extends SystemService {
public void registerEnabledOnKeyguardCallback(
IBiometricEnabledOnKeyguardCallback callback) throws RemoteException {
checkInternalPermission();
- final int callingUserId = UserHandle.getCallingUserId();
final long identity = Binder.clearCallingIdentity();
try {
- mBiometricService.registerEnabledOnKeyguardCallback(callback, callingUserId);
+ mBiometricService.registerEnabledOnKeyguardCallback(callback);
} finally {
Binder.restoreCallingIdentity(identity);
}
diff --git a/services/core/java/com/android/server/biometrics/BiometricService.java b/services/core/java/com/android/server/biometrics/BiometricService.java
index f44d14bfa12c..0ab74b8580c1 100644
--- a/services/core/java/com/android/server/biometrics/BiometricService.java
+++ b/services/core/java/com/android/server/biometrics/BiometricService.java
@@ -31,6 +31,7 @@ import android.app.trust.ITrustManager;
import android.content.ContentResolver;
import android.content.Context;
import android.content.pm.PackageManager;
+import android.content.pm.UserInfo;
import android.database.ContentObserver;
import android.hardware.biometrics.BiometricAuthenticator;
import android.hardware.biometrics.BiometricConstants;
@@ -58,6 +59,7 @@ import android.os.Looper;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.UserHandle;
+import android.os.UserManager;
import android.provider.Settings;
import android.security.KeyStore;
import android.text.TextUtils;
@@ -103,6 +105,7 @@ public class BiometricService extends SystemService {
private final Random mRandom = new Random();
@NonNull private final Supplier<Long> mRequestCounter;
@NonNull private final BiometricContext mBiometricContext;
+ private final UserManager mUserManager;
@VisibleForTesting
IStatusBarService mStatusBarService;
@@ -692,14 +695,18 @@ public class BiometricService extends SystemService {
@android.annotation.EnforcePermission(android.Manifest.permission.USE_BIOMETRIC_INTERNAL)
@Override // Binder call
public void registerEnabledOnKeyguardCallback(
- IBiometricEnabledOnKeyguardCallback callback, int callingUserId) {
+ IBiometricEnabledOnKeyguardCallback callback) {
super.registerEnabledOnKeyguardCallback_enforcePermission();
mEnabledOnKeyguardCallbacks.add(new EnabledOnKeyguardCallback(callback));
+ final List<UserInfo> aliveUsers = mUserManager.getAliveUsers();
try {
- callback.onChanged(mSettingObserver.getEnabledOnKeyguard(callingUserId),
- callingUserId);
+ for (UserInfo userInfo: aliveUsers) {
+ final int userId = userInfo.id;
+ callback.onChanged(mSettingObserver.getEnabledOnKeyguard(userId),
+ userId);
+ }
} catch (RemoteException e) {
Slog.w(TAG, "Remote exception", e);
}
@@ -1014,6 +1021,10 @@ public class BiometricService extends SystemService {
public BiometricContext getBiometricContext(Context context) {
return BiometricContext.getInstance(context);
}
+
+ public UserManager getUserManager(Context context) {
+ return context.getSystemService(UserManager.class);
+ }
}
/**
@@ -1041,6 +1052,7 @@ public class BiometricService extends SystemService {
mEnabledOnKeyguardCallbacks);
mRequestCounter = mInjector.getRequestGenerator();
mBiometricContext = injector.getBiometricContext(context);
+ mUserManager = injector.getUserManager(context);
try {
injector.getActivityManagerService().registerUserSwitchObserver(
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/Fingerprint21UdfpsMock.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/Fingerprint21UdfpsMock.java
index 5e6ebf9d170c..c1a9370b5423 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/Fingerprint21UdfpsMock.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/Fingerprint21UdfpsMock.java
@@ -443,6 +443,11 @@ public class Fingerprint21UdfpsMock extends Fingerprint21 implements TrustManage
}
@Override
+ public void onIsActiveUnlockRunningChanged(boolean isRunning, int userId) {
+
+ }
+
+ @Override
@NonNull
public List<FingerprintSensorPropertiesInternal> getSensorProperties() {
final List<FingerprintSensorPropertiesInternal> properties = new ArrayList<>();
diff --git a/services/core/java/com/android/server/camera/CameraServiceProxy.java b/services/core/java/com/android/server/camera/CameraServiceProxy.java
index e8af840afe6e..0315352be133 100644
--- a/services/core/java/com/android/server/camera/CameraServiceProxy.java
+++ b/services/core/java/com/android/server/camera/CameraServiceProxy.java
@@ -244,12 +244,13 @@ public class CameraServiceProxy extends SystemService
public String mUserTag;
public int mVideoStabilizationMode;
public final long mLogId;
+ public final int mSessionIndex;
private long mDurationOrStartTimeMs; // Either start time, or duration once completed
CameraUsageEvent(String cameraId, int facing, String clientName, int apiLevel,
boolean isNdk, int action, int latencyMs, int operatingMode, boolean deviceError,
- long logId) {
+ long logId, int sessionIdx) {
mCameraId = cameraId;
mCameraFacing = facing;
mClientName = clientName;
@@ -262,6 +263,7 @@ public class CameraServiceProxy extends SystemService
mOperatingMode = operatingMode;
mDeviceError = deviceError;
mLogId = logId;
+ mSessionIndex = sessionIdx;
}
public void markCompleted(int internalReconfigure, long requestCount,
@@ -844,7 +846,8 @@ public class CameraServiceProxy extends SystemService
+ ", streamCount is " + streamCount
+ ", userTag is " + e.mUserTag
+ ", videoStabilizationMode " + e.mVideoStabilizationMode
- + ", logId " + e.mLogId);
+ + ", logId " + e.mLogId
+ + ", sessionIndex " + e.mSessionIndex);
}
// Convert from CameraStreamStats to CameraStreamProto
CameraStreamProto[] streamProtos = new CameraStreamProto[MAX_STREAM_STATISTICS];
@@ -904,7 +907,7 @@ public class CameraServiceProxy extends SystemService
MessageNano.toByteArray(streamProtos[2]),
MessageNano.toByteArray(streamProtos[3]),
MessageNano.toByteArray(streamProtos[4]),
- e.mUserTag, e.mVideoStabilizationMode, e.mLogId);
+ e.mUserTag, e.mVideoStabilizationMode, e.mLogId, e.mSessionIndex);
}
}
@@ -1094,6 +1097,7 @@ public class CameraServiceProxy extends SystemService
String userTag = cameraState.getUserTag();
int videoStabilizationMode = cameraState.getVideoStabilizationMode();
long logId = cameraState.getLogId();
+ int sessionIdx = cameraState.getSessionIndex();
synchronized(mLock) {
// Update active camera list and notify NFC if necessary
boolean wasEmpty = mActiveCameraUsage.isEmpty();
@@ -1115,7 +1119,7 @@ public class CameraServiceProxy extends SystemService
CameraUsageEvent openEvent = new CameraUsageEvent(
cameraId, facing, clientName, apiLevel, isNdk,
FrameworkStatsLog.CAMERA_ACTION_EVENT__ACTION__OPEN,
- latencyMs, sessionType, deviceError, logId);
+ latencyMs, sessionType, deviceError, logId, sessionIdx);
mCameraUsageHistory.add(openEvent);
break;
case CameraSessionStats.CAMERA_STATE_ACTIVE:
@@ -1142,7 +1146,7 @@ public class CameraServiceProxy extends SystemService
CameraUsageEvent newEvent = new CameraUsageEvent(
cameraId, facing, clientName, apiLevel, isNdk,
FrameworkStatsLog.CAMERA_ACTION_EVENT__ACTION__SESSION,
- latencyMs, sessionType, deviceError, logId);
+ latencyMs, sessionType, deviceError, logId, sessionIdx);
CameraUsageEvent oldEvent = mActiveCameraUsage.put(cameraId, newEvent);
if (oldEvent != null) {
Slog.w(TAG, "Camera " + cameraId + " was already marked as active");
@@ -1186,7 +1190,7 @@ public class CameraServiceProxy extends SystemService
CameraUsageEvent closeEvent = new CameraUsageEvent(
cameraId, facing, clientName, apiLevel, isNdk,
FrameworkStatsLog.CAMERA_ACTION_EVENT__ACTION__CLOSE,
- latencyMs, sessionType, deviceError, logId);
+ latencyMs, sessionType, deviceError, logId, sessionIdx);
mCameraUsageHistory.add(closeEvent);
}
diff --git a/services/core/java/com/android/server/inputmethod/InputMethodUtils.java b/services/core/java/com/android/server/inputmethod/InputMethodUtils.java
index 17536fcb820e..c97d8e21eef1 100644
--- a/services/core/java/com/android/server/inputmethod/InputMethodUtils.java
+++ b/services/core/java/com/android/server/inputmethod/InputMethodUtils.java
@@ -194,8 +194,8 @@ final class InputMethodUtils {
int uid, String packageName) {
// PackageManagerInternal#getPackageUid() doesn't check MATCH_INSTANT/MATCH_APEX as of
// writing. So setting 0 should be fine.
- return packageManagerInternal.getPackageUid(packageName, 0 /* flags */,
- UserHandle.getUserId(uid)) == uid;
+ return packageManagerInternal.isSameApp(packageName, /* flags= */ 0, uid,
+ UserHandle.getUserId(uid));
}
/**
diff --git a/services/core/java/com/android/server/locales/LocaleManagerService.java b/services/core/java/com/android/server/locales/LocaleManagerService.java
index 2d4066144a7f..d4578dc1f74a 100644
--- a/services/core/java/com/android/server/locales/LocaleManagerService.java
+++ b/services/core/java/com/android/server/locales/LocaleManagerService.java
@@ -103,8 +103,8 @@ public class LocaleManagerService extends SystemService {
private final PackageMonitor mPackageMonitor;
private final Object mWriteLock = new Object();
- // TODO(b/262713398): Set to false when stable
- public static final boolean DEBUG = true;
+
+ public static final boolean DEBUG = false;
public LocaleManagerService(Context context) {
super(context);
@@ -565,7 +565,6 @@ public class LocaleManagerService extends SystemService {
*/
public void setOverrideLocaleConfig(@NonNull String appPackageName, @UserIdInt int userId,
@Nullable LocaleConfig localeConfig) throws IllegalArgumentException {
- // TODO(b/262713398): Remove when stable
if (!SystemProperties.getBoolean(PROP_DYNAMIC_LOCALES_CHANGE, true)) {
return;
}
@@ -747,7 +746,6 @@ public class LocaleManagerService extends SystemService {
@Nullable
public LocaleConfig getOverrideLocaleConfig(@NonNull String appPackageName,
@UserIdInt int userId) {
- // TODO(b/262713398): Remove when stable
if (!SystemProperties.getBoolean(PROP_DYNAMIC_LOCALES_CHANGE, true)) {
return null;
}
@@ -850,7 +848,6 @@ public class LocaleManagerService extends SystemService {
@NonNull
private File getXmlFileNameForUser(@NonNull String appPackageName, @UserIdInt int userId) {
- // TODO(b/262752965): use per-package data directory
final File dir = new File(Environment.getDataSystemCeDirectory(userId), LOCALE_CONFIGS);
return new File(dir, appPackageName + SUFFIX_FILE_NAME);
}
diff --git a/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java b/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java
index 20d7dfab6179..cac22a6b8b20 100644
--- a/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java
+++ b/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java
@@ -915,7 +915,7 @@ class MediaRouter2ServiceImpl {
if (!TextUtils.equals(manager.mLastSessionCreationRequest.mRoute.getId(),
route.getId())) {
// When media router has no permission
- if (!routerRecord.mHasModifyAudioRoutingPermission
+ if (!routerRecord.hasSystemRoutingPermission()
&& manager.mLastSessionCreationRequest.mRoute.isSystemRoute()
&& route.isSystemRoute()) {
route = manager.mLastSessionCreationRequest.mRoute;
@@ -929,9 +929,16 @@ class MediaRouter2ServiceImpl {
}
manager.mLastSessionCreationRequest = null;
} else {
- if (route.isSystemRoute() && !routerRecord.mHasModifyAudioRoutingPermission
- && !TextUtils.equals(route.getId(),
- routerRecord.mUserRecord.mHandler.mSystemProvider.getDefaultRoute().getId())) {
+ if (route.isSystemRoute()
+ && !routerRecord.hasSystemRoutingPermission()
+ && !TextUtils.equals(
+ route.getId(),
+ routerRecord
+ .mUserRecord
+ .mHandler
+ .mSystemProvider
+ .getDefaultRoute()
+ .getId())) {
Slog.w(TAG, "MODIFY_AUDIO_ROUTING permission is required to transfer to"
+ route);
routerRecord.mUserRecord.mHandler.notifySessionCreationFailedToRouter(
@@ -1007,7 +1014,8 @@ class MediaRouter2ServiceImpl {
String defaultRouteId =
routerRecord.mUserRecord.mHandler.mSystemProvider.getDefaultRoute().getId();
- if (route.isSystemRoute() && !routerRecord.mHasModifyAudioRoutingPermission
+ if (route.isSystemRoute()
+ && !routerRecord.hasSystemRoutingPermission()
&& !TextUtils.equals(route.getId(), defaultRouteId)) {
routerRecord.mUserRecord.mHandler.sendMessage(
obtainMessage(UserHandler::notifySessionCreationFailedToRouter,
@@ -1523,6 +1531,14 @@ class MediaRouter2ServiceImpl {
mRouterId = mNextRouterOrManagerId.getAndIncrement();
}
+ /**
+ * Returns whether the corresponding router has permission to query and control system
+ * routes.
+ */
+ public boolean hasSystemRoutingPermission() {
+ return mHasModifyAudioRoutingPermission;
+ }
+
public void dispose() {
mRouter.asBinder().unlinkToDeath(this, 0);
}
@@ -1543,12 +1559,40 @@ class MediaRouter2ServiceImpl {
pw.println(indent + "mPid=" + mPid);
pw.println(indent + "mHasConfigureWifiDisplayPermission="
+ mHasConfigureWifiDisplayPermission);
- pw.println(indent + "mHasModifyAudioRoutingPermission="
- + mHasModifyAudioRoutingPermission);
+ pw.println(indent + "hasSystemRoutingPermission=" + hasSystemRoutingPermission());
pw.println(indent + "mRouterId=" + mRouterId);
mDiscoveryPreference.dump(pw, indent);
}
+
+ /**
+ * Sends the corresponding router an {@link
+ * android.media.MediaRouter2.RouteCallback#onRoutesUpdated update} for the given {@code
+ * routes}.
+ *
+ * <p>Only the routes that are visible to the router are sent as part of the update.
+ */
+ public void notifyRoutesUpdated(List<MediaRoute2Info> routes) {
+ try {
+ mRouter.notifyRoutesUpdated(getVisibleRoutes(routes));
+ } catch (RemoteException ex) {
+ Slog.w(TAG, "Failed to notify routes updated. Router probably died.", ex);
+ }
+ }
+
+ /**
+ * Returns a filtered copy of {@code routes} that contains only the routes that are {@link
+ * MediaRoute2Info#isVisibleTo visible} to the router corresponding to this record.
+ */
+ private List<MediaRoute2Info> getVisibleRoutes(@NonNull List<MediaRoute2Info> routes) {
+ List<MediaRoute2Info> filteredRoutes = new ArrayList<>();
+ for (MediaRoute2Info route : routes) {
+ if (route.isVisibleTo(mPackageName)) {
+ filteredRoutes.add(route);
+ }
+ }
+ return filteredRoutes;
+ }
}
final class ManagerRecord implements IBinder.DeathRecipient {
@@ -1971,7 +2015,7 @@ class MediaRouter2ServiceImpl {
@NonNull RouterRecord routerRecord, @NonNull ManagerRecord managerRecord,
@NonNull RoutingSessionInfo oldSession, @NonNull MediaRoute2Info route) {
try {
- if (route.isSystemRoute() && !routerRecord.mHasModifyAudioRoutingPermission) {
+ if (route.isSystemRoute() && !routerRecord.hasSystemRoutingPermission()) {
// The router lacks permission to modify system routing, so we hide system
// route info from them.
route = mSystemProvider.getDefaultRoute();
@@ -2190,7 +2234,7 @@ class MediaRouter2ServiceImpl {
mSessionToRouterMap.put(sessionInfo.getId(), matchingRequest.mRouterRecord);
if (sessionInfo.isSystemSession()
- && !matchingRequest.mRouterRecord.mHasModifyAudioRoutingPermission) {
+ && !matchingRequest.mRouterRecord.hasSystemRoutingPermission()) {
// The router lacks permission to modify system routing, so we hide system routing
// session info from them.
sessionInfo = mSystemProvider.getDefaultSessionInfo();
@@ -2324,24 +2368,6 @@ class MediaRouter2ServiceImpl {
}
}
- private List<IMediaRouter2> getRouters(boolean hasModifyAudioRoutingPermission) {
- final List<IMediaRouter2> routers = new ArrayList<>();
- MediaRouter2ServiceImpl service = mServiceRef.get();
- if (service == null) {
- return routers;
- }
- synchronized (service.mLock) {
- for (RouterRecord routerRecord : mUserRecord.mRouterRecords) {
- if (hasModifyAudioRoutingPermission
- == routerRecord.mHasModifyAudioRoutingPermission) {
- routers.add(routerRecord.mRouter);
- }
- routers.add(routerRecord.mRouter);
- }
- }
- return routers;
- }
-
private List<IMediaRouter2Manager> getManagers() {
final List<IMediaRouter2Manager> managers = new ArrayList<>();
MediaRouter2ServiceImpl service = mServiceRef.get();
@@ -2375,7 +2401,7 @@ class MediaRouter2ServiceImpl {
synchronized (service.mLock) {
for (RouterRecord routerRecord : mUserRecord.mRouterRecords) {
if (hasModifyAudioRoutingPermission
- == routerRecord.mHasModifyAudioRoutingPermission) {
+ == routerRecord.hasSystemRoutingPermission()) {
routerRecords.add(routerRecord);
}
}
@@ -2408,7 +2434,7 @@ class MediaRouter2ServiceImpl {
}
RoutingSessionInfo currentSystemSessionInfo;
- if (routerRecord.mHasModifyAudioRoutingPermission) {
+ if (routerRecord.hasSystemRoutingPermission()) {
if (systemProviderInfo != null) {
currentRoutes.addAll(systemProviderInfo.getRoutes());
} else {
@@ -2436,34 +2462,9 @@ class MediaRouter2ServiceImpl {
private static void notifyRoutesUpdatedToRouterRecords(
@NonNull List<RouterRecord> routerRecords,
@NonNull List<MediaRoute2Info> routes) {
- for (RouterRecord routerRecord: routerRecords) {
- List<MediaRoute2Info> filteredRoutes = getFilteredRoutesForPackageName(routes,
- routerRecord.mPackageName);
- try {
- routerRecord.mRouter.notifyRoutesUpdated(filteredRoutes);
- } catch (RemoteException ex) {
- Slog.w(TAG, "Failed to notify routes updated. Router probably died.", ex);
- }
- }
- }
-
- /**
- * Filters list of routes to return only public routes or routes provided by
- * the same package name or routes containing this package name in its allow list.
- * @param routes initial list of routes to be filtered.
- * @param packageName router's package name to filter routes for it.
- * @return only the routes that this package name is allowed to see.
- */
- private static List<MediaRoute2Info> getFilteredRoutesForPackageName(
- @NonNull List<MediaRoute2Info> routes,
- @NonNull String packageName) {
- List<MediaRoute2Info> filteredRoutes = new ArrayList<>();
- for (MediaRoute2Info route : routes) {
- if (route.isVisibleTo(packageName)) {
- filteredRoutes.add(route);
- }
+ for (RouterRecord routerRecord : routerRecords) {
+ routerRecord.notifyRoutesUpdated(routes);
}
- return filteredRoutes;
}
private void notifySessionInfoChangedToRouters(
diff --git a/services/core/java/com/android/server/notification/NotificationManagerService.java b/services/core/java/com/android/server/notification/NotificationManagerService.java
index f0ab815db2c1..31074c1039e6 100755
--- a/services/core/java/com/android/server/notification/NotificationManagerService.java
+++ b/services/core/java/com/android/server/notification/NotificationManagerService.java
@@ -136,6 +136,7 @@ import static com.android.server.utils.PriorityDump.PRIORITY_ARG_NORMAL;
import android.Manifest;
import android.Manifest.permission;
+import android.annotation.DurationMillisLong;
import android.annotation.ElapsedRealtimeLong;
import android.annotation.MainThread;
import android.annotation.NonNull;
@@ -7872,11 +7873,11 @@ public class NotificationManagerService extends SystemService {
}
if (notification.getSmallIcon() != null) {
- mTracker.setReport(
+ NotificationRecordLogger.NotificationReported maybeReport =
mNotificationRecordLogger.prepareToLogNotificationPosted(r, old,
position, buzzBeepBlinkLoggingCode,
- getGroupInstanceId(r.getSbn().getGroupKey())));
- notifyListenersPostedAndLogLocked(r, old, mTracker);
+ getGroupInstanceId(r.getSbn().getGroupKey()));
+ notifyListenersPostedAndLogLocked(r, old, mTracker, maybeReport);
posted = true;
StatusBarNotification oldSbn = (old != null) ? old.getSbn() : null;
@@ -10860,16 +10861,17 @@ public class NotificationManagerService extends SystemService {
*/
@GuardedBy("mNotificationLock")
private void notifyListenersPostedAndLogLocked(NotificationRecord r, NotificationRecord old,
- @NonNull PostNotificationTracker tracker) {
+ @NonNull PostNotificationTracker tracker,
+ @Nullable NotificationRecordLogger.NotificationReported report) {
List<Runnable> listenerCalls = mListeners.prepareNotifyPostedLocked(r, old, true);
mHandler.post(() -> {
for (Runnable listenerCall : listenerCalls) {
listenerCall.run();
}
- tracker.finish();
- NotificationRecordLogger.NotificationReported report = tracker.getReport();
+ long postDurationMillis = tracker.finish();
if (report != null) {
+ report.post_duration_millis = postDurationMillis;
mNotificationRecordLogger.logNotificationPosted(report);
}
});
@@ -12161,14 +12163,6 @@ public class NotificationManagerService extends SystemService {
}
}
- void setReport(@Nullable NotificationRecordLogger.NotificationReported report) {
- mReport = report;
- }
-
- NotificationRecordLogger.NotificationReported getReport() {
- return mReport;
- }
-
@ElapsedRealtimeLong
long getStartTime() {
return mStartTime;
@@ -12179,6 +12173,11 @@ public class NotificationManagerService extends SystemService {
return mOngoing;
}
+ /**
+ * Cancels the tracker (TODO(b/275044361): releasing the acquired WakeLock). Either
+ * {@link #finish} or {@link #cancel} (exclusively) should be called on this object before
+ * it's discarded.
+ */
void cancel() {
if (!isOngoing()) {
Log.wtfStack(TAG, "cancel() called on already-finished tracker");
@@ -12195,20 +12194,27 @@ public class NotificationManagerService extends SystemService {
}
}
- void finish() {
+ /**
+ * Finishes the tracker (TODO(b/275044361): releasing the acquired WakeLock) and returns the
+ * time elapsed since the operation started, in milliseconds. Either {@link #finish} or
+ * {@link #cancel} (exclusively) should be called on this object before it's discarded.
+ */
+ @DurationMillisLong
+ long finish() {
+ long elapsedTime = SystemClock.elapsedRealtime() - mStartTime;
if (!isOngoing()) {
Log.wtfStack(TAG, "finish() called on already-finished tracker");
- return;
+ return elapsedTime;
}
mOngoing = false;
// TODO(b/275044361): Release wakelock.
- long elapsedTime = SystemClock.elapsedRealtime() - mStartTime;
if (DBG) {
Slog.d(TAG,
TextUtils.formatSimple("PostNotification: Finished in %d ms", elapsedTime));
}
+ return elapsedTime;
}
}
}
diff --git a/services/core/java/com/android/server/notification/NotificationRecordLogger.java b/services/core/java/com/android/server/notification/NotificationRecordLogger.java
index 71ebf7a39610..0cc4fc4e0516 100644
--- a/services/core/java/com/android/server/notification/NotificationRecordLogger.java
+++ b/services/core/java/com/android/server/notification/NotificationRecordLogger.java
@@ -21,6 +21,7 @@ import static android.service.notification.NotificationListenerService.REASON_CA
import static android.service.notification.NotificationListenerService.REASON_CLEAR_DATA;
import static android.service.notification.NotificationListenerService.REASON_CLICK;
+import android.annotation.DurationMillisLong;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.app.Notification;
@@ -499,6 +500,7 @@ interface NotificationRecordLogger {
final boolean is_foreground_service;
final long timeout_millis;
final boolean is_non_dismissible;
+ @DurationMillisLong long post_duration_millis; // Not final; calculated at the end.
NotificationReported(NotificationRecordPair p,
NotificationReportedEvent eventType, int position, int buzzBeepBlink,
diff --git a/services/core/java/com/android/server/pm/InstallPackageHelper.java b/services/core/java/com/android/server/pm/InstallPackageHelper.java
index f3d5f6e84113..5979b12e4a30 100644
--- a/services/core/java/com/android/server/pm/InstallPackageHelper.java
+++ b/services/core/java/com/android/server/pm/InstallPackageHelper.java
@@ -58,6 +58,7 @@ import static com.android.server.pm.PackageManagerService.DEBUG_REMOVE;
import static com.android.server.pm.PackageManagerService.DEBUG_UPGRADE;
import static com.android.server.pm.PackageManagerService.DEBUG_VERIFY;
import static com.android.server.pm.PackageManagerService.EMPTY_INT_ARRAY;
+import static com.android.server.pm.PackageManagerService.MIN_INSTALLABLE_TARGET_SDK;
import static com.android.server.pm.PackageManagerService.PLATFORM_PACKAGE_NAME;
import static com.android.server.pm.PackageManagerService.POST_INSTALL;
import static com.android.server.pm.PackageManagerService.PRECOMPILE_LAYOUTS;
@@ -144,7 +145,6 @@ import android.os.incremental.IncrementalManager;
import android.os.incremental.IncrementalStorage;
import android.os.storage.StorageManager;
import android.os.storage.VolumeInfo;
-import android.provider.DeviceConfig;
import android.stats.storage.StorageEnums;
import android.system.ErrnoException;
import android.system.Os;
@@ -499,13 +499,6 @@ final class InstallPackageHelper {
mPm.setUpCustomResolverActivity(pkg, pkgSetting);
}
- File appMetadataFile = new File(pkgSetting.getPath(), APP_METADATA_FILE_NAME);
- if (appMetadataFile.exists()) {
- pkgSetting.setAppMetadataFilePath(appMetadataFile.getAbsolutePath());
- } else {
- pkgSetting.setAppMetadataFilePath(null);
- }
-
if (pkg.getPackageName().equals("android")) {
mPm.setPlatformPackage(pkg, pkgSetting);
}
@@ -1138,73 +1131,27 @@ final class InstallPackageHelper {
Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER);
}
- // If the minimum installable SDK version enforcement is enabled, block the install
- // of apps using a lower target SDK version than required. This helps improve security
- // and privacy as malware can target older SDK versions to avoid enforcement of new API
- // behavior.
- if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_PACKAGE_MANAGER_SERVICE,
- "MinInstallableTargetSdk__install_block_enabled",
- false)) {
- int minInstallableTargetSdk =
- DeviceConfig.getInt(DeviceConfig.NAMESPACE_PACKAGE_MANAGER_SERVICE,
- "MinInstallableTargetSdk__min_installable_target_sdk",
- 0);
-
- // Determine if enforcement is in strict mode
- boolean strictMode = false;
-
- if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_PACKAGE_MANAGER_SERVICE,
- "MinInstallableTargetSdk__install_block_strict_mode_enabled",
- false)) {
- if (parsedPackage.getTargetSdkVersion()
- < DeviceConfig.getInt(DeviceConfig.NAMESPACE_PACKAGE_MANAGER_SERVICE,
- "MinInstallableTargetSdk__strict_mode_target_sdk",
- 0)) {
- strictMode = true;
- }
- }
-
- // Skip enforcement when the bypass flag is set
- boolean bypassLowTargetSdkBlock =
- ((installFlags & PackageManager.INSTALL_BYPASS_LOW_TARGET_SDK_BLOCK) != 0);
-
- // Skip enforcement for tests that were installed from adb
- if (!strictMode && !bypassLowTargetSdkBlock
- && ((installFlags & PackageManager.INSTALL_FROM_ADB) != 0)) {
- bypassLowTargetSdkBlock = true;
- }
+ // Block the install of apps using a lower target SDK version than required.
+ // This helps improve security and privacy as malware can target older SDK versions
+ // to avoid enforcement of new API behavior.
+ boolean bypassLowTargetSdkBlock =
+ ((installFlags & PackageManager.INSTALL_BYPASS_LOW_TARGET_SDK_BLOCK) != 0);
- // Skip enforcement if the installer package name is not set
- // (e.g. "pm install" from shell)
- if (!strictMode && !bypassLowTargetSdkBlock) {
- if (request.getInstallerPackageName() == null) {
- bypassLowTargetSdkBlock = true;
- } else {
- // Also skip if the install is occurring from an app that was installed from adb
- if (mContext
- .getPackageManager()
- .getInstallerPackageName(request.getInstallerPackageName()) == null) {
- bypassLowTargetSdkBlock = true;
- }
- }
- }
-
- // Skip enforcement when the testOnly flag is set
- if (!bypassLowTargetSdkBlock && parsedPackage.isTestOnly()) {
- bypassLowTargetSdkBlock = true;
- }
+ // Skip enforcement when the testOnly flag is set
+ if (!bypassLowTargetSdkBlock && parsedPackage.isTestOnly()) {
+ bypassLowTargetSdkBlock = true;
+ }
- // Enforce the low target sdk install block except when
- // the --bypass-low-target-sdk-block is set for the install
- if (!bypassLowTargetSdkBlock
- && parsedPackage.getTargetSdkVersion() < minInstallableTargetSdk) {
- Slog.w(TAG, "App " + parsedPackage.getPackageName()
- + " targets deprecated sdk version");
- throw new PrepareFailure(INSTALL_FAILED_DEPRECATED_SDK_VERSION,
- "App package must target at least SDK version "
- + minInstallableTargetSdk + ", but found "
- + parsedPackage.getTargetSdkVersion());
- }
+ // Enforce the low target sdk install block except when
+ // the --bypass-low-target-sdk-block is set for the install
+ if (!bypassLowTargetSdkBlock
+ && parsedPackage.getTargetSdkVersion() < MIN_INSTALLABLE_TARGET_SDK) {
+ Slog.w(TAG, "App " + parsedPackage.getPackageName()
+ + " targets deprecated sdk version");
+ throw new PrepareFailure(INSTALL_FAILED_DEPRECATED_SDK_VERSION,
+ "App package must target at least SDK version "
+ + MIN_INSTALLABLE_TARGET_SDK + ", but found "
+ + parsedPackage.getTargetSdkVersion());
}
// Instant apps have several additional install-time checks.
@@ -2170,6 +2117,13 @@ final class InstallPackageHelper {
installRequest.setNewUsers(
ps.queryInstalledUsers(mPm.mUserManager.getUserIds(), true));
ps.setUpdateAvailable(false /*updateAvailable*/);
+
+ File appMetadataFile = new File(ps.getPath(), APP_METADATA_FILE_NAME);
+ if (appMetadataFile.exists()) {
+ ps.setAppMetadataFilePath(appMetadataFile.getAbsolutePath());
+ } else {
+ ps.setAppMetadataFilePath(null);
+ }
}
if (installRequest.getReturnCode() == PackageManager.INSTALL_SUCCEEDED) {
mPm.updateSequenceNumberLP(ps, installRequest.getNewUsers());
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 4ddc7e4b44ee..0c52bb5e7ead 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -560,6 +560,14 @@ public class PackageManagerService implements PackageSender, TestUtilityService
// How many required verifiers can be on the system.
private static final int REQUIRED_VERIFIERS_MAX_COUNT = 2;
+ /**
+ * Specifies the minimum target SDK version an apk must specify in order to be installed
+ * on the system. This improves security and privacy by blocking low
+ * target sdk apps as malware can target older sdk versions to avoid
+ * the enforcement of new API behavior.
+ */
+ public static final int MIN_INSTALLABLE_TARGET_SDK = Build.VERSION_CODES.M;
+
// Compilation reasons.
// TODO(b/260124949): Clean this up with the legacy dexopt code.
public static final int REASON_FIRST_BOOT = 0;
diff --git a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java
index 58183f0bc16a..d3f3a69f507d 100644
--- a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java
+++ b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java
@@ -16,6 +16,7 @@
package com.android.server.pm;
+import static android.Manifest.permission.GET_APP_METADATA;
import static android.content.pm.PackageInstaller.LOCATION_DATA_APP;
import static android.content.pm.PackageManager.FLAG_PERMISSION_REVIEW_REQUIRED;
import static android.content.pm.PackageManager.FLAG_PERMISSION_REVOKED_COMPAT;
@@ -3576,6 +3577,7 @@ class PackageManagerShellCommand extends ShellCommand {
}
private int runGetAppMetadata() {
+ mContext.enforceCallingOrSelfPermission(GET_APP_METADATA, "getAppMetadataFd");
final PrintWriter pw = getOutPrintWriter();
String pkgName = getNextArgRequired();
ParcelFileDescriptor pfd = null;
diff --git a/services/core/java/com/android/server/pm/Settings.java b/services/core/java/com/android/server/pm/Settings.java
index e0dbcbf27264..f2d1357ac1b5 100644
--- a/services/core/java/com/android/server/pm/Settings.java
+++ b/services/core/java/com/android/server/pm/Settings.java
@@ -921,6 +921,7 @@ public final class Settings implements Watchable, Snappable, ResilientAtomicFile
p.getUsesStaticLibraries(), p.getUsesStaticLibrariesVersions(), p.getMimeGroups(),
mDomainVerificationManager.generateNewId());
if (ret != null) {
+ ret.setAppMetadataFilePath(p.getAppMetadataFilePath());
ret.getPkgState().setUpdatedSystemApp(false);
}
mDisabledSysPackages.remove(name);
@@ -3700,6 +3701,8 @@ public final class Settings implements Watchable, Snappable, ResilientAtomicFile
ps.setSharedUserAppId(sharedUserAppId);
}
+ ps.setAppMetadataFilePath(parser.getAttributeValue(null, "appMetadataFilePath"));
+
int outerDepth = parser.getDepth();
int type;
while ((type = parser.next()) != XmlPullParser.END_DOCUMENT
diff --git a/services/core/java/com/android/server/pm/ShortcutService.java b/services/core/java/com/android/server/pm/ShortcutService.java
index 2f0cea363d17..a020728cc85e 100644
--- a/services/core/java/com/android/server/pm/ShortcutService.java
+++ b/services/core/java/com/android/server/pm/ShortcutService.java
@@ -1736,10 +1736,6 @@ public class ShortcutService extends IShortcutService.Stub {
return;
}
- if (isCallerSystem()) {
- return; // no check
- }
-
if (!Objects.equals(callerPackage, si.getPackage())) {
android.util.EventLog.writeEvent(0x534e4554, "109824443", -1, "");
throw new SecurityException("Shortcut package name mismatch");
diff --git a/services/core/java/com/android/server/power/PowerManagerService.java b/services/core/java/com/android/server/power/PowerManagerService.java
index f8954b7c7f95..b8c5b3f5524a 100644
--- a/services/core/java/com/android/server/power/PowerManagerService.java
+++ b/services/core/java/com/android/server/power/PowerManagerService.java
@@ -2079,6 +2079,7 @@ public final class PowerManagerService extends SystemService
int opUid, String opPackageName, String details) {
mPowerGroups.get(groupId).setWakefulnessLocked(wakefulness, eventTime, uid, reason, opUid,
opPackageName, details);
+ mInjector.invalidateIsInteractiveCaches();
}
@SuppressWarnings("deprecation")
@@ -3743,12 +3744,32 @@ public final class PowerManagerService extends SystemService
}
}
- private boolean isInteractiveInternal() {
+ private boolean isGloballyInteractiveInternal() {
synchronized (mLock) {
return PowerManagerInternal.isInteractive(getGlobalWakefulnessLocked());
}
}
+ private boolean isInteractiveInternal(int displayId, int uid) {
+ synchronized (mLock) {
+ DisplayInfo displayInfo = mDisplayManagerInternal.getDisplayInfo(displayId);
+ if (displayInfo == null) {
+ Slog.w(TAG, "Did not find DisplayInfo for displayId " + displayId);
+ return false;
+ }
+ if (!displayInfo.hasAccess(uid)) {
+ throw new SecurityException(
+ "uid " + uid + " does not have access to display " + displayId);
+ }
+ PowerGroup powerGroup = mPowerGroups.get(displayInfo.displayGroupId);
+ if (powerGroup == null) {
+ Slog.w(TAG, "Did not find PowerGroup for displayId " + displayId);
+ return false;
+ }
+ return PowerManagerInternal.isInteractive(powerGroup.getWakefulnessLocked());
+ }
+ }
+
private boolean setLowPowerModeInternal(boolean enabled) {
synchronized (mLock) {
if (DEBUG) {
@@ -5805,7 +5826,18 @@ public final class PowerManagerService extends SystemService
public boolean isInteractive() {
final long ident = Binder.clearCallingIdentity();
try {
- return isInteractiveInternal();
+ return isGloballyInteractiveInternal();
+ } finally {
+ Binder.restoreCallingIdentity(ident);
+ }
+ }
+
+ @Override // Binder call
+ public boolean isDisplayInteractive(int displayId) {
+ int uid = Binder.getCallingUid();
+ final long ident = Binder.clearCallingIdentity();
+ try {
+ return isInteractiveInternal(displayId, uid);
} finally {
Binder.restoreCallingIdentity(ident);
}
diff --git a/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java b/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java
index 6eded1a14dbf..e82521584731 100644
--- a/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java
+++ b/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java
@@ -18,6 +18,7 @@ package com.android.server.stats.pull;
import static android.app.AppOpsManager.OP_FLAG_SELF;
import static android.app.AppOpsManager.OP_FLAG_TRUSTED_PROXIED;
+import static android.app.AppProtoEnums.HOSTING_COMPONENT_TYPE_EMPTY;
import static android.content.pm.PackageInfo.REQUESTED_PERMISSION_GRANTED;
import static android.content.pm.PermissionInfo.PROTECTION_DANGEROUS;
import static android.hardware.display.HdrConversionMode.HDR_CONVERSION_PASSTHROUGH;
@@ -2350,7 +2351,8 @@ public class StatsPullAtomService extends SystemService {
snapshot.rssInKilobytes, snapshot.anonRssInKilobytes, snapshot.swapInKilobytes,
snapshot.anonRssInKilobytes + snapshot.swapInKilobytes,
gpuMemPerPid.get(managedProcess.pid), managedProcess.hasForegroundServices,
- snapshot.rssShmemKilobytes));
+ snapshot.rssShmemKilobytes, managedProcess.mHostingComponentTypes,
+ managedProcess.mHistoricalHostingComponentTypes));
}
// Complement the data with native system processes. Given these measurements can be taken
// in response to LMKs happening, we want to first collect the managed app stats (to
@@ -2370,7 +2372,10 @@ public class StatsPullAtomService extends SystemService {
snapshot.rssInKilobytes, snapshot.anonRssInKilobytes, snapshot.swapInKilobytes,
snapshot.anonRssInKilobytes + snapshot.swapInKilobytes,
gpuMemPerPid.get(pid), false /* has_foreground_services */,
- snapshot.rssShmemKilobytes));
+ snapshot.rssShmemKilobytes,
+ // Native processes don't really have a hosting component type.
+ HOSTING_COMPONENT_TYPE_EMPTY,
+ HOSTING_COMPONENT_TYPE_EMPTY));
}
return StatsManager.PULL_SUCCESS;
}
diff --git a/services/core/java/com/android/server/trust/TrustAgentWrapper.java b/services/core/java/com/android/server/trust/TrustAgentWrapper.java
index e796275c53e3..415d05e96799 100644
--- a/services/core/java/com/android/server/trust/TrustAgentWrapper.java
+++ b/services/core/java/com/android/server/trust/TrustAgentWrapper.java
@@ -667,6 +667,10 @@ public class TrustAgentWrapper {
return mTrustable && mManagingTrust && !mTrustDisabledByDpm;
}
+ public boolean isTrustableOrWaitingForDowngrade() {
+ return mWaitingForTrustableDowngrade || isTrustable();
+ }
+
/** Set the trustagent as not trustable */
public void setUntrustable() {
mTrustable = false;
diff --git a/services/core/java/com/android/server/trust/TrustManagerService.java b/services/core/java/com/android/server/trust/TrustManagerService.java
index 3c5ad2acc8a0..bab4886a6c6a 100644
--- a/services/core/java/com/android/server/trust/TrustManagerService.java
+++ b/services/core/java/com/android/server/trust/TrustManagerService.java
@@ -149,6 +149,7 @@ public class TrustManagerService extends SystemService {
private static final String PRIV_NAMESPACE = "http://schemas.android.com/apk/prv/res/android";
private final ArraySet<AgentInfo> mActiveAgents = new ArraySet<>();
+ private final SparseBooleanArray mLastActiveUnlockRunningState = new SparseBooleanArray();
private final ArrayList<ITrustListener> mTrustListeners = new ArrayList<>();
private final Receiver mReceiver = new Receiver();
@@ -681,6 +682,7 @@ public class TrustManagerService extends SystemService {
boolean isNowTrusted = pendingTrustState == TrustState.TRUSTED;
boolean newlyUnlocked = !alreadyUnlocked && isNowTrusted;
+ maybeActiveUnlockRunningChanged(userId);
dispatchOnTrustChanged(
isNowTrusted, newlyUnlocked, userId, flags, getTrustGrantedMessages(userId));
if (isNowTrusted != wasTrusted) {
@@ -921,6 +923,18 @@ public class TrustManagerService extends SystemService {
}
}
+ private void maybeActiveUnlockRunningChanged(int userId) {
+ boolean oldValue = mLastActiveUnlockRunningState.get(userId);
+ boolean newValue = aggregateIsActiveUnlockRunning(userId);
+ if (oldValue == newValue) {
+ return;
+ }
+ mLastActiveUnlockRunningState.put(userId, newValue);
+ for (int i = 0; i < mTrustListeners.size(); i++) {
+ notifyListenerIsActiveUnlockRunning(mTrustListeners.get(i), newValue, userId);
+ }
+ }
+
private void refreshDeviceLockedForUser(int userId) {
refreshDeviceLockedForUser(userId, UserHandle.USER_NULL);
}
@@ -1325,6 +1339,27 @@ public class TrustManagerService extends SystemService {
return false;
}
+ private boolean aggregateIsActiveUnlockRunning(int userId) {
+ if (!mStrongAuthTracker.isTrustAllowedForUser(userId)) {
+ return false;
+ }
+ synchronized (mUserTrustState) {
+ TrustState currentState = mUserTrustState.get(userId);
+ if (currentState != TrustState.TRUSTED && currentState != TrustState.TRUSTABLE) {
+ return false;
+ }
+ }
+ for (int i = 0; i < mActiveAgents.size(); i++) {
+ AgentInfo info = mActiveAgents.valueAt(i);
+ if (info.userId == userId) {
+ if (info.agent.isTrustableOrWaitingForDowngrade()) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
/**
* We downgrade to trustable whenever keyguard changes its showing value.
* - becomes showing: something has caused the device to show keyguard which happens due to
@@ -1366,7 +1401,7 @@ public class TrustManagerService extends SystemService {
for (int i = 0; i < mActiveAgents.size(); i++) {
AgentInfo info = mActiveAgents.valueAt(i);
if (info.userId == userId) {
- if (info.agent.isManagingTrust()) {
+ if (info.agent.isTrustableOrWaitingForDowngrade()) {
return true;
}
}
@@ -1424,6 +1459,26 @@ public class TrustManagerService extends SystemService {
}
}
+ private void notifyListenerIsActiveUnlockRunningInitialState(ITrustListener listener) {
+ int numUsers = mLastActiveUnlockRunningState.size();
+ for (int i = 0; i < numUsers; i++) {
+ int userId = mLastActiveUnlockRunningState.keyAt(i);
+ boolean isRunning = aggregateIsActiveUnlockRunning(userId);
+ notifyListenerIsActiveUnlockRunning(listener, isRunning, userId);
+ }
+ }
+
+ private void notifyListenerIsActiveUnlockRunning(
+ ITrustListener listener, boolean isRunning, int userId) {
+ try {
+ listener.onIsActiveUnlockRunningChanged(isRunning, userId);
+ } catch (DeadObjectException e) {
+ Slog.d(TAG, "TrustListener dead while trying to notify Active Unlock running state");
+ } catch (RemoteException e) {
+ Slog.e(TAG, "Exception while notifying TrustListener.", e);
+ }
+ }
+
// Listeners
private void addListener(ITrustListener listener) {
@@ -1433,6 +1488,7 @@ public class TrustManagerService extends SystemService {
}
}
mTrustListeners.add(listener);
+ notifyListenerIsActiveUnlockRunningInitialState(listener);
updateTrustAll();
}
@@ -1747,6 +1803,8 @@ public class TrustManagerService extends SystemService {
fout.print(": trusted=" + dumpBool(aggregateIsTrusted(user.id)));
fout.print(", trustManaged=" + dumpBool(aggregateIsTrustManaged(user.id)));
fout.print(", deviceLocked=" + dumpBool(isDeviceLockedInner(user.id)));
+ fout.print(", isActiveUnlockRunning=" + dumpBool(
+ aggregateIsActiveUnlockRunning(user.id)));
fout.print(", strongAuthRequired=" + dumpHex(
mStrongAuthTracker.getStrongAuthForUser(user.id)));
fout.println();
@@ -1865,6 +1923,16 @@ public class TrustManagerService extends SystemService {
}
message.sendToTarget();
}
+
+ @Override
+ public boolean isActiveUnlockRunning(int userId) throws RemoteException {
+ final long identity = Binder.clearCallingIdentity();
+ try {
+ return aggregateIsActiveUnlockRunning(userId);
+ } finally {
+ Binder.restoreCallingIdentity(identity);
+ }
+ }
};
private boolean isTrustUsuallyManagedInternal(int userId) {
diff --git a/services/core/java/com/android/server/wallpaper/WallpaperDataParser.java b/services/core/java/com/android/server/wallpaper/WallpaperDataParser.java
index 53861c854a1b..3e498d7d14ee 100644
--- a/services/core/java/com/android/server/wallpaper/WallpaperDataParser.java
+++ b/services/core/java/com/android/server/wallpaper/WallpaperDataParser.java
@@ -38,6 +38,7 @@ import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.graphics.Color;
import android.os.FileUtils;
+import android.os.SystemProperties;
import android.util.Slog;
import android.util.SparseArray;
import android.util.Xml;
@@ -85,8 +86,8 @@ class WallpaperDataParser {
mWallpaperCropper = wallpaperCropper;
mImageWallpaper = ComponentName.unflattenFromString(
context.getResources().getString(R.string.image_wallpaper_component));
- mIsLockscreenLiveWallpaperEnabled = context.getSystemService(WallpaperManager.class)
- .isLockscreenLiveWallpaperEnabled();
+ mIsLockscreenLiveWallpaperEnabled =
+ SystemProperties.getBoolean("persist.wm.debug.lockscreen_live_wallpaper", false);
}
private JournaledFile makeJournaledFile(int userId) {
diff --git a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java
index 46aa38714b1c..8d392a1bfe4c 100644
--- a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java
+++ b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java
@@ -2585,8 +2585,7 @@ public class WallpaperManagerService extends IWallpaperManager.Stub
/**
* Propagates screen turned on event to wallpaper engine(s).
*/
- @Override
- public void notifyScreenTurnedOn(int displayId) {
+ private void notifyScreenTurnedOn(int displayId) {
synchronized (mLock) {
if (mIsLockscreenLiveWallpaperEnabled) {
for (WallpaperData data : getActiveWallpapers()) {
@@ -2621,13 +2620,10 @@ public class WallpaperManagerService extends IWallpaperManager.Stub
}
}
-
-
/**
* Propagate screen turning on event to wallpaper engine(s).
*/
- @Override
- public void notifyScreenTurningOn(int displayId) {
+ private void notifyScreenTurningOn(int displayId) {
synchronized (mLock) {
if (mIsLockscreenLiveWallpaperEnabled) {
for (WallpaperData data : getActiveWallpapers()) {
diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java
index cb7c7ae29f0b..1e50f3d2b67e 100644
--- a/services/core/java/com/android/server/wm/ActivityRecord.java
+++ b/services/core/java/com/android/server/wm/ActivityRecord.java
@@ -2882,6 +2882,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
mStartingData = null;
mStartingSurface = null;
mStartingWindow = null;
+ mTransitionChangeFlags &= ~FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT;
if (surface == null) {
ProtoLog.v(WM_DEBUG_STARTING_WINDOW, "startingWindow was set but "
+ "startingSurface==null, couldn't remove");
diff --git a/services/core/java/com/android/server/wm/DisplayPolicy.java b/services/core/java/com/android/server/wm/DisplayPolicy.java
index 911591c6a508..db64b43bdf8c 100644
--- a/services/core/java/com/android/server/wm/DisplayPolicy.java
+++ b/services/core/java/com/android/server/wm/DisplayPolicy.java
@@ -1530,6 +1530,11 @@ public class DisplayPolicy {
if (isOverlappingWithNavBar(win) && mNavBarColorWindowCandidate == null) {
mNavBarColorWindowCandidate = win;
}
+ } else if (appWindow && attached == null && mNavBarColorWindowCandidate == null
+ && win.getFrame().contains(
+ getBarContentFrameForWindow(win, Type.navigationBars()))) {
+ mNavBarColorWindowCandidate = win;
+ addSystemBarColorApp(win);
}
}
diff --git a/services/core/java/com/android/server/wm/Transition.java b/services/core/java/com/android/server/wm/Transition.java
index bfd0d96a04ab..5e60e92150a9 100644
--- a/services/core/java/com/android/server/wm/Transition.java
+++ b/services/core/java/com/android/server/wm/Transition.java
@@ -1473,7 +1473,6 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
"Calling onTransitionReady: %s", info);
mLogger.mSendTimeNs = SystemClock.elapsedRealtimeNanos();
mLogger.mInfo = info;
- mController.mTransitionTracer.logSentTransition(this, mTargets, info);
mController.getTransitionPlayer().onTransitionReady(
mToken, info, transaction, mFinishTransaction);
if (Trace.isTagEnabled(TRACE_TAG_WINDOW_MANAGER)) {
@@ -1501,13 +1500,17 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
}
postCleanupOnFailure();
}
- mController.mLoggerHandler.post(mLogger::logOnSend);
mOverrideOptions = null;
reportStartReasonsToLogger();
// Since we created root-leash but no longer reference it from core, release it now
info.releaseAnimSurfaces();
+
+ mController.mLoggerHandler.post(mLogger::logOnSend);
+ if (mLogger.mInfo != null) {
+ mController.mTransitionTracer.logSentTransition(this, mTargets, info);
+ }
}
/**
@@ -2245,6 +2248,7 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
info.mReadyMode = change.getMode();
change.setStartAbsBounds(info.mAbsoluteBounds);
change.setFlags(info.getChangeFlags(target));
+ info.mReadyFlags = change.getFlags();
change.setDisplayId(info.mDisplayId, getDisplayId(target));
final Task task = target.asTask();
@@ -2628,6 +2632,10 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
@TransitionInfo.TransitionMode
int mReadyMode;
+ /** The flags which is set when the transition is ready. */
+ @TransitionInfo.ChangeFlags
+ int mReadyFlags;
+
ChangeInfo(@NonNull WindowContainer origState) {
mContainer = origState;
mVisible = origState.isVisibleRequested();
diff --git a/services/core/java/com/android/server/wm/TransitionTracer.java b/services/core/java/com/android/server/wm/TransitionTracer.java
index afc14926f63c..a002fba0877e 100644
--- a/services/core/java/com/android/server/wm/TransitionTracer.java
+++ b/services/core/java/com/android/server/wm/TransitionTracer.java
@@ -144,8 +144,6 @@ public class TransitionTracer {
final Transition.ChangeInfo target = targets.get(i);
- final int mode = target.getTransitMode(target.mContainer);
- final int flags = target.getChangeFlags(target.mContainer);
final int layerId;
if (target.mContainer.mSurfaceControl.isValid()) {
layerId = target.mContainer.mSurfaceControl.getLayerId();
@@ -153,8 +151,8 @@ public class TransitionTracer {
layerId = -1;
}
- outputStream.write(com.android.server.wm.shell.Target.MODE, mode);
- outputStream.write(com.android.server.wm.shell.Target.FLAGS, flags);
+ outputStream.write(com.android.server.wm.shell.Target.MODE, target.mReadyMode);
+ outputStream.write(com.android.server.wm.shell.Target.FLAGS, target.mReadyFlags);
outputStream.write(com.android.server.wm.shell.Target.LAYER_ID, layerId);
if (mActiveTracingEnabled) {
diff --git a/services/credentials/java/com/android/server/credentials/ClearRequestSession.java b/services/credentials/java/com/android/server/credentials/ClearRequestSession.java
index e3d4c224f1fd..fe8a8c8979f7 100644
--- a/services/credentials/java/com/android/server/credentials/ClearRequestSession.java
+++ b/services/credentials/java/com/android/server/credentials/ClearRequestSession.java
@@ -30,8 +30,6 @@ import android.os.RemoteException;
import android.service.credentials.CallingAppInfo;
import android.util.Slog;
-import com.android.server.credentials.metrics.ProviderSessionMetric;
-
import java.util.ArrayList;
import java.util.Set;
@@ -95,12 +93,8 @@ public final class ClearRequestSession extends RequestSession<ClearCredentialSta
public void onFinalResponseReceived(
ComponentName componentName,
Void response) {
- if (mProviders.get(componentName.flattenToString()) != null) {
- ProviderSessionMetric providerSessionMetric =
- mProviders.get(componentName.flattenToString()).mProviderSessionMetric;
- mRequestSessionMetric.collectChosenMetricViaCandidateTransfer(providerSessionMetric
- .getCandidatePhasePerProviderMetric());
- }
+ mRequestSessionMetric.updateMetricsOnResponseReceived(mProviders, componentName,
+ isPrimaryProviderViaProviderInfo(componentName));
respondToClientWithResponseAndFinish(null);
}
diff --git a/services/credentials/java/com/android/server/credentials/CreateRequestSession.java b/services/credentials/java/com/android/server/credentials/CreateRequestSession.java
index 2d6e74f0ccf1..20dd1816bf44 100644
--- a/services/credentials/java/com/android/server/credentials/CreateRequestSession.java
+++ b/services/credentials/java/com/android/server/credentials/CreateRequestSession.java
@@ -35,7 +35,6 @@ import android.service.credentials.CallingAppInfo;
import android.service.credentials.PermissionUtils;
import android.util.Slog;
-import com.android.server.credentials.metrics.ProviderSessionMetric;
import com.android.server.credentials.metrics.ProviderStatusForMetrics;
import java.util.ArrayList;
@@ -132,12 +131,8 @@ public final class CreateRequestSession extends RequestSession<CreateCredentialR
@Nullable CreateCredentialResponse response) {
Slog.i(TAG, "Final credential received from: " + componentName.flattenToString());
mRequestSessionMetric.collectUiResponseData(/*uiReturned=*/ true, System.nanoTime());
- if (mProviders.get(componentName.flattenToString()) != null) {
- ProviderSessionMetric providerSessionMetric =
- mProviders.get(componentName.flattenToString()).mProviderSessionMetric;
- mRequestSessionMetric.collectChosenMetricViaCandidateTransfer(providerSessionMetric
- .getCandidatePhasePerProviderMetric());
- }
+ mRequestSessionMetric.updateMetricsOnResponseReceived(mProviders, componentName,
+ isPrimaryProviderViaProviderInfo(componentName));
if (response != null) {
mRequestSessionMetric.collectChosenProviderStatus(
ProviderStatusForMetrics.FINAL_SUCCESS.getMetricCode());
diff --git a/services/credentials/java/com/android/server/credentials/CredentialManagerService.java b/services/credentials/java/com/android/server/credentials/CredentialManagerService.java
index 86dbe11d5ddc..cadee6f06aad 100644
--- a/services/credentials/java/com/android/server/credentials/CredentialManagerService.java
+++ b/services/credentials/java/com/android/server/credentials/CredentialManagerService.java
@@ -706,11 +706,18 @@ public final class CredentialManagerService
public void setEnabledProviders(
List<String> primaryProviders, List<String> providers, int userId,
ISetEnabledProvidersCallback callback) {
+ final int callingUid = Binder.getCallingUid();
if (!hasWriteSecureSettingsPermission()) {
try {
+ MetricUtilities.logApiCalledSimpleV2(
+ ApiName.SET_ENABLED_PROVIDERS,
+ ApiStatus.FAILURE, callingUid);
callback.onError(
PERMISSION_DENIED_ERROR, PERMISSION_DENIED_WRITE_SECURE_SETTINGS_ERROR);
} catch (RemoteException e) {
+ MetricUtilities.logApiCalledSimpleV2(
+ ApiName.SET_ENABLED_PROVIDERS,
+ ApiStatus.FAILURE, callingUid);
Slog.e(TAG, "Issue with invoking response: ", e);
}
return;
@@ -744,10 +751,16 @@ public final class CredentialManagerService
if (!writeEnabledStatus || !writePrimaryStatus) {
Slog.e(TAG, "Failed to store setting containing enabled or primary providers");
try {
+ MetricUtilities.logApiCalledSimpleV2(
+ ApiName.SET_ENABLED_PROVIDERS,
+ ApiStatus.FAILURE, callingUid);
callback.onError(
"failed_setting_store",
"Failed to store setting containing enabled or primary providers");
} catch (RemoteException e) {
+ MetricUtilities.logApiCalledSimpleV2(
+ ApiName.SET_ENABLED_PROVIDERS,
+ ApiStatus.FAILURE, callingUid);
Slog.e(TAG, "Issue with invoking error response: ", e);
return;
}
@@ -755,8 +768,14 @@ public final class CredentialManagerService
// Call the callback.
try {
+ MetricUtilities.logApiCalledSimpleV2(
+ ApiName.SET_ENABLED_PROVIDERS,
+ ApiStatus.SUCCESS, callingUid);
callback.onResponse();
} catch (RemoteException e) {
+ MetricUtilities.logApiCalledSimpleV2(
+ ApiName.SET_ENABLED_PROVIDERS,
+ ApiStatus.FAILURE, callingUid);
Slog.e(TAG, "Issue with invoking response: ", e);
// TODO: Propagate failure
}
@@ -805,10 +824,15 @@ public final class CredentialManagerService
public List<CredentialProviderInfo> getCredentialProviderServices(
int userId, int providerFilter) {
verifyGetProvidersPermission();
+ final int callingUid = Binder.getCallingUid();
+ MetricUtilities.logApiCalledSimpleV2(
+ ApiName.GET_CREDENTIAL_PROVIDER_SERVICES,
+ ApiStatus.SUCCESS, callingUid);
+ return CredentialProviderInfoFactory
+ .getCredentialProviderServices(
+ mContext, userId, providerFilter, getEnabledProvidersForUser(userId),
+ getPrimaryProvidersForUserId(mContext, userId));
- return CredentialProviderInfoFactory.getCredentialProviderServices(
- mContext, userId, providerFilter, getEnabledProvidersForUser(userId),
- getPrimaryProvidersForUserId(mContext, userId));
}
@Override
diff --git a/services/credentials/java/com/android/server/credentials/GetRequestSession.java b/services/credentials/java/com/android/server/credentials/GetRequestSession.java
index 9eb3b3b5b7cd..f95ed6adc8f6 100644
--- a/services/credentials/java/com/android/server/credentials/GetRequestSession.java
+++ b/services/credentials/java/com/android/server/credentials/GetRequestSession.java
@@ -16,6 +16,7 @@
package com.android.server.credentials;
+import android.Manifest;
import android.annotation.Nullable;
import android.content.ComponentName;
import android.content.Context;
@@ -30,9 +31,9 @@ import android.credentials.ui.RequestInfo;
import android.os.CancellationSignal;
import android.os.RemoteException;
import android.service.credentials.CallingAppInfo;
+import android.service.credentials.PermissionUtils;
import android.util.Slog;
-import com.android.server.credentials.metrics.ProviderSessionMetric;
import com.android.server.credentials.metrics.ProviderStatusForMetrics;
import java.util.ArrayList;
@@ -101,7 +102,9 @@ public class GetRequestSession extends RequestSession<GetCredentialRequest,
try {
mPendingIntent = mCredentialManagerUi.createPendingIntent(
RequestInfo.newGetRequestInfo(
- mRequestId, mClientRequest, mClientAppInfo.getPackageName()),
+ mRequestId, mClientRequest, mClientAppInfo.getPackageName(),
+ PermissionUtils.hasPermission(mContext, mClientAppInfo.getPackageName(),
+ Manifest.permission.CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS)),
providerDataList);
mClientCallback.onPendingIntent(mPendingIntent);
} catch (RemoteException e) {
@@ -130,13 +133,8 @@ public class GetRequestSession extends RequestSession<GetCredentialRequest,
public void onFinalResponseReceived(ComponentName componentName,
@Nullable GetCredentialResponse response) {
Slog.i(TAG, "onFinalResponseReceived from: " + componentName.flattenToString());
- mRequestSessionMetric.collectUiResponseData(/*uiReturned=*/ true, System.nanoTime());
- if (mProviders.get(componentName.flattenToString()) != null) {
- ProviderSessionMetric providerSessionMetric =
- mProviders.get(componentName.flattenToString()).mProviderSessionMetric;
- mRequestSessionMetric.collectChosenMetricViaCandidateTransfer(providerSessionMetric
- .getCandidatePhasePerProviderMetric());
- }
+ mRequestSessionMetric.updateMetricsOnResponseReceived(mProviders, componentName,
+ isPrimaryProviderViaProviderInfo(componentName));
if (response != null) {
mRequestSessionMetric.collectChosenProviderStatus(
ProviderStatusForMetrics.FINAL_SUCCESS.getMetricCode());
diff --git a/services/credentials/java/com/android/server/credentials/MetricUtilities.java b/services/credentials/java/com/android/server/credentials/MetricUtilities.java
index f9c44a94f89b..64a73c92ca1f 100644
--- a/services/credentials/java/com/android/server/credentials/MetricUtilities.java
+++ b/services/credentials/java/com/android/server/credentials/MetricUtilities.java
@@ -24,6 +24,7 @@ import android.util.Slog;
import com.android.internal.util.FrameworkStatsLog;
import com.android.server.credentials.metrics.ApiName;
import com.android.server.credentials.metrics.ApiStatus;
+import com.android.server.credentials.metrics.BrowsedAuthenticationMetric;
import com.android.server.credentials.metrics.CandidateAggregateMetric;
import com.android.server.credentials.metrics.CandidateBrowsingPhaseMetric;
import com.android.server.credentials.metrics.CandidatePhaseMetric;
@@ -45,6 +46,7 @@ public class MetricUtilities {
private static final String TAG = "MetricUtilities";
public static final String USER_CANCELED_SUBSTRING = "TYPE_USER_CANCELED";
+ public static final int MIN_EMIT_WAIT_TIME_MS = 10;
public static final int DEFAULT_INT_32 = -1;
public static final String DEFAULT_STRING = "";
@@ -101,6 +103,10 @@ public class MetricUtilities {
if (t2 - t1 > Integer.MAX_VALUE) {
throw new ArithmeticException("Input timestamps are too far apart and unsupported");
}
+ if (t2 < t1) {
+ Slog.i(TAG, "The timestamps aren't in expected order, falling back to default int");
+ return DEFAULT_INT_32;
+ }
return (int) ((t2 - t1) / 1000);
}
@@ -117,7 +123,8 @@ public class MetricUtilities {
}
/**
- * A logging utility used primarily for the final phase of the current metric setup.
+ * A logging utility used primarily for the final phase of the current metric setup, focused on
+ * track 2, where the provider uid is known.
*
* @param finalPhaseMetric the coalesced data of the chosen provider
* @param browsingPhaseMetrics the coalesced data of the browsing phase
@@ -181,7 +188,7 @@ public class MetricUtilities {
finalPhaseMetric.getResponseCollective().getUniqueResponseCounts(),
/* framework_exception_unique_classtype */
finalPhaseMetric.getFrameworkException(),
- /* primary_indicated */ false
+ /* primary_indicated */ finalPhaseMetric.isPrimary()
);
} catch (Exception e) {
Slog.w(TAG, "Unexpected error during final provider uid emit: " + e);
@@ -189,6 +196,86 @@ public class MetricUtilities {
}
/**
+ * This emits the authentication entry metrics for track 2, where the provider uid is known.
+ *
+ * @param authenticationMetric the authentication metric collection to emit with
+ * @param emitSequenceId an emitted sequence id for the current session
+ */
+ public static void logApiCalledAuthenticationMetric(
+ BrowsedAuthenticationMetric authenticationMetric,
+ int emitSequenceId) {
+ try {
+ if (!LOG_FLAG) {
+ return;
+ }
+ FrameworkStatsLog.write(FrameworkStatsLog.CREDENTIAL_MANAGER_AUTH_CLICK_REPORTED,
+ /* session_id */ authenticationMetric.getSessionIdProvider(),
+ /* sequence_num */ emitSequenceId,
+ /* chosen_provider_uid */ authenticationMetric.getProviderUid(),
+ /* unique_response_classtypes */
+ authenticationMetric.getAuthEntryCollective().getUniqueResponseStrings(),
+ /* per_classtype_counts */
+ authenticationMetric.getAuthEntryCollective().getUniqueResponseCounts(),
+ /* unique_entries */
+ authenticationMetric.getAuthEntryCollective().getUniqueEntries(),
+ /* auth_per_entry_counts */
+ authenticationMetric.getAuthEntryCollective().getUniqueEntryCounts(),
+ /* framework_exception_unique_classtype */
+ authenticationMetric.getFrameworkException(),
+ /* exception_specified */ authenticationMetric.isHasException(),
+ /* auth_provider_status */
+ authenticationMetric.getProviderStatus(),
+ /* query_returned */
+ authenticationMetric.isAuthReturned()
+ );
+ } catch (Exception e) {
+ Slog.w(TAG, "Unexpected error during candidate get metric logging: " + e);
+ }
+ }
+
+ /**
+ * A logging utility used primarily for the candidate phase's get responses in the current
+ * metric setup. This helps avoid nested proto-files. This is primarily focused on track 2,
+ * where the provider uid is known. It ensures to run in a separate thread while emitting
+ * the multiple atoms to work with expected emit limits.
+ *
+ * @param providers a map with known providers and their held metric objects
+ * @param emitSequenceId an emitted sequence id for the current session, that matches the
+ * candidate emit value, as these metrics belong with the candidates
+ */
+ public static void logApiCalledCandidateGetMetric(Map<String, ProviderSession> providers,
+ int emitSequenceId) {
+ try {
+ // TODO(b/274954697) : To queue format in future optimizations (metrics POC support)
+ if (!LOG_FLAG) {
+ return;
+ }
+ var sessions = providers.values();
+ for (var session : sessions) {
+ try {
+ var metric = session.getProviderSessionMetric()
+ .getCandidatePhasePerProviderMetric();
+ FrameworkStatsLog.write(
+ FrameworkStatsLog.CREDENTIAL_MANAGER_GET_REPORTED,
+ /* session_id */ metric.getSessionIdProvider(),
+ /* sequence_num */ emitSequenceId,
+ /* candidate_provider_uid */ metric.getCandidateUid(),
+ /* response_unique_classtypes */
+ metric.getResponseCollective().getUniqueResponseStrings(),
+ /* per_classtype_counts */
+ metric.getResponseCollective().getUniqueResponseCounts()
+ );
+ } catch (Exception e) {
+ Slog.w(TAG, "Unexpected exception during get metric logging" + e);
+ }
+ }
+ } catch (Exception e) {
+ Slog.w(TAG, "Unexpected error during candidate get metric logging: " + e);
+ }
+ }
+
+
+ /**
* A logging utility used primarily for the candidate phase of the current metric setup. This
* will primarily focus on track 2, where the session id is associated with known providers,
* but NOT the calling app.
@@ -220,6 +307,7 @@ public class MetricUtilities {
int[] candidateAuthEntryCountList = new int[providerSize];
int[] candidateRemoteEntryCountList = new int[providerSize];
String[] frameworkExceptionList = new String[providerSize];
+ boolean[] candidatePrimaryProviderList = new boolean[providerSize];
int index = 0;
for (var session : providerSessions) {
CandidatePhaseMetric metric = session.mProviderSessionMetric
@@ -252,6 +340,7 @@ public class MetricUtilities {
candidateRemoteEntryCountList[index] = metric.getResponseCollective()
.getCountForEntry(EntryEnum.REMOTE_ENTRY);
frameworkExceptionList[index] = metric.getFrameworkException();
+ candidatePrimaryProviderList[index] = metric.isPrimary();
index++;
}
FrameworkStatsLog.write(FrameworkStatsLog.CREDENTIAL_MANAGER_CANDIDATE_PHASE_REPORTED,
@@ -285,7 +374,7 @@ public class MetricUtilities {
/* api_name */
initialPhaseMetric.getApiName(),
/* primary_candidates_indicated */
- DEFAULT_REPEATED_BOOL
+ candidatePrimaryProviderList
);
} catch (Exception e) {
Slog.w(TAG, "Unexpected error during candidate provider uid metric emit: " + e);
@@ -359,48 +448,62 @@ public class MetricUtilities {
int sequenceNum) {
try {
if (!LOG_FLAG) {
- FrameworkStatsLog.write(FrameworkStatsLog.CREDENTIAL_MANAGER_TOTAL_REPORTED,
- /*session_id*/ candidateAggregateMetric.getSessionIdProvider(),
- /*sequence_num*/ sequenceNum,
- /*query_returned*/ candidateAggregateMetric.isQueryReturned(),
- /*num_providers*/ candidateAggregateMetric.getNumProviders(),
- /*min_query_start_timestamp_microseconds*/
- DEFAULT_INT_32,
- /*max_query_end_timestamp_microseconds*/
- DEFAULT_INT_32,
- /*query_response_unique_classtypes*/
- DEFAULT_REPEATED_STR,
- /*query_per_classtype_counts*/
- DEFAULT_REPEATED_INT_32,
- /*query_unique_entries*/
- DEFAULT_REPEATED_INT_32,
- /*query_per_entry_counts*/
- DEFAULT_REPEATED_INT_32,
- /*query_total_candidate_failure*/
- DEFAULT_INT_32,
- /*query_framework_exception_unique_classtypes*/
- DEFAULT_REPEATED_STR,
- /*query_per_exception_classtype_counts*/
- DEFAULT_REPEATED_INT_32,
- /*auth_response_unique_classtypes*/
- DEFAULT_REPEATED_STR,
- /*auth_per_classtype_counts*/
- DEFAULT_REPEATED_INT_32,
- /*auth_unique_entries*/
- DEFAULT_REPEATED_INT_32,
- /*auth_per_entry_counts*/
- DEFAULT_REPEATED_INT_32,
- /*auth_total_candidate_failure*/
- DEFAULT_INT_32,
- /*auth_framework_exception_unique_classtypes*/
- DEFAULT_REPEATED_STR,
- /*auth_per_exception_classtype_counts*/
- DEFAULT_REPEATED_INT_32,
- /*num_auth_clicks*/
- DEFAULT_INT_32,
- /*auth_returned*/ false
- );
+ return;
}
+ FrameworkStatsLog.write(FrameworkStatsLog.CREDENTIAL_MANAGER_TOTAL_REPORTED,
+ /*session_id*/ candidateAggregateMetric.getSessionIdProvider(),
+ /*sequence_num*/ sequenceNum,
+ /*query_returned*/ candidateAggregateMetric.isQueryReturned(),
+ /*num_query_providers*/ candidateAggregateMetric.getNumProviders(),
+ /*min_query_start_timestamp_microseconds*/
+ getMetricTimestampDifferenceMicroseconds(
+ candidateAggregateMetric.getMinProviderTimestampNanoseconds(),
+ candidateAggregateMetric.getServiceBeganTimeNanoseconds()),
+ /*max_query_end_timestamp_microseconds*/
+ getMetricTimestampDifferenceMicroseconds(
+ candidateAggregateMetric.getMaxProviderTimestampNanoseconds(),
+ candidateAggregateMetric.getServiceBeganTimeNanoseconds()),
+ /*query_response_unique_classtypes*/
+ candidateAggregateMetric.getAggregateCollectiveQuery()
+ .getUniqueResponseStrings(),
+ /*query_per_classtype_counts*/
+ candidateAggregateMetric.getAggregateCollectiveQuery()
+ .getUniqueResponseCounts(),
+ /*query_unique_entries*/
+ candidateAggregateMetric.getAggregateCollectiveQuery()
+ .getUniqueEntries(),
+ /*query_per_entry_counts*/
+ candidateAggregateMetric.getAggregateCollectiveQuery()
+ .getUniqueEntryCounts(),
+ /*query_total_candidate_failure*/
+ candidateAggregateMetric.getTotalQueryFailures(),
+ /*query_framework_exception_unique_classtypes*/
+ candidateAggregateMetric.getUniqueExceptionStringsQuery(),
+ /*query_per_exception_classtype_counts*/
+ candidateAggregateMetric.getUniqueExceptionCountsQuery(),
+ /*auth_response_unique_classtypes*/
+ candidateAggregateMetric.getAggregateCollectiveAuth()
+ .getUniqueResponseStrings(),
+ /*auth_per_classtype_counts*/
+ candidateAggregateMetric.getAggregateCollectiveAuth()
+ .getUniqueResponseCounts(),
+ /*auth_unique_entries*/
+ candidateAggregateMetric.getAggregateCollectiveAuth()
+ .getUniqueEntries(),
+ /*auth_per_entry_counts*/
+ candidateAggregateMetric.getAggregateCollectiveAuth()
+ .getUniqueEntryCounts(),
+ /*auth_total_candidate_failure*/
+ candidateAggregateMetric.getTotalAuthFailures(),
+ /*auth_framework_exception_unique_classtypes*/
+ candidateAggregateMetric.getUniqueExceptionStringsAuth(),
+ /*auth_per_exception_classtype_counts*/
+ candidateAggregateMetric.getUniqueExceptionCountsAuth(),
+ /*num_auth_clicks*/
+ candidateAggregateMetric.getNumAuthEntriesTapped(),
+ /*auth_returned*/
+ candidateAggregateMetric.isAuthReturned()
+ );
} catch (Exception e) {
Slog.w(TAG, "Unexpected error during metric logging: " + e);
}
@@ -464,7 +567,7 @@ public class MetricUtilities {
/* clicked_entries */ browsedClickedEntries,
/* provider_of_clicked_entry */ browsedProviderUid,
/* api_status */ apiStatus,
- /* primary_indicated */ false
+ /* primary_indicated */ finalPhaseMetric.isPrimary()
);
} catch (Exception e) {
Slog.w(TAG, "Unexpected error during metric logging: " + e);
diff --git a/services/credentials/java/com/android/server/credentials/PrepareGetRequestSession.java b/services/credentials/java/com/android/server/credentials/PrepareGetRequestSession.java
index 36bc8baa05dd..f447c1fd277e 100644
--- a/services/credentials/java/com/android/server/credentials/PrepareGetRequestSession.java
+++ b/services/credentials/java/com/android/server/credentials/PrepareGetRequestSession.java
@@ -189,7 +189,9 @@ public class PrepareGetRequestSession extends GetRequestSession {
if (!providerDataList.isEmpty()) {
return mCredentialManagerUi.createPendingIntent(
RequestInfo.newGetRequestInfo(
- mRequestId, mClientRequest, mClientAppInfo.getPackageName()),
+ mRequestId, mClientRequest, mClientAppInfo.getPackageName(),
+ PermissionUtils.hasPermission(mContext, mClientAppInfo.getPackageName(),
+ Manifest.permission.CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS)),
providerDataList);
} else {
return null;
diff --git a/services/credentials/java/com/android/server/credentials/ProviderGetSession.java b/services/credentials/java/com/android/server/credentials/ProviderGetSession.java
index 51af25b58992..14260f0e1ad4 100644
--- a/services/credentials/java/com/android/server/credentials/ProviderGetSession.java
+++ b/services/credentials/java/com/android/server/credentials/ProviderGetSession.java
@@ -269,6 +269,7 @@ public final class ProviderGetSession extends ProviderSession<BeginGetCredential
case AUTHENTICATION_ACTION_ENTRY_KEY:
Action authenticationEntry = mProviderResponseDataHandler
.getAuthenticationAction(entryKey);
+ mProviderSessionMetric.createAuthenticationBrowsingMetric();
if (authenticationEntry == null) {
Slog.i(TAG, "Unexpected authenticationEntry key");
invokeCallbackOnInternalInvalidState();
@@ -423,6 +424,7 @@ public final class ProviderGetSession extends ProviderSession<BeginGetCredential
providerPendingIntentResponse);
if (exception != null) {
// TODO (b/271135048), for AuthenticationEntry callback selection, set error
+ mProviderSessionMetric.collectAuthenticationExceptionStatus(/*hasException*/true);
invokeCallbackWithError(exception.getType(),
exception.getMessage());
// Additional content received is in the form of an exception which ends the flow.
diff --git a/services/credentials/java/com/android/server/credentials/ProviderSession.java b/services/credentials/java/com/android/server/credentials/ProviderSession.java
index 068ca7928117..83f21afa1a32 100644
--- a/services/credentials/java/com/android/server/credentials/ProviderSession.java
+++ b/services/credentials/java/com/android/server/credentials/ProviderSession.java
@@ -214,9 +214,11 @@ public abstract class ProviderSession<T, R>
protected void updateStatusAndInvokeCallback(@NonNull Status status,
CredentialsSource source) {
setStatus(status);
+ boolean isPrimary = mProviderInfo != null && mProviderInfo.isPrimary();
mProviderSessionMetric.collectCandidateMetricUpdate(isTerminatingStatus(status),
isCompletionStatus(status), mProviderSessionUid,
- source == CredentialsSource.AUTH_ENTRY);
+ /*isAuthEntry*/source == CredentialsSource.AUTH_ENTRY,
+ /*isPrimary*/isPrimary);
mCallbacks.onProviderStatusChanged(status, mComponentName, source);
}
/** Common method that transfers metrics from the init phase to candidates */
diff --git a/services/credentials/java/com/android/server/credentials/RequestSession.java b/services/credentials/java/com/android/server/credentials/RequestSession.java
index a41b5713ee14..1988bb6e6e46 100644
--- a/services/credentials/java/com/android/server/credentials/RequestSession.java
+++ b/services/credentials/java/com/android/server/credentials/RequestSession.java
@@ -38,6 +38,7 @@ import android.util.Slog;
import com.android.internal.R;
import com.android.server.credentials.metrics.ApiName;
import com.android.server.credentials.metrics.ApiStatus;
+import com.android.server.credentials.metrics.ProviderSessionMetric;
import com.android.server.credentials.metrics.ProviderStatusForMetrics;
import com.android.server.credentials.metrics.RequestSessionMetric;
@@ -199,10 +200,20 @@ abstract class RequestSession<T, U, V> implements CredentialManagerUi.Credential
Slog.w(TAG, "providerSession not found in onUiSelection. This is strange.");
return;
}
+ ProviderSessionMetric providerSessionMetric = providerSession.mProviderSessionMetric;
+ int initialAuthMetricsProvider = providerSessionMetric.getBrowsedAuthenticationMetric()
+ .size();
mRequestSessionMetric.collectMetricPerBrowsingSelect(selection,
providerSession.mProviderSessionMetric.getCandidatePhasePerProviderMetric());
providerSession.onUiEntrySelected(selection.getEntryKey(),
selection.getEntrySubkey(), selection.getPendingIntentProviderResponse());
+ int numAuthPerProvider = providerSessionMetric.getBrowsedAuthenticationMetric().size();
+ boolean authMetricLogged = (numAuthPerProvider - initialAuthMetricsProvider) == 1;
+ if (authMetricLogged) {
+ mRequestSessionMetric.logAuthEntry(
+ providerSession.mProviderSessionMetric.getBrowsedAuthenticationMetric()
+ .get(numAuthPerProvider - 1));
+ }
}
protected void finishSession(boolean propagateCancellation) {
@@ -210,7 +221,6 @@ abstract class RequestSession<T, U, V> implements CredentialManagerUi.Credential
if (propagateCancellation) {
mProviders.values().forEach(ProviderSession::cancelProviderRemoteSession);
}
- cancelExistingPendingIntent();
mRequestSessionStatus = RequestSessionStatus.COMPLETE;
mProviders.clear();
clearRequestSessionLocked();
@@ -294,6 +304,7 @@ abstract class RequestSession<T, U, V> implements CredentialManagerUi.Credential
* @param response the response associated with the API call that just completed
*/
protected void respondToClientWithResponseAndFinish(V response) {
+ mRequestSessionMetric.logCandidateAggregateMetrics(mProviders);
mRequestSessionMetric.collectFinalPhaseProviderMetricStatus(/*has_exception=*/ false,
ProviderStatusForMetrics.FINAL_SUCCESS);
if (mRequestSessionStatus == RequestSessionStatus.COMPLETE) {
@@ -327,6 +338,7 @@ abstract class RequestSession<T, U, V> implements CredentialManagerUi.Credential
* @param errorMsg the error message given back in the flow
*/
protected void respondToClientWithErrorAndFinish(String errorType, String errorMsg) {
+ mRequestSessionMetric.logCandidateAggregateMetrics(mProviders);
mRequestSessionMetric.collectFinalPhaseProviderMetricStatus(
/*has_exception=*/ true, ProviderStatusForMetrics.FINAL_FAILURE);
if (mRequestSessionStatus == RequestSessionStatus.COMPLETE) {
@@ -349,4 +361,16 @@ abstract class RequestSession<T, U, V> implements CredentialManagerUi.Credential
mRequestSessionMetric.logFailureOrUserCancel(isUserCanceled);
finishSession(/*propagateCancellation=*/false);
}
+
+ /**
+ * Reveals if a certain provider is primary after ensuring it exists at all in the designated
+ * provider info.
+ *
+ * @param componentName used to identify the provider we want to check primary status for
+ */
+ protected boolean isPrimaryProviderViaProviderInfo(ComponentName componentName) {
+ var chosenProviderSession = mProviders.get(componentName.flattenToString());
+ return chosenProviderSession != null && chosenProviderSession.mProviderInfo != null
+ && chosenProviderSession.mProviderInfo.isPrimary();
+ }
}
diff --git a/services/credentials/java/com/android/server/credentials/metrics/ApiName.java b/services/credentials/java/com/android/server/credentials/metrics/ApiName.java
index fd497965b5b1..cb6a5d06e35f 100644
--- a/services/credentials/java/com/android/server/credentials/metrics/ApiName.java
+++ b/services/credentials/java/com/android/server/credentials/metrics/ApiName.java
@@ -24,8 +24,11 @@ import static android.credentials.ui.RequestInfo.TYPE_UNDEFINED;
import static com.android.internal.util.FrameworkStatsLog.CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_CLEAR_CREDENTIAL;
import static com.android.internal.util.FrameworkStatsLog.CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_CREATE_CREDENTIAL;
import static com.android.internal.util.FrameworkStatsLog.CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_GET_CREDENTIAL;
+import static com.android.internal.util.FrameworkStatsLog.CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_GET_CREDENTIAL_PROVIDER_SERVICES;
import static com.android.internal.util.FrameworkStatsLog.CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_GET_CREDENTIAL_VIA_REGISTRY;
import static com.android.internal.util.FrameworkStatsLog.CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_IS_ENABLED_CREDENTIAL_PROVIDER_SERVICE;
+import static com.android.internal.util.FrameworkStatsLog.CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_REGISTER_CREDENTIAL_DESCRIPTION;
+import static com.android.internal.util.FrameworkStatsLog.CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_SET_ENABLED_PROVIDERS;
import static com.android.internal.util.FrameworkStatsLog.CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_UNKNOWN;
import android.credentials.ui.RequestInfo;
@@ -45,6 +48,20 @@ CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_GET_CREDENTIAL_VIA
CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_CLEAR_CREDENTIAL),
IS_ENABLED_CREDENTIAL_PROVIDER_SERVICE(
CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_IS_ENABLED_CREDENTIAL_PROVIDER_SERVICE
+ ),
+
+ SET_ENABLED_PROVIDERS(
+ CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_SET_ENABLED_PROVIDERS),
+
+ GET_CREDENTIAL_PROVIDER_SERVICES(
+ CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_GET_CREDENTIAL_PROVIDER_SERVICES),
+
+ REGISTER_CREDENTIAL_DESCRIPTION(
+ CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_REGISTER_CREDENTIAL_DESCRIPTION
+ ),
+
+ UNREGISTER_CREDENTIAL_DESCRIPTION(
+ CREDENTIAL_MANAGER_INITIAL_PHASE_REPORTED__API_NAME__API_NAME_REGISTER_CREDENTIAL_DESCRIPTION
);
private static final String TAG = "ApiName";
diff --git a/services/credentials/java/com/android/server/credentials/metrics/BrowsedAuthenticationMetric.java b/services/credentials/java/com/android/server/credentials/metrics/BrowsedAuthenticationMetric.java
index 51e86d51acdf..62b8f24eb201 100644
--- a/services/credentials/java/com/android/server/credentials/metrics/BrowsedAuthenticationMetric.java
+++ b/services/credentials/java/com/android/server/credentials/metrics/BrowsedAuthenticationMetric.java
@@ -16,13 +16,33 @@
package com.android.server.credentials.metrics;
+import com.android.server.credentials.metrics.shared.ResponseCollective;
+
+import java.util.Map;
+
/**
* Encapsulates an authentication entry click atom, as a part of track 2.
* Contains information about what was collected from the authentication entry output.
*/
public class BrowsedAuthenticationMetric {
+ private static final String TAG = "AuthenticationMetric";
// The session id of this provider known flow related metric
private final int mSessionIdProvider;
+ // The provider associated with the press, defaults to -1
+ private int mProviderUid = -1;
+
+ // The response objects collected for this authentication entry click, default empty
+ private ResponseCollective mAuthEntryCollective = new ResponseCollective(Map.of(), Map.of());
+
+ // Indicates if an exception was thrown by this provider, false by default
+ private boolean mHasException = false;
+ // Indicates the framework only exception belonging to this provider, defaults to empty string
+ private String mFrameworkException = "";
+ // The status of this particular provider
+ private int mProviderStatus = -1;
+ // Indicates if this provider returned from the authentication entry query, default false
+ private boolean mAuthReturned = false;
+
// TODO(b/271135048) - Match the atom and provide a clean per provider session metric
// encapsulation.
@@ -33,4 +53,53 @@ public class BrowsedAuthenticationMetric {
public int getSessionIdProvider() {
return mSessionIdProvider;
}
+
+ public void setProviderUid(int providerUid) {
+ mProviderUid = providerUid;
+ }
+
+ public int getProviderUid() {
+ return mProviderUid;
+ }
+
+ public void setAuthEntryCollective(
+ ResponseCollective authEntryCollective) {
+ this.mAuthEntryCollective = authEntryCollective;
+ }
+
+ public ResponseCollective getAuthEntryCollective() {
+ return mAuthEntryCollective;
+ }
+
+ public void setHasException(boolean hasException) {
+ mHasException = hasException;
+ }
+
+ public void setFrameworkException(String frameworkException) {
+ mFrameworkException = frameworkException;
+ }
+
+ public void setProviderStatus(int providerStatus) {
+ mProviderStatus = providerStatus;
+ }
+
+ public void setAuthReturned(boolean authReturned) {
+ mAuthReturned = authReturned;
+ }
+
+ public boolean isAuthReturned() {
+ return mAuthReturned;
+ }
+
+ public int getProviderStatus() {
+ return mProviderStatus;
+ }
+
+ public String getFrameworkException() {
+ return mFrameworkException;
+ }
+
+ public boolean isHasException() {
+ return mHasException;
+ }
}
diff --git a/services/credentials/java/com/android/server/credentials/metrics/CandidateAggregateMetric.java b/services/credentials/java/com/android/server/credentials/metrics/CandidateAggregateMetric.java
index 08e75837a274..339c221b0ccc 100644
--- a/services/credentials/java/com/android/server/credentials/metrics/CandidateAggregateMetric.java
+++ b/services/credentials/java/com/android/server/credentials/metrics/CandidateAggregateMetric.java
@@ -17,24 +17,52 @@
package com.android.server.credentials.metrics;
import com.android.server.credentials.ProviderSession;
+import com.android.server.credentials.metrics.shared.ResponseCollective;
+import java.util.LinkedHashMap;
import java.util.Map;
/**
* This will generate most of its data via using the information of {@link CandidatePhaseMetric}
- * across all the providers. This belongs to the metric flow where the calling app is known.
+ * across all the providers. This belongs to the metric flow where the calling app is known. It
+ * also contains {@link BrowsedAuthenticationMetric} data aggregated within.
*/
public class CandidateAggregateMetric {
private static final String TAG = "CandidateProviderMetric";
// The session id of this provider metric
private final int mSessionIdProvider;
- // Indicates if this provider returned from the query phase, default false
+ // Indicates if this provider returned from the candidate query phase,
+ // true if at least one provider returns validly, even if empty, default false
private boolean mQueryReturned = false;
+ // For reference, the initial log timestamp when the service started running the API call,
+ // defaults to -1
+ private long mServiceBeganTimeNanoseconds = -1;
// Indicates the total number of providers this aggregate captures information for, default 0
private int mNumProviders = 0;
+ // Indicates if the authentication entry returned, true if at least one entry returns validly,
+ // even if empty, default false
+ private boolean mAuthReturned = false;
// Indicates the total number of authentication entries that were tapped in aggregate, default 0
private int mNumAuthEntriesTapped = 0;
+ // The combined aggregate collective across the candidate get/create
+ private ResponseCollective mAggregateCollectiveQuery =
+ new ResponseCollective(Map.of(), Map.of());
+ // The combined aggregate collective across the auth entry info
+ private ResponseCollective mAggregateCollectiveAuth =
+ new ResponseCollective(Map.of(), Map.of());
+ // The minimum of all the providers query start time, defaults to -1
+ private long mMinProviderTimestampNanoseconds = -1;
+ // The maximum of all the providers query finish time, defaults to -1
+ private long mMaxProviderTimestampNanoseconds = -1;
+ // The total number of failures across all the providers, defaults to 0
+ private int mTotalQueryFailures = 0;
+ // The map of all seen framework exceptions and their counts across all providers, default empty
+ private Map<String, Integer> mExceptionCountQuery = new LinkedHashMap<>();
+ // The total number of failures across all auth entries, defaults to 0
+ private int mTotalAuthFailures = 0;
+ // The map of all seen framework exceptions and their counts across auth entries, default empty
+ private Map<String, Integer> mExceptionCountAuth = new LinkedHashMap<>();
public CandidateAggregateMetric(int sessionIdTrackOne) {
mSessionIdProvider = sessionIdTrackOne;
@@ -51,14 +79,70 @@ public class CandidateAggregateMetric {
* @param providers the providers associated with the candidate flow
*/
public void collectAverages(Map<String, ProviderSession> providers) {
- // TODO(b/271135048) : Complete this method
+ collectQueryAggregates(providers);
+ collectAuthAggregates(providers);
+ }
+
+ private void collectQueryAggregates(Map<String, ProviderSession> providers) {
mNumProviders = providers.size();
+ Map<String, Integer> responseCountQuery = new LinkedHashMap<>();
+ Map<EntryEnum, Integer> entryCountQuery = new LinkedHashMap<>();
var providerSessions = providers.values();
+ long min_query_start = Integer.MAX_VALUE;
+ long max_query_end = Integer.MIN_VALUE;
for (var session : providerSessions) {
- var metric = session.getProviderSessionMetric();
- mQueryReturned = mQueryReturned || metric
- .mCandidatePhasePerProviderMetric.isQueryReturned();
+ var sessionMetric = session.getProviderSessionMetric();
+ var candidateMetric = sessionMetric.getCandidatePhasePerProviderMetric();
+ if (mServiceBeganTimeNanoseconds == -1) {
+ mServiceBeganTimeNanoseconds = candidateMetric.getServiceBeganTimeNanoseconds();
+ }
+ mQueryReturned = mQueryReturned || candidateMetric.isQueryReturned();
+ ResponseCollective candidateCollective = candidateMetric.getResponseCollective();
+ ResponseCollective.combineTypeCountMaps(responseCountQuery,
+ candidateCollective.getResponseCountsMap());
+ ResponseCollective.combineTypeCountMaps(entryCountQuery,
+ candidateCollective.getEntryCountsMap());
+ min_query_start = Math.min(min_query_start,
+ candidateMetric.getStartQueryTimeNanoseconds());
+ max_query_end = Math.max(max_query_end, candidateMetric
+ .getQueryFinishTimeNanoseconds());
+ mTotalQueryFailures += (candidateMetric.isHasException() ? 1 : 0);
+ if (!candidateMetric.getFrameworkException().isEmpty()) {
+ mExceptionCountQuery.put(candidateMetric.getFrameworkException(),
+ mExceptionCountQuery.getOrDefault(
+ candidateMetric.getFrameworkException(), 0) + 1);
+ }
}
+ mMinProviderTimestampNanoseconds = min_query_start;
+ mMaxProviderTimestampNanoseconds = max_query_end;
+ mAggregateCollectiveQuery = new ResponseCollective(responseCountQuery, entryCountQuery);
+ }
+
+ private void collectAuthAggregates(Map<String, ProviderSession> providers) {
+ mNumProviders = providers.size();
+ Map<String, Integer> responseCountAuth = new LinkedHashMap<>();
+ Map<EntryEnum, Integer> entryCountAuth = new LinkedHashMap<>();
+ var providerSessions = providers.values();
+ for (var session : providerSessions) {
+ var sessionMetric = session.getProviderSessionMetric();
+ var authMetrics = sessionMetric.getBrowsedAuthenticationMetric();
+ mNumAuthEntriesTapped += authMetrics.size();
+ for (var authMetric : authMetrics) {
+ mAuthReturned = mAuthReturned || authMetric.isAuthReturned();
+ ResponseCollective authCollective = authMetric.getAuthEntryCollective();
+ ResponseCollective.combineTypeCountMaps(responseCountAuth,
+ authCollective.getResponseCountsMap());
+ ResponseCollective.combineTypeCountMaps(entryCountAuth,
+ authCollective.getEntryCountsMap());
+ mTotalQueryFailures += (authMetric.isHasException() ? 1 : 0);
+ if (!authMetric.getFrameworkException().isEmpty()) {
+ mExceptionCountQuery.put(authMetric.getFrameworkException(),
+ mExceptionCountQuery.getOrDefault(
+ authMetric.getFrameworkException(), 0) + 1);
+ }
+ }
+ }
+ mAggregateCollectiveAuth = new ResponseCollective(responseCountAuth, entryCountAuth);
}
public int getNumProviders() {
@@ -69,7 +153,83 @@ public class CandidateAggregateMetric {
return mQueryReturned;
}
+
public int getNumAuthEntriesTapped() {
return mNumAuthEntriesTapped;
}
+
+ public ResponseCollective getAggregateCollectiveQuery() {
+ return mAggregateCollectiveQuery;
+ }
+
+ public ResponseCollective getAggregateCollectiveAuth() {
+ return mAggregateCollectiveAuth;
+ }
+
+ public boolean isAuthReturned() {
+ return mAuthReturned;
+ }
+
+ public long getMaxProviderTimestampNanoseconds() {
+ return mMaxProviderTimestampNanoseconds;
+ }
+
+ public long getMinProviderTimestampNanoseconds() {
+ return mMinProviderTimestampNanoseconds;
+ }
+
+ public int getTotalQueryFailures() {
+ return mTotalQueryFailures;
+ }
+
+ /**
+ * Returns the unique, deduped, exception classtypes for logging associated with this provider.
+ *
+ * @return a string array for deduped exception classtypes
+ */
+ public String[] getUniqueExceptionStringsQuery() {
+ String[] result = new String[mExceptionCountQuery.keySet().size()];
+ mExceptionCountQuery.keySet().toArray(result);
+ return result;
+ }
+
+ /**
+ * Returns the unique, deduped, exception classtype counts for logging associated with this
+ * provider.
+ *
+ * @return a string array for deduped classtype exception counts
+ */
+ public int[] getUniqueExceptionCountsQuery() {
+ return mExceptionCountQuery.values().stream().mapToInt(Integer::intValue).toArray();
+ }
+
+ /**
+ * Returns the unique, deduped, exception classtypes for logging associated with this provider
+ * for auth entries.
+ *
+ * @return a string array for deduped exception classtypes for auth entries
+ */
+ public String[] getUniqueExceptionStringsAuth() {
+ String[] result = new String[mExceptionCountAuth.keySet().size()];
+ mExceptionCountAuth.keySet().toArray(result);
+ return result;
+ }
+
+ /**
+ * Returns the unique, deduped, exception classtype counts for logging associated with this
+ * provider for auth entries.
+ *
+ * @return a string array for deduped classtype exception counts for auth entries
+ */
+ public int[] getUniqueExceptionCountsAuth() {
+ return mExceptionCountAuth.values().stream().mapToInt(Integer::intValue).toArray();
+ }
+
+ public long getServiceBeganTimeNanoseconds() {
+ return mServiceBeganTimeNanoseconds;
+ }
+
+ public int getTotalAuthFailures() {
+ return mTotalAuthFailures;
+ }
}
diff --git a/services/credentials/java/com/android/server/credentials/metrics/CandidatePhaseMetric.java b/services/credentials/java/com/android/server/credentials/metrics/CandidatePhaseMetric.java
index d9bf4a134adb..56140f367263 100644
--- a/services/credentials/java/com/android/server/credentials/metrics/CandidatePhaseMetric.java
+++ b/services/credentials/java/com/android/server/credentials/metrics/CandidatePhaseMetric.java
@@ -59,6 +59,8 @@ public class CandidatePhaseMetric {
// Stores the response credential information, as well as the response entry information which
// by default, contains empty info
private ResponseCollective mResponseCollective = new ResponseCollective(Map.of(), Map.of());
+ // Indicates if this candidate is a primary provider, false by default
+ private boolean mIsPrimary = false;
public CandidatePhaseMetric(int sessionIdTrackTwo) {
mSessionIdProvider = sessionIdTrackTwo;
@@ -185,4 +187,12 @@ public class CandidatePhaseMetric {
public String getFrameworkException() {
return mFrameworkException;
}
+
+ public void setPrimary(boolean primary) {
+ mIsPrimary = primary;
+ }
+
+ public boolean isPrimary() {
+ return mIsPrimary;
+ }
}
diff --git a/services/credentials/java/com/android/server/credentials/metrics/ChosenProviderFinalPhaseMetric.java b/services/credentials/java/com/android/server/credentials/metrics/ChosenProviderFinalPhaseMetric.java
index e8af86012aaf..468d3c80707c 100644
--- a/services/credentials/java/com/android/server/credentials/metrics/ChosenProviderFinalPhaseMetric.java
+++ b/services/credentials/java/com/android/server/credentials/metrics/ChosenProviderFinalPhaseMetric.java
@@ -76,6 +76,8 @@ public class ChosenProviderFinalPhaseMetric {
// Stores the response credential information, as well as the response entry information which
// by default, contains empty info
private ResponseCollective mResponseCollective = new ResponseCollective(Map.of(), Map.of());
+ // Indicates if this chosen provider was the primary provider, false by default
+ private boolean mIsPrimary = false;
public ChosenProviderFinalPhaseMetric(int sessionIdCaller, int sessionIdProvider) {
@@ -292,4 +294,12 @@ public class ChosenProviderFinalPhaseMetric {
public int getSessionIdCaller() {
return mSessionIdCaller;
}
+
+ public void setPrimary(boolean primary) {
+ mIsPrimary = primary;
+ }
+
+ public boolean isPrimary() {
+ return mIsPrimary;
+ }
}
diff --git a/services/credentials/java/com/android/server/credentials/metrics/ProviderSessionMetric.java b/services/credentials/java/com/android/server/credentials/metrics/ProviderSessionMetric.java
index 47db8f59ff35..44d845eaaf43 100644
--- a/services/credentials/java/com/android/server/credentials/metrics/ProviderSessionMetric.java
+++ b/services/credentials/java/com/android/server/credentials/metrics/ProviderSessionMetric.java
@@ -28,6 +28,7 @@ import android.util.Slog;
import com.android.server.credentials.MetricUtilities;
import com.android.server.credentials.metrics.shared.ResponseCollective;
+import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
@@ -47,13 +48,17 @@ public class ProviderSessionMetric {
protected final CandidatePhaseMetric mCandidatePhasePerProviderMetric;
// IFF there was an authentication entry clicked, this stores all required information for
- // that event. This is for the 'get' flow.
+ // that event. This is for the 'get' flow. Notice these flows may be repetitive.
+ // Thus each provider stores a list of authentication metrics. The time between emits
+ // of these metrics should exceed 10 ms (given human reaction time is ~ 100's of ms), so emits
+ // will never collide. However, for aggregation, this will store information accordingly.
@NonNull
- protected final BrowsedAuthenticationMetric mBrowsedAuthenticationMetric;
+ protected final List<BrowsedAuthenticationMetric> mBrowsedAuthenticationMetric =
+ new ArrayList<>();
public ProviderSessionMetric(int sessionIdTrackTwo) {
mCandidatePhasePerProviderMetric = new CandidatePhaseMetric(sessionIdTrackTwo);
- mBrowsedAuthenticationMetric = new BrowsedAuthenticationMetric(sessionIdTrackTwo);
+ mBrowsedAuthenticationMetric.add(new BrowsedAuthenticationMetric(sessionIdTrackTwo));
}
/**
@@ -63,6 +68,12 @@ public class ProviderSessionMetric {
return mCandidatePhasePerProviderMetric;
}
+ /**
+ * Retrieves the authentication clicked metric information.
+ */
+ public List<BrowsedAuthenticationMetric> getBrowsedAuthenticationMetric() {
+ return mBrowsedAuthenticationMetric;
+ }
/**
* This collects for ProviderSessions, with respect to the candidate providers, whether
@@ -71,7 +82,30 @@ public class ProviderSessionMetric {
* @param hasException indicates if the candidate provider associated with an exception
*/
public void collectCandidateExceptionStatus(boolean hasException) {
- mCandidatePhasePerProviderMetric.setHasException(hasException);
+ try {
+ mCandidatePhasePerProviderMetric.setHasException(hasException);
+ } catch (Exception e) {
+ Slog.i(TAG, "Error while setting candidate metric exception " + e);
+ }
+ }
+
+ /**
+ * This collects for ProviderSessions, with respect to the authentication entry provider,
+ * if an exception occurred in the authentication entry click. It's expected that these
+ * collections always occur after at least 1 authentication metric has been collected
+ * for the provider associated with this metric encapsulation.
+ *
+ * @param hasException indicates if the candidate provider from an authentication entry
+ * associated with an exception
+ */
+ public void collectAuthenticationExceptionStatus(boolean hasException) {
+ try {
+ BrowsedAuthenticationMetric mostRecentAuthenticationMetric =
+ getUsedAuthenticationMetric();
+ mostRecentAuthenticationMetric.setHasException(hasException);
+ } catch (Exception e) {
+ Slog.i(TAG, "Error while setting authentication metric exception " + e);
+ }
}
/**
@@ -88,9 +122,25 @@ public class ProviderSessionMetric {
private void collectAuthEntryUpdate(boolean isFailureStatus,
boolean isCompletionStatus, int providerSessionUid) {
- // TODO(b/271135048) - Mimic typical candidate update, but with authentication metric
- // Collect the final timestamps (and start timestamp), status, exceptions and the provider
- // uid. This occurs typically *after* the collection is complete.
+ BrowsedAuthenticationMetric mostRecentAuthenticationMetric =
+ getUsedAuthenticationMetric();
+ mostRecentAuthenticationMetric.setProviderUid(providerSessionUid);
+ if (isFailureStatus) {
+ mostRecentAuthenticationMetric.setAuthReturned(false);
+ mostRecentAuthenticationMetric.setProviderStatus(
+ ProviderStatusForMetrics.QUERY_FAILURE
+ .getMetricCode());
+ } else if (isCompletionStatus) {
+ mostRecentAuthenticationMetric.setAuthReturned(true);
+ mostRecentAuthenticationMetric.setProviderStatus(
+ ProviderStatusForMetrics.QUERY_SUCCESS
+ .getMetricCode());
+ }
+ }
+
+ private BrowsedAuthenticationMetric getUsedAuthenticationMetric() {
+ return mBrowsedAuthenticationMetric
+ .get(mBrowsedAuthenticationMetric.size() - 1);
}
/**
@@ -99,14 +149,17 @@ public class ProviderSessionMetric {
* @param isFailureStatus indicates the candidate provider sent back a terminated response
* @param isCompletionStatus indicates the candidate provider sent back a completion response
* @param providerSessionUid the uid of the provider
+ * @param isPrimary indicates if this candidate provider was the primary provider
*/
public void collectCandidateMetricUpdate(boolean isFailureStatus,
- boolean isCompletionStatus, int providerSessionUid, boolean isAuthEntry) {
+ boolean isCompletionStatus, int providerSessionUid, boolean isAuthEntry,
+ boolean isPrimary) {
try {
if (isAuthEntry) {
collectAuthEntryUpdate(isFailureStatus, isCompletionStatus, providerSessionUid);
return;
}
+ mCandidatePhasePerProviderMetric.setPrimary(isPrimary);
mCandidatePhasePerProviderMetric.setCandidateUid(providerSessionUid);
mCandidatePhasePerProviderMetric
.setQueryFinishTimeNanoseconds(System.nanoTime());
@@ -197,6 +250,17 @@ public class ProviderSessionMetric {
mCandidatePhasePerProviderMetric.setResponseCollective(responseCollective);
}
+ /**
+ * This sets up an authentication metric collector to the flow. This must be called before
+ * any logical edits are done in a new authentication entry metric collection.
+ */
+ public void createAuthenticationBrowsingMetric() {
+ BrowsedAuthenticationMetric browsedAuthenticationMetric =
+ new BrowsedAuthenticationMetric(mCandidatePhasePerProviderMetric
+ .getSessionIdProvider());
+ mBrowsedAuthenticationMetric.add(browsedAuthenticationMetric);
+ }
+
private void beginCreateCredentialResponseCollectionCandidateEntryMetrics(
BeginCreateCredentialResponse response) {
Map<EntryEnum, Integer> entryCounts = new LinkedHashMap<>();
@@ -240,7 +304,10 @@ public class ProviderSessionMetric {
if (!isAuthEntry) {
mCandidatePhasePerProviderMetric.setResponseCollective(responseCollective);
} else {
- // TODO(b/immediately) - Add the auth entry get logic
+ // The most recent auth entry must be created already
+ var browsedAuthenticationMetric =
+ mBrowsedAuthenticationMetric.get(mBrowsedAuthenticationMetric.size() - 1);
+ browsedAuthenticationMetric.setAuthEntryCollective(responseCollective);
}
}
}
diff --git a/services/credentials/java/com/android/server/credentials/metrics/RequestSessionMetric.java b/services/credentials/java/com/android/server/credentials/metrics/RequestSessionMetric.java
index 03ffe23f9886..281f3cc705be 100644
--- a/services/credentials/java/com/android/server/credentials/metrics/RequestSessionMetric.java
+++ b/services/credentials/java/com/android/server/credentials/metrics/RequestSessionMetric.java
@@ -16,14 +16,19 @@
package com.android.server.credentials.metrics;
+import static com.android.server.credentials.MetricUtilities.DEFAULT_INT_32;
import static com.android.server.credentials.MetricUtilities.DELTA_EXCEPTION_CUT;
import static com.android.server.credentials.MetricUtilities.DELTA_RESPONSES_CUT;
import static com.android.server.credentials.MetricUtilities.generateMetricKey;
+import static com.android.server.credentials.MetricUtilities.logApiCalledAggregateCandidate;
+import static com.android.server.credentials.MetricUtilities.logApiCalledAuthenticationMetric;
+import static com.android.server.credentials.MetricUtilities.logApiCalledCandidateGetMetric;
import static com.android.server.credentials.MetricUtilities.logApiCalledCandidatePhase;
import static com.android.server.credentials.MetricUtilities.logApiCalledFinalPhase;
import static com.android.server.credentials.MetricUtilities.logApiCalledNoUidFinal;
import android.annotation.NonNull;
+import android.content.ComponentName;
import android.credentials.GetCredentialRequest;
import android.credentials.ui.UserSelectionDialogResult;
import android.util.Slog;
@@ -52,7 +57,6 @@ public class RequestSessionMetric {
protected final InitialPhaseMetric mInitialPhaseMetric;
protected final ChosenProviderFinalPhaseMetric
mChosenProviderFinalPhaseMetric;
- // TODO(b/271135048) - Replace this with a new atom per each browsing emit (V4)
protected List<CandidateBrowsingPhaseMetric> mCandidateBrowsingPhaseMetric = new ArrayList<>();
// Specific aggregate candidate provider metric for the provider this session handles
@NonNull
@@ -100,8 +104,6 @@ public class RequestSessionMetric {
* @param timestampStarted the timestamp the service begins at
* @param mCallingUid the calling process's uid
* @param metricCode typically pulled from {@link ApiName}
- * @param callingAppFlowUniqueInt the unique integer used as the session id for the calling app
- * known flow
*/
public void collectInitialPhaseMetricInfo(long timestampStarted,
int mCallingUid, int metricCode) {
@@ -214,9 +216,8 @@ public class RequestSessionMetric {
/**
* During browsing, where multiple entries can be selected, this collects the browsing phase
- * metric information.
- * TODO(b/271135048) - modify asap to account for a new metric emit per browse response to
- * framework.
+ * metric information. This is emitted together with the final phase, and the recursive path
+ * with authentication entries, which may occur in rare circumstances, are captured.
*
* @param selection contains the selected entry key type
* @param selectedProviderPhaseMetric contains the utility information of the selected provider
@@ -281,6 +282,26 @@ public class RequestSessionMetric {
}
/**
+ * Used to update metrics when a response is received in a RequestSession.
+ *
+ * @param componentName the component name associated with the provider the response is for
+ */
+ public void updateMetricsOnResponseReceived(Map<String, ProviderSession> providers,
+ ComponentName componentName, boolean isPrimary) {
+ try {
+ var chosenProviderSession = providers.get(componentName.flattenToString());
+ if (chosenProviderSession != null) {
+ ProviderSessionMetric providerSessionMetric =
+ chosenProviderSession.getProviderSessionMetric();
+ collectChosenMetricViaCandidateTransfer(providerSessionMetric
+ .getCandidatePhasePerProviderMetric(), isPrimary);
+ }
+ } catch (Exception e) {
+ Slog.i(TAG, "Exception upon candidate to chosen metric transfer: " + e);
+ }
+ }
+
+ /**
* Called by RequestSessions upon chosen metric determination. It's expected that most bits
* are transferred here. However, certain new information, such as the selected provider's final
* exception bit, the framework to ui and back latency, or the ui response bit are set at other
@@ -289,10 +310,13 @@ public class RequestSessionMetric {
* {@link com.android.internal.util.FrameworkStatsLog} metric generation.
*
* @param candidatePhaseMetric the componentName to associate with a provider
+ * @param isPrimary indicates that this chosen provider is the primary provider (or not)
*/
- public void collectChosenMetricViaCandidateTransfer(CandidatePhaseMetric candidatePhaseMetric) {
+ public void collectChosenMetricViaCandidateTransfer(CandidatePhaseMetric candidatePhaseMetric,
+ boolean isPrimary) {
try {
mChosenProviderFinalPhaseMetric.setChosenUid(candidatePhaseMetric.getCandidateUid());
+ mChosenProviderFinalPhaseMetric.setPrimary(isPrimary);
mChosenProviderFinalPhaseMetric.setQueryPhaseLatencyMicroseconds(
candidatePhaseMetric.getQueryLatencyMicroseconds());
@@ -343,6 +367,7 @@ public class RequestSessionMetric {
public void logCandidatePhaseMetrics(Map<String, ProviderSession> providers) {
try {
logApiCalledCandidatePhase(providers, ++mSequenceCounter, mInitialPhaseMetric);
+ logApiCalledCandidateGetMetric(providers, mSequenceCounter);
} catch (Exception e) {
Slog.i(TAG, "Unexpected error during candidate metric emit: " + e);
}
@@ -357,12 +382,35 @@ public class RequestSessionMetric {
public void logCandidateAggregateMetrics(Map<String, ProviderSession> providers) {
try {
mCandidateAggregateMetric.collectAverages(providers);
+ logApiCalledAggregateCandidate(mCandidateAggregateMetric, ++mSequenceCounter);
} catch (Exception e) {
Slog.i(TAG, "Unexpected error during aggregate candidate logging " + e);
}
}
/**
+ * This logs the authentication entry when browsed. Combined with the known browsed clicks
+ * in the {@link ChosenProviderFinalPhaseMetric}, this fully captures the authentication entry
+ * logic for multiple loops. An auth entry may have default or missing data, but if a provider
+ * was never assigned to an auth entry, this indicates an auth entry was never clicked.
+ * This case is handled in this emit.
+ *
+ * @param browsedAuthenticationMetric the authentication metric information to emit
+ */
+ public void logAuthEntry(BrowsedAuthenticationMetric browsedAuthenticationMetric) {
+ try {
+ if (browsedAuthenticationMetric.getProviderUid() == DEFAULT_INT_32) {
+ Slog.v(TAG, "An authentication entry was not clicked");
+ return;
+ }
+ logApiCalledAuthenticationMetric(browsedAuthenticationMetric, ++mSequenceCounter);
+ } catch (Exception e) {
+ Slog.i(TAG, "Unexpected error during metric logging: " + e);
+ }
+
+ }
+
+ /**
* Handles the final logging for RequestSession context for the final phase.
*
* @param apiStatus the final status of the api being called
diff --git a/services/credentials/java/com/android/server/credentials/metrics/shared/ResponseCollective.java b/services/credentials/java/com/android/server/credentials/metrics/shared/ResponseCollective.java
index fd785c2f4dfc..0958a841fe7e 100644
--- a/services/credentials/java/com/android/server/credentials/metrics/shared/ResponseCollective.java
+++ b/services/credentials/java/com/android/server/credentials/metrics/shared/ResponseCollective.java
@@ -20,6 +20,7 @@ import android.annotation.NonNull;
import com.android.server.credentials.metrics.EntryEnum;
+import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -70,6 +71,24 @@ public class ResponseCollective {
}
/**
+ * Returns an unmodifiable map of the entry counts, safe under the immutability of the
+ * class the original map is held within.
+ * @return an unmodifiable map of the entry : counts
+ */
+ public Map<EntryEnum, Integer> getEntryCountsMap() {
+ return Collections.unmodifiableMap(mEntryCounts);
+ }
+
+ /**
+ * Returns an unmodifiable map of the response counts, safe under the immutability of the
+ * class the original map is held within.
+ * @return an unmodifiable map of the response : counts
+ */
+ public Map<String, Integer> getResponseCountsMap() {
+ return Collections.unmodifiableMap(mResponseCounts);
+ }
+
+ /**
* Returns the unique, deduped, response classtype counts for logging associated with this
* provider.
* @return a string array for deduped classtype counts
@@ -112,4 +131,44 @@ public class ResponseCollective {
public int getNumEntriesTotal() {
return mEntryCounts.values().stream().mapToInt(Integer::intValue).sum();
}
+
+ /**
+ * This combines the current collective with another collective, only if that other
+ * collective is indeed a differing one in memory.
+ * @param other the other response collective to combine with
+ * @return a combined {@link ResponseCollective} object
+ */
+ public ResponseCollective combineCollectives(ResponseCollective other) {
+ if (this == other) {
+ return this;
+ }
+
+ Map<String, Integer> responseCounts = new LinkedHashMap<>(other.mResponseCounts);
+ for (String response : mResponseCounts.keySet()) {
+ responseCounts.merge(response, mResponseCounts.get(response), Integer::sum);
+ }
+
+ Map<EntryEnum, Integer> entryCounts = new LinkedHashMap<>(other.mEntryCounts);
+ for (EntryEnum entry : mEntryCounts.keySet()) {
+ entryCounts.merge(entry, mEntryCounts.get(entry), Integer::sum);
+ }
+
+ return new ResponseCollective(responseCounts, entryCounts);
+ }
+
+ /**
+ * Given two maps of type : counts, this combines the second into the first, to get an aggregate
+ * deduped type:count output.
+ * @param first the first map of some type to counts used as the base
+ * @param second the second map of some type to counts that mixies with the first
+ * @param <T> The type of the object we are mix-deduping - i.e. responses or entries.
+ * @return the first map updated with the second map's information for type:counts
+ */
+ public static <T> Map<T, Integer> combineTypeCountMaps(Map<T, Integer> first,
+ Map<T, Integer> second) {
+ for (T response : second.keySet()) {
+ first.merge(response, first.getOrDefault(response, 0), Integer::sum);
+ }
+ return first;
+ }
}
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java
index 641a03b931c4..1392d0232262 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java
@@ -81,6 +81,10 @@ import java.util.Set;
final class DevicePolicyEngine {
static final String TAG = "DevicePolicyEngine";
+ // TODO(b/281701062): reference role name from role manager once its exposed.
+ static final String DEVICE_LOCK_CONTROLLER_ROLE =
+ "android.app.role.SYSTEM_FINANCED_DEVICE_CONTROLLER";
+
private static final String CELLULAR_2G_USER_RESTRICTION_ID =
DevicePolicyIdentifiers.getIdentifierForUserRestriction(
UserManager.DISALLOW_CELLULAR_2G);
@@ -1010,11 +1014,21 @@ final class DevicePolicyEngine {
/**
* Handles internal state related to packages getting updated.
*/
- void handlePackageChanged(@Nullable String updatedPackage, int userId) {
+ void handlePackageChanged(@Nullable String updatedPackage, int userId, boolean packageRemoved) {
if (updatedPackage == null) {
return;
}
- updateDeviceAdminServiceOnPackageChanged(updatedPackage, userId);
+ if (packageRemoved) {
+ Set<EnforcingAdmin> admins = getEnforcingAdminsOnUser(userId);
+ for (EnforcingAdmin admin : admins) {
+ if (admin.getPackageName().equals(updatedPackage)) {
+ // remove policies for the uninstalled package
+ removePoliciesForAdmin(admin);
+ }
+ }
+ } else {
+ updateDeviceAdminServiceOnPackageChanged(updatedPackage, userId);
+ }
}
/**
@@ -1032,6 +1046,28 @@ final class DevicePolicyEngine {
enforcePoliciesOnInheritableProfilesIfApplicable(user);
}
+ /**
+ * Handles internal state related to roles getting updated.
+ */
+ void handleRoleChanged(@NonNull String roleName, int userId) {
+ // TODO(b/256852787): handle all roles changing.
+ if (!DEVICE_LOCK_CONTROLLER_ROLE.equals(roleName)) {
+ // We only support device lock controller role for now.
+ return;
+ }
+ String roleAuthority = EnforcingAdmin.getRoleAuthorityOf(roleName);
+ Set<EnforcingAdmin> admins = getEnforcingAdminsOnUser(userId);
+ for (EnforcingAdmin admin : admins) {
+ if (admin.hasAuthority(roleAuthority)) {
+ admin.reloadRoleAuthorities();
+ // remove admin policies if role was lost
+ if (!admin.hasAuthority(roleAuthority)) {
+ removePoliciesForAdmin(admin);
+ }
+ }
+ }
+ }
+
private void enforcePoliciesOnInheritableProfilesIfApplicable(UserInfo user) {
if (!user.isProfile()) {
return;
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
index 02c6d6849cca..ef45ceedb7f2 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
@@ -259,7 +259,6 @@ import android.Manifest.permission;
import android.accessibilityservice.AccessibilityServiceInfo;
import android.accounts.Account;
import android.accounts.AccountManager;
-import android.accounts.AccountManagerFuture;
import android.accounts.AuthenticatorException;
import android.accounts.OperationCanceledException;
import android.annotation.IntDef;
@@ -1450,8 +1449,8 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
&& (owner.getPackageName().equals(packageName))) {
startOwnerService(userHandle, "package-broadcast");
}
- if (isPermissionCheckFlagEnabled()) {
- mDevicePolicyEngine.handlePackageChanged(packageName, userHandle);
+ if (isPolicyEngineForFinanceFlagEnabled() || isPermissionCheckFlagEnabled()) {
+ mDevicePolicyEngine.handlePackageChanged(packageName, userHandle, removedAdmin);
}
// Persist updates if the removed package was an admin or delegate.
if (removedAdmin || removedDelegate) {
@@ -12294,13 +12293,18 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
EnforcingAdmin admin = enforcePermissionAndGetEnforcingAdmin(
who, MANAGE_DEVICE_POLICY_INPUT_METHODS,
caller.getPackageName(), userId);
- mDevicePolicyEngine.setLocalPolicy(
- PolicyDefinition.PERMITTED_INPUT_METHODS,
- admin,
- packageList == null
- ? null
- : new StringSetPolicyValue(new HashSet<>(packageList)),
- userId);
+ if (packageList == null) {
+ mDevicePolicyEngine.removeLocalPolicy(
+ PolicyDefinition.PERMITTED_INPUT_METHODS,
+ admin,
+ userId);
+ } else {
+ mDevicePolicyEngine.setLocalPolicy(
+ PolicyDefinition.PERMITTED_INPUT_METHODS,
+ admin,
+ new StringSetPolicyValue(new HashSet<>(packageList)),
+ userId);
+ }
} else {
ActiveAdmin admin = getParentOfAdminIfRequired(
getProfileOwnerOrDeviceOwnerLocked(caller.getUserId()),
@@ -12337,14 +12341,14 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
}
CallerIdentity caller;
- if (isPermissionCheckFlagEnabled()) {
+ if (isPolicyEngineForFinanceFlagEnabled()) {
caller = getCallerIdentity(who, callerPackageName);
} else {
caller = getCallerIdentity(who);
Objects.requireNonNull(who, "ComponentName is null");
}
- if (!isPermissionCheckFlagEnabled()) {
+ if (!isPolicyEngineForFinanceFlagEnabled()) {
if (calledOnParentInstance) {
Preconditions.checkCallAuthorization(
isProfileOwnerOfOrganizationOwnedDevice(caller));
@@ -12742,7 +12746,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
final int userId = user.id;
- if (isPermissionCheckFlagEnabled()) {
+ if (isPolicyEngineForFinanceFlagEnabled() || isPermissionCheckFlagEnabled()) {
mDevicePolicyEngine.handleUserCreated(user);
}
@@ -14268,7 +14272,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
resultSet.add(accountType);
}
}
-
} else {
caller = getCallerIdentity();
Preconditions.checkCallAuthorization(hasFullCrossUsersPermission(caller, userId));
@@ -15153,6 +15156,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
for (ActiveAdmin admin : policy.mAdminList) {
final boolean ownsDevice = isDeviceOwner(admin.info.getComponent(), userHandle);
final boolean ownsProfile = isProfileOwner(admin.info.getComponent(), userHandle);
+ // TODO(b/281738975): Should we be logging this for all admins?
if (ownsDevice || ownsProfile) {
if (isEnabled) {
sendAdminCommandLocked(admin, DeviceAdminReceiver.ACTION_LOCK_TASK_ENTERING,
@@ -15169,6 +15173,20 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
}
}
}
+ // TODO(b/281738975): Should we be logging this for all admins?
+ for(EnforcingAdmin admin : mDevicePolicyEngine.getLocalPoliciesSetByAdmins(
+ PolicyDefinition.LOCK_TASK, userHandle).keySet()) {
+ if (admin.hasAuthority(EnforcingAdmin.DPC_AUTHORITY)) {
+ // already handled above
+ continue;
+ }
+ DevicePolicyEventLogger
+ .createEvent(DevicePolicyEnums.SET_LOCKTASK_MODE_ENABLED)
+ .setAdmin(admin.getPackageName())
+ .setBoolean(isEnabled)
+ .setStrings(pkg)
+ .write();
+ }
}
@Override
@@ -22681,6 +22699,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
@Override
public void onRoleHoldersChanged(@NonNull String roleName, @NonNull UserHandle user) {
+ mDevicePolicyEngine.handleRoleChanged(roleName, user.getIdentifier());
if (RoleManager.ROLE_DEVICE_POLICY_MANAGEMENT.equals(roleName)) {
handleDevicePolicyManagementRoleChange(user);
return;
@@ -24065,13 +24084,15 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
private boolean hasNonTestOnlyActiveAdmins() {
return mInjector.binderWithCleanCallingIdentity(() -> {
for (UserInfo userInfo : mUserManager.getUsers()) {
- List<ComponentName> activeAdmins = getActiveAdmins(userInfo.id);
- if (activeAdmins == null) {
- continue;
- }
- for (ComponentName admin : activeAdmins) {
- if (!isAdminTestOnlyLocked(admin, userInfo.id)) {
- return true;
+ synchronized (getLockObject()) {
+ List<ComponentName> activeAdmins = getActiveAdmins(userInfo.id);
+ if (activeAdmins == null) {
+ continue;
+ }
+ for (ComponentName admin : activeAdmins) {
+ if (!isAdminTestOnlyLocked(admin, userInfo.id)) {
+ return true;
+ }
}
}
}
@@ -24081,7 +24102,8 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
private boolean shouldMigrateToDevicePolicyEngine() {
return mInjector.binderWithCleanCallingIdentity(() ->
- isPermissionCheckFlagEnabled() && !mOwners.isMigratedToPolicyEngine());
+ (isPermissionCheckFlagEnabled() || isPolicyEngineForFinanceFlagEnabled())
+ && !mOwners.isMigratedToPolicyEngine());
}
/**
@@ -24090,13 +24112,21 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
private boolean migratePoliciesToDevicePolicyEngine() {
return mInjector.binderWithCleanCallingIdentity(() -> {
try {
- Slogf.i(LOG_TAG, "Started device policies migration to the device policy engine.");
- migrateAutoTimezonePolicy();
- migratePermissionGrantStatePolicies();
- // TODO(b/258811766): add migration logic for all policies
+ synchronized (getLockObject()) {
+ Slogf.i(LOG_TAG,
+ "Started device policies migration to the device policy engine.");
+ if (isUnicornFlagEnabled()) {
+ migrateAutoTimezonePolicy();
+ migratePermissionGrantStatePolicies();
+ }
+ migrateScreenCapturePolicyLocked();
+ migratePermittedInputMethodsPolicyLocked();
+ migrateAccountManagementDisabledPolicyLocked();
+ migrateUserControlDisabledPackagesLocked();
- mOwners.markMigrationToPolicyEngine();
- return true;
+ mOwners.markMigrationToPolicyEngine();
+ return true;
+ }
} catch (Exception e) {
mDevicePolicyEngine.clearAllPolicies();
Slogf.e(LOG_TAG, e, "Error occurred during device policy migration, will "
@@ -24160,6 +24190,136 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
}
}
+ private void migrateScreenCapturePolicyLocked() {
+ Binder.withCleanCallingIdentity(() -> {
+ if (mPolicyCache.getScreenCaptureDisallowedUser() == UserHandle.USER_NULL) {
+ return;
+ }
+ ActiveAdmin admin = getDeviceOwnerOrProfileOwnerOfOrganizationOwnedDeviceLocked();
+ if (admin != null
+ && ((isDeviceOwner(admin) && admin.disableScreenCapture)
+ || (admin.getParentActiveAdmin() != null
+ && admin.getParentActiveAdmin().disableScreenCapture))) {
+ EnforcingAdmin enforcingAdmin = EnforcingAdmin.createEnterpriseEnforcingAdmin(
+ admin.info.getComponent(),
+ admin.getUserHandle().getIdentifier(),
+ admin);
+ mDevicePolicyEngine.setGlobalPolicy(
+ PolicyDefinition.SCREEN_CAPTURE_DISABLED,
+ enforcingAdmin,
+ new BooleanPolicyValue(true));
+ }
+
+ List<UserInfo> users = mUserManager.getUsers();
+ for (UserInfo userInfo : users) {
+ ActiveAdmin profileOwner = getProfileOwnerLocked(userInfo.id);
+ if (profileOwner != null && profileOwner.disableScreenCapture) {
+ EnforcingAdmin enforcingAdmin = EnforcingAdmin.createEnterpriseEnforcingAdmin(
+ profileOwner.info.getComponent(),
+ profileOwner.getUserHandle().getIdentifier(),
+ profileOwner);
+ mDevicePolicyEngine.setLocalPolicy(
+ PolicyDefinition.SCREEN_CAPTURE_DISABLED,
+ enforcingAdmin,
+ new BooleanPolicyValue(true),
+ profileOwner.getUserHandle().getIdentifier());
+ }
+ }
+ });
+ }
+
+ private void migratePermittedInputMethodsPolicyLocked() {
+ Binder.withCleanCallingIdentity(() -> {
+ List<UserInfo> users = mUserManager.getUsers();
+ for (UserInfo userInfo : users) {
+ ActiveAdmin admin = getProfileOwnerOrDeviceOwnerLocked(userInfo.id);
+ if (admin != null) {
+ EnforcingAdmin enforcingAdmin = EnforcingAdmin.createEnterpriseEnforcingAdmin(
+ admin.info.getComponent(),
+ admin.getUserHandle().getIdentifier(),
+ admin);
+ if (admin.permittedInputMethods != null) {
+ mDevicePolicyEngine.setLocalPolicy(
+ PolicyDefinition.PERMITTED_INPUT_METHODS,
+ enforcingAdmin,
+ new StringSetPolicyValue(
+ new HashSet<>(admin.permittedInputMethods)),
+ admin.getUserHandle().getIdentifier());
+ }
+ if (admin.getParentActiveAdmin() != null
+ && admin.getParentActiveAdmin().permittedInputMethods != null) {
+ mDevicePolicyEngine.setLocalPolicy(
+ PolicyDefinition.PERMITTED_INPUT_METHODS,
+ enforcingAdmin,
+ new StringSetPolicyValue(
+ new HashSet<>(admin.getParentActiveAdmin()
+ .permittedInputMethods)),
+ getProfileParentId(admin.getUserHandle().getIdentifier()));
+ }
+ }
+ }
+ });
+ }
+
+ private void migrateAccountManagementDisabledPolicyLocked() {
+ Binder.withCleanCallingIdentity(() -> {
+ List<UserInfo> users = mUserManager.getUsers();
+ for (UserInfo userInfo : users) {
+ ActiveAdmin admin = getProfileOwnerOrDeviceOwnerLocked(userInfo.id);
+ if (admin != null) {
+ EnforcingAdmin enforcingAdmin = EnforcingAdmin.createEnterpriseEnforcingAdmin(
+ admin.info.getComponent(),
+ admin.getUserHandle().getIdentifier(),
+ admin);
+ for (String accountType : admin.accountTypesWithManagementDisabled) {
+ mDevicePolicyEngine.setLocalPolicy(
+ PolicyDefinition.ACCOUNT_MANAGEMENT_DISABLED(accountType),
+ enforcingAdmin,
+ new BooleanPolicyValue(true),
+ admin.getUserHandle().getIdentifier());
+ }
+ if (admin.getParentActiveAdmin() != null) {
+ for (String accountType : admin.getParentActiveAdmin()
+ .accountTypesWithManagementDisabled) {
+ mDevicePolicyEngine.setLocalPolicy(
+ PolicyDefinition.ACCOUNT_MANAGEMENT_DISABLED(accountType),
+ enforcingAdmin,
+ new BooleanPolicyValue(true),
+ getProfileParentId(admin.getUserHandle().getIdentifier()));
+ }
+ }
+ }
+ }
+ });
+ }
+
+ private void migrateUserControlDisabledPackagesLocked() {
+ Binder.withCleanCallingIdentity(() -> {
+ List<UserInfo> users = mUserManager.getUsers();
+ for (UserInfo userInfo : users) {
+ ActiveAdmin admin = getProfileOwnerOrDeviceOwnerLocked(userInfo.id);
+ if (admin != null && admin.protectedPackages != null) {
+ EnforcingAdmin enforcingAdmin = EnforcingAdmin.createEnterpriseEnforcingAdmin(
+ admin.info.getComponent(),
+ admin.getUserHandle().getIdentifier(),
+ admin);
+ if (isDeviceOwner(admin)) {
+ mDevicePolicyEngine.setGlobalPolicy(
+ PolicyDefinition.USER_CONTROLLED_DISABLED_PACKAGES,
+ enforcingAdmin,
+ new StringSetPolicyValue(new HashSet<>(admin.protectedPackages)));
+ } else {
+ mDevicePolicyEngine.setLocalPolicy(
+ PolicyDefinition.USER_CONTROLLED_DISABLED_PACKAGES,
+ enforcingAdmin,
+ new StringSetPolicyValue(new HashSet<>(admin.protectedPackages)),
+ admin.getUserHandle().getIdentifier());
+ }
+ }
+ }
+ });
+ }
+
private List<PackageInfo> getInstalledPackagesOnUser(int userId) {
return mInjector.binderWithCleanCallingIdentity(() ->
mContext.getPackageManager().getInstalledPackagesAsUser(
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java b/services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java
index 7ed148bd76f1..3ed2d34be6df 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java
@@ -93,22 +93,6 @@ final class EnforcingAdmin {
activeAdmin);
}
-
- static EnforcingAdmin createEnterpriseEnforcingAdmin(
- @NonNull String packageName, int userId) {
- Objects.requireNonNull(packageName);
- return new EnforcingAdmin(
- packageName, /* componentName= */ null, Set.of(DPC_AUTHORITY), userId,
- /* activeAdmin= */ null);
- }
-
- static EnforcingAdmin createDeviceAdminEnforcingAdmin(ComponentName componentName, int userId) {
- Objects.requireNonNull(componentName);
- return new EnforcingAdmin(
- componentName.getPackageName(), componentName, Set.of(DEVICE_ADMIN_AUTHORITY),
- userId, /* activeAdmin=*/ null);
- }
-
static EnforcingAdmin createDeviceAdminEnforcingAdmin(ComponentName componentName, int userId,
ActiveAdmin activeAdmin) {
Objects.requireNonNull(componentName);
@@ -190,12 +174,18 @@ final class EnforcingAdmin {
}
private Set<String> getAuthorities() {
- if (mAuthorities == null) {
+ if (mAuthorities == null && mIsRoleAuthority) {
mAuthorities = getRoleAuthoritiesOrDefault(mPackageName, mUserId);
}
return mAuthorities;
}
+ void reloadRoleAuthorities() {
+ if (mIsRoleAuthority) {
+ mAuthorities = getRoleAuthoritiesOrDefault(mPackageName, mUserId);
+ }
+ }
+
boolean hasAuthority(String authority) {
return getAuthorities().contains(authority);
}
@@ -304,6 +294,7 @@ final class EnforcingAdmin {
int userId = parser.getAttributeInt(/* namespace= */ null, ATTR_USER_ID);
if (isRoleAuthority) {
+ // TODO(b/281697976): load active admin
return new EnforcingAdmin(packageName, userId, null);
} else {
String className = parser.getAttributeValue(/* namespace= */ null, ATTR_CLASS_NAME);
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/PolicyDefinition.java b/services/devicepolicy/java/com/android/server/devicepolicy/PolicyDefinition.java
index bac39e021d2f..7e5bb0bb40ba 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/PolicyDefinition.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/PolicyDefinition.java
@@ -16,6 +16,8 @@
package com.android.server.devicepolicy;
+import static com.android.server.devicepolicy.DevicePolicyEngine.DEVICE_LOCK_CONTROLLER_ROLE;
+
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.app.admin.AccountTypePolicyKey;
@@ -131,9 +133,7 @@ final class PolicyDefinition<V> {
static PolicyDefinition<LockTaskPolicy> LOCK_TASK = new PolicyDefinition<>(
new NoArgsPolicyKey(DevicePolicyIdentifiers.LOCK_TASK_POLICY),
new TopPriority<>(List.of(
- // TODO(b/258166155): add correct device lock role name
- EnforcingAdmin.getRoleAuthorityOf(
- "android.app.role.SYSTEM_FINANCED_DEVICE_CONTROLLER"),
+ EnforcingAdmin.getRoleAuthorityOf(DEVICE_LOCK_CONTROLLER_ROLE),
EnforcingAdmin.DPC_AUTHORITY)),
POLICY_FLAG_LOCAL_ONLY_POLICY,
(LockTaskPolicy value, Context context, Integer userId, PolicyKey policyKey) ->
@@ -157,9 +157,7 @@ final class PolicyDefinition<V> {
new IntentFilterPolicyKey(
DevicePolicyIdentifiers.PERSISTENT_PREFERRED_ACTIVITY_POLICY),
new TopPriority<>(List.of(
- // TODO(b/258166155): add correct device lock role name
- EnforcingAdmin.getRoleAuthorityOf(
- "android.app.role.SYSTEM_FINANCED_DEVICE_CONTROLLER"),
+ EnforcingAdmin.getRoleAuthorityOf(DEVICE_LOCK_CONTROLLER_ROLE),
EnforcingAdmin.DPC_AUTHORITY)),
POLICY_FLAG_LOCAL_ONLY_POLICY,
PolicyEnforcerCallbacks::addPersistentPreferredActivity,
diff --git a/services/robotests/backup/src/com/android/server/backup/BackupManagerServiceRoboTest.java b/services/robotests/backup/src/com/android/server/backup/BackupManagerServiceRoboTest.java
index 91dcd50f176a..94ee0a871448 100644
--- a/services/robotests/backup/src/com/android/server/backup/BackupManagerServiceRoboTest.java
+++ b/services/robotests/backup/src/com/android/server/backup/BackupManagerServiceRoboTest.java
@@ -33,7 +33,6 @@ import static org.mockito.Mockito.mock;
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 static org.robolectric.Shadows.shadowOf;
import static org.testng.Assert.expectThrows;
@@ -119,10 +118,6 @@ public class BackupManagerServiceRoboTest {
mShadowUserManager.addUser(mUserOneId, "mUserOneId", 0);
mShadowUserManager.addUser(mUserTwoId, "mUserTwoId", 0);
- when(mUserSystemService.getUserId()).thenReturn(UserHandle.USER_SYSTEM);
- when(mUserOneService.getUserId()).thenReturn(mUserOneId);
- when(mUserTwoService.getUserId()).thenReturn(mUserTwoId);
-
mShadowContext.grantPermissions(BACKUP);
mShadowContext.grantPermissions(INTERACT_ACROSS_USERS_FULL);
@@ -1474,9 +1469,9 @@ public class BackupManagerServiceRoboTest {
File testFile = createTestFile();
FileDescriptor fileDescriptor = new FileDescriptor();
PrintWriter printWriter = new PrintWriter(testFile);
+ String[] args = {"1", "2"};
ShadowBinder.setCallingUserHandle(UserHandle.of(UserHandle.USER_SYSTEM));
- String[] args = {"--user", "0"};
backupManagerService.dump(fileDescriptor, printWriter, args);
verify(mUserSystemService).dump(fileDescriptor, printWriter, args);
@@ -1490,8 +1485,8 @@ public class BackupManagerServiceRoboTest {
File testFile = createTestFile();
FileDescriptor fileDescriptor = new FileDescriptor();
PrintWriter printWriter = new PrintWriter(testFile);
+ String[] args = {"1", "2"};
- String[] args = {"--user", "10"};
backupManagerService.dump(fileDescriptor, printWriter, args);
verify(mUserOneService, never()).dump(fileDescriptor, printWriter, args);
diff --git a/services/tests/InputMethodSystemServerTests/src/com/android/server/inputmethod/InputMethodManagerServiceTestBase.java b/services/tests/InputMethodSystemServerTests/src/com/android/server/inputmethod/InputMethodManagerServiceTestBase.java
index c80ecbf62142..1a8e00cab39d 100644
--- a/services/tests/InputMethodSystemServerTests/src/com/android/server/inputmethod/InputMethodManagerServiceTestBase.java
+++ b/services/tests/InputMethodSystemServerTests/src/com/android/server/inputmethod/InputMethodManagerServiceTestBase.java
@@ -207,6 +207,8 @@ public class InputMethodManagerServiceTestBase {
when(mMockActivityManagerInternal.isSystemReady()).thenReturn(true);
when(mMockPackageManagerInternal.getPackageUid(anyString(), anyLong(), anyInt()))
.thenReturn(Binder.getCallingUid());
+ when(mMockPackageManagerInternal.isSameApp(anyString(), anyLong(), anyInt(), anyInt()))
+ .thenReturn(true);
when(mMockWindowManagerInternal.onToggleImeRequested(anyBoolean(), any(), any(), anyInt()))
.thenReturn(TEST_IME_TARGET_INFO);
when(mMockInputMethodClient.asBinder()).thenReturn(mMockInputMethodBinder);
diff --git a/services/tests/mockingservicestests/src/com/android/server/backup/BackupManagerServiceTest.java b/services/tests/mockingservicestests/src/com/android/server/backup/BackupManagerServiceTest.java
index f99e156ed139..b203cf640097 100644
--- a/services/tests/mockingservicestests/src/com/android/server/backup/BackupManagerServiceTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/backup/BackupManagerServiceTest.java
@@ -63,7 +63,6 @@ import com.android.server.SystemService;
import com.android.server.backup.utils.RandomAccessFileUtils;
import org.junit.After;
-import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -616,53 +615,6 @@ public class BackupManagerServiceTest {
verify(mNonSystemUserBackupManagerService, never()).dump(any(), any(), any());
}
- @Test
- public void testDumpForOneUser_callerDoesNotHaveInteractAcrossUsersFullPermission_ignored() {
- createBackupManagerServiceAndUnlockSystemUser();
- mService.setBackupServiceActive(NON_SYSTEM_USER, true);
- simulateUserUnlocked(NON_SYSTEM_USER);
-
- doThrow(new SecurityException())
- .when(mContextMock)
- .enforceCallingOrSelfPermission(
- eq(Manifest.permission.INTERACT_ACROSS_USERS_FULL), anyString());
-
- String[] args = new String[]{"--user", Integer.toString(NON_SYSTEM_USER)};
- Assert.assertThrows(SecurityException.class,
- () -> mService.dumpWithoutCheckingPermission(mFileDescriptorStub, mPrintWriterMock,
- args));
-
- verify(mNonSystemUserBackupManagerService, never()).dump(any(), any(), any());
- }
-
- @Test
- public void
- testDumpForOneUser_callerHasInteractAcrossUsersFullPermission_dumpsOnlySpecifiedUser() {
- createBackupManagerServiceAndUnlockSystemUser();
- mService.setBackupServiceActive(NON_SYSTEM_USER, true);
- simulateUserUnlocked(NON_SYSTEM_USER);
-
- String[] args = new String[]{"--user", Integer.toString(UserHandle.USER_SYSTEM)};
- mService.dumpWithoutCheckingPermission(mFileDescriptorStub, mPrintWriterMock, args);
-
- verify(mSystemUserBackupManagerService).dump(any(), any(), any());
- }
-
- @Test
- public void testDumpForAllUsers_callerHasInteractAcrossUsersFullPermission_dumpsAllUsers() {
- createBackupManagerServiceAndUnlockSystemUser();
- mService.setBackupServiceActive(NON_SYSTEM_USER, true);
- simulateUserUnlocked(NON_SYSTEM_USER);
-
- String[] args = new String[]{"users"};
- mService.dumpWithoutCheckingPermission(mFileDescriptorStub, mPrintWriterMock, args);
-
- // Check that dump() invocations are not called on user's Backup service,
- // as 'dumpsys backup users' only list users for whom Backup service is running.
- verify(mSystemUserBackupManagerService, never()).dump(any(), any(), any());
- verify(mNonSystemUserBackupManagerService, never()).dump(any(), any(), any());
- }
-
/**
* Test that {@link BackupManagerService#dump(FileDescriptor, PrintWriter, String[])} dumps
* system user information before non-system user information.
diff --git a/services/tests/mockingservicestests/src/com/android/server/backup/UserBackupManagerServiceTest.java b/services/tests/mockingservicestests/src/com/android/server/backup/UserBackupManagerServiceTest.java
index 3480af62e6c4..dc1c6d57dfdb 100644
--- a/services/tests/mockingservicestests/src/com/android/server/backup/UserBackupManagerServiceTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/backup/UserBackupManagerServiceTest.java
@@ -31,6 +31,7 @@ import static org.mockito.Mockito.never;
import static org.mockito.Mockito.when;
import android.app.backup.BackupAgent;
+import android.app.backup.BackupAnnotations;
import android.app.backup.BackupAnnotations.BackupDestination;
import android.app.backup.BackupRestoreEventLogger.DataTypeResult;
import android.app.backup.IBackupManagerMonitor;
@@ -246,7 +247,8 @@ public class UserBackupManagerServiceTest {
mService.reportDelayedRestoreResult(TEST_PACKAGE, results);
verify(() -> BackupManagerMonitorUtils.sendAgentLoggingResults(
- eq(mBackupManagerMonitor), eq(packageInfo), eq(results)));
+ eq(mBackupManagerMonitor), eq(packageInfo), eq(results), eq(
+ BackupAnnotations.OperationType.RESTORE)));
}
private static PackageInfo getPackageInfo(String packageName) {
diff --git a/services/tests/mockingservicestests/src/com/android/server/backup/utils/BackupManagerMonitorUtilsTest.java b/services/tests/mockingservicestests/src/com/android/server/backup/utils/BackupManagerMonitorUtilsTest.java
index 87ade963e121..093ad3cc7bb3 100644
--- a/services/tests/mockingservicestests/src/com/android/server/backup/utils/BackupManagerMonitorUtilsTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/backup/utils/BackupManagerMonitorUtilsTest.java
@@ -21,6 +21,7 @@ import static android.app.backup.BackupManagerMonitor.EXTRA_LOG_EVENT_ID;
import static android.app.backup.BackupManagerMonitor.EXTRA_LOG_EVENT_PACKAGE_LONG_VERSION;
import static android.app.backup.BackupManagerMonitor.EXTRA_LOG_EVENT_PACKAGE_NAME;
import static android.app.backup.BackupManagerMonitor.EXTRA_LOG_EVENT_PACKAGE_VERSION;
+import static android.app.backup.BackupManagerMonitor.EXTRA_LOG_OPERATION_TYPE;
import static android.app.backup.BackupManagerMonitor.LOG_EVENT_CATEGORY_AGENT;
import static android.app.backup.BackupManagerMonitor.LOG_EVENT_ID_AGENT_LOGGING_RESULTS;
@@ -33,6 +34,8 @@ import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import android.app.IBackupAgent;
+import android.app.backup.BackupAnnotations;
+import android.app.backup.BackupAnnotations.OperationType;
import android.app.backup.BackupManagerMonitor;
import android.app.backup.BackupRestoreEventLogger;
import android.app.backup.IBackupManagerMonitor;
@@ -155,50 +158,94 @@ public class BackupManagerMonitorUtilsTest {
}
@Test
- public void monitorAgentLoggingResults_fillsBundleCorrectly() throws Exception {
+ public void monitorAgentLoggingResults_onBackup_fillsBundleCorrectly() throws Exception {
PackageInfo packageInfo = new PackageInfo();
packageInfo.packageName = "test.package";
// Mock an agent that returns a logging result.
+ IBackupAgent agent = setUpLoggingAgentForOperation(OperationType.BACKUP);
+
+ IBackupManagerMonitor monitor =
+ BackupManagerMonitorUtils.monitorAgentLoggingResults(
+ mMonitorMock, packageInfo, agent);
+
+ assertCorrectBundleSentToMonitor(monitor, OperationType.BACKUP);
+ }
+
+ @Test
+ public void monitorAgentLoggingResults_onRestore_fillsBundleCorrectly() throws Exception {
+ PackageInfo packageInfo = new PackageInfo();
+ packageInfo.packageName = "test.package";
+ // Mock an agent that returns a logging result.
+ IBackupAgent agent = setUpLoggingAgentForOperation(OperationType.RESTORE);
+
+ IBackupManagerMonitor monitor =
+ BackupManagerMonitorUtils.monitorAgentLoggingResults(
+ mMonitorMock, packageInfo, agent);
+
+ assertCorrectBundleSentToMonitor(monitor, OperationType.RESTORE);
+ }
+
+ private IBackupAgent setUpLoggingAgentForOperation(@OperationType int operationType)
+ throws Exception {
IBackupAgent agent = spy(IBackupAgent.class);
List<BackupRestoreEventLogger.DataTypeResult> loggingResults = new ArrayList<>();
loggingResults.add(new BackupRestoreEventLogger.DataTypeResult("testLoggingResult"));
doAnswer(
- invocation -> {
- AndroidFuture<List<BackupRestoreEventLogger.DataTypeResult>> in =
- invocation.getArgument(0);
- in.complete(loggingResults);
- return null;
- })
+ invocation -> {
+ AndroidFuture<List<BackupRestoreEventLogger.DataTypeResult>> in =
+ invocation.getArgument(0);
+ in.complete(loggingResults);
+ return null;
+ })
.when(agent)
.getLoggerResults(any());
+ doAnswer(
+ invocation -> {
+ AndroidFuture<Integer> in = invocation.getArgument(0);
+ in.complete(operationType);
+ return null;
+ })
+ .when(agent)
+ .getOperationType(any());
+ return agent;
+ }
- IBackupManagerMonitor monitor =
- BackupManagerMonitorUtils.monitorAgentLoggingResults(
- mMonitorMock, packageInfo, agent);
+ @Test
+ public void sendAgentLoggingResults_onBackup_fillsBundleCorrectly() throws Exception {
+ PackageInfo packageInfo = new PackageInfo();
+ packageInfo.packageName = "test.package";
+ List<BackupRestoreEventLogger.DataTypeResult> loggingResults = new ArrayList<>();
+ loggingResults.add(new BackupRestoreEventLogger.DataTypeResult("testLoggingResult"));
+
+ IBackupManagerMonitor monitor = BackupManagerMonitorUtils.sendAgentLoggingResults(
+ mMonitorMock, packageInfo, loggingResults, OperationType.BACKUP);
- assertCorrectBundleSentToMonitor(monitor);
+ assertCorrectBundleSentToMonitor(monitor, OperationType.BACKUP);
}
@Test
- public void sendAgentLoggingResults_fillsBundleCorrectly() throws Exception {
+ public void sendAgentLoggingResults_onRestore_fillsBundleCorrectly() throws Exception {
PackageInfo packageInfo = new PackageInfo();
packageInfo.packageName = "test.package";
List<BackupRestoreEventLogger.DataTypeResult> loggingResults = new ArrayList<>();
loggingResults.add(new BackupRestoreEventLogger.DataTypeResult("testLoggingResult"));
IBackupManagerMonitor monitor = BackupManagerMonitorUtils.sendAgentLoggingResults(
- mMonitorMock, packageInfo, loggingResults);
+ mMonitorMock, packageInfo, loggingResults, OperationType.RESTORE);
- assertCorrectBundleSentToMonitor(monitor);
+ assertCorrectBundleSentToMonitor(monitor, OperationType.RESTORE);
}
- private void assertCorrectBundleSentToMonitor(IBackupManagerMonitor monitor) throws Exception {
+ private void assertCorrectBundleSentToMonitor(IBackupManagerMonitor monitor,
+ @OperationType int operationType) throws Exception {
assertThat(monitor).isEqualTo(mMonitorMock);
ArgumentCaptor<Bundle> bundleCaptor = ArgumentCaptor.forClass(Bundle.class);
verify(mMonitorMock).onEvent(bundleCaptor.capture());
Bundle eventBundle = bundleCaptor.getValue();
+ assertThat(eventBundle.getInt(EXTRA_LOG_OPERATION_TYPE))
+ .isEqualTo(operationType);
assertThat(eventBundle.getInt(EXTRA_LOG_EVENT_ID))
.isEqualTo(LOG_EVENT_ID_AGENT_LOGGING_RESULTS);
assertThat(eventBundle.getInt(EXTRA_LOG_EVENT_CATEGORY))
diff --git a/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationControllerTest.java b/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationControllerTest.java
index a01c7bdd5144..e6ef044d4791 100644
--- a/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationControllerTest.java
+++ b/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationControllerTest.java
@@ -60,6 +60,7 @@ import android.view.accessibility.MagnificationAnimationCallback;
import androidx.test.InstrumentationRegistry;
import androidx.test.runner.AndroidJUnit4;
+import com.android.internal.util.ConcurrentUtils;
import com.android.internal.util.test.FakeSettingsProvider;
import com.android.server.LocalServices;
import com.android.server.accessibility.AccessibilityTraceManager;
@@ -160,7 +161,8 @@ public class FullScreenMagnificationControllerTest {
new Object(),
mRequestObserver,
mScaleProvider,
- () -> mMockThumbnail);
+ () -> mMockThumbnail,
+ ConcurrentUtils.DIRECT_EXECUTOR);
}
@After
diff --git a/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandlerTest.java b/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandlerTest.java
index cf5ba270999e..2d4bf144155c 100644
--- a/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandlerTest.java
+++ b/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandlerTest.java
@@ -54,6 +54,7 @@ import android.view.ViewConfiguration;
import androidx.test.runner.AndroidJUnit4;
+import com.android.internal.util.ConcurrentUtils;
import com.android.server.accessibility.AccessibilityManagerService;
import com.android.server.accessibility.AccessibilityTraceManager;
import com.android.server.accessibility.EventStreamTransformation;
@@ -170,8 +171,8 @@ public class FullScreenMagnificationGestureHandlerTest {
new Object(),
mMagnificationInfoChangedCallback,
new MagnificationScaleProvider(mContext),
- () -> null
- ) {
+ () -> null,
+ ConcurrentUtils.DIRECT_EXECUTOR) {
@Override
public boolean magnificationRegionContains(int displayId, float x, float y) {
return true;
diff --git a/services/tests/servicestests/src/com/android/server/accessibility/magnification/MagnificationControllerTest.java b/services/tests/servicestests/src/com/android/server/accessibility/magnification/MagnificationControllerTest.java
index 37ebdda9efc8..e75fc2149080 100644
--- a/services/tests/servicestests/src/com/android/server/accessibility/magnification/MagnificationControllerTest.java
+++ b/services/tests/servicestests/src/com/android/server/accessibility/magnification/MagnificationControllerTest.java
@@ -64,6 +64,7 @@ import androidx.annotation.NonNull;
import androidx.test.InstrumentationRegistry;
import androidx.test.runner.AndroidJUnit4;
+import com.android.internal.util.ConcurrentUtils;
import com.android.internal.util.test.FakeSettingsProvider;
import com.android.server.LocalServices;
import com.android.server.accessibility.AccessibilityManagerService;
@@ -199,7 +200,8 @@ public class MagnificationControllerTest {
new Object(),
mScreenMagnificationInfoChangedCallbackDelegate,
mScaleProvider,
- () -> null
+ () -> null,
+ ConcurrentUtils.DIRECT_EXECUTOR
));
mScreenMagnificationController.register(TEST_DISPLAY);
@@ -209,7 +211,8 @@ public class MagnificationControllerTest {
mWindowMagnificationManager.setConnection(mMockConnection.getConnection());
mMagnificationController = spy(new MagnificationController(mService, globalLock, mContext,
- mScreenMagnificationController, mWindowMagnificationManager, mScaleProvider));
+ mScreenMagnificationController, mWindowMagnificationManager, mScaleProvider,
+ ConcurrentUtils.DIRECT_EXECUTOR));
mMagnificationController.setMagnificationCapabilities(
Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_ALL);
diff --git a/services/tests/servicestests/src/com/android/server/biometrics/AuthServiceTest.java b/services/tests/servicestests/src/com/android/server/biometrics/AuthServiceTest.java
index 4b86dd048cd1..85d159c25be2 100644
--- a/services/tests/servicestests/src/com/android/server/biometrics/AuthServiceTest.java
+++ b/services/tests/servicestests/src/com/android/server/biometrics/AuthServiceTest.java
@@ -367,7 +367,7 @@ public class AuthServiceTest {
waitForIdle();
verify(mBiometricService).registerEnabledOnKeyguardCallback(
- eq(callback), eq(UserHandle.getCallingUserId()));
+ eq(callback));
}
private static void setInternalAndTestBiometricPermissions(
diff --git a/services/tests/servicestests/src/com/android/server/biometrics/BiometricServiceTest.java b/services/tests/servicestests/src/com/android/server/biometrics/BiometricServiceTest.java
index b51a8c4e1b6c..46fa3abe5122 100644
--- a/services/tests/servicestests/src/com/android/server/biometrics/BiometricServiceTest.java
+++ b/services/tests/servicestests/src/com/android/server/biometrics/BiometricServiceTest.java
@@ -48,6 +48,7 @@ import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
import android.app.IActivityManager;
@@ -55,12 +56,14 @@ import android.app.admin.DevicePolicyManager;
import android.app.trust.ITrustManager;
import android.content.ContentResolver;
import android.content.Context;
+import android.content.pm.UserInfo;
import android.content.res.Resources;
import android.hardware.biometrics.BiometricAuthenticator;
import android.hardware.biometrics.BiometricConstants;
import android.hardware.biometrics.BiometricManager;
import android.hardware.biometrics.BiometricPrompt;
import android.hardware.biometrics.IBiometricAuthenticator;
+import android.hardware.biometrics.IBiometricEnabledOnKeyguardCallback;
import android.hardware.biometrics.IBiometricSensorReceiver;
import android.hardware.biometrics.IBiometricService;
import android.hardware.biometrics.IBiometricServiceReceiver;
@@ -75,6 +78,7 @@ import android.hardware.fingerprint.FingerprintSensorPropertiesInternal;
import android.os.Binder;
import android.os.IBinder;
import android.os.RemoteException;
+import android.os.UserManager;
import android.platform.test.annotations.Presubmit;
import android.security.KeyStore;
import android.view.Display;
@@ -152,6 +156,8 @@ public class BiometricServiceTest {
private ISessionListener mSessionListener;
@Mock
private AuthSessionCoordinator mAuthSessionCoordinator;
+ @Mock
+ private UserManager mUserManager;
BiometricContextProvider mBiometricContextProvider;
@@ -177,6 +183,7 @@ public class BiometricServiceTest {
when(mInjector.getTrustManager()).thenReturn(mTrustManager);
when(mInjector.getDevicePolicyManager(any())).thenReturn(mDevicePolicyManager);
when(mInjector.getRequestGenerator()).thenReturn(() -> TEST_REQUEST_ID);
+ when(mInjector.getUserManager(any())).thenReturn(mUserManager);
when(mResources.getString(R.string.biometric_error_hw_unavailable))
.thenReturn(ERROR_HW_UNAVAILABLE);
@@ -1597,6 +1604,33 @@ public class BiometricServiceTest {
verify(mReceiver2, never()).onError(anyInt(), anyInt(), anyInt());
}
+ @Test
+ public void testRegisterEnabledOnKeyguardCallback() throws RemoteException {
+ final UserInfo userInfo1 = new UserInfo(0 /* userId */, "user1" /* name */, 0 /* flags */);
+ final UserInfo userInfo2 = new UserInfo(10 /* userId */, "user2" /* name */, 0 /* flags */);
+ final List<UserInfo> aliveUsers = List.of(userInfo1, userInfo2);
+ final IBiometricEnabledOnKeyguardCallback callback =
+ mock(IBiometricEnabledOnKeyguardCallback.class);
+
+ mBiometricService = new BiometricService(mContext, mInjector);
+
+ when(mUserManager.getAliveUsers()).thenReturn(aliveUsers);
+ when(mBiometricService.mSettingObserver.getEnabledOnKeyguard(userInfo1.id))
+ .thenReturn(true);
+ when(mBiometricService.mSettingObserver.getEnabledOnKeyguard(userInfo2.id))
+ .thenReturn(false);
+ when(callback.asBinder()).thenReturn(mock(IBinder.class));
+
+ mBiometricService.mImpl.registerEnabledOnKeyguardCallback(callback);
+
+ waitForIdle();
+
+ verify(callback).asBinder();
+ verify(callback).onChanged(true, userInfo1.id);
+ verify(callback).onChanged(false, userInfo2.id);
+ verifyNoMoreInteractions(callback);
+ }
+
// Helper methods
private int invokeCanAuthenticate(BiometricService service, int authenticators)
diff --git a/services/tests/servicestests/src/com/android/server/companion/virtual/SensorControllerTest.java b/services/tests/servicestests/src/com/android/server/companion/virtual/SensorControllerTest.java
index aea8b8658984..6a45d5f7823d 100644
--- a/services/tests/servicestests/src/com/android/server/companion/virtual/SensorControllerTest.java
+++ b/services/tests/servicestests/src/com/android/server/companion/virtual/SensorControllerTest.java
@@ -70,8 +70,7 @@ public class SensorControllerTest {
LocalServices.removeServiceForTest(SensorManagerInternal.class);
LocalServices.addService(SensorManagerInternal.class, mSensorManagerInternalMock);
- mSensorController =
- new SensorController(new Object(), VIRTUAL_DEVICE_ID, mVirtualSensorCallback);
+ mSensorController = new SensorController(VIRTUAL_DEVICE_ID, mVirtualSensorCallback);
mSensorEvent = new VirtualSensorEvent.Builder(new float[] { 1f, 2f, 3f}).build();
mVirtualSensorConfig =
new VirtualSensorConfig.Builder(Sensor.TYPE_ACCELEROMETER, VIRTUAL_SENSOR_NAME)
diff --git a/services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java b/services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java
index c8c1d6f0f7ed..8884dba217ed 100644
--- a/services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java
+++ b/services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java
@@ -359,8 +359,7 @@ public class VirtualDeviceManagerServiceTest {
mInputController = new InputController(mNativeWrapperMock,
new Handler(TestableLooper.get(this).getLooper()),
mContext.getSystemService(WindowManager.class), threadVerifier);
- mSensorController =
- new SensorController(new Object(), VIRTUAL_DEVICE_ID_1, mVirtualSensorCallback);
+ mSensorController = new SensorController(VIRTUAL_DEVICE_ID_1, mVirtualSensorCallback);
mCameraAccessController =
new CameraAccessController(mContext, mLocalService, mCameraAccessBlockedCallback);
diff --git a/services/tests/servicestests/src/com/android/server/power/PowerManagerServiceTest.java b/services/tests/servicestests/src/com/android/server/power/PowerManagerServiceTest.java
index ae3ceb1203f8..933f00231313 100644
--- a/services/tests/servicestests/src/com/android/server/power/PowerManagerServiceTest.java
+++ b/services/tests/servicestests/src/com/android/server/power/PowerManagerServiceTest.java
@@ -74,6 +74,7 @@ import android.os.IBinder;
import android.os.IWakeLockCallback;
import android.os.Looper;
import android.os.PowerManager;
+import android.os.PowerManagerInternal;
import android.os.PowerSaveState;
import android.os.UserHandle;
import android.os.test.TestLooper;
@@ -117,6 +118,7 @@ import org.mockito.stubbing.Answer;
import java.time.Duration;
import java.util.HashMap;
import java.util.Map;
+import java.util.concurrent.Callable;
import java.util.concurrent.Executor;
import java.util.concurrent.atomic.AtomicReference;
@@ -150,6 +152,7 @@ public class PowerManagerServiceTest {
@Mock private SystemPropertiesWrapper mSystemPropertiesMock;
@Mock private AppOpsManager mAppOpsManagerMock;
@Mock private LowPowerStandbyController mLowPowerStandbyControllerMock;
+ @Mock private Callable<Void> mInvalidateInteractiveCachesMock;
@Mock
private InattentiveSleepWarningController mInattentiveSleepWarningControllerMock;
@@ -310,7 +313,11 @@ public class PowerManagerServiceTest {
@Override
void invalidateIsInteractiveCaches() {
- // Avoids an SELinux failure.
+ try {
+ mInvalidateInteractiveCachesMock.call();
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
}
@Override
@@ -2318,6 +2325,140 @@ public class PowerManagerServiceTest {
}
@Test
+ public void testMultiDisplay_isInteractive_nonExistentGroup() {
+ createService();
+ startSystem();
+
+ int nonExistentDisplayGroup = 999;
+ BinderService binderService = mService.getBinderServiceInstance();
+ assertThat(binderService.isDisplayInteractive(nonExistentDisplayGroup)).isFalse();
+ }
+
+ private void testMultiDisplay_isInteractive_returnsCorrectValue(
+ boolean defaultDisplayAwake, boolean secondGroupDisplayAwake) {
+ final int nonDefaultDisplayGroupId = Display.DEFAULT_DISPLAY_GROUP + 1;
+ // We use a display id that does not match the group id, to make sure we aren't accidentally
+ // confusing display id's and display group id's in the implementation.
+ final int nonDefaultDisplay = Display.DEFAULT_DISPLAY + 17;
+ final AtomicReference<DisplayManagerInternal.DisplayGroupListener> listener =
+ new AtomicReference<>();
+ doAnswer((Answer<Void>) invocation -> {
+ listener.set(invocation.getArgument(0));
+ return null;
+ }).when(mDisplayManagerInternalMock).registerDisplayGroupListener(any());
+
+ final DisplayInfo defaultDisplayInfo = new DisplayInfo();
+ defaultDisplayInfo.displayGroupId = Display.DEFAULT_DISPLAY_GROUP;
+ when(mDisplayManagerInternalMock.getDisplayInfo(Display.DEFAULT_DISPLAY)).thenReturn(
+ defaultDisplayInfo);
+
+ final DisplayInfo secondDisplayInfo = new DisplayInfo();
+ secondDisplayInfo.displayGroupId = nonDefaultDisplayGroupId;
+ when(mDisplayManagerInternalMock.getDisplayInfo(nonDefaultDisplay)).thenReturn(
+ secondDisplayInfo);
+
+ createService();
+ startSystem();
+ listener.get().onDisplayGroupAdded(nonDefaultDisplayGroupId);
+
+ if (!defaultDisplayAwake) {
+ mService.setWakefulnessLocked(Display.DEFAULT_DISPLAY_GROUP, WAKEFULNESS_ASLEEP,
+ mClock.now(), 0, PowerManager.GO_TO_SLEEP_REASON_APPLICATION, 0, null, null);
+ }
+ if (!secondGroupDisplayAwake) {
+ mService.setWakefulnessLocked(nonDefaultDisplayGroupId, WAKEFULNESS_ASLEEP,
+ mClock.now(), 0,
+ PowerManager.GO_TO_SLEEP_REASON_APPLICATION, 0, null, null);
+ }
+ assertThat(PowerManagerInternal.isInteractive(
+ mService.getWakefulnessLocked(Display.DEFAULT_DISPLAY_GROUP))).isEqualTo(
+ defaultDisplayAwake);
+ assertThat(PowerManagerInternal.isInteractive(
+ mService.getWakefulnessLocked(nonDefaultDisplayGroupId))).isEqualTo(
+ secondGroupDisplayAwake);
+
+ BinderService binderService = mService.getBinderServiceInstance();
+ assertThat(binderService.isInteractive()).isEqualTo(
+ defaultDisplayAwake || secondGroupDisplayAwake);
+ assertThat(binderService.isDisplayInteractive(Display.DEFAULT_DISPLAY)).isEqualTo(
+ defaultDisplayAwake);
+ assertThat(binderService.isDisplayInteractive(nonDefaultDisplay)).isEqualTo(
+ secondGroupDisplayAwake);
+ }
+
+ @Test
+ public void testMultiDisplay_isInteractive_defaultGroupIsAwakeSecondGroupIsAwake() {
+ testMultiDisplay_isInteractive_returnsCorrectValue(true, true);
+ }
+
+ @Test
+ public void testMultiDisplay_isInteractive_defaultGroupIsAwakeSecondGroupIsAsleep() {
+ testMultiDisplay_isInteractive_returnsCorrectValue(true, false);
+ }
+
+ @Test
+ public void testMultiDisplay_isInteractive_defaultGroupIsAsleepSecondGroupIsAwake() {
+ testMultiDisplay_isInteractive_returnsCorrectValue(false, true);
+ }
+
+ @Test
+ public void testMultiDisplay_isInteractive_bothGroupsAreAsleep() {
+ testMultiDisplay_isInteractive_returnsCorrectValue(false, false);
+ }
+
+ @Test
+ public void testMultiDisplay_defaultGroupWakefulnessChange_causesIsInteractiveInvalidate()
+ throws Exception {
+ final int nonDefaultDisplayGroupId = Display.DEFAULT_DISPLAY_GROUP + 1;
+ final int nonDefaultDisplay = Display.DEFAULT_DISPLAY + 1;
+ final AtomicReference<DisplayManagerInternal.DisplayGroupListener> listener =
+ new AtomicReference<>();
+ doAnswer((Answer<Void>) invocation -> {
+ listener.set(invocation.getArgument(0));
+ return null;
+ }).when(mDisplayManagerInternalMock).registerDisplayGroupListener(any());
+ final DisplayInfo info = new DisplayInfo();
+ info.displayGroupId = nonDefaultDisplayGroupId;
+ when(mDisplayManagerInternalMock.getDisplayInfo(nonDefaultDisplay)).thenReturn(info);
+ createService();
+ startSystem();
+ listener.get().onDisplayGroupAdded(nonDefaultDisplayGroupId);
+
+ verify(mInvalidateInteractiveCachesMock).call();
+
+ mService.setWakefulnessLocked(Display.DEFAULT_DISPLAY_GROUP, WAKEFULNESS_ASLEEP,
+ mClock.now(), 0, PowerManager.GO_TO_SLEEP_REASON_APPLICATION, 0, null, null);
+
+ verify(mInvalidateInteractiveCachesMock, times(2)).call();
+ }
+
+ @Test
+ public void testMultiDisplay_secondGroupWakefulness_causesIsInteractiveInvalidate()
+ throws Exception {
+ final int nonDefaultDisplayGroupId = Display.DEFAULT_DISPLAY_GROUP + 1;
+ final int nonDefaultDisplay = Display.DEFAULT_DISPLAY + 1;
+ final AtomicReference<DisplayManagerInternal.DisplayGroupListener> listener =
+ new AtomicReference<>();
+ doAnswer((Answer<Void>) invocation -> {
+ listener.set(invocation.getArgument(0));
+ return null;
+ }).when(mDisplayManagerInternalMock).registerDisplayGroupListener(any());
+ final DisplayInfo info = new DisplayInfo();
+ info.displayGroupId = nonDefaultDisplayGroupId;
+ when(mDisplayManagerInternalMock.getDisplayInfo(nonDefaultDisplay)).thenReturn(info);
+ createService();
+ startSystem();
+ listener.get().onDisplayGroupAdded(nonDefaultDisplayGroupId);
+
+ verify(mInvalidateInteractiveCachesMock).call();
+
+ mService.setWakefulnessLocked(nonDefaultDisplayGroupId, WAKEFULNESS_ASLEEP, mClock.now(),
+ 0, PowerManager.GO_TO_SLEEP_REASON_APPLICATION, 0, null, null);
+
+ verify(mInvalidateInteractiveCachesMock, times(2)).call();
+ }
+
+ @Test
public void testGetFullPowerSavePolicy_returnsStateMachineResult() {
createService();
startSystem();
diff --git a/services/tests/uiservicestests/src/com/android/server/notification/NotificationManagerServiceTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationManagerServiceTest.java
index 7d028d21ce0a..025315ec42e6 100755
--- a/services/tests/uiservicestests/src/com/android/server/notification/NotificationManagerServiceTest.java
+++ b/services/tests/uiservicestests/src/com/android/server/notification/NotificationManagerServiceTest.java
@@ -81,6 +81,9 @@ import static com.android.internal.config.sysui.SystemUiSystemPropertiesFlags.No
import static com.android.internal.config.sysui.SystemUiSystemPropertiesFlags.NotificationFlags.FSI_FORCE_DEMOTE;
import static com.android.internal.config.sysui.SystemUiSystemPropertiesFlags.NotificationFlags.SHOW_STICKY_HUN_FOR_DENIED_FSI;
import static com.android.internal.widget.LockPatternUtils.StrongAuthTracker.STRONG_AUTH_REQUIRED_AFTER_USER_LOCKDOWN;
+import static com.android.server.notification.NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_ADJUSTED;
+import static com.android.server.notification.NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_POSTED;
+import static com.android.server.notification.NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_UPDATED;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth.assertWithMessage;
@@ -663,6 +666,11 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
for (NotificationRecordLoggerFake.CallRecord call : mNotificationRecordLogger.getCalls()) {
if (call.wasLogged) {
assertNotNull(call.event);
+ if (call.event == NOTIFICATION_POSTED || call.event == NOTIFICATION_UPDATED) {
+ assertThat(call.postDurationMillisLogged).isGreaterThan(0);
+ } else {
+ assertThat(call.postDurationMillisLogged).isNull();
+ }
}
}
assertThat(mNotificationRecordLogger.getPendingLogs()).isEmpty();
@@ -1564,8 +1572,7 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
NotificationRecordLoggerFake.CallRecord call = mNotificationRecordLogger.get(0);
assertTrue(call.wasLogged);
- assertEquals(NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_POSTED,
- call.event);
+ assertEquals(NOTIFICATION_POSTED, call.event);
assertNotNull(call.r);
assertNull(call.old);
assertEquals(0, call.position);
@@ -1574,6 +1581,7 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
assertEquals(0, call.r.getSbn().getId());
assertEquals(tag, call.r.getSbn().getTag());
assertEquals(1, call.getInstanceId()); // Fake instance IDs are assigned in order
+ assertThat(call.postDurationMillisLogged).isGreaterThan(0);
}
@Test
@@ -1592,17 +1600,15 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
assertEquals(2, mNotificationRecordLogger.numCalls());
assertTrue(mNotificationRecordLogger.get(0).wasLogged);
- assertEquals(
- NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_POSTED,
- mNotificationRecordLogger.event(0));
+ assertEquals(NOTIFICATION_POSTED, mNotificationRecordLogger.event(0));
assertEquals(1, mNotificationRecordLogger.get(0).getInstanceId());
+ assertThat(mNotificationRecordLogger.get(0).postDurationMillisLogged).isGreaterThan(0);
assertTrue(mNotificationRecordLogger.get(1).wasLogged);
- assertEquals(
- NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_UPDATED,
- mNotificationRecordLogger.event(1));
+ assertEquals(NOTIFICATION_UPDATED, mNotificationRecordLogger.event(1));
// Instance ID doesn't change on update of an active notification
assertEquals(1, mNotificationRecordLogger.get(1).getInstanceId());
+ assertThat(mNotificationRecordLogger.get(1).postDurationMillisLogged).isGreaterThan(0);
}
@Test
@@ -1615,9 +1621,7 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
waitForIdle();
assertEquals(2, mNotificationRecordLogger.numCalls());
assertTrue(mNotificationRecordLogger.get(0).wasLogged);
- assertEquals(
- NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_POSTED,
- mNotificationRecordLogger.event(0));
+ assertEquals(NOTIFICATION_POSTED, mNotificationRecordLogger.event(0));
assertFalse(mNotificationRecordLogger.get(1).wasLogged);
assertNull(mNotificationRecordLogger.event(1));
}
@@ -1633,9 +1637,7 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
mBinderService.enqueueNotificationWithTag(PKG, PKG, tag, 0, notif, 0);
waitForIdle();
assertEquals(2, mNotificationRecordLogger.numCalls());
- assertEquals(
- NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_POSTED,
- mNotificationRecordLogger.event(0));
+ assertEquals(NOTIFICATION_POSTED, mNotificationRecordLogger.event(0));
assertNull(mNotificationRecordLogger.event(1));
}
@@ -1653,23 +1655,23 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
waitForIdle();
assertEquals(3, mNotificationRecordLogger.numCalls());
- assertEquals(
- NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_POSTED,
- mNotificationRecordLogger.event(0));
+ assertEquals(NOTIFICATION_POSTED, mNotificationRecordLogger.event(0));
assertTrue(mNotificationRecordLogger.get(0).wasLogged);
assertEquals(1, mNotificationRecordLogger.get(0).getInstanceId());
+ assertThat(mNotificationRecordLogger.get(0).postDurationMillisLogged).isGreaterThan(0);
assertEquals(
NotificationRecordLogger.NotificationCancelledEvent.NOTIFICATION_CANCEL_APP_CANCEL,
mNotificationRecordLogger.event(1));
assertEquals(1, mNotificationRecordLogger.get(1).getInstanceId());
+ // Cancel is not post, so no logged post_duration_millis.
+ assertThat(mNotificationRecordLogger.get(1).postDurationMillisLogged).isNull();
- assertEquals(
- NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_POSTED,
- mNotificationRecordLogger.event(2));
+ assertEquals(NOTIFICATION_POSTED, mNotificationRecordLogger.event(2));
assertTrue(mNotificationRecordLogger.get(2).wasLogged);
// New instance ID because notification was canceled before re-post
assertEquals(2, mNotificationRecordLogger.get(2).getInstanceId());
+ assertThat(mNotificationRecordLogger.get(2).postDurationMillisLogged).isGreaterThan(0);
}
@Test
@@ -5315,10 +5317,8 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
assertEquals(IMPORTANCE_HIGH, r1.getImportance());
assertTrue(r2.rankingScoreMatches(-0.5f));
assertEquals(2, mNotificationRecordLogger.numCalls());
- assertEquals(NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_ADJUSTED,
- mNotificationRecordLogger.event(0));
- assertEquals(NotificationRecordLogger.NotificationReportedEvent.NOTIFICATION_ADJUSTED,
- mNotificationRecordLogger.event(1));
+ assertEquals(NOTIFICATION_ADJUSTED, mNotificationRecordLogger.event(0));
+ assertEquals(NOTIFICATION_ADJUSTED, mNotificationRecordLogger.event(1));
assertEquals(1, mNotificationRecordLogger.get(0).getInstanceId());
assertEquals(2, mNotificationRecordLogger.get(1).getInstanceId());
}
diff --git a/services/tests/uiservicestests/src/com/android/server/notification/NotificationRecordLoggerFake.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationRecordLoggerFake.java
index 1bb35021d76c..25148936b2ad 100644
--- a/services/tests/uiservicestests/src/com/android/server/notification/NotificationRecordLoggerFake.java
+++ b/services/tests/uiservicestests/src/com/android/server/notification/NotificationRecordLoggerFake.java
@@ -16,6 +16,8 @@
package com.android.server.notification;
+import android.annotation.DurationMillisLong;
+
import androidx.annotation.Nullable;
import com.android.internal.logging.InstanceId;
@@ -38,6 +40,7 @@ class NotificationRecordLoggerFake implements NotificationRecordLogger {
public int position = INVALID, buzzBeepBlink = INVALID;
public boolean wasLogged;
public InstanceId groupInstanceId;
+ @Nullable @DurationMillisLong public Long postDurationMillisLogged;
CallRecord(NotificationRecord r, NotificationRecord old, int position,
int buzzBeepBlink, InstanceId groupId) {
@@ -111,6 +114,7 @@ class NotificationRecordLoggerFake implements NotificationRecordLogger {
}
mPendingLogs.remove(nr);
callRecord.wasLogged = true;
+ callRecord.postDurationMillisLogged = nr.post_duration_millis;
}
@Override
diff --git a/services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java b/services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java
index b46a3b9955dc..95fc0faf50ba 100644
--- a/services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java
@@ -144,9 +144,6 @@ import java.util.Set;
@RunWith(WindowTestRunner.class)
public class ActivityStarterTests extends WindowTestsBase {
- private static final String ENABLE_DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER =
- "DefaultRescindBalPrivilegesFromPendingIntentSender__"
- + "enable_default_rescind_bal_privileges_from_pending_intent_sender";
private static final int PRECONDITION_NO_CALLER_APP = 1;
private static final int PRECONDITION_NO_INTENT_COMPONENT = 1 << 1;
private static final int PRECONDITION_NO_ACTIVITY_INFO = 1 << 2;
@@ -184,8 +181,6 @@ public class ActivityStarterTests extends WindowTestsBase {
doReturn(AppOpsManager.MODE_DEFAULT).when(mAppOpsManager).checkOpNoThrow(
eq(AppOpsManager.OP_SYSTEM_EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION),
anyInt(), any());
- mDeviceConfig.set(ENABLE_DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER,
- String.valueOf(true));
}
@After
diff --git a/telephony/common/com/android/internal/telephony/TelephonyPermissions.java b/telephony/common/com/android/internal/telephony/TelephonyPermissions.java
index caafce2f1a7e..29a952a5d6d1 100644
--- a/telephony/common/com/android/internal/telephony/TelephonyPermissions.java
+++ b/telephony/common/com/android/internal/telephony/TelephonyPermissions.java
@@ -862,9 +862,12 @@ public final class TelephonyPermissions {
+ " destAddr is emergency number");
return true;
}
- } finally {
+ } catch(Exception e) {
+ Log.e(LOG_TAG, "Cannot verify if destAddr is an emergency number: " + e);
+ } finally {
Binder.restoreCallingIdentity(token);
}
+
return checkSubscriptionAssociatedWithUser(context, subId, callerUserHandle);
}
diff --git a/tests/Internal/src/com/android/internal/app/AppLocaleCollectorTest.java b/tests/Internal/src/com/android/internal/app/AppLocaleCollectorTest.java
index b24ac3cae795..7d9a6a56262c 100644
--- a/tests/Internal/src/com/android/internal/app/AppLocaleCollectorTest.java
+++ b/tests/Internal/src/com/android/internal/app/AppLocaleCollectorTest.java
@@ -19,11 +19,14 @@ package com.android.internal.app;
import static com.android.internal.app.AppLocaleStore.AppLocaleResult.LocaleStatus.GET_SUPPORTED_LANGUAGE_FROM_LOCAL_CONFIG;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
import static org.mockito.ArgumentMatchers.anyObject;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
+import android.os.LocaleList;
+
import androidx.test.InstrumentationRegistry;
import androidx.test.filters.SmallTest;
import androidx.test.runner.AndroidJUnit4;
@@ -62,6 +65,9 @@ public class AppLocaleCollectorTest {
private static final int CURRENT = LocaleInfo.SUGGESTION_TYPE_CURRENT;
private static final int SYSTEM = LocaleInfo.SUGGESTION_TYPE_SYSTEM_LANGUAGE;
private static final int OTHERAPP = LocaleInfo.SUGGESTION_TYPE_OTHER_APP_LANGUAGE;
+ private static final int IME = LocaleInfo.SUGGESTION_TYPE_IME_LANGUAGE;
+ private static final int SYSTEM_AVAILABLE =
+ LocaleInfo.SUGGESTION_TYPE_SYSTEM_AVAILABLE_LANGUAGE;
@Before
public void setUp() throws Exception {
@@ -78,6 +84,21 @@ public class AppLocaleCollectorTest {
}
@Test
+ public void testGetSystemCurrentLocales() {
+ LocaleList.setDefault(
+ LocaleList.forLanguageTags("en-US-u-mu-fahrenhe,ar-JO-u-mu-fahrenhe-nu-latn"));
+
+ List<LocaleStore.LocaleInfo> list =
+ mAppLocaleCollector.getSystemCurrentLocales();
+
+ LocaleList expected = LocaleList.forLanguageTags("en-US,ar-JO-u-nu-latn");
+ assertEquals(list.size(), expected.size());
+ for (LocaleStore.LocaleInfo info : list) {
+ assertTrue(expected.indexOf(info.getLocale()) != -1);
+ }
+ }
+
+ @Test
public void testGetSupportedLocaleList() {
doReturn(mAppCurrentLocale).when(mAppLocaleCollector).getAppCurrentLocale();
doReturn(mResult).when(mAppLocaleCollector).getAppSupportedLocales();
@@ -85,7 +106,8 @@ public class AppLocaleCollectorTest {
doReturn(mImeLocales).when(mAppLocaleCollector).getActiveImeLocales();
doReturn(mSystemSupportedLocales).when(mAppLocaleCollector).getSystemSupportedLocale(
anyObject(), eq(null), eq(true));
- doReturn(mSystemCurrentLocales).when(mAppLocaleCollector).getSystemCurrentLocale();
+ doReturn(mSystemCurrentLocales).when(
+ mAppLocaleCollector).getSystemCurrentLocales();
Set<LocaleInfo> result = mAppLocaleCollector.getSupportedLocaleList(null, true, false);
@@ -106,8 +128,10 @@ public class AppLocaleCollectorTest {
map.put("ko", NONE); // The locale App and system support.
map.put("en-AU", OTHERAPP); // The locale other App activates and current App supports.
map.put("en-CA", OTHERAPP); // The locale other App activates and current App supports.
- map.put("ja-JP", OTHERAPP); // The locale other App activates and current App supports.
- map.put("zh-Hant-TW", SIM); // The locale system activates.
+ map.put("en-IN", IME); // The locale IME supports.
+ map.put("ja-JP",
+ OTHERAPP | SYSTEM_AVAILABLE | IME); // The locale exists in OTHERAPP, SYSTEM and IME
+ map.put("zh-Hant-TW", SYSTEM_AVAILABLE); // The locale system activates.
map.put(createLocaleInfo("", SYSTEM).getId(), SYSTEM); // System language title
return map;
}
@@ -124,9 +148,10 @@ public class AppLocaleCollectorTest {
}
private List<LocaleInfo> initSystemCurrentLocales() {
- return List.of(createLocaleInfo("zh-Hant-TW", SIM),
+ return List.of(createLocaleInfo("zh-Hant-TW", SYSTEM_AVAILABLE),
+ createLocaleInfo("ja-JP", SYSTEM_AVAILABLE),
// will be filtered because current App activates this locale.
- createLocaleInfo("en-US", SIM));
+ createLocaleInfo("en-US", SYSTEM_AVAILABLE));
}
private Set<LocaleInfo> initAllAppActivatedLocales() {
@@ -141,9 +166,11 @@ public class AppLocaleCollectorTest {
private Set<LocaleInfo> initImeLocales() {
return Set.of(
// will be filtered because system activates zh-Hant-TW.
- createLocaleInfo("zh-TW", OTHERAPP),
+ createLocaleInfo("zh-TW", IME),
// will be filtered because current App's activats this locale.
- createLocaleInfo("en-US", OTHERAPP));
+ createLocaleInfo("en-US", IME),
+ createLocaleInfo("ja-JP", IME),
+ createLocaleInfo("en-IN", IME));
}
private HashSet<Locale> initAppSupportedLocale() {
diff --git a/tests/Internal/src/com/android/internal/app/LocaleStoreTest.java b/tests/Internal/src/com/android/internal/app/LocaleStoreTest.java
index 46ebfede9a42..f6568816b4f7 100644
--- a/tests/Internal/src/com/android/internal/app/LocaleStoreTest.java
+++ b/tests/Internal/src/com/android/internal/app/LocaleStoreTest.java
@@ -57,7 +57,7 @@ public class LocaleStoreTest {
Set<String> expectedLanguageTag = Set.of("en-US", "zh-TW", "ja-JP");
assertEquals(localeSet.size(), expectedLanguageTag.size());
for (LocaleInfo info : localeSet) {
- assertEquals(info.mSuggestionFlags, LocaleInfo.SUGGESTION_TYPE_OTHER_APP_LANGUAGE);
+ assertEquals(info.mSuggestionFlags, LocaleInfo.SUGGESTION_TYPE_IME_LANGUAGE);
assertTrue(expectedLanguageTag.contains(info.getId()));
}
}
diff --git a/tests/TrustTests/AndroidManifest.xml b/tests/TrustTests/AndroidManifest.xml
index 8b4cbfd0e44b..30cf345db34d 100644
--- a/tests/TrustTests/AndroidManifest.xml
+++ b/tests/TrustTests/AndroidManifest.xml
@@ -78,6 +78,16 @@
<action android:name="android.service.trust.TrustAgentService" />
</intent-filter>
</service>
+ <service
+ android:name=".IsActiveUnlockRunningTrustAgent"
+ android:exported="true"
+ android:label="Test Agent"
+ android:permission="android.permission.BIND_TRUST_AGENT">
+ <intent-filter>
+ <action android:name="android.service.trust.TrustAgentService" />
+ </intent-filter>
+ </service>
+
</application>
<!-- self-instrumenting test package. -->
diff --git a/tests/TrustTests/src/android/trust/test/CanUnlockWithActiveUnlockTest.kt b/tests/TrustTests/src/android/trust/test/CanUnlockWithActiveUnlockTest.kt
new file mode 100644
index 000000000000..7b68a829e23b
--- /dev/null
+++ b/tests/TrustTests/src/android/trust/test/CanUnlockWithActiveUnlockTest.kt
@@ -0,0 +1,131 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.trust.test
+
+import android.app.trust.TrustManager
+import android.content.Context
+import android.service.trust.TrustAgentService.FLAG_GRANT_TRUST_TEMPORARY_AND_RENEWABLE
+import android.trust.BaseTrustAgentService
+import android.trust.TrustTestActivity
+import android.trust.test.lib.LockStateTrackingRule
+import android.trust.test.lib.ScreenLockRule
+import android.trust.test.lib.TestTrustListener
+import android.trust.test.lib.TrustAgentRule
+import androidx.test.core.app.ApplicationProvider.getApplicationContext
+import androidx.test.ext.junit.rules.ActivityScenarioRule
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation
+import androidx.test.uiautomator.UiDevice
+import com.google.common.truth.Truth.assertThat
+import org.junit.After
+import org.junit.Before
+import org.junit.Rule
+import org.junit.Test
+import org.junit.rules.RuleChain
+import org.junit.runner.RunWith
+
+/**
+ * Test for testing isActiveUnlockRunning.
+ *
+ * atest TrustTests:IsActiveUnlockRunningTest
+ */
+@RunWith(AndroidJUnit4::class)
+class IsActiveUnlockRunningTest {
+ private val uiDevice = UiDevice.getInstance(getInstrumentation())
+ private val context: Context = getApplicationContext()
+ private val userId = context.userId
+ private val trustManager = context.getSystemService(TrustManager::class.java) as TrustManager
+ private val activityScenarioRule = ActivityScenarioRule(TrustTestActivity::class.java)
+ private val lockStateTrackingRule = LockStateTrackingRule()
+ private val trustAgentRule = TrustAgentRule<IsActiveUnlockRunningTrustAgent>()
+
+ private val listener = object : TestTrustListener() {
+ var isRunning = false
+ private set
+
+ override fun onIsActiveUnlockRunningChanged(isRunning: Boolean, userId: Int) {
+ this.isRunning = isRunning
+ }
+ }
+
+ @get:Rule
+ val rule: RuleChain = RuleChain
+ .outerRule(activityScenarioRule)
+ .around(ScreenLockRule())
+ .around(lockStateTrackingRule)
+ .around(trustAgentRule)
+
+ @Before
+ fun manageTrust() {
+ trustAgentRule.agent.setManagingTrust(true)
+ trustManager.registerTrustListener(listener)
+ }
+
+ @After
+ fun unregisterListener() {
+ trustManager.unregisterTrustListener(listener)
+ }
+
+ @Test
+ fun defaultState_isActiveUnlockRunningIsFalse() {
+ assertThat(trustManager.isActiveUnlockRunning(userId)).isFalse()
+ assertThat(listener.isRunning).isFalse()
+ }
+
+ @Test
+ fun grantTrustLockedDevice_isActiveUnlockRunningIsFalse() {
+ uiDevice.sleep()
+ lockStateTrackingRule.assertLocked()
+
+ uiDevice.wakeUp()
+ trustAgentRule.agent.grantTrust(
+ GRANT_MESSAGE, 0, FLAG_GRANT_TRUST_TEMPORARY_AND_RENEWABLE) {}
+
+ assertThat(trustManager.isActiveUnlockRunning(userId)).isFalse()
+ assertThat(listener.isRunning).isFalse()
+ }
+
+ @Test
+ fun grantTrustUnlockedDevice_isActiveUnlockRunningIsTrueWhileLocked() {
+ trustAgentRule.agent.grantTrust(
+ GRANT_MESSAGE, 0, FLAG_GRANT_TRUST_TEMPORARY_AND_RENEWABLE) {}
+ uiDevice.sleep()
+
+ lockStateTrackingRule.assertLocked()
+
+ assertThat(trustManager.isActiveUnlockRunning(userId)).isTrue()
+ assertThat(listener.isRunning).isTrue()
+ }
+
+ @Test
+ fun trustRevoked_isActiveUnlockRunningIsFalse() {
+ trustAgentRule.agent.grantTrust(
+ GRANT_MESSAGE, 0, FLAG_GRANT_TRUST_TEMPORARY_AND_RENEWABLE) {}
+
+ trustAgentRule.agent.revokeTrust()
+
+ assertThat(trustManager.isActiveUnlockRunning(userId)).isFalse()
+ assertThat(listener.isRunning).isFalse()
+ }
+
+ companion object {
+ private const val GRANT_MESSAGE = "granted by test"
+ private fun await(millis: Long) = Thread.sleep(millis)
+ }
+}
+
+class IsActiveUnlockRunningTrustAgent : BaseTrustAgentService()
diff --git a/tests/TrustTests/src/android/trust/test/lib/LockStateTrackingRule.kt b/tests/TrustTests/src/android/trust/test/lib/LockStateTrackingRule.kt
index a4ebb25d4b4c..1400dde5781d 100644
--- a/tests/TrustTests/src/android/trust/test/lib/LockStateTrackingRule.kt
+++ b/tests/TrustTests/src/android/trust/test/lib/LockStateTrackingRule.kt
@@ -17,7 +17,6 @@
package android.trust.test.lib
import android.app.trust.TrustManager
-import android.app.trust.TrustManager.TrustListener
import android.content.Context
import android.util.Log
import android.view.WindowManagerGlobal
@@ -60,7 +59,7 @@ class LockStateTrackingRule : TestRule {
wait("locked per TrustListener") { lockState.locked == false }
}
- inner class Listener : TrustListener {
+ inner class Listener : TestTrustListener() {
override fun onTrustChanged(
enabled: Boolean,
newlyUnlocked: Boolean,
@@ -71,15 +70,6 @@ class LockStateTrackingRule : TestRule {
Log.d(TAG, "Device became trusted=$enabled")
lockState = lockState.copy(locked = !enabled)
}
-
- override fun onTrustManagedChanged(enabled: Boolean, userId: Int) {
- }
-
- override fun onTrustError(message: CharSequence) {
- }
-
- override fun onEnabledTrustAgentsChanged(userId: Int) {
- }
}
data class LockState(
diff --git a/tests/TrustTests/src/android/trust/test/lib/TestTrustListener.kt b/tests/TrustTests/src/android/trust/test/lib/TestTrustListener.kt
new file mode 100644
index 000000000000..880497e954f1
--- /dev/null
+++ b/tests/TrustTests/src/android/trust/test/lib/TestTrustListener.kt
@@ -0,0 +1,45 @@
+/*
+ * Copyright (C) 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.trust.test.lib
+
+import android.app.trust.TrustManager.TrustListener
+
+/**
+ * A listener that has default empty implementations for all [TrustListener] methods.
+ */
+open class TestTrustListener : TrustListener {
+ override fun onTrustChanged(
+ enabled: Boolean,
+ newlyUnlocked: Boolean,
+ userId: Int,
+ flags: Int,
+ trustGrantedMessages: MutableList<String>
+ ) {
+ }
+
+ override fun onTrustManagedChanged(enabled: Boolean, userId: Int) {
+ }
+
+ override fun onTrustError(message: CharSequence) {
+ }
+
+ override fun onEnabledTrustAgentsChanged(userId: Int) {
+ }
+
+ override fun onIsActiveUnlockRunningChanged(isRunning: Boolean, userId: Int) {
+ }
+}