diff options
22 files changed, 101 insertions, 33 deletions
diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java index 1c40711f888b..1ecbed49c61f 100644 --- a/core/java/android/app/Notification.java +++ b/core/java/android/app/Notification.java @@ -2138,6 +2138,10 @@ public class Notification implements Parcelable } } + private void visitUris(@NonNull Consumer<Uri> visitor) { + visitIconUri(visitor, getIcon()); + } + @Override public Action clone() { return new Action( @@ -2823,7 +2827,7 @@ public class Notification implements Parcelable if (actions != null) { for (Action action : actions) { - visitIconUri(visitor, action.getIcon()); + action.visitUris(visitor); } } @@ -2857,6 +2861,18 @@ public class Notification implements Parcelable if (person != null) { visitor.accept(person.getIconUri()); } + + final RemoteInputHistoryItem[] history = extras.getParcelableArray( + Notification.EXTRA_REMOTE_INPUT_HISTORY_ITEMS, + RemoteInputHistoryItem.class); + if (history != null) { + for (int i = 0; i < history.length; i++) { + RemoteInputHistoryItem item = history[i]; + if (item.getUri() != null) { + visitor.accept(item.getUri()); + } + } + } } if (isStyle(MessagingStyle.class) && extras != null) { @@ -2900,6 +2916,11 @@ public class Notification implements Parcelable if (mBubbleMetadata != null) { visitIconUri(visitor, mBubbleMetadata.getIcon()); } + + if (extras != null && extras.containsKey(WearableExtender.EXTRA_WEARABLE_EXTENSIONS)) { + WearableExtender extender = new WearableExtender(this); + extender.visitUris(visitor); + } } /** @@ -11582,6 +11603,12 @@ public class Notification implements Parcelable mFlags &= ~mask; } } + + private void visitUris(@NonNull Consumer<Uri> visitor) { + for (Action action : mActions) { + action.visitUris(visitor); + } + } } /** diff --git a/core/res/res/values-da/strings.xml b/core/res/res/values-da/strings.xml index df86067a244f..a9128c80c7ab 100644 --- a/core/res/res/values-da/strings.xml +++ b/core/res/res/values-da/strings.xml @@ -1046,7 +1046,7 @@ <string name="permlab_addVoicemail" msgid="4770245808840814471">"tilføje telefonsvarer"</string> <string name="permdesc_addVoicemail" msgid="5470312139820074324">"Tillader, at appen kan tilføje beskeder på din telefonsvarer."</string> <string name="permlab_writeGeolocationPermissions" msgid="8605631647492879449">"skifte tilladelser til geoplacering i Browser"</string> - <string name="permdesc_writeGeolocationPermissions" msgid="5817346421222227772">"Tillader, at appen kan ændre browserens tilladelser angående geoplacering. Ondsindede apps kan benytte dette til at sende oplysninger om sted til vilkårlige websites."</string> + <string name="permdesc_writeGeolocationPermissions" msgid="5817346421222227772">"Tillader, at appen kan ændre browserens tilladelser angående geolokation. Ondsindede apps kan benytte dette til at sende lokationsoplysninger om sted til vilkårlige websites."</string> <string name="save_password_message" msgid="2146409467245462965">"Ønsker du, at browseren skal huske denne adgangskode?"</string> <string name="save_password_notnow" msgid="2878327088951240061">"Ikke nu"</string> <string name="save_password_remember" msgid="6490888932657708341">"Husk"</string> diff --git a/core/res/res/values-fa/strings.xml b/core/res/res/values-fa/strings.xml index efaba62e15c7..19f7545fbdb7 100644 --- a/core/res/res/values-fa/strings.xml +++ b/core/res/res/values-fa/strings.xml @@ -1626,7 +1626,7 @@ <string name="media_route_status_in_use" msgid="6684112905244944724">"در حال استفاده"</string> <string name="display_manager_built_in_display_name" msgid="1015775198829722440">"صفحه نمایش از خود"</string> <string name="display_manager_hdmi_display_name" msgid="1022758026251534975">"صفحه HDMI"</string> - <string name="display_manager_overlay_display_name" msgid="5306088205181005861">"همپوشانی #<xliff:g id="ID">%1$d</xliff:g>"</string> + <string name="display_manager_overlay_display_name" msgid="5306088205181005861">"رونهاد #<xliff:g id="ID">%1$d</xliff:g>"</string> <string name="display_manager_overlay_display_title" msgid="1480158037150469170">"<xliff:g id="NAME">%1$s</xliff:g>: <xliff:g id="WIDTH">%2$d</xliff:g>x<xliff:g id="HEIGHT">%3$d</xliff:g>, <xliff:g id="DPI">%4$d</xliff:g> dpi"</string> <string name="display_manager_overlay_display_secure_suffix" msgid="2810034719482834679">"، امن"</string> <string name="kg_forgot_pattern_button_text" msgid="406145459223122537">"الگو را فراموش کردهاید"</string> diff --git a/core/res/res/values-gl/strings.xml b/core/res/res/values-gl/strings.xml index b235f61b785d..957766918892 100644 --- a/core/res/res/values-gl/strings.xml +++ b/core/res/res/values-gl/strings.xml @@ -1381,7 +1381,7 @@ <string name="decline_remote_bugreport_action" msgid="4040894777519784346">"ANULAR"</string> <string name="select_input_method" msgid="3971267998568587025">"Escoller método de introdución de texto"</string> <string name="show_ime" msgid="6406112007347443383">"Móstrase na pantalla mentres o teclado físico estea activo"</string> - <string name="hardware" msgid="1800597768237606953">"Mostrar teclado virtual"</string> + <string name="hardware" msgid="1800597768237606953">"Mostrar o teclado virtual"</string> <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"Configura o teclado físico"</string> <string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"Toca para seleccionar o idioma e o deseño"</string> <string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNÑOPQRSTUVWXYZ"</string> diff --git a/core/res/res/values-kk/strings.xml b/core/res/res/values-kk/strings.xml index fd7252d7c2a3..b54502ccf282 100644 --- a/core/res/res/values-kk/strings.xml +++ b/core/res/res/values-kk/strings.xml @@ -227,7 +227,7 @@ <string name="reboot_to_update_reboot" msgid="4474726009984452312">"Қайта іске қосылуда…"</string> <string name="reboot_to_reset_title" msgid="2226229680017882787">"Зауыттық деректерді қалпына келтіру"</string> <string name="reboot_to_reset_message" msgid="3347690497972074356">"Қайта іске қосылуда…"</string> - <string name="shutdown_progress" msgid="5017145516412657345">"Өшірілуде…"</string> + <string name="shutdown_progress" msgid="5017145516412657345">"Өшіріліп жатыр…"</string> <string name="shutdown_confirm" product="tablet" msgid="2872769463279602432">"Планшет өшіріледі."</string> <string name="shutdown_confirm" product="tv" msgid="7975942887313518330">"Android TV құрылғысы өшеді."</string> <string name="shutdown_confirm" product="watch" msgid="2977299851200240146">"Сағатыңыз өшіріледі."</string> diff --git a/core/res/res/values-km/strings.xml b/core/res/res/values-km/strings.xml index df2403202dd7..4ca06a87d3f0 100644 --- a/core/res/res/values-km/strings.xml +++ b/core/res/res/values-km/strings.xml @@ -990,7 +990,7 @@ <string name="keyguard_accessibility_expand_lock_area" msgid="4215280881346033434">"ពង្រីកតំបន់ដោះសោ។"</string> <string name="keyguard_accessibility_slide_unlock" msgid="2968195219692413046">"រុញដោះសោ។"</string> <string name="keyguard_accessibility_pattern_unlock" msgid="8669128146589233293">"លំនាំដោះសោ។"</string> - <string name="keyguard_accessibility_face_unlock" msgid="4533832120787386728">"ដោះសោតាមទម្រង់មុខ។"</string> + <string name="keyguard_accessibility_face_unlock" msgid="4533832120787386728">"ការដោះសោដោយស្កេនមុខ។"</string> <string name="keyguard_accessibility_pin_unlock" msgid="4020864007967340068">"កូដ PIN ដោះសោ។"</string> <string name="keyguard_accessibility_sim_pin_unlock" msgid="4895939120871890557">"ដោះកូដ Pin របស់សីុម។"</string> <string name="keyguard_accessibility_sim_puk_unlock" msgid="3459003464041899101">"ដោះកូដ Puk របស់សីុម។"</string> diff --git a/core/res/res/values-ky/strings.xml b/core/res/res/values-ky/strings.xml index 236a9b4ede4f..59602ed067ce 100644 --- a/core/res/res/values-ky/strings.xml +++ b/core/res/res/values-ky/strings.xml @@ -955,7 +955,7 @@ <string name="lockscreen_failed_attempts_now_wiping" product="tv" msgid="2205435033340091883">"Android TV түзмөгүңүздүн кулпусун <xliff:g id="NUMBER">%d</xliff:g> жолу туура эмес ачууга аракет жасадыңыз. Android TV түзмөгүңүз эми демейки параметрлерге кайтарылат."</string> <string name="lockscreen_failed_attempts_now_wiping" product="default" msgid="2203704707679895487">"Сиз телефонду бөгөттөн чыгарууга <xliff:g id="NUMBER">%d</xliff:g> жолу туура эмес аракет кылдыңыз. Телефон баштапкы абалына келтирилет."</string> <string name="lockscreen_too_many_failed_attempts_countdown" msgid="6807200118164539589">"<xliff:g id="NUMBER">%d</xliff:g> секунддан кийин кайталаңыз."</string> - <string name="lockscreen_forgot_pattern_button_text" msgid="8362442730606839031">"Сүрөт үлгүсүн унутуп калдыңызбы?"</string> + <string name="lockscreen_forgot_pattern_button_text" msgid="8362442730606839031">"Сүрөт үлгүсүн унутуп койдуңузбу?"</string> <string name="lockscreen_glogin_forgot_pattern" msgid="9218940117797602518">"Аккаунт менен кулпусун ачуу"</string> <string name="lockscreen_glogin_too_many_attempts" msgid="3775904917743034195">"Өтө көп үлгү киргизүү аракети болду"</string> <string name="lockscreen_glogin_instructions" msgid="4695162942525531700">"Бөгөттөн чыгарыш үчүн, Google эсебиңиз менен кириңиз."</string> @@ -963,7 +963,7 @@ <string name="lockscreen_glogin_password_hint" msgid="3031027901286812848">"Сырсөз"</string> <string name="lockscreen_glogin_submit_button" msgid="3590556636347843733">"Кирүү"</string> <string name="lockscreen_glogin_invalid_input" msgid="4369219936865697679">"Колдонуучу атыңыз же сырсөзүңүз туура эмес."</string> - <string name="lockscreen_glogin_account_recovery_hint" msgid="1683405808525090649">"Колдонуучу атыңызды же сырсөзүңүздү унутуп калдыңызбы?\n"<b>"google.com/accounts/recovery"</b>" дарегине кайрылыңыз."</string> + <string name="lockscreen_glogin_account_recovery_hint" msgid="1683405808525090649">"Колдонуучу атыңызды же сырсөзүңүздү унутуп койдуңузбу?\n"<b>"google.com/accounts/recovery"</b>" дарегине кайрылыңыз."</string> <string name="lockscreen_glogin_checking_password" msgid="2607271802803381645">"Текшерүүдө…"</string> <string name="lockscreen_unlock_label" msgid="4648257878373307582">"Кулпусун ачуу"</string> <string name="lockscreen_sound_on_label" msgid="1660281470535492430">"Добушу күйүк"</string> @@ -1652,7 +1652,7 @@ <string name="kg_login_password_hint" msgid="3330530727273164402">"Сырсөз"</string> <string name="kg_login_submit_button" msgid="893611277617096870">"Кирүү"</string> <string name="kg_login_invalid_input" msgid="8292367491901220210">"Колдонуучу атыңыз же сырсөзүңүз туура эмес."</string> - <string name="kg_login_account_recovery_hint" msgid="4892466171043541248">"Колдонуучу атыңызды же сырсөзүңүздү унутуп калдыңызбы?\n"<b>"google.com/accounts/recovery"</b>" дарегине кайрылыңыз."</string> + <string name="kg_login_account_recovery_hint" msgid="4892466171043541248">"Колдонуучу атыңызды же сырсөзүңүздү унутуп койдуңузбу?\n"<b>"google.com/accounts/recovery"</b>" дарегине кайрылыңыз."</string> <string name="kg_login_checking_password" msgid="4676010303243317253">"Эсеп текшерилүүдө…"</string> <string name="kg_too_many_failed_pin_attempts_dialog_message" msgid="23741434207544038">"Сиз PIN кодуңузду <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_password_attempts_dialog_message" msgid="3328686432962224215">"Сиз сырсөзүңүздү <xliff:g id="NUMBER_0">%1$d</xliff:g> жолу туура эмес тердиңиз. \n\n <xliff:g id="NUMBER_1">%2$d</xliff:g> секундадан кийин кайталаңыз."</string> diff --git a/core/res/res/values-my/strings.xml b/core/res/res/values-my/strings.xml index 71cb1e371ead..3f8d793160c7 100644 --- a/core/res/res/values-my/strings.xml +++ b/core/res/res/values-my/strings.xml @@ -227,7 +227,7 @@ <string name="reboot_to_update_reboot" msgid="4474726009984452312">"ပြန်လည်စတင်နေ…"</string> <string name="reboot_to_reset_title" msgid="2226229680017882787">"စက်ရုံထုတ်အခြေအနေပြန်ယူခြင်း"</string> <string name="reboot_to_reset_message" msgid="3347690497972074356">"ပြန်လည်စတင်နေ…"</string> - <string name="shutdown_progress" msgid="5017145516412657345">"စက်ပိတ်ပါမည်"</string> + <string name="shutdown_progress" msgid="5017145516412657345">"စက်ပိတ်နေသည်…"</string> <string name="shutdown_confirm" product="tablet" msgid="2872769463279602432">"သင့်တက်ဘလက်အား စက်ပိတ်ပါမည်"</string> <string name="shutdown_confirm" product="tv" msgid="7975942887313518330">"သင့် Android TV စက်ပစ္စည်း ပိတ်သွားပါမည်။"</string> <string name="shutdown_confirm" product="watch" msgid="2977299851200240146">"သင်၏ ကြည့်ရှုမှု ပိတ်ပစ်မည်။"</string> diff --git a/core/res/res/values-or/strings.xml b/core/res/res/values-or/strings.xml index fbc50eaf5e2a..72ed637ea2d1 100644 --- a/core/res/res/values-or/strings.xml +++ b/core/res/res/values-or/strings.xml @@ -227,7 +227,7 @@ <string name="reboot_to_update_reboot" msgid="4474726009984452312">"ରିଷ୍ଟାର୍ଟ କରାଯାଉଛି…"</string> <string name="reboot_to_reset_title" msgid="2226229680017882787">"ଫ୍ୟାକ୍ଟୋରୀ ଡାଟା ରିସେଟ୍"</string> <string name="reboot_to_reset_message" msgid="3347690497972074356">"ରିଷ୍ଟାର୍ଟ କରାଯାଉଛି…"</string> - <string name="shutdown_progress" msgid="5017145516412657345">"ବନ୍ଦ କରାଯାଉଛି…"</string> + <string name="shutdown_progress" msgid="5017145516412657345">"ବନ୍ଦ ହେଉଛି…"</string> <string name="shutdown_confirm" product="tablet" msgid="2872769463279602432">"ଆପଣଙ୍କ ଟାବଲେଟ୍ ବନ୍ଦ ହୋଇଯିବ।"</string> <string name="shutdown_confirm" product="tv" msgid="7975942887313518330">"ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍ ବନ୍ଦ ହୋଇଯିବ।"</string> <string name="shutdown_confirm" product="watch" msgid="2977299851200240146">"ଆପଣଙ୍କ ଘଣ୍ଟା ବନ୍ଦ ହୋଇଯିବ।"</string> diff --git a/core/res/res/values-pl/strings.xml b/core/res/res/values-pl/strings.xml index 02155814441f..9111e868829a 100644 --- a/core/res/res/values-pl/strings.xml +++ b/core/res/res/values-pl/strings.xml @@ -1245,7 +1245,7 @@ <string name="android_preparing_apk" msgid="589736917792300956">"Przygotowuję aplikację <xliff:g id="APPNAME">%1$s</xliff:g>."</string> <string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Uruchamianie aplikacji."</string> <string name="android_upgrading_complete" msgid="409800058018374746">"Kończenie uruchamiania."</string> - <string name="fp_power_button_enrollment_title" msgid="3574363228413259548">"Kontynuować konfigurowanie?"</string> + <string name="fp_power_button_enrollment_title" msgid="3574363228413259548">"Konfigurować dalej?"</string> <string name="fp_power_button_enrollment_message" msgid="5648173517663246140">"Naciśnięto przycisk zasilania — zwykle powoduje to wyłączenie ekranu.\n\nKlikaj delikatnie podczas konfigurowania odcisku palca."</string> <string name="fp_power_button_enrollment_positive_button" msgid="2095415838459356833">"Wyłącz ekran"</string> <string name="fp_power_button_enrollment_negative_button" msgid="6558436406362486747">"Konfiguruj dalej"</string> diff --git a/core/res/res/values-sk/strings.xml b/core/res/res/values-sk/strings.xml index 5b19e66eda03..a38edd48d4e6 100644 --- a/core/res/res/values-sk/strings.xml +++ b/core/res/res/values-sk/strings.xml @@ -229,7 +229,7 @@ <string name="reboot_to_update_reboot" msgid="4474726009984452312">"Reštartuje sa…"</string> <string name="reboot_to_reset_title" msgid="2226229680017882787">"Obnovenie výrobných nastavení"</string> <string name="reboot_to_reset_message" msgid="3347690497972074356">"Reštartuje sa…"</string> - <string name="shutdown_progress" msgid="5017145516412657345">"Prebieha vypínanie..."</string> + <string name="shutdown_progress" msgid="5017145516412657345">"Vypína sa..."</string> <string name="shutdown_confirm" product="tablet" msgid="2872769463279602432">"Váš tablet bude vypnutý."</string> <string name="shutdown_confirm" product="tv" msgid="7975942887313518330">"Zariadenie Android TV sa vypne."</string> <string name="shutdown_confirm" product="watch" msgid="2977299851200240146">"Hodinky sa vypnú."</string> diff --git a/core/res/res/values-sl/strings.xml b/core/res/res/values-sl/strings.xml index b4529dbf6c31..bf84c209351f 100644 --- a/core/res/res/values-sl/strings.xml +++ b/core/res/res/values-sl/strings.xml @@ -229,7 +229,7 @@ <string name="reboot_to_update_reboot" msgid="4474726009984452312">"Vnovičen zagon …"</string> <string name="reboot_to_reset_title" msgid="2226229680017882787">"Ponastavitev na tovarniške nastavitve"</string> <string name="reboot_to_reset_message" msgid="3347690497972074356">"Vnovičen zagon …"</string> - <string name="shutdown_progress" msgid="5017145516412657345">"Se zaustavlja ..."</string> + <string name="shutdown_progress" msgid="5017145516412657345">"Izklaplja se ..."</string> <string name="shutdown_confirm" product="tablet" msgid="2872769463279602432">"Tablični računalnik se bo zaustavil."</string> <string name="shutdown_confirm" product="tv" msgid="7975942887313518330">"Naprava Android TV se bo zaustavila."</string> <string name="shutdown_confirm" product="watch" msgid="2977299851200240146">"Ura se bo izklopila."</string> diff --git a/core/res/res/values-te/strings.xml b/core/res/res/values-te/strings.xml index a3b39d50bef8..7eecdf8ad1a5 100644 --- a/core/res/res/values-te/strings.xml +++ b/core/res/res/values-te/strings.xml @@ -614,7 +614,7 @@ <string name="fingerprint_error_hw_not_present" msgid="578914350967423382">"ఈ పరికరంలో వేలిముద్ర సెన్సార్ ఎంపిక లేదు."</string> <string name="fingerprint_error_security_update_required" msgid="7750187320640856433">"సెన్సార్ తాత్కాలికంగా డిజేబుల్ చేయబడింది."</string> <string name="fingerprint_error_bad_calibration" msgid="4385512597740168120">"వేలిముద్ర సెన్సార్ను ఉపయోగించడం సాధ్యం కాదు. రిపెయిర్ ప్రొవైడర్ను సందర్శించండి"</string> - <string name="fingerprint_name_template" msgid="8941662088160289778">"వేలు <xliff:g id="FINGERID">%d</xliff:g>"</string> + <string name="fingerprint_name_template" msgid="8941662088160289778">"<xliff:g id="FINGERID">%d</xliff:g>వ వేలు"</string> <string name="fingerprint_app_setting_name" msgid="4253767877095495844">"వేలిముద్రను ఉపయోగించండి"</string> <string name="fingerprint_or_screen_lock_app_setting_name" msgid="3501743523487644907">"వేలిముద్ర లేదా స్క్రీన్ లాక్ను ఉపయోగించండి"</string> <string name="fingerprint_dialog_default_subtitle" msgid="3879832845486835905">"కొనసాగించడానికి మీ వేలిముద్రను ఉపయోగించండి"</string> diff --git a/core/res/res/values-uk/strings.xml b/core/res/res/values-uk/strings.xml index 327dfc59b276..d272118e1a4d 100644 --- a/core/res/res/values-uk/strings.xml +++ b/core/res/res/values-uk/strings.xml @@ -630,7 +630,7 @@ <string name="face_recalibrate_notification_content" msgid="3064513770251355594">"Натисніть, щоб видалити свою модель обличчя, а потім знову додайте її"</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="face_sensor_privacy_enabled" msgid="7407126963510598508">"Щоб використовувати фейс-контроль, увімкніть "<b>"Доступ до камери"</b>" в розділі \"Налаштування\" > \"Конфіденційність\""</string> <string name="fingerprint_setup_notification_title" msgid="2002630611398849495">"Налаштуйте більше способів розблокування"</string> <string name="fingerprint_setup_notification_content" msgid="205578121848324852">"Натисніть, щоб додати відбиток пальця"</string> <string name="fingerprint_recalibrate_notification_name" msgid="1414578431898579354">"Розблокування відбитком пальця"</string> @@ -664,15 +664,15 @@ <string name="face_error_canceled" msgid="2164434737103802131">"Дію з обличчям скасовано."</string> <string name="face_error_user_canceled" msgid="5766472033202928373">"Користувач скасував операцію фейсконтролю"</string> <string name="face_error_lockout" msgid="7864408714994529437">"Забагато спроб. Повторіть пізніше."</string> - <string name="face_error_lockout_permanent" msgid="3277134834042995260">"Забагато спроб. Фейсконтроль вимкнено."</string> + <string name="face_error_lockout_permanent" msgid="3277134834042995260">"Забагато спроб. Фейс-контроль вимкнено."</string> <string name="face_error_lockout_screen_lock" msgid="5062609811636860928">"Забагато спроб. Розблокуйте екран іншим способом."</string> <string name="face_error_unable_to_process" msgid="5723292697366130070">"Не вдається перевірити обличчя. Повторіть спробу."</string> - <string name="face_error_not_enrolled" msgid="1134739108536328412">"Ви не налаштували фейсконтроль"</string> - <string name="face_error_hw_not_present" msgid="7940978724978763011">"Фейсконтроль не підтримується на цьому пристрої"</string> + <string name="face_error_not_enrolled" msgid="1134739108536328412">"Ви не налаштували фейс-контроль"</string> + <string name="face_error_hw_not_present" msgid="7940978724978763011">"Фейс-контроль не підтримується на цьому пристрої"</string> <string name="face_error_security_update_required" msgid="5076017208528750161">"Датчик тимчасово вимкнено."</string> <string name="face_name_template" msgid="3877037340223318119">"Обличчя <xliff:g id="FACEID">%d</xliff:g>"</string> - <string name="face_app_setting_name" msgid="5854024256907828015">"Доступ через фейсконтроль"</string> - <string name="face_or_screen_lock_app_setting_name" msgid="1603149075605709106">"Використовувати фейсконтроль або дані для розблокування екрана"</string> + <string name="face_app_setting_name" msgid="5854024256907828015">"Доступ через фейс-контроль"</string> + <string name="face_or_screen_lock_app_setting_name" msgid="1603149075605709106">"Використовувати фейс-контроль або дані для розблокування екрана"</string> <string name="face_dialog_default_subtitle" msgid="6620492813371195429">"Щоб продовжити, скористайтеся фейсконтролем"</string> <string name="face_or_screen_lock_dialog_default_subtitle" msgid="5006381531158341844">"Щоб продовжити, скористайтеся фейсконтролем або даними для розблокування екрана"</string> <string-array name="face_error_vendor"> @@ -922,7 +922,7 @@ <string name="lockscreen_pattern_wrong" msgid="2940138714468358458">"Повторіть спробу"</string> <string name="lockscreen_password_wrong" msgid="8605355913868947490">"Повторіть спробу"</string> <string name="lockscreen_storage_locked" msgid="634993789186443380">"Розблокуйте, щоб бачити всі функції й дані"</string> - <string name="faceunlock_multiple_failures" msgid="681991538434031708">"Перевищено максимальну кількість спроб розблокування за допомогою функції \"Фейсконтроль\""</string> + <string name="faceunlock_multiple_failures" msgid="681991538434031708">"Перевищено максимальну кількість спроб розблокування за допомогою функції \"Фейс-контроль\""</string> <string name="lockscreen_missing_sim_message_short" msgid="1248431165144893792">"Відсутня SIM-карта"</string> <string name="lockscreen_missing_sim_message" product="tablet" msgid="8596805728510570760">"У пристр. нема SIM-карти."</string> <string name="lockscreen_missing_sim_message" product="tv" msgid="2582768023352171073">"До пристрою Android TV не підключено SIM-карту."</string> diff --git a/core/res/res/values-zh-rTW/strings.xml b/core/res/res/values-zh-rTW/strings.xml index 36bf08101c91..96990a11c7b0 100644 --- a/core/res/res/values-zh-rTW/strings.xml +++ b/core/res/res/values-zh-rTW/strings.xml @@ -1380,7 +1380,7 @@ <string name="share_remote_bugreport_action" msgid="7630880678785123682">"分享"</string> <string name="decline_remote_bugreport_action" msgid="4040894777519784346">"拒絕"</string> <string name="select_input_method" msgid="3971267998568587025">"選擇輸入法"</string> - <string name="show_ime" msgid="6406112007347443383">"使用實體鍵盤時仍繼續顯示虛擬鍵盤"</string> + <string name="show_ime" msgid="6406112007347443383">"使用實體鍵盤時仍繼續顯示螢幕小鍵盤"</string> <string name="hardware" msgid="1800597768237606953">"顯示虛擬鍵盤"</string> <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"設定實體鍵盤"</string> <string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"輕觸即可選取語言和版面配置"</string> diff --git a/packages/InputDevices/res/values-bs/strings.xml b/packages/InputDevices/res/values-bs/strings.xml index df58464eefda..c6cacbc93552 100644 --- a/packages/InputDevices/res/values-bs/strings.xml +++ b/packages/InputDevices/res/values-bs/strings.xml @@ -34,7 +34,7 @@ <string name="keyboard_layout_brazilian" msgid="5117896443147781939">"brazilski"</string> <string name="keyboard_layout_portuguese" msgid="2888198587329660305">"portugalski"</string> <string name="keyboard_layout_slovak" msgid="2469379934672837296">"slovački"</string> - <string name="keyboard_layout_slovenian" msgid="1735933028924982368">"slovenački"</string> + <string name="keyboard_layout_slovenian" msgid="1735933028924982368">"slovenski"</string> <string name="keyboard_layout_turkish" msgid="7736163250907964898">"turski"</string> <string name="keyboard_layout_turkish_f" msgid="9130320856010776018">"turski F"</string> <string name="keyboard_layout_ukrainian" msgid="8176637744389480417">"ukrajinski"</string> diff --git a/packages/InputDevices/res/values-hi/strings.xml b/packages/InputDevices/res/values-hi/strings.xml index 892fbc5440ff..2562854378d1 100644 --- a/packages/InputDevices/res/values-hi/strings.xml +++ b/packages/InputDevices/res/values-hi/strings.xml @@ -28,7 +28,7 @@ <string name="keyboard_layout_croatian" msgid="4172229471079281138">"क्रोएशियन"</string> <string name="keyboard_layout_czech" msgid="1349256901452975343">"चेक"</string> <string name="keyboard_layout_czech_qwerty" msgid="3331402534128515501">"चेक QWERTY स्टाइल"</string> - <string name="keyboard_layout_estonian" msgid="8775830985185665274">"एस्टोनियाई"</string> + <string name="keyboard_layout_estonian" msgid="8775830985185665274">"एस्टोनियन"</string> <string name="keyboard_layout_hungarian" msgid="4154963661406035109">"हंगेरियाई"</string> <string name="keyboard_layout_icelandic" msgid="5836645650912489642">"आइसलैंडिक"</string> <string name="keyboard_layout_brazilian" msgid="5117896443147781939">"ब्राज़ीलियाई"</string> diff --git a/packages/InputDevices/res/values-sv/strings.xml b/packages/InputDevices/res/values-sv/strings.xml index a08a74b99786..3d0b945b7f79 100644 --- a/packages/InputDevices/res/values-sv/strings.xml +++ b/packages/InputDevices/res/values-sv/strings.xml @@ -12,13 +12,13 @@ <string name="keyboard_layout_german_label" msgid="8451565865467909999">"Tyskt"</string> <string name="keyboard_layout_french_label" msgid="813450119589383723">"Franskt"</string> <string name="keyboard_layout_french_ca_label" msgid="365352601060604832">"Franskt (Kanada)"</string> - <string name="keyboard_layout_russian_label" msgid="8724879775815042968">"Ryskt"</string> + <string name="keyboard_layout_russian_label" msgid="8724879775815042968">"ryska"</string> <string name="keyboard_layout_russian_mac_label" msgid="3795866869038264796">"Ryskt, Mac"</string> <string name="keyboard_layout_spanish_label" msgid="7091555148131908240">"Spanskt"</string> <string name="keyboard_layout_swiss_french_label" msgid="4659191025396371684">"Franskt (Schweiz)"</string> <string name="keyboard_layout_swiss_german_label" msgid="2305520941993314258">"Tyskt (Schweiz)"</string> <string name="keyboard_layout_belgian" msgid="2011984572838651558">"Belgiskt"</string> - <string name="keyboard_layout_bulgarian" msgid="8951224309972028398">"Bulgariskt"</string> + <string name="keyboard_layout_bulgarian" msgid="8951224309972028398">"bulgariska"</string> <string name="keyboard_layout_bulgarian_phonetic" msgid="7568914730360106653">"Bulgariska (fonetiskt)"</string> <string name="keyboard_layout_italian" msgid="6497079660449781213">"Italienskt"</string> <string name="keyboard_layout_danish" msgid="8036432066627127851">"Danskt"</string> @@ -38,9 +38,9 @@ <string name="keyboard_layout_turkish" msgid="7736163250907964898">"Turkiskt"</string> <string name="keyboard_layout_turkish_f" msgid="9130320856010776018">"turkiska, F"</string> <string name="keyboard_layout_ukrainian" msgid="8176637744389480417">"Ukrainskt"</string> - <string name="keyboard_layout_arabic" msgid="5671970465174968712">"Arabiska"</string> - <string name="keyboard_layout_greek" msgid="7289253560162386040">"Grekiska"</string> - <string name="keyboard_layout_hebrew" msgid="7241473985890173812">"Hebreiska"</string> + <string name="keyboard_layout_arabic" msgid="5671970465174968712">"arabiska"</string> + <string name="keyboard_layout_greek" msgid="7289253560162386040">"grekiska"</string> + <string name="keyboard_layout_hebrew" msgid="7241473985890173812">"hebreiska"</string> <string name="keyboard_layout_lithuanian" msgid="6943110873053106534">"Litauiska"</string> <string name="keyboard_layout_spanish_latin" msgid="5690539836069535697">"Spanska (latinamerikansk)"</string> <string name="keyboard_layout_latvian" msgid="4405417142306250595">"lettiska"</string> diff --git a/packages/SettingsLib/res/values-de/strings.xml b/packages/SettingsLib/res/values-de/strings.xml index c943c9175900..336ba157325c 100644 --- a/packages/SettingsLib/res/values-de/strings.xml +++ b/packages/SettingsLib/res/values-de/strings.xml @@ -126,7 +126,7 @@ <string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD-Audio"</string> <string name="bluetooth_profile_hearing_aid" msgid="58154575573984914">"Hörgeräte"</string> <string name="bluetooth_profile_le_audio" msgid="5158149987518342036">"LE_AUDIO"</string> - <string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Mit Hörhilfen verbunden"</string> + <string name="bluetooth_hearing_aid_profile_summary_connected" msgid="8191273236809964030">"Mit Hörgeräten verbunden"</string> <string name="bluetooth_le_audio_profile_summary_connected" msgid="3162538609379333442">"Verbinden mit LE_AUDIO"</string> <string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Verbunden mit Medien-Audio"</string> <string name="bluetooth_headset_profile_summary_connected" msgid="2420981566026949688">"Verbunden mit Telefon-Audio"</string> @@ -144,7 +144,7 @@ <string name="bluetooth_headset_profile_summary_use_for" msgid="808970643123744170">"Für Telefon-Audio verwenden"</string> <string name="bluetooth_opp_profile_summary_use_for" msgid="461981154387015457">"Für Dateiübertragung verwenden"</string> <string name="bluetooth_hid_profile_summary_use_for" msgid="4289460627406490952">"Für Eingabe verwenden"</string> - <string name="bluetooth_hearing_aid_profile_summary_use_for" msgid="7689393730163320483">"Für Hörhilfen verwenden"</string> + <string name="bluetooth_hearing_aid_profile_summary_use_for" msgid="7689393730163320483">"Für Hörgeräte verwenden"</string> <string name="bluetooth_le_audio_profile_summary_use_for" msgid="2778318636027348572">"Für LE_AUDIO verwenden"</string> <string name="bluetooth_pairing_accept" msgid="2054232610815498004">"Koppeln"</string> <string name="bluetooth_pairing_accept_all_caps" msgid="2734383073450506220">"KOPPELN"</string> diff --git a/services/core/java/com/android/server/accounts/AccountManagerService.java b/services/core/java/com/android/server/accounts/AccountManagerService.java index 639f35e1ae13..7a19d034c2c8 100644 --- a/services/core/java/com/android/server/accounts/AccountManagerService.java +++ b/services/core/java/com/android/server/accounts/AccountManagerService.java @@ -4923,7 +4923,10 @@ public class AccountManagerService p.setDataPosition(0); Bundle simulateBundle = p.readBundle(); p.recycle(); - Intent intent = bundle.getParcelable(AccountManager.KEY_INTENT, Intent.class); + Intent intent = bundle.getParcelable(AccountManager.KEY_INTENT); + if (intent != null && intent.getClass() != Intent.class) { + return false; + } Intent simulateIntent = simulateBundle.getParcelable(AccountManager.KEY_INTENT, Intent.class); if (intent == null) { diff --git a/services/tests/PackageManagerServiceTests/server/res/raw/install_app1_cert5_rotated_cert6 b/services/tests/PackageManagerServiceTests/server/res/raw/install_app1_cert5_rotated_cert6 Binary files differindex 2da2436d9b16..c2418bec1505 100644 --- a/services/tests/PackageManagerServiceTests/server/res/raw/install_app1_cert5_rotated_cert6 +++ b/services/tests/PackageManagerServiceTests/server/res/raw/install_app1_cert5_rotated_cert6 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 86c958dca962..8a31f3b2a17f 100755 --- a/services/tests/uiservicestests/src/com/android/server/notification/NotificationManagerServiceTest.java +++ b/services/tests/uiservicestests/src/com/android/server/notification/NotificationManagerServiceTest.java @@ -124,6 +124,7 @@ import android.app.NotificationManager; import android.app.PendingIntent; import android.app.Person; import android.app.RemoteInput; +import android.app.RemoteInputHistoryItem; import android.app.StatsManager; import android.app.admin.DevicePolicyManagerInternal; import android.app.usage.UsageStatsManagerInternal; @@ -5141,6 +5142,12 @@ public class NotificationManagerServiceTest extends UiServiceTestCase { .setName("People List Person 2") .setIcon(personIcon3) .build(); + final Uri historyUri1 = Uri.parse("content://com.example/history1"); + final Uri historyUri2 = Uri.parse("content://com.example/history2"); + final RemoteInputHistoryItem historyItem1 = new RemoteInputHistoryItem(null, historyUri1, + "a"); + final RemoteInputHistoryItem historyItem2 = new RemoteInputHistoryItem(null, historyUri2, + "b"); Bundle extras = new Bundle(); extras.putParcelable(Notification.EXTRA_AUDIO_CONTENTS_URI, audioContents); @@ -5148,6 +5155,8 @@ public class NotificationManagerServiceTest extends UiServiceTestCase { extras.putParcelable(Notification.EXTRA_MESSAGING_PERSON, person1); extras.putParcelableArrayList(Notification.EXTRA_PEOPLE_LIST, new ArrayList<>(Arrays.asList(person2, person3))); + extras.putParcelableArray(Notification.EXTRA_REMOTE_INPUT_HISTORY_ITEMS, + new RemoteInputHistoryItem[]{historyItem1, historyItem2}); Notification n = new Notification.Builder(mContext, "a") .setContentTitle("notification with uris") @@ -5156,6 +5165,13 @@ public class NotificationManagerServiceTest extends UiServiceTestCase { .addExtras(extras) .build(); + // Serialize and deserialize the notification to make sure nothing breaks in the process, + // since that's what will usually happen before we get to call visitUris. + Parcel parcel = Parcel.obtain(); + n.writeToParcel(parcel, 0); + parcel.setDataPosition(0); + n = new Notification(parcel); + Consumer<Uri> visitor = (Consumer<Uri>) spy(Consumer.class); n.visitUris(visitor); verify(visitor, times(1)).accept(eq(audioContents)); @@ -5165,6 +5181,8 @@ public class NotificationManagerServiceTest extends UiServiceTestCase { verify(visitor, times(1)).accept(eq(personIcon1.getUri())); verify(visitor, times(1)).accept(eq(personIcon2.getUri())); verify(visitor, times(1)).accept(eq(personIcon3.getUri())); + verify(visitor, times(1)).accept(eq(historyUri1)); + verify(visitor, times(1)).accept(eq(historyUri2)); } @Test @@ -5273,6 +5291,26 @@ public class NotificationManagerServiceTest extends UiServiceTestCase { } @Test + public void testVisitUris_wearableExtender() { + Icon actionIcon = Icon.createWithContentUri("content://media/action"); + Icon wearActionIcon = Icon.createWithContentUri("content://media/wearAction"); + PendingIntent intent = PendingIntent.getActivity(mContext, 0, new Intent(), + PendingIntent.FLAG_IMMUTABLE); + Notification n = new Notification.Builder(mContext, "a") + .setSmallIcon(android.R.drawable.sym_def_app_icon) + .addAction(new Notification.Action.Builder(actionIcon, "Hey!", intent).build()) + .extend(new Notification.WearableExtender().addAction( + new Notification.Action.Builder(wearActionIcon, "Wear!", intent).build())) + .build(); + + Consumer<Uri> visitor = (Consumer<Uri>) spy(Consumer.class); + n.visitUris(visitor); + + verify(visitor).accept(eq(actionIcon.getUri())); + verify(visitor).accept(eq(wearActionIcon.getUri())); + } + + @Test public void testSetNotificationPolicy_preP_setOldFields() { ZenModeHelper mZenModeHelper = mock(ZenModeHelper.class); mService.mZenModeHelper = mZenModeHelper; |